Программирование с защитой от ошибок 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Программирование с защитой от ошибок



 

Любая ошибка программирования которая не обнаруживается на этапах компиляции и компоновки в конечном счёте всё равно может проявиться:

1. способ: выдача системного сообщения об ошибке

2. способ: зависание компьютера

3. способ: получение не верных результатов

 

Способы проявления ошибок:

 

Часть ошибок при программировании можно обнаружить и нейтрализовать. Для этого применяются спец приёмы которые называются защитными или программирование с защитой от ошибок. Анализ ошибок и их ранних проявлений показывает, что при разработке ПО необходимо проверять следующие факты:

 

1. Правильность выполнения операций ввода-вывода. Причинами не верного выполнения исходных данных могут являться: внутренние ошибки – ошибки ПО (ошибки передачи, ошибки преобразования); внешние ошибки – ошибки пользователя, юзверь сам вводит не верные данные.

 

Для защиты от ошибок преобразования используют «Эхо» данные ввелись и сразу же вывелись для проверки. Обнаружить ошибки пользователя можно только с помощью, каких либо промежуточных контрольных сумм и с помощью контроля интервалов возможных значений, которые как правило определены в техническом задании и пользователю всегда нужно предоставлять введенные данные для проверки.

 

2. Необходимо проверять допустимость промежуточных результатов. Необходимо проверять промежуточные результаты проверка которых целесообразна, не сложна и возможно позволит обнаружить ошибку:

1. Проверка допустимость индекса массива.

2. Если строится цикл, то всегда необходимо проверить, что бы количество повторений цикла не было отрицательным.

3. Если определяется вероятность какого либо события, то необходимо проверять что бы полученное значение не было больше 1.

4. Предотвращение накопления погрешностей. Для того что бы снизить погрешность результатов вычислений необходимо соблюдать следующие правила:

i. Избегать вычитания близких чисел.

ii. Избегать деление больших чисел на малые

iii. Снижать длинную последовательность чисел

iv. По возможности уменьшить количество операций с числами

v. Использовать методы уже с известными оценками погрешности

vi. Не использовать условия равенства вещественных чисел, особенно с одинарной точностью

 

3. Обработка и исключение. Всегда при разработки ПО следует предусматривать перехват обработки аварийных ситуаций. Для перехвата практически во всех языках программирования предусмотрено средство обработки исключения. С помощью этих средств программист получает возможность предусмотреть действие, которое позволяет исправить эту ошибку или если это не возможно исправить ошибку, то выдать пользователю сообщение с точным описанием ситуации и вариантом продолжения работы.

 

 

Определение требований к ПО и исходных данных для его проектирования

 

1. Этап постановки задачи – является одним из наиболее ответственных этапом создания программного продукта. На этом этапе формулируются основные требования к разрабатываемому ПО, поэтому на сколько полно определены функции и эксплуатационные требования на столько правильно приняты принципиальные решения определяющие процесс проектирования, стоимость разработки и его качества. Каждый программный продукт предназначен для выполнения определённой функции. По назначению все программные продукты можно разделить на 3 группы: системные, прикладные и гибридные.

 

К каждому типу ПО при разработке предъявляют функциональные и эксплуатационные требования. Эти требования определяют некоторые характеристики разрабатываемого ПО, предъявляемые к нему в процессе его функционирования. К этим характеристикам относится:

1. Правильность – функционирование в соответствии с техническим заданием, это требование является обязательным для любого ПО, т.е. всё что указано в ТЗ дБ реализовано.

2. Универсальность – обеспечение правильной работы при любых допустимых данных и защита от не правильных данных, это тоже обязательное требование.

3. Надёжность – обеспечение полной повторяемости результатов и обеспечения их правильности при различного рода сбоев оборудования.

4. Проверяемость – возможность проверки полученных результатов. Для её обеспечения необходимо документально фиксировать исходные данные, установленные режимы и всю информацию которая влияет на получение результатов.

5. Точность результатов – обеспечение погрешности результатов не выше заданных. Она зависит от исходных данных, степени адекватности используемой модели, точности выбранного метода и погрешности выполнения операции в компьютере.

6. Защищённость – обеспечение конфиденциальности информации. Для защищённости применяют программные средства защиты (коды, алгоритмы), кодирование информации, идентификация пользователя.

7. Программная совместимость – возможность функционирования с другим ПО.

8. Аппаратная совместимость – возможность совместного функционирования с разным оборудованием

9. Эффективность – использование минимального возможного количества ресурсов технических средств (время ответа системы, объём оперативной памяти, количество обслуживаемых внешних устройств)

10. Адаптируемость – возможность быстрой модификации для приспособления к изменяющимся условиям функционирования.

11. Повторная входимость – характеристика применяется только к резидентному ПО (дрова). Для обеспечения этого требования необходимо организовать программу таким образом, что бы никакие исходные данные не затирались в процессе её выполнения и восстанавливались при завершении каждого вызова.

 

Разработка технического задания

 

 

ТЗ представляет собой документ с которым сформулированы основные цели разработки, требования к программному продукту, определены сроки и этапы разработки и регламентирован процесс приёма сдаточных работ. В разработке ТЗ участвуют и заказчики и исполнители. В основе документа лежат исходные требования заказчика, результаты выполнения научно-исследовательских работ, предпроектных исследований и т.д.

 

Схема: факторы определяющие параметры разрабатываемого ПО.

Основными факторами определяющими характеристики разрабатываемого ПО являются:

1. Исходные данные и требуемые результаты, которые определяют функции программы.

2. Среда функционирования программная и аппаратная. Она может быть задана и может выбираться для обеспечения параметров указанных в ТЗ.

3. Возможные взаимодействия с другими программными или техническими средствами.

 

Разработка ТЗ ведётся в следующей последовательности:

1. Устанавливают набор выполняемых функций, а так же перечень и характеристики исходных данных

2. Определяют перечень результатов и способы их представлений

3. Определяют следы функционирования ПО (параметры тех средств, их комплектация, установленное ПО, версия ПО и т.д. т.е. всё то с чем предстоит взаимодействовать программному продукту)

4. Необходимо регламентировать действия программы в случае сбоя программы.

 

На разработку ТЗ существует ГОСТ 19.201-78 «Техническое задание. Требования к содержанию и оформлению». В соответствии с этим ТЗ должно содержать следующие разделы:

1. Введение – должно включать наименование и краткую характеристику области применения программного продукта. Основное назначение введения это продемонстрировать актуальность данной разработки и показать какое место занимает эта разработка в ряду подобных.

2. Основание для разработки – этот раздел должен содержать наименование документа, на основании которого ведётся разработка (приказ, распоряжение). Название организация утвердившей данный документ и наименование или условное обозначение темы разработки.

3. Назначение разработки – содержит описание функционального и эксплуатационного программного продукта с указанием категории пользователя.

4. Требования к программе или к программному изделию. Этот раздел должен включать следующие подразделы:

a. Требования к функциональным характеристикам. Что должна делать система.

b. Требования к надёжности.

c. Условия эксплуатации.

d. Требования к составу и параметрам технических средств. Описывается необходимый состав технических средств с указанием их основных технических характеристик (тип процессора). Как правило указывают 2 варианта конфигурации: минимальная и максимальная

e. Требования к информационной и программной совместимости. Можно задать методы решения, определить среду и язык программирования.

f. Требования к маркировки и упаковки.

g. Требования к транспортировки и хранении.

h. Определение каких либо специальных требований.

5. Требования к программной документации. Указывается необходимость разработки и наличия руководств пользователя программиста, системного программиста, наличие пояснительной записки. На все типы этих документов существуют свои ГОСТы.

6. Технико-экономические показатели. Указывается экономическая эффективность и экономические преимущества по сравнению с существующими аналогами.

7. Стадии и этапы разработки. Указываются стадии и этапы разработки и содержание работ с указанием сроков разработки и исполнителей.

8. Порядок контроля и приёмки. Указываются общие требования приёмки работ и виды тестирования ПО.

 

При необходимости допускается включать в ТЗ приложения. В приложениях указывают перечень научно исследовательских работ обуславливающих разработку, схемы алгоритмов, таблицы, обоснования, расчёты и другие документы которые следует использовать при разработки.

В зависимости от особенностей разрабатываемого продукта разрешается уточнять содержания разделов, т.е. использовать подразделы, вводить новые разделы и объединять существующие. В случаях если какие либо требования предусмотренные техническим заданием заказчик не предъявляет, то обязательно в соответствующем месте ТЗ необходимо указать «Требования не предъявляются».

 

 



Поделиться:


Последнее изменение этой страницы: 2017-02-07; просмотров: 550; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.138.122.4 (0.013 с.)