Главная » UML » Пользуйтесь модульными архитектурами

0

Визуализация, спецификация, создание и документирование преимущественно программной системы — все это зависит от вида системы с различных точек зрения. Каждая из заинтересованных сторон — конечных пользователей, аналитиков, разработчиков, системных интеграторов, испытателей, технических редакторов и руководителей проекта — привносит свое видение проекта, причем каждый из них видит систему с какой-то своей точки зрения, которая, к тому же, может меняться в процессе развития проекта. Поэтому системная архитектура— это, вероятно, важнейший компонент, который может использоваться для управления этими различными точками зрения и, в связи с этим, управлять наращиваемым итеративным развитием системы во время ее жизненного цикла.

Системная архитектура включает решения относительно

•       Организации программной системы;

•       Выбора структурных элементов и их интерфейсов при формировании системы;

•       Поведения этих структурных элементов, обусловленного совместной их работой;

•       Формирования из структурных элементов и линий их поведения постепенно
укрупняющихся подсистем;

•       Архитектурного стиля, направляющего структуру, состоящую из элементов и
их интерфейсов, а также их совместной работы и объединения.

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

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

Важным подходом к архитектуре программного обеспечения является модульная разработка (component-based development— CBD), позволяющая повторно использовать или настраивать компоненты из множества коммерчески доступных источников. Модель компонентных объектов (component object model — СОМ) корпорации Microsoft, архитектура CORBA (Common Object Request Broker Architecture) группы Object Management Group и Enterprise JavaBeans (EJB) от компании Sun Microsystems — вот

примеры распространенных и широко поддерживаемых платформ, на которых может использоваться модульная архитектура. Как показано на рис. 1.3, компоненты делают возможным повторное использование в значительных масштабах, позволяют системам складываться из существующих частей, готовых частей от сторонних производителей и нескольких новых, которые относятся к определенным областям и объединяют остальные части.

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

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

1.          Модули способствуют эластичности архитектуры.

2.          При внесении изменений модульная структура позволяет явно разделить обя
занности между элементами системы.

3.           

Моделирование — это важно, поскольку оно помогает команде разработчиков визуализировать, определять, создавать и документировать структуру и поведение архитектуры системы. Использование стандартного языка моделирования, такого как UML (Unified Model Language — унифицированный язык моделирования), позволяет членам команды разработчиков однозначно доносить свои решения друг другу.

Средства визуального моделирования облегчают управление моделями, позволяя показывать или скрывать подробности по мере надобности. Визуальное моделирование также способствует поддержанию непротиворечивости артефактов системы: требований, проектов и реализаций. Иными словами, визуальное моделирование дает команде возможность бороться со сложностью программного обеспечения.

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

 

3.    Благодаря стандартизованным конструкциям (таким, как СОМ+, CORBA и EJB)
и коммерчески доступным компонентам возможно повторное использование
системы.

4.          На основе модулей естественным образом организовывается управление кон
фигурацией.

5.          Средства визуального моделирования автоматизируют модульную разработку.

По теме:

  • Комментарии