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