Системы автоматизации разработки программного обеспечения. Н. А. Соловьев
Чтение книги онлайн.
Читать онлайн книгу Системы автоматизации разработки программного обеспечения - Н. А. Соловьев страница 3
На формальном уровне метод определяется как совокупность составляющих языка моделирования:
– концепций (теоретических основ). В качестве таких основ выступают структурный или объектно – ориентированный подходы (парадигмы) программирования;
– нотаций, используемых для построения моделей спецификации статической структуры и динамики поведения проектирования АИС. В качестве таких нотаций обычно используются графические диаграммы (диаграммы потоков данных, диаграммы «сущность – связь», диаграммы вариантов использования (структурный подход), диаграммы классов (ООП));
– руководства (правила), определяющих практическое применение метода (последовательность и правила построения моделей, критерии, используемые для анализа результатов).
На рисунке 1.5 представлена структура языка моделирования, отражающего метод описания программного продукта.
Рисунок 1.5 – Составляющие языка моделирования
К сожалению, в настоящее время не существует общепризнанного определения архитектуры ПО. Данное понятия определяется различными способами, например, «Программная архитектура есть абстрактная спецификация системы, состоящая из основных функциональных компонентов, описываемых в терминах их поведения, их интерфейсов и межкомпонентного взаимодействия» (Хэйес – Рос). «Архитектура есть структура компонентов программы – системы, их взаимосвязи, правила и руководящие принципы организации ее проектирования и дальнейшей эволюции» (Галэн, Пэрри).
В основополагающем учебнике под архитектурой понимается совокупность базовых концепций (принципов) её построения, которые определяются сложностью решаемых задач, степенью универсальности ПО и числом пользователей, одновременно с ним работающих.
Несмотря на отличия, имеющиеся в определениях программной архитектуры, в каждом из них делается акцент на структурные аспекты организации ПО. Отсюда наиболее адекватным необходимо признать следующее определение – программная архитектура представляет собой совокупность моделей структурных элементов системы с видимыми извне свойствами и механизмами их взаимодействия.
Различают одно и многопользовательскую архитектуры.
Однопользовательские архитектуры реализуют в виде:
– программа или программное средство (адресованный компьютеру набор инструкций, точно описывающий последовательность действий, которые необходимо выполнить для решения конкретной задачи);
– пакета программ (совокупность программ, решающих задачи некоторой предметной области, например, библиотека программ);
– программной системы (организованная совокупность