Добрый день. На странице https://intuit.ru/studies/professional_skill_improvements/1364/courses/229/lecture/5954
не работает ссылка http://www.omg.org/technology/documents/modeling_spec_catalog.htm#UML |
Обзор CASE-средств для построения диаграмм UML
UML - отличное средство моделирования, но, как уже говорилось выше, строить диаграммы на бумаге - не всегда удобно, хотя бы по причине сложностей с редактированием, распространением и т. д. Чтобы облегчить труд проектировщика, были созданы CASE-средства - программы специального вида. CASE-средства помогут вам построить профессионально выглядящие диаграммы, даже если вы не в состоянии провести прямую линию на бумаге!
CASE-средства (от Computer Aided Software/System Engineering) - позволяют проектировать любые системы на компьютере. Необходимый элемент системного и структурно-функционального анализа, CASE-средства позволяют моделировать бизнес-процессы, базы данных, компоненты программного обеспечения, деятельность и структуру организаций. Применимы практически во всех сферах деятельности. Результат использования CASE-средств - оптимизация систем, снижение расходов, повышение эффективности, снижение вероятности ошибок.
Существует немало подобных программ. Выбор CASE-средства "по себе" - личное дело каждого читателя, и мы ни в коей мере не собираемся влиять на него. Мы лишь попытаемся предоставить ему этот выбор, рассмотрев некоторые наиболее достойные внимания, с точки зрения авторов, CASE-средства для построения UML-диаграмм. Причем постараемся рассказать и о признанных лидерах рынка, и о его "аутсайдерах", и о коммерческих "монстрах", и о "легких" программах с открытым исходным кодом. И начнем, пожалуй, с пакета, являющегося фактическим стандартом в области UML-проектирования.
IBM Rational Rose
Rational Rose - современное и мощное средство анализа, моделирования и разработки программных систем. Rational Rose пригодится при решении практически любых задач проектирования информационных систем: от анализа бизнес-процессов до кодогенерации на определенном языке программирования. Такой арсенал позволит не только спроектировать новую систему, но и доработать старую, произведя процесс обратного проектирования.
Для того чтобы наиболее полно покрыть весь сегмент рынка средств проектирования и разработки, выпускается несколько версий продукта:
-
Rational Rose Modeler
Эта версия позволит аналитикам и проектировщикам проводить анализ бизнес-процессов и проектировать систему. Данная редакция, увы, не поддерживает кодогенерацию.
-
Rational Rose Professional
Как видно из названия, это профессиональная редакция продукта. В зависимости от выбранного языка программирования позволяет выполнять прямое и обратное проектирование. Rose Professional заказывается только в определенной конфигурации (например, Rose Professional С++ или Rose Professional С++ DataModeler). Rational Rose Professional, конечно, не создает 100 % исполняемого кода. На выходе разработчик получает каркасный код информационной системы на определенном (заказанном) языке программирования, который впоследствии нужно еще программировать и программировать. Продукт нацелен и на аналитиков, и на разработчиков.
-
Rational Rose RealTime
Версия продукта, созданная специально для получения 100 % исполняемого кода в реальном масштабе времени. Конечно, RealTime позволяет проводить прямое и обратное проектирование на языках С или С++. По заверениям разработчиков, на выходе модель автоматически компилируется и собирается в исполняемый файл. Само собой, продукт предназначен именно для разработчиков.
-
Rational Rose Enterprise
Абсолютно полная версия. Поддерживаются все функции других редакций, за исключением возможности 100 % кодогенерации. Таким образом, эта версия продукта покрывает весь спектр задач по проектированию, анализу и кодогенерации. Это программный пакет для всех участников проекта.
-
Rational Rose DataModeler
Это не конкретный вариант продукта, а функциональность по проектированию баз данных. Функции DataModeler входят в состав Rose Enterprise или Professional.
К сожалению, нет бесплатной версии продукта, но для образовательных учреждений все программное обеспечение IBM доступно бесплатно (для использования в учебных целях) в рамках программы IBM Academic Initiative.
А как же выглядит это чудо? Не слишком изысканно, но вполне функционально - судите сами (рис. 7.1):
В зависимости от поставки, в Rational Rose может быть расширен или сужен набор визуальных компонент (возможных диаграмм). Впрочем, Rational Rose и так достаточно функционален. Вот основные возможности продукта:
- прямое и обратное проектирование на языках: ADA, Java, С, C++, Basic;
- поддержка технологий COM, DDL, XML;
- возможность генерации схем БД Oracle и SQL.
Также Rational Rose имеет открытый API, позволяющий самому создавать модули для других языков программирования. На рынке уже имеется достаточное число модулей для популярных языков программирования и RAD-систем, таких как Delphi, ErWin, Jbuilder, VisualCafe, Jdeveloper, VisualAge SmallTalk. Одна из ведущих компаний в области создания дополнительных модулей - Ensemble Systems (http://www.ensemble-systems.com/).
Rational Rose много раз признавалось различными изданиями лучшим средством проектирования. Вот только некоторые из них (рис. 7.2):
Если вы программировали в MS Visual Studio 6.0, то, возможно, вы уже познакомились с одним из продуктов семейства Rational Rose, поскольку в этот пакет встроен Visual Modeler - усеченный вариант Rational Rose 98. С помощью Visual Modeler можно рисовать диаграммы классов в трех различных нотациях - нотации Буча, ОМТ и на UML. По диаграммам классов можно провести генерацию каркасного кода (на C++, VB или Java). Такая генерация программного кода называется прямым проектированием (forward engineering). Взаимозависимости классов, изображенных на диаграмме классов, отображаются в программном коде.
Большой интерес представляет обратное проектирование (reverse engineering), когда по исходному коду восстанавливается диаграмма классов, позволяющая понять структуру программы. Это тоже можно делать с помощью Visual Modeler, причем на основе Microsoft Foundation Classes (MFC)! К ограничениям Visual Modeler относится тот факт, что он не поддерживает диаграммы развертывания, описывая лишь внутреннюю функциональность создаваемой системы.
Также Rational Rose интегрируется с Visual Component Manager, репозиторием Microsoft Repository, системой управления версиями Microsoft Visual SourceSafe и Rational ClearCase. Плюс многое-многое другое...
Конечно, можно еще долго петь дифирамбы этому продукту, являющемуся, по сути, стандартом де-факто в области UML-проектирования (с субъективной точки зрения авторов, этот продукт не слишком интуитивен и удобен, хотя, без сомнения, сверхфункционален). Честно говоря, как ни парадоксально это звучит, особого впечатления на авторов этот продукт не произвел, возможно, по причине недостаточного с ним знакомства. Думаем, что сами разработчики расскажут о своем продукте гораздо лучше. Предоставим же читателю возможность оценить этот продукт, основываясь на информации "из первых рук"! Вы можете это сделать, посетив такие сайты:
http://www-306.ibm.com/software/rational/ Это официальный сайт Rational, где вы сможете найти информацию о Rational Rose и других продуктах Rational (на англ. языке). Также можете попробовать сходить по "старому адресу" - www.rational.com.
http://interface.ru/ Сайт компании "Интерфейс". Как уверяют авторы ресурса, на сегодняшний день здесь собран самый большой (в Рунете) архив информации по продуктам Rational. Здесь можно найти множество статей, обзоров, руководств и описаний "по теме" и на русском языке.
http://sunset.usc.edu/cse/ А здесь можно найти неплохой архив презентаций и статей по темам программной инженерии, в том числе и о Rational Rose (на англ. языке).