логики, управления, множества, доказательства и др.[132–140].
К фундаментальным основам построения ПП относятся следующие:
– правила логических исчислений, высказываний и умозаключений
математической логики;
– математический вывод теорем и программ с помощью аксиом и утверждений,
верификация программ (VDM, RAISE, Z, методы Хоара, Дейкстры и др.);
– кванторы всеобщности, существования и операции над множествами;
– принципы, методы планирования и управления теори
Кроме того, систему знаний ПИ образуют:
– формальные методы программирования для спецификации программ, их
верификации и тестирования, а также оценки надежности ПП и т.п.;
– прикладные методы, а именно: средства, принципы, правила и процессы ЖЦ
производства прикладных систем, как инструментов коллективной разработки
больших программных проектов;
– методы управления коллективами, включая планирование сетевых графиков,
контроль работ на процессах ЖЦ, измерение и оценивание качества созданного
промежуточного и конечного ПП, регулирование сроков и стоимости
изготовления и сертификации.
10.3.1. СОДЕРЖАНИЕ НАУЧНОЙ ДИСЦИПЛИНЫ ПРОИЗВОДСТВА
ПРОГРАММНЫХ ПРОДУКТОВ
В отличие от математической или другой фундаментальной науки, цель которых –
получение новых знаний для решения соответствующих задач, в ПИ знания – это
общая теория построения программ для компьютеров, изготовление продукта для
получения посредством него результата [132].
Научная дисциплина – это теоретические, формальные методы и средства
построения сложных программных объектов. Построение включает анализ
предметной области, проектирование и образование выходного кода для его
выполнения на компьютере. Данная наука предоставляет базовые понятия,
объекты и формальные механизмы, необходимые при создании общих и
специфических особенностей ПП в соответствии с заданными к нему
требованиями. Иными словами, наука ПИ включает в себя:
1) основные понятия и объекты (исходные и проектируемые);
2) теорию программирования и методы управления изготовлением ПП;
3) средства и инструменты процессов производства продукта.
1. Основные понятия – это: данные и их структуры, функции и композиции,
базовые объекты (модуль, компонент, каркас, КПИ и др.) и целевые объекты (ПО,
ПС, семейство систем, программный проект, сложные программные системы).
Разработка простых объектов осуществляется с помощью элементарных
операций формального их описания, а изготовление из них целевых объектов –
это применение инженерных методов управления коллективом, их работами,
сроками и стоимостью.
Приведем общее определение целевых объектов ПИ.
Программная система (Application) – комплекс интегрированных программ и
средств, которые реализуют набор функций некоторой ПрО в заданной среде. В
комплекс могут входить: ПО, прикладные системы (зарплата, учет и др.),
общесистемные компоненты (транслятор, редактор, СУБД и т.п.), системы защиты