Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_ПиОА[1].doc
Скачиваний:
20
Добавлен:
30.08.2019
Размер:
2.53 Mб
Скачать

Тема 2 источники ошибок в программных средствах

2.1. Интеллектуальные возможности человека

При разработке ПС используются три интеллектуальные способности человека: перебор, абстракция, математическая индукция.

Перебор это последовательное переключение внимания с одного предмета на другой и узнавание искомого предмета. Способность перебора ограничена – в среднем человек уверенно перебирает в пределах 1000 предметов. На практике человеку приходиться иметь дело с большим числом предметов. Средством преодоления этой ограниченности является способность к абстракции, благодаря которой человек объединяет разные предметы или экземпляры в одно понятие, заменяя множество элементов одним элементом другого рода. Способность человека к математической индукции позволяет справляться с бесконечными последовательностями.

При разработке ПС человек имеет дело с системами. Под системой понимают совокупность взаимодействующих друг с другом элементов. ПС – система. Логически связанный набор программ – система. Любая отдельная программа – система. Понять систему  это осмысленно перебрать все пути взаимодействия между ее элементами. Различают простые и сложные системы. Простая система – система, в которой человек уверенно перебирает все пути взаимодействия между ее элементами, а сложная система – система, в которой он этого сделать не может. Между простыми и сложными системами нет четкой границы, поэтому вводится их промежуточный класс. К нему относятся программы, о которых программисты говорят «в каждой отлаженной программе имеется хотя бы одна ошибка».

При разработке ПС не всегда есть уверенность, что знаешь обо всех связях между его элементами. Часто невозможно отследить все связи, а это порождает поле возможных ошибок. Сложность системы оценивают числом ее элементов или числом потенциальных путей взаимодействия между элементами, т.е. n! (n-факториалом), где n  число элементов системы. Систему называют малой, 12Сли n<7 (6!=720<1000), систему называют большой, если n>7. При n=7 имеем промежуточный класс систем. Малая система всегда проста, а большая может быть как простой, так и сложной. Задача технологии программирования  научиться сводить большие системы к простым системам.

Оценка простых систем по числу элементов используется на практике. Так, для руководителя весьма желательно, чтобы в коллективе не было больше шести взаимодействующих между собой подчиненных. Важно следовать правилу: «все, что может быть сказано, должно быть сказано в шести пунктах или меньше». Этому правилу рекомендуется следовать при перечислении формулировок, взаимосвязанных высказываний, а также при разработке ПС.

2.2. Неправильный перевод как причина ошибок в пс

П ри разработке и эксплуатации ПС неоднократно производится преобразование или перевод информации из одной формы в другую (рис.1). Заказчик формулирует свою потребность в ПС в виде требований. Исходя из них, разработчик создает внешнее описание ПС, используя спецификации необходимых аппаратных средств (аппаратуры) и базового программного обеспечения. Спецификация - это определение, описание и перечисление специфических особенностей. На основании внешнего описания и спецификации выбранного языка программирования создаются тексты программ. По внешнему описанию ПС разрабатывается и пользовательская документация. Текст каждой программы является исходной информацией при любом ее преобразовании, в частности, при исправлении в ней ошибок. Программная документация регламентирует действия пользователя по применению ПС и интерпретации результатов. Перевод информации имеет место и в других технологических процессах. На каждом из этих этапов перевод информации может быть осуществлен неверно, например, из-за неправильного понимания исходного представления информации. Возникнув на одном этапе, ошибка в представлении информации преобразуется в ошибки результатов, полученных на следующих этапах разработки, и, в конечном итоге, окажется в самом ПС.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]