Модель перевода
ИСТОЧНИКИ ОШИБОК В ПРОГРАММНЫХ СРЕДСТВАХ
ПС, логически связанный набор можно рассматривать как систему. Под системой, в данном случае, будем понимать совокупность взаимодействующих (находящихся в отношениях) друг с другом элементов. Тогда и любая отдельная программа также является системой.
Будем различать простые и сложные системы.
Под простой будем понимать такую систему, в которой человек может уверенно перебирать все пути взаимодействия между ее элементами, а под сложной - в которой он этого делать не в состоянии.
При разработке ПС мы не всегда можем уверенно знать о всех связях между ее элементами из-за возможных ошибок.
Оценим сложность системы по числу ее элементов: это определяется числом потенциальных путей взаимодействия между ее элементами, т.е. n! , где n - число ее элементов. Систему назовем малой, если n < 7 (6! = 720 < 1000), систему назовем большой, если n > 7.
Малая система всегда проста, а большая может быть как простой, так и сложной. Задача технологии программирования - научиться делать большие системы простыми.
При разработке и использовании ПС мы многократно имеем дело с преобразованием (переводом) информации из одной формы в другую.
Чтобы понять природу ошибок при переводе рассмотрим модель: человек осуществляет перевод информации из представления A в представление B.
При этом он совершает четыре основных шага перевода:
· он получает информацию, содержащуюся в представлении A, с помощью своего читающего механизма R;
· он запоминает полученную информацию в своей памяти M;
· он выбирает из своей памяти преобразуемую информацию и информацию, описывающую процесс преобразования, выполняет перевод и посылает результат своему пишущему механизму W;
· с помощью этого механизма он фиксирует представление B.
На каждом из этих шагов человек может совершить ошибку разной природы (неоднозначность интерпретации).