Готовим обоснованный ответ
Чтобы сохранить постоянных клиентов, многие компании в период кризиса работают себе в убыток. Отражение убытка в налоговой отчетности повышает риск получения требования по результатам камеральной проверки (п. 3 ст. 88 НК РФ). Налоговая инспекция вправе истребовать подтверждающие документы, если в декларации организация отразила НДС к возмещению (п. 8 ст. 88 НК РФ). Как подготовить «безопасный» ответ на требование ФНС и избежать новых претензий со стороны налоговых органов, расскажем в этой статье.
Налог на прибыль и НДС вызывают особый интерес налоговой инспекции. В случае противоречий и несоответствий налоговый орган может потребовать от налогоплательщика пояснения и дополнительные документы.
Вы можете получить требование о представлении пояснений и дополнительных документов в рамках камеральной проверки (ст. 88 НК РФ), если:
- в декларации по налогу на прибыль заявлен убыток;
- выявлены противоречия между сведениями;
- в уточненной декларации уменьшена сумма налога (относится ко всем налогам);
- в декларации по НДС заявлен налог к возмещению из бюджета;
- выявлены «разрывы» в цепочке НДС.
Ответ на требование ИФНС о представлении пояснений необходимо направить в течение 5 дней (п. 3 ст. 88 НК РФ). Если же инспекции необходимы документы, то срок на подготовку ответа увеличивается вдвое — до 10 рабочих дней (п. 3 ст. 93 НК РФ, постановление Арбитражного суда Дальневосточного округа от 31.07.2020 № Ф03-2743/2020 по делу № А51-25211/2019). При подготовке пояснений налогоплательщик вправе использовать рекомендуемую налоговой инспекцией форму ответа. Нужно учитывать, что пояснения в части декларации по НДС представляются исключительно в электронном виде по ТКС (п. 3 ст. 88 НК РФ).
В декларации по налогу на прибыль заявлен убыток
Если в декларации по налогу на прибыль сумма расходов превышает сумму доходов, значит, по итогам налогового периода организацией получен убыток. Особое внимание налоговая инспекция обращает на убыточность в годовой декларации.
Рассмотрим две возможные ситуации возникновения убытка.
Ситуация № 1. В целом по декларации отражена прибыль, а по реализации покупных товаров получен убыток
Такая ситуация может возникнуть, если предприятие осуществляет несколько видов деятельности. Например, оказывает услуги и продает товары.
Что анализирует налоговый инспектор: сумму прямых расходов по оптовой, мелкооптовой и розничной торговле (строки 020, 030 приложения 2 к листу 02 декларации), выручку от реализации покупных товаров (строка 012 приложения 1 к листу 02).
Что потребует: представить в течение 5 рабочих дней пояснения или уточненную налоговую декларацию по налогу на прибыль.
Что делать и как объяснить: проверить, действительно ли товары реализованы по цене ниже покупной. Если обнаружите ошибку, необходимо подать уточненную декларацию. Если в декларации данные не искажены, нужно написать ответ (пояснительную записку) в произвольной форме.
Вы можете подготовить ответ в ФНС, воспользовавшись шаблоном:
советнику государственной гражданской службы РФ 2-го класса
Ивановой И. И.
от ООО «Ромашка», ИНН 667123456
На требование о представлении пояснений № 2054 от 27.07.2022 поясняем следующее.
По итогам финансово-хозяйственной деятельности за I полугодие 2022 года предприятием действительно получен убыток от реализации покупных товаров, т. е. прямые расходы на приобретение товаров превышают сумму выручки от реализации этих товаров. Убыток получен в связи с тем, что во II квартале 2022 года в связи со сложившейся неблагоприятной экономической обстановкой, необходимостью пополнения оборотных средств и снижения складских расходов часть товаров была реализована по цене ниже закупочной.
Кроме того, основная деятельность Общества с 2022 года связана с оказанием услуг, а выручка от реализации покупных товаров составляет всего 4 % от общей выручки. Таким образом, направление деятельности предприятия изменилось, что также повлияло на решение о снижении цен на реализуемые товары, т. к. имеется необходимость освободить складские помещения от товаров, тем самым сократив расходы на содержание склада.
Директор ООО «Ромашка» ______________________В. В. Петров
Ситуация № 2. В целом по декларации отражен убыток
Что анализирует налоговый инспектор: убыток, отраженный по строке 060 листа 02 «Расчет налога».
Какой вывод сделает: по итогам финансово-хозяйственной деятельности предприятием получен убыток.
Что потребует: представить в течение 5 рабочих дней пояснения, обосновывающие размер убытка.
Что делать и как объяснить: перепроверить, правильно ли сформирована величина убытка в соответствии с гл. 25 НК РФ. Если обнаружите ошибку в формировании налоговой базы, необходимо подать уточненную декларацию. Если в декларации данные не искажены, нужно написать ответ (пояснительную записку) в произвольной форме. При этом ответ должен содержать исчерпывающий объем данных, чтобы ИФНС могла сопоставить пояснения и декларацию. В частности, поясняя размер убытка, нужно указывать не только номера счетов бухучета и суммы, но и соответствующие им хозяйственные операции. Иначе пояснения будут признаны ненадлежащими, а налогоплательщика ждет штраф (Определение Верховного Суда РФ от 25.10.2019 № 305-ЭС19-18245 по делу № А40-11516/2019).
Если вы не ответите на требование или ответ не удовлетворит налоговую инспекцию, ФНС может назначить выездную проверку (Приказ ФНС РФ от 30.05.2007 № ММ-3-06/333).
Вы можете подготовить ответ ФНС, воспользовавшись шаблоном:
На требование о предоставлении пояснений № 2054 от 27.07.2022 поясняем следующее.
По итогам финансово-хозяйственной деятельности за I полугодие 2022 года предприятием действительно получен убыток. Основной вид экономической деятельности организации — продажа оборудования и дальнейшее его обслуживание. На показатели доходности предприятия в I полугодии повлияли несколько причин.
Основную часть прибыли планировалось получить от продажи оборудования по госконтрактам. Но в связи с пандемией коронавируса и ограничительными мерами не удалось заключить предполагаемые контракты. В то же время Обществом было закуплено оборудование, которое в данный момент хранится на складе. Соответственно, Общество несет расходы на содержание склада, которые составляют существенную часть от совокупных расходов. Кроме того, в I полугодии 2022 года по вышеозначенным причинам было расторгнуто два договора: договор на поставку оборудования и договор на обслуживание поставленного оборудования.
В декларации по налогу на прибыль произведенные расходы за I полугодие 2022 года отражены в соответствии с требованием главы 25 НК РФ.
Представляем расшифровку расходов:
Материальные затраты — 50 000 рублей.
Расходы на оплату труда и страховые взносы — 30 000 рублей.
Арендная плата — 60 000 рублей.
Транспортные расходы — 17 000 рублей.
Расходы на рекламу — 4 000 рублей.
Канцелярские товары — 1 500 рублей.
Услуги связи и почтовых отправлений — 800 рублей.
Услуги банка — 1 200 рублей.
Таким образом, расходы Общества за налоговый период составили 164 500 рублей, в т. ч. внереализационные расходы. В результате превышения расходов над доходами по окончании налогового периода образовался убыток. Показатели деятельности организации с целью занижения суммы налогов не искажены. Исправления в декларацию по налогу на прибыль I полугодие 2022 года вноситься не будут.
Выявлены противоречия между сведениями
Налоговая инспекция проверяет не только контрольные соотношения по каждому виду налога, но и соответствие данных, отраженных в разных налоговых декларациях.
Что анализирует налоговый инспектор: сумму выручки от реализации товаров (работ, услуг), отраженных в декларации по НДС (строка 010 раздела 3), сумму выручки от реализации (строка 010 листа 02 «Расчет налога») и сумму внереализационных доходов (строка 020 листа 02 «Расчет налога»), отраженных в декларации по налогу на прибыль за сопоставимый налоговый период. Если не соблюдается равенство выручки, отраженной в декларациях по НДС и по налогу на прибыль, у налоговой инспекции появляется повод для запроса пояснений.
Какой вывод сделает: данные в декларациях могут быть искажены.
Что потребует: представить в течение 5 рабочих дней пояснения или уточненную налоговую декларацию по проверяемому налогу (прибыль или НДС).
Что делать и как объяснить: перепроверить, правильно ли отражены данные. Если в декларации данные не искажены, нужно написать ответ (пояснительную записку) в произвольной форме. Если обнаружите ошибку в заполнении декларации, необходимо подать уточненную декларацию. Причиной такого расхождения может быть разный порядок отражения в декларациях возврата товара поставщику. Для целей налогообложения НДС возврат товаров является обратной реализацией, сумма реализации отражается по строке 010 раздела 3 декларации по НДС. Для целей налогообложения прибыли возврат товаров поставщику не является реализацией и не отражается в декларации по налогу на прибыль.
Вы можете подготовить ответ ФНС, воспользовавшись шаблонами:
На требование о представлении пояснений № 2057 от 24.06.2022 поясняем следующее.
Фактическая выручка от реализации товаров (работ, услуг) за I квартал 2022 года составила 3 268 026 (Три миллиона двести шестьдесят восемь тысяч двадцать шесть) рублей.
В декларации по НДС за I квартал 2022 года в строке 010 раздела 3 ошибочно отражена сумма 3 268 000 (Три миллиона двести шестьдесят восемь тысяч), что на 26 рублей меньше фактической выручки. Данная ситуация возникла в связи с техническим сбоем бухгалтерской программы.
К данному письму прилагаем уточненную декларацию по НДС за I квартал 2022 года: изменения внесены в строки 010, 118, 120, и 190 раздела 3.
Обращаем Ваше внимание, что итоговая сума НДС, подлежащая уплате за I квартал 2022 года, не изменилась.
Указанные в требовании расхождения связаны с установленным порядком отражения в налоговой декларации операций, связанных с возвратом товара, не соответствующего условиям договора поставки (купли-продажи), после его принятия на учет покупателем.
Таким образом, в данном случае расхождения вызваны объективными причинами (операция по возврату товара), а также тем фактом, что при отражении в налоговом учете операции по возврату товара организация руководствовалась разъяснениями Минфина и налоговых органов России.
Документы, подтверждающие возврат товара, прилагаем.
В уточненной декларации уменьшена сумма налога
Что анализирует налоговый инспектор: данные первичной и уточненной декларации. В декларации по налогу на прибыль проверяются суммы по разделу 1. В декларации по НДС проверяются суммы по разделам 1 и 2.
Какой вывод сделает: данные могут быть искажены.
Что потребует: представить в течение 5 рабочих дней пояснения, обосновывающие изменение показателей.
Что делать и как объяснить: перепроверить правильность отражения данных. Скорее всего, в первичной декларации отражены не все вычеты по НДС — или же отражены не все расходы в декларации по налогу на прибыль. Следует написать пояснительную записку. По возможности приложить подтверждающие документы.
В первичной декларации по НДС за I квартал 2022 года не был учтен вычет по НДС в размере 1 000 (Одной тысячи) рублей. Были внесены изменения и сдана уточненная декларация. В результате внесенных изменений сумма, подлежащая уплате в бюджет, стала меньше.
Копию счета-фактуры № 1 от 31.03.2022, подтверждающего вычет, прилагаем.
В декларации по НДС заявлен налог к возмещению из бюджета
Что анализирует налоговый инспектор: строку 050 раздела 1 декларации по НДС.
Какой вывод сделает: необоснованное завышение вычетов по НДС.
Что потребует: представить в течение 10 рабочих дней документы, подтверждающие правомерность применения налоговых вычетов.
Что делать и как объяснить: проверить обоснованность применения вычетов и подтвердить их документально. Если вы не хотите тратить время на подготовку пояснительных и подтверждающих документов, воспользуйтесь своим правом перенести вычет на следующий налоговый период. Эта возможность закреплена п. 1.1 ст. 172 НК РФ. Вычет по одному счету-фактуре можно разбить на несколько налоговых периодов. В этом случае необходимо будет представить уточненную декларацию.
Вы можете подготовить ответ ФНС, воспользовавшись шаблоном ответа:
В декларации по НДС за I квартал 2022 года по строке 210 раздела 3 отражена сумма НДС, исчисленная к возмещению из бюджета. Это связано с тем, что в данном квартале у Общества не было операций по реализации товара. Поэтому отсутствовал НДС, начисленный с реализации.
Данные не искажены, исправления в декларацию вноситься не будут.
Выявлены «разрывы» в цепочке НДС
Что анализирует налоговый инспектор: данные, отраженные по строкам 118 и 190 раздела 3 и в разделах 8–11 деклараций по НДС, представленных всеми налогоплательщиками, для прослеживания цепочки образования добавленной стоимости (налога и вычетов) от производителя товара до конечного потребителя.
Какой вывод сделает: «разрывы» в цепочке могут свидетельствовать о занижении в проверяемой декларации суммы НДС к уплате по реализации (строка 118 раздела 3) либо о завышении суммы вычета (строка 190 раздела 3).
Что потребует: в течение 10 рабочих дней представить счета-фактуры, первичные и иные документы, относящиеся к соответствующим операциям.
Что делать и как объяснить: проверить правильность формирования книги продаж и начисления суммы НДС по реализациям. Проверить правильность формирования книги покупок, обоснованность применения вычетов и наличие подтверждающих документов. При необходимости можно связаться с «проблемным» контрагентом для выяснения причины «разрыва».
Вы можете подготовить отчет ФНС, воспользовавшись шаблоном:
В соответствии с требованием № 2054 от 27.07.2022 направляем запрашиваемые документы согласно приложению и дополнительно поясняем следующее.
Согласно положениям пункта 2 статьи 171 НК РФ, вычетам подлежат суммы НДС, предъявленные налогоплательщику при приобретении на территории Российской Федерации товаров (работ, услуг), а также имущественных прав для перепродажи, либо для осуществления операций, признаваемых объектами налогообложения НДС, за исключением товаров, предусмотренных пунктом 2 статьи 170 НК РФ. Указанные вычеты производятся на основании счетов-фактур, выставленных продавцами при приобретении налогоплательщиком товаров (работ, услуг), имущественных прав после принятия на учет указанных товаров (работ, услуг), имущественных прав и при наличии соответствующих первичных документов (п. 1 ст. 172 НК РФ).
В соответствии с пунктом 3 статьи 54.1 НК РФ нарушение контрагентом налогоплательщика законодательства о налогах и сборах не может рассматриваться в качестве самостоятельного основания для признания неправомерным уменьшения налогоплательщиком налоговой базы и (или) суммы подлежащего уплате налога.
В силу положений пунктов 1 и 2 статьи 54.1 НК РФ не допускается уменьшение налогоплательщиком налоговой базы и (или) суммы подлежащего уплате налога в результате искажения сведений о фактах хозяйственной жизни (совокупности таких фактов), об объектах налогообложения, подлежащих отражению в налоговом и (или) бухгалтерском учете либо налоговой отчетности налогоплательщика. По имевшим место сделкам (операциям) налогоплательщик вправе уменьшить налоговую базу и (или) сумму подлежащего уплате налога, если основной целью совершения сделки (операции) не являются неуплата (неполная уплата) и (или) зачет (возврат) суммы налога и при условии, что обязательство по сделке (операции) исполнено лицом, являющимся стороной договора, заключенного с налогоплательщиком, и (или) лицом, которому обязательство по исполнению сделки (операции) передано по договору или закону.
В рассматриваемой ситуации организация правомерно применила налоговые вычеты по счетам-фактурам, полученным от указанных в требовании налогоплательщиков, поскольку реальность совершенных с ними сделок подтверждается наличием соответствующего договора, подписанного со стороны контрагента уполномоченным лицом, а также фактами реального поступления товаров (материалов) по данным договорам именно от соответствующего контрагента и их фактической оплаты с нашей стороны в адрес каждого из контрагентов.
Таким образом, правовых оснований для исключения вычетов по соответствующим счетам-фактурам не имеется. Данные в декларации не искажены; исправления в декларацию вноситься не будут.
Превышена безопасная доля вычетов по НДС
Что анализирует налоговый инспектор: сколько процентов составляет сумма вычетов, отраженная по строке 190 раздела 3 декларации по НДС, от суммы по строке 118 раздела 3 декларации.
Что потребует: явиться в инспекцию для дачи пояснений
Что делать и как объяснить: старайтесь не превышать рекомендуемую долю вычетов. Для каждого региона свой порог безопасности по НДС. Рассчитать его можно самостоятельно, используя данные, которые публикует ФНС в своих отчетах по форме 1-НДС. Найти информацию можно на сайте ФНС в подразделе «Отчеты о налоговой базе и структуре начислений по налогам и сборам» раздела «Данные по формам статистической отчетности», который находится в ветке «Статистика и аналитика» блока «Иные функции ФНС России». Расчет производится по формуле:
стр. 190 : стр. 118 × 100 %,
где стр. 190 — сумма налоговых вычетов, всего; стр. 118 — сумма начисленного налога.
Вы можете подготовить письменные пояснения для посещения ИФНС, воспользовавшись шаблоном:
В декларации по НДС за I квартал 2022 года действительно доля вычетов по строке 190 раздела 3 декларации по НДС составила 95,3 % от общей суммы исчисленного налога, отраженного по строке 118 раздела 3.
Это связано с тем, что в феврале 2022 года были сделаны закупки оборудования на 1 200 000 (Один миллион двести тысяч) рублей, в том числе НДС 200 000 (двести тысяч) рублей.
Общая сумма налога, подлежащая уплате в бюджет, составила 160 000 (Сто шестьдесят тысяч) рублей.
В III квартале 2022 года планируется увеличить прибыль и сократить расходы.
В завершение хочется отметить, что не стоит игнорировать требования налоговой инспекции. ФНС вправе заблокировать расчетный счет организации (п. 3 ст. 76 НК РФ), если не будет отправлена квитанция о приеме требования. Отсутствие ответа в установленный срок может послужить поводом для штрафа и выездной налоговой проверки.
Елена Рогачева,
эксперт сервиса Норматив
В Связи С Технической Ошибкой В Программном Обеспечении
Испытания разработанных программ не позволяют проверить выполнение всех функций ВК при различных комбинациях входных данных и управляющих воздействий. В связи с этим после проведения испытаний часть ошибок ПО остается невыявленной. Тем не менее характер распределения во времени выявленных в ходе испытаний ошибок и их число служат основанием для прогноза надежности программного обеспечения при эксплуатации. Невыявленные ошибки постепенно проявляются, исправляются, поток отказов этого вида снижается. Понятие старения и связанного с ним роста интенсивности отказов на программное обеспечение не распространяется, могут стареть материальные носители ПО. Изменение потока отказов в сторону его увеличения при эксплуатации программ обычно вызывается вносимыми в них изменениями.
Случайный характер ошибок программного обеспечения и случайный характер комбинаций входных данных, вызывающих их появления, дает возможность говорить о системных отказах, вызванных ошибками программного обеспечения, как о случайных событиях. Это позволяет использовать для их анализа и снижения те же методы, что и для анализа аппаратурных отказов. Тем не менее отказы, вызванные ошибками программного обеспечения, имеют некоторые довольно существенные отличительные черты, обусловившие создание специальных методов анализа надежности программного обеспечения.
Все сказанное выше в первую очередь относится к комплексу программ УВК, входящих в контур управления технологическим объектом. Эти комплексы программ эксплуатируют в течение многих лет и они определяют наряду с другими факторами качество функционирования АСУ ТП, ее надежность. В связи с этим комплексы программ должны удовлетворять определенным требованиям к надежности. Для выполнения этих требований существует комплекс мероприятий и приемов, реализуемых на стадии создания программ, их отладки и эксплуатации. Остановимся более подробно на особенностях отказов, вызванных ошибками программного обеспечения, поскольку ими в значительной мере определяется специфика их математического описания и мероприятий по обеспечению надежности ПО.
Формулировка требований по надежности к разрабатываемому ПО, подтверждение выполнения этих требований на стадии испытаний и эксплуатации, расчет надежности функций ВК с учетом надежности программного обеспечения, оценка эффективности проведения тех или иных мероприятий по повышению надежности ПО – это далеко не полный перечень задач, для решения которых необходимо использование аналитических или экспериментально-аналитических методов расчета надежности ПО. В настоящее время отсутствуют стандартные методы расчета надежности ПО.
Наличие в управляющих комплексах разветвленной сети периферийных устройств связи с объектом и вышестоящими системами управления обусловливает усложнение всех составляющих программного обеспечения. Поскольку в настоящее время не существует методов создания безошибочных программ, то ошибки в программах наравне с отказами технических средств служат источниками системных отказов.
Отказ ПC (failure) – это переход ПС из работающего состояния в нерабочее или когда получаются результаты, которые не соответствуют заданным допустимым значениям. Отказ может быть вызван внешними факторами (изменениями элементов среды эксплуатации) и внутренними (дефектами в самом ПС).
Формально модели оценки надежности ПС базируются на теории надежности и математическом аппарате с допущением некоторых ограничений, влияющих на эту оценку. Главным источником информации, используемой в моделях надежности, является процесс тестирования, эксплуатации ПС и разного вида ситуации, возникающие в них. Ситуации порождаются возникновением ошибок в ПС, требуют их устранения для продолжения тестирования.
В процессе квалификационных испытаний ПС (аналог – предварительные испытания для конструкторов) разработчик должен дать документально оформленную оценку тестового покрытия требований к программному объекту, возможности сборки и тестирования системы (при их проведении), возможности эксплуатации и сопровождения на основе разработанной документации пользователя и др.
Ошибки в ПО станции составляют незначительную долю от общего числа неисправностей, выявляемых системой технического обслуживания цифровой телефонной станции. Но влияние программных ошибок на работу станции может быть значительным и требовать длительного времени устранения.
Каждое управляющее устройство имеет собственную ОС, зависящую от задач прикладных программ и ресурсов, которыми располагает управляющее устройство. Все ОС выполняют свои задачи в реальном масштабе времени. Для работы ПО станции необходимо большое количество данных. Совокупность этих данных составляет базу данных станции. Доступ к базе данных осуществляется только через специальные программы ОС.
Аварийные сообщения выводятся на дисплей терминала технического обслуживания и принтер. В аварийном сообщении указываются признаки ошибки в ПО, где она произошла, действие подсистемы технического обслуживания после обнаружения ошибки (рестарт, перезагрузка), категория срочности устранения ошибки в ПО, если она не устранена, и другая дополнительная информация, которая может потребоваться для проведения восстановительных мероприятий.
Переменные данные характеризуют текущее состояние станции и действия по обслуживанию вызова. Они могут включать информацию, относящуюся к эксплуатационному состоянию аппаратных средств, состоянию соединений и к оперативной готовности ресурсов. Кроме того, эти данные включают в себя результаты действий по обработке вызовов (например, данные по учету стоимости, измерению трафика). Переменные данные не имеют защиты от записи. Они, в основном, считываются и изменяются программами обработки вызовов.
Постоянные данные характеризуют неизменяемые функциональные свойства системы или станции. Примером постоянных данных могут служить данные инициализации. Постоянные данные могут считываться, но не могут изменяться. Такие данные могут замещаться (путем замещения соответствующего программного модуля) только в случае замены ПО станции. Постоянные данные интегрированы в прикладные программы и в программы ОС.
3. Далее следуют несколько последовательных процессов перевода – от внешнего описания готового продукта до получения детального проекта, описывающего множество составляющих программу предложений, выполнение которых должно обеспечить поведение системы, соответствующее внешним спецификациям. Сюда включаются такие процессы, как перевод внешнего описания в структуру компонент программы (например, модулей) и перевод каждой из этих компонент в описание процедурных шагов (например, в блок-схемы). Поскольку нам приходится иметь дело со все большими объемами информации, шансы внесения ошибок становятся чрезвычайно высокими.
В результате работы над программным проектом возникают как само ПО, так и документы, описывающие правила пользования им. Последние обычно имеют вид печатных руководств или встроенной в программу помощи и носят название публикаций. Эти руководства обычно получаются переводом внешних спецификаций в материалы, ориентированные на конкретные группы пользователей.
Второй тип ошибок обычно возникает во время выполнения программы (их принято называть исключительными ситуациями). Такие ошибки имеют другую причину. Если в программе возникает исключение, то это означает, что случилось непредвиденное: например, программе передали некорректное значение или программа попыталась разделить какое-то значение на ноль, что недопустимо с точки зрения математики. Если операционная система присылает запрос на немедленное завершение программы, то также возникает исключение. Ошибки выполнения легко обнаруживаются, однако устранение их причин может оказаться нетривиальной задачей.
В любом языке программирования каждое предложение (оператор) строится по определенным правилам. Когда в программе встречается предложение, которое нарушает эти правила, то говорят о наличии синтаксической ошибки. Синтаксическая ошибка легко обнаруживается компиляторами и интерпретаторами языка и легко исправляется.
Создание ПО начинается с формирования требований пользователя, т.е. с разработки описания решаемой задачи. Такое описание имеет вид перечня требований пользователя. В некоторых случаях пользователь составляет этот перечень сам. В других случаях это делает разработчик ПО в беседе с пользователем, либо исследуя его потребности, либо самостоятельно оценивая эти потребности в будущем, либо комбинируя перечисленные методы. В данном учебном пособии будем считать, что на данном этапе ошибки не вносятся.
Программное обеспечение связи
Интенсивное тестирование и фаза отладки неотъемлемая часть цикла разработки программного обеспечения, которое может помочь пресечь эти ошибки в зародыше, прежде чем произойдет полномасштабное развертывание программного обеспечения. Много ошибок можно избежать с помощью предварительного планирования во время стадии кодирования. Большинство ошибок можно исправить в процессе разработки программного обеспечения через практику и строгие процедуры отладки. Ошибки являются частью обучения, и их никогда нельзя полностью избежать, Тем не менее, у вас могут появляться новые ошибки, но повторять старые вы не должны!
Это, пожалуй, наиболее серьезная из всех ошибок. Когда написанная программа на любом языке компилирует и работает правильно, но выдает неправильный вывод, недостаток заключается в логике основного программирования. Это ошибка, которая была унаследована от недостатка в базовом алгоритме. Сама логика , на которой базируется вся программа, является ущербной. Чтобы найти решение такой ошибки нужно фундаментальное изменение алгоритма. Вам нужно начать копать в алгоритмическом уровне, чтобы сузить область поиска такой ошибки.
Программный код успешно скомпилирован, и исполняемый файл был создан. Вы можете вздохнуть с облегчением и запустить программу, чтобы проверить ее работу. Ошибки при выполнении программы могут возникнуть в результате аварии или нехватки ресурсов носителя. Разработчик должен был предвидеть реальные условия развертывания программы. Это можно исправить, вернувшись к стадии кодирования.
Компьютерное программирование это огромное поле с сотнями языков, которые используют миллионы приложений . Об этом говорит сайт https://intellect.icu . Это программирование операционной системы, прикладное программирование, встроенное кодирование системы, веб-разработка, приложения для мобильных платформ, развитие программ, развернутых в интернете, научные вычисления. В таблице представлены основные виды ошибок.
Многие программы используют числовые переменные, и алгоритм может включать несколько математических вычислений. Арифметические ошибки возникают, когда компьютер не может справиться с проблемами, такими как «Деление на ноль», или ведущие к бесконечному результату. Это снова логическая ошибка, которая может быть исправлена только путем изменения алгоритма.
В подходе, основанном на управлении прерываниями, программа предоставляет возможность прерываниям устройства ввода / вывода поступать непосредственно на центральный процессор, который продолжает выполнять свою работу, не связываясь с устройством. Когда устройство готово к вводу / выводу, оно сигнализирует об этом центральному процессору посредством аппаратуры. Получив этот сигнал, центральный процессор сохраняет свое текущее состояние и вызывает подпрограмму обслуживания прерываний, адрес которой хранится в таблице векторов прерываний. Эта подпрограмма выполняет операцию ввода / вывода, затем восстанавливает состояние машины и возвращается в прерванную программу. Также стоит учитывать регистр символов, поступающих в коммуникационный порт персонального компьютера. Организовав где-нибудь некоторые ячейки памяти, можно использовать простую подпрограмму обработки прерываний, которая быстро считывает символ из коммуникационного порта и сохраняет его в следующей доступной ячейке памяти в буфере. Символы не будут утеряны в процессе считывания и сохранения символа драйвером прерываний перед поступлением следующего символа. Эта несложная задача достаточно проста для выполнения в короткие временные интервалы между поступающими символами при скорости передачи 9600 бод. Прелесть этого метода заключается в том, что время обработки главной программой символов, хранящихся в буфере, не имеет значения. Конечно, существует риск переполнения буфера, но эта проблема может быть решена простым увеличением его размера. Если этот способ не очень хорош, то для избежания переполнения буфера можно использовать управление потоком с помощью XON/XOFF.
2. Пространство адресов триггеров специальных функций, таких как триггеры признаков переноса C, переполнения OV, четности P, отрицательности N, нуля Z, триггеры выбора банка рабочих регистров RS0 и RS1; триггер программно-управляемого флага F0 и другие. Все триггеры специальных функций физически размещаются в регистрах специальных функций. Наличие триггеров специальных функций определяется типом микроконтроллера. Диапазон адресов триггеров специальных функций находится в пределах от 128 до 255. Части адресов соответствуют несуществующие триггеры. При записи бита по адресу несуществующего триггера этот бит теряется, при считывании бита из несуществующего триггера его значение неопределенно;
Качество получаемого прикладного программного обеспечения контроллера всецело зависит от уровня проектных решений, принятых на этапе «от постановки задачи к исходной программе». Уровень проектных решений, в свою очередь, из-за отсутствия теории проектирования программируемых контроллеров определяется только опытом, квалификацией и интуицией разработчика. Однако накопленный опыт убеждает в том, что систематический подход к процессу разработки прикладных программ для контроллеров обеспечивает достижение хороших результатов даже начинающими разработчиками.
Ранее мы упоминали, что бит контроля четности полезен для обнаружения ошибок. Например, если выбрана проверка на четность, этот бит устанавливается таким образом, что общее число единиц в текущем слове является четным. В приемнике четность вычисляется заново и сравнивается с битом контроля четности. Если они не равны, то приемник сообщает, что имеет место ошибка четности. Главный недостаток обнаружения ошибки посредством проверки на четность заключается в том, что можно только обнаружить ошибки, которые влияют на один единственный бит. Например, битовая комбинация 0100 0001 0, переданная восемью битами с проверкой на четность, может измениться на 0100 01110, однако приемник не обнаружит ошибку, так как проверка на четность выполняется.
Обмен между контроллером и ЭВМ производится в режиме полудуплекса, т.е. ЭВМ посылает байт, а контроллер отвечает. С ЭВМ по каналу RS‑232 приходит байт с установленным девятым битом, это означает что необходимо начать преобразование входного сигнала. Второй и последующий байты посылаемые ЭВМ приводят к выталкиванию двух оцифрованных значений побайтно, старшими байтами вперёд, т.е. если первое слово обозначить H0L0, а второе H1L1 то они будут переданы так: H0, L0, H1, L1. Затем контроллер передаёт контрольную сумму, которая подсчитывается по формуле: CRC = S + H0 + L0 + H1 + L1. Она служит для контроля за правильностью передачи данных. После передачи контрольной суммы контроллер переходит в исходное состояние в котором он может принимать только байты с девятым битом равным единице.
Общим моментом среди пользователей в отношении документации по программному обеспечению является то, что только один из этих трех подходов был принят к почти использованию двух других. Обычно предоставляемая документация по программному обеспечению для персональных компьютеров ограничивается онлайн-справкой, которая дает только справочную информацию по командам или пунктам меню. Задача обучения новых пользователей или помощи более опытным пользователям получить максимальную отдачу от программы остается за частными издателями, которым часто оказывает значительную помощь разработчик программного обеспечения.
Как правило, пользовательская документация описывает каждую функцию программы и классифицирует пользователя в переосмыслении этих функций. Хороший пользовательский документ также может идти так далеко, чтобы обеспечить помощь в лесоподавки. Консистенция и легитимность также весьма . Считается, что пользовательская документация составляет контракт, определяющий действия программного обеспечения. API Writers очень хорошо сопровождают к написанию хороших пользовательских документов, так как они были бы хорошо осведомлены об архитектуре программного обеспечения и используемых методах программирования. См. также техническое письмо.
- Пользовательский анализ, этап фундаментальных исследований процесса.
- Планирование или фактическая фаза документации.
- Проект обзора, самостоятельный этап, на котором запрашиваются отзывы о проекте, составленном на предыдущем этапе.
- Тестирование на удобство использования, при котором удобство использования документа проверяется эмпирически.
- Редактирование — последний этап, на котором информация, собранная на этапах 3 и 4, используется для подготовки окончательного проекта.
Архитектурная документация (также известная как описание архитектуры программного обеспечения) — особый тип конструкторского документа. В некотором смысле архитектурные документы являются третьими по величине от кода (конструкторский документ является вторым по величине, а кодовые документы — первыми). Очень мало в архитектурных документах характерно для самого кода. Эти документы не описывают, как программировать конкретную подпрограмму, или даже почему эта конкретная подпрограмма существует в том виде, в котором она есть, а вместо этого просто перечисляют общие требования, которые могли бы мотивировать существование такой подпрограммы. Документ с хорошей архитектурой является кратким по деталям, но содержит пояснения. Это может предложить подходы к проектированию более низкого уровня, но оставить фактические исследования разведочной торговли на другие документы.
Требования предъявляются в различных стилях, обозначениях и формальностях. Требования могут быть целевыми (например, распределенная рабочая среда), близкими к проектированию (например, здания могут быть запущены правой кнопкой мыши конфигурационный файл и выбрать функцию «build");, и все, что между ними. Они могут быть указаны как высказывания на естественном языке, как нарисованные фигуры, как подробные формулы, и как их сочетание все.
Категории ошибок в программном обеспечении
8. Документируйте все обнаруженные и исправленные ошибки, отмечая, где они были найдены, и указывая тип ошибки. Эта информация будет полезной для предсказания источников ошибок в будущем. (Каждый программист имеет свой профиль ошибок, т.е. склонность к ошибкам определенного типа.)
7. Используйте одновременно различные средства отладки, не останавливайтесь на одной возможности. Привлекайте наиболее мощные автоматизированные средства и одновремейно применяйте ручные методы отладки и тестирования за рабочим столом, проверяя текст программы (индивидуально или группой) с точки зрения ее функционирования и с учетом наиболее вероятных ошибок.
9. Измеряйте сложность программ. Программы (модули) с высоким цикломатическим числом имеют более высокую предрасположенность к ошибкам и будут, вероятно, требовать большего времени для их обнаружения и исправления. В программах с высокой сложностью более высока вероятность ошибок спецификаций и проектирования, а с низкой сложностью — кодирования и канцелярских огцибок.
Так в ряде языков программирования не обнаруживаются пропуски операторов в программе, нарушения форматов ввода/вывода, правил индексации массивов, отсутствие начальных значений переменных и т.п. Не выявляются, как правило, и ошибки в указании типов передаваемых параметров при вызовах процедур.
6. Наибольшее число ошибок относится к этапу кодирования и тестирования. Ошибки этой группы исследованы наиболее полно, и для них собран обширный статистический материал-Ошибки при программировании можно просто разделить на синтаксические и логические. Многие синтаксические ошибки обнаруживает транслятор; немало синтаксических ошибок при трансляции не обнаруживается.
Контрольные испытания — испытания, проводимые для контроля качества объекта. Среди контрольных обычно различают приемо-сдаточные и типовые испытания. Контрольные испытания готовой продукции, проводимые при приемочном контроле, называются приемо-сдаточными. К типовым испытаниям относятся контрольные испытания продукции, проводимые с целью оценки эффективности и целесообразности вносимых изменений в конструкцию, рецептуру или технологический процесс.
Исследовательские испытания — испытания, проводимые для изучения определенных характеристик свойств объектов. Исследовательские испытания, проводимые для определения зависимости между предельно допустимыми значениями параметров объекта и значениями параметров режимов эксплуатации, называются граничными.
Сложность системы является одной из главных причин низкой надежности программного обеспечения. В общем случае, сложность объекта является функцией взаимодействия (количества связей) между его компонентами. В борьбе со сложностью ПО используются две концепции:
Приемочные испытания — это контрольные испытания опытных образцов (партий) изделий, а также изделий единичного производства, проводимые соответственно для решения вопроса о целесообразности постановки на производство этих изделий или передачи их в эксплуатацию.
Иерархическая структура. Иерархия позволяет разбить систему по уровням понимания (абстракции, управления). Концепция уровней позволяет анализировать систему, скрывая несущественные для данного уровня детали реализации других уровней. Иерархия позволяет понимать, проектировать и описывать сложные системы.
Если Ваш модем не поднимает трубку или подняв трубку не набирает номер или не отвечает на вызов,
- Убедитесь, что телефонный кабель подсоединен к гнезду модема, имеющему шильдик TELCO, и к телефонной линии.
- Просмотрите руководство по программному обеспечению с тем, чтобы определить, какие операции необходимо произвести с DTR.
- Если Ваш модем поднимает трубку, но не набирает номер, выдавая на экран сообщение NO DIAL TONE , то используйте в установках X3 вместо X2 или X4.
- Убедитесь, что Ваше программное обеспечение имеет возможность автоответа.
Если Вам необходимо вернуть нам модем .
- Отдел Технической Поддержки Покупателей, с которым Вы общались, даст Вам номер возврата Return Materials Authorization (RMA) . Вы должны иметь номер возврата до отправки нам модема.
- Пошлите модем (желательно в оригинальной упаковке) оплаченной посылкой в жесткой коробке из рифленого картона, предварительно обернутый в упаковочный материал .
- Ваш RMA номер, имя и адрес укажите как на упаковке ,так и положите внутрь .
- Направьте по следующему адресу :
Для загрузки the Technical Reference Guide сделайте следующее:
- Для загрузки файла выберите из основного меню функцию D(download)
- На Вашем экране появится следующая надпись:
- SPHSWORD.ZIP — Справочник в сжатом формате Word for Windows v.6.0 Для декомпрессии этого файла Вам потребуется PKUNZIP.EXE. Этот файл также существует в BBS .
- SPHSHELP.ZIP — Справочник в сжатом формате Windows Help
- SPHSASCI.TXT — Справочник в некомпрессированном формате ASCII
Если Вы используете DOS 6.0 , то перед тем, как инсталлировать программу факса, запустите следующую программу DOS :
- На подсказку DOS введите VER для определения версии DOS.
- Убедившись , что у Вас версия DOS 6.0 или старше ,запустите на приглашение (prompt) DOS программу MEMMAKER.EXE. Эта программа приведет в порядок все Ваши резидентные фоновые программы (TSR-Terminate and Stay Resident ) .