Начало проектирования. Обзор инструментов архитектора.
02.26.2010
Существуют различные типы проектирования, но в основном можно выделить два: «ручное» и автоматизированное проектирование. Языком архитектора в данном деле являются своеобразные блок-схемы и UML-диаграммы. Вот и начнём мы наш обзор с блок-схем.
Блок-схемы представляют собой некоторые функциональные блоки, которые логически между собой связаны. Другими словами, их можно назвать как формами (символами), которые представляют некий алгоритм с помощью графических символов. Данные символы, а так же и формы, являются частью соответствующих стандартов различных спецификаций.
Чтобы составлять какие-то формы для алгоритмов, нужно сначала разобраться, что такое сами алгоритмы. Так вот, алгоритмы можно описать следующими свойствами:
1. Массовость – алгоритм должен быть применён для ряда однотипных задач.
2. Конечность – алгоритм должен состоят из определённого набора шагов логических прохождений. Каждый шаг соответствует определённому конечному промежутку времени.
3. Однозначность – выполнение алгоритма с одними и теми же данными должно удовлетворять одни и тем же результатам.
4. Результативность – алгоритм должен выдавать на выходе какой-либо результат (0 – это тоже результат).
5. Эффективность – алгоритм должен выполнять заданную логику с исходными данными за минимальный промежуток времени и с минимальными затратами памяти.
Чтобы составить алгоритм, применяются различные способы. Один из них – пошаговая разработка. Суть её заключается в построении логических цепочек «сверху-вниз». Сначала рассматривается общая задача поставленной цели, далее разрабатывается общая структура алгоритмов и затем выделяются отдельные части, которые самостоятельно (независимо от других частей цепочки) выполняют некоторую конечную обработку данных. Таким образом, каждая часть может считаться некоторым модулем, который решает самостоятельную подзадачу. Как правило, подобная цепочка строится из последовательного вызова подобных частей, которые сами, в свою очередь, состоят из процедур и функций.
Разобрав, что же такое алгоритм, вернёмся к блок-схемам. Выше мы говорили о неких графических формах. Почему графических? Потому что именно блочная система отображения сложной структуры наиболее логически понятна и самодостаточна. Блок-схемы постоянно используются в профессиональной среде программиста. Они позволяют обширные возможности по свободе в описании решений, которые получаются при нисходящем проектировании. Через подобные графические формы программист (в нашем случае архитектор) способен абстрагироваться от какого-либо конкретного языка программирования, что подразумевает под собой уже некоторую универсальность, потому что на подобные «макеты» можно наложить бизнес-логику приложения используя различные платформы разработки.
Теперь пришло время рассказать, что же такое UML. А UML – это унифицированные язык моделирования (Unified Modeling Language) или просто язык графического описания, с помощью которого описывается (разрабатывается) объектное моделирование бизнес-логики при создании (разработки) программного обеспечения. Данный язык является открытым стандартом, соответствующий установленным спецификациям представления абстрактной модели той или иной системы. Именно для визуализации, проектирования и документирования был создан данный язык моделирования.
UML использует богатый класс различных диаграмм: диаграмма классов, компонентов, составной структуры, развёртывания, объектов, пакетов, деятельности, автомата, прецедентов, обзора взаимодействий и синхронизации.
Теперь, если рассматривать само прикладное программное обеспечения для работы с UML, то могу выделить следующие:
a. под Linux:
1. Umbrello UML Modeller.
2. Dia.
3. Medoosa.
4. Dachshund.
б. под Windows:
1. MS Visio Professional 2007.
2. Magic Draw.
3. Rational family.
4. Sparx Enterprise Architect.
Все приведённые инструменты имеют богатый набор функциональных возможностей, а именно: проверка правильности UML-диаграмм с последующей генерацией исходных кодов, проектирование БД и проверка её правильности.
В заключении хочу упомянуть про ещё один интересный и своеобразный тип блок-схем – графы (в общем порядке их называют как теория графов). Чтобы рассказать про них потребуется ещё одна целая статья, поэтому скажу лишь то, что в основном графы активно используются при проектировании и разработке тестовых комплексов для непосредственного тестирования ПО.

Комментарии