Анализ программного обеспечения компонентов КС и процессов его создания показывает [Е1,ЕП,ИБС,Лип0,Лип1,Лип3,Лип4], что эффективность контроля технологической безопасности готовых программ может быть повышена за счет учета специфических особенностей структуры программ и, в частности, параметров, характеризующих сложность проектирования и функционирования готовых программ. К числу параметров, влияющих на сложность проектирования ПО, в первую очередь относятся[Ма]:

·          размер программ, выраженный числом команд и программных модулей в комплексе;

·          количество обрабатываемых переменных и объем памяти для размещения базы данных;

·          ограничения на длительность разработки и на количество специалистов, участвующих в создании комплекса программ.

Кроме того, для сложных комплексов управляющих программ (КУП) проверка отсутствия РПС не всегда возможна вследствие большого числа технологических исходных данных и т.д. В этих условиях целесообразно в первую очередь определить наиболее критичные с точки зрения выполнения целевых функций пути (ветви) программ, которые должны быть подвергнуты наиболее полному тестированию. Критичные пути определяются путем анализа следующих компонентов:

·          сложности программных модулей, которая характеризуется трудоемкостью создания оформленного комплекса программ и может быть оценена с учетом внутренней структуры и преобразования переменных в каждом модуле, а также интегрально по некоторым внешним статистическим характеристикам модулей;

·          сложности структуры комплекса (или группы программ и связей между модулями по передачам управления и обмену информацией), определяемой числом связей при взаимодействии модулей, структурой и регулярностью межмодульных связей;

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