Основным нормативным документом, регламентирующим ЖЦ ПО, является международный стандарт ISO/IEC 12207 (ISO – International Organization of Standardization – Международная организация по стандартизации, IEC – International Electrotechnical Commission – Международная комиссия по электротехнике). Стандарт определяет структуру ЖЦ, содержащую процессы, действия и задачи, которые должны быть выполнены во время создания ПО.
Одним из этапов ЖЦ ПО является проектирование – быстро развивающееся направление исследований в области программной инженерии. Опыт ведения реальных разработок и совершенствование имеющихся программно-аппаратных средств постоянно переосмысливается, в результате чего появляются новые технологии и методы их реализации, которые, в свою очередь, служат основой более современных средств разработки ПО.
1.2.1 Сущность технологии разработки программного обеспечения
Технологии и инструментальные средства разработки составляют основу проекта любой программной системы (ПС). Технологии реализуются через конкретные методы и поддерживающие их стандарты, методики и инструментальные средства, которые обеспечивают процессы реализации различных этапов ЖЦ ПО.
Спиральная модель жизненного цикла ПС, изображенная на рисунке 2.1, наиболее полно отвечает современным подходам к разработке ПО, т.к. предполагают, что технологические процессы выполняются итерационно.
Рисунок 1.3 – Спиральная модель ЖЦ ПС
Основными этапами итерационного процесса являются: постановка задачи, анализ, проектирование, реализация и интегрирование. Наиболее сложным и трудоемким этапом является проектирование ПО.
В настоящее время определение технологии проектирования ПО не имеет устоявшейся формулировки. Учитывая то, что проектирование является одним из этапов ЖЦ ПО, можно остановиться на следующем определении: технология проектирования ПО это совокупность методов и средств, используемых в процессе создания программных продуктов.
Как и любая технология, технология программирования представляет собой набор технологических процессов, включающих:
– указание последовательности выполнения технологических операций, обобщенная схема которых представлена на рисунке 1.4;
– перечисление условий, при которых выполняется та или иная операция;
– описание самих операций, каждой из которых ставится в соответствие исходные данные, результаты, а также инструкции, нормативы, стандарты, критерии и методы оценки.
Рисунок 1.4 – Описание технологических операций
Кроме операций и их последовательности, технология определяет метод описания архитектуры проектируемой системы, т.е. модели, используемые на конкретном этапе разработки ПО.
Метод проектирования ПОпредставляет собой организованную совокупность информационных процессов создания ряда моделей, которые описывают различные аспекты разрабатываемой системы с использованием четко определенных технологических операций.
На формальном уровне метод определяется как совокупность составляющих языка моделирования:
– концепций(теоретических основ). В качестве таких основ выступают структурный или объектно – ориентированный подходы (парадигмы) программирования;
– нотаций,используемых для построения моделей спецификации статической структуры и динамики поведения проектирования АИС. В качестве таких нотаций обычно используются графические диаграммы (диаграммы потоков данных, диаграммы «сущность – связь», диаграммы вариантов использования (структурный подход), диаграммы классов (ООП));
– руководства (правила),определяющих практическое применение метода (последовательность и правила построения моделей, критерии, используемые для анализа результатов).
На рисунке 1.5 представлена структура языка моделирования, отражающего метод описания программного продукта.
Рисунок 1.5 – Составляющие языка моделирования
К сожалению, в настоящее время не существует общепризнанного определения архитектуры ПО. Данное понятия определяется различными способами, например, «Программная архитектура есть абстрактная спецификация системы, состоящая из основных функциональных компонентов, описываемых в терминах их поведения, их интерфейсов и межкомпонентного взаимодействия» (Хэйес – Рос). «Архитектура есть структура компонентов программы – системы, их взаимосвязи, правила и руководящие принципы организации ее проектирования и дальнейшей эволюции» (Галэн, Пэрри).
Читать дальше
Конец ознакомительного отрывка
Купить книгу