47. Критерии сравнения инструментальных систем разработки программных систем.
Дадим сравнительный обзор двух информационных систем для визуального моделирования, лидирующих на рыке программного обеспечения, - Rational Rose (RR) и Paradigm Plus(P+).
Учтем следующие критерии и возможности:
· поддерживаемая нотация
· методологии
· компонентно-базируемое проектирование
· ведение репозитария объектов
· построение диаграмм моделей, пользовательский интерфейс
· генерирование программного кода
· наличие реинжиниринга
· проектирование баз данных, поддержка SQL и мостов для реляционных баз данных, IDL для CORBA
· создание экранного интерфейса
· возможность групповой работы
· наличие Script-языка
· генерирование отчетов и формирование проектной документации
· поддерживаемые платформы
· место в общем цикле разработки программной системы
Поддерживаемая нотация
RR: UML, также поддерживается нотация Буча и ОМТ-2. Диаграммы из различных нотаций автоматически взаимно конвертируются.
P+: UML, всего поддерживается восемь нотаций из методологий ОМТ Рамбо, Буча, Шлеер/Меллора, Fusion, Мартина/Оделла, Кода/Йордана, OOCL. Проект должен вестись только в одной из выбранных нотаций.
Наличие UML в том числе с возможностью моделирования Use Case, отличает современное средство визуального моделирования. Общепризнанно, что "война нотаций закончилась", (но не война методов). Значимость многонотационной поддержки постепенно снижается. В этом смысле средства равнозначны.
Методологии
RR: Средство предназначено для объектно-ориентированных методологии, в частности под разрабатываемую в фирме методологию "Rational Objectory Process".
P+: Наличие многих нотаций позволяет поддерживать практически любую современную объектно-ориентированную методологию. Имеется фирменная методология "ECM-Enterprise Component Modeling", поддерживаемая в электронном виде.
Оба средства сочетают объектно-ориентированный подход с методологической поддержкой.
Компонентно-базируемое проектирование
RR: Позволяет моделировать и разрабатывать классы и компоненты, пригодные для повторного использования и включать их в разрабатываемые проекты.
P+: Имеется возможность связывать разрабатываемые компоненты в диаграммы. Броузер позволяет разработчику искать и получать доступ к объектам в других приложениях и повторно использовать их в своих разработках.
Оба средства отражают современные тенденции разработки программных систем.
Ведение репозитария объектов
RR: Открытого репозитария нет. Модели хранятся как ASCII-файлы, управляются через внутренний репозитарий. Поддерживается согласованность всех составных частей проекта. Явного доступа нет, репозитарий скрыт от пользователя, но к его элементам можно обратиться с помощью Script-языка.
Ведутся активные работы по использованию стандартных MS-Repository и Unisys UREP.
P+: Собственный репозитарий, реализованный на основе объектно-ориентированной СУБД ObjectStore фирмы ObjectDesign. Единый репозитарий используется при работе на различных платформах Unix, Windows, OS/2.
Наличие репозитария обычно приводится как значительное преимущество P+, но явного выигрыша по отношению к RR здесь не видно. Более того позиции по отношению к использованию репозитария сближаются.
Построение диаграмм моделей. Пользовательский интерфейс
RR: Интерактивный многооконный интерфейс с возможностями OLE-технологий. Поддерживается согласованность между диаграммами, так что изменения в объектной модели немедленно отображаются в соответствующих сценарных диаграммах. Работа с диаграммами и их элементами осуществляется через диалоговые окна или через броузер. Все диаграммы сопровождаются подробными спецификациями. Можно исключать на диаграммах изображение отдельных деталей. Пользовательский интерфейс настраивается. Предусмотрены специальные средства поиска и диагностики. Есть возможность создавать новые стереотипы для элементов моделей.
P+: Практически аналогичные функциональные возможности, но в более современном стиле, хотя интерфейс несколько перегружен. Поддерживается OLE2. Больше параметров можно указать при описании элементов моделей. Также можно управлять объемом отображаемой в моделях информации и погасить ненужную. Согласованность диаграмм поддерживается. Реализованы традиционные режимы графического редактора: создание, редактирование, удаление элементов модели. Различная степень визуализации модели. Кроме графического редактора диаграмм имеется матрично-табличная форма определения отношений между объектами. Изменения на любой диаграмме автоматически отражаются на всех других связанных диаграммах.
Оба средства содержат основные возможности графического редактирования и работы в диалоговых окнах. В RR эти возможности попроще, а в P+ графическое отображение значительно медленнее. Очевидно, это связано с постоянным обращением к объектной базе данных, используемой как репозитарий.
Генерирование программного кода
RR: Генерируется каркас программы, заголовочные файлы, поля реализации и некоторые методы, но не законченное приложение. Rose генерирует коды на языках Ada, C++, Smalltalk, Visual Basic, Java и IDL. Rational Rose - это семейство продуктов и в рамках одного CASE-средства можно генерировать программный код только для данного языка. Ожидается, что кодогенераторы будут поставляться отдельно при общем ядре визуального моделирования. Стиль программного модуля может формироваться пользователем в весьма широких пределах путем настраивания свойств кодогенератора как для всего проекта, так и для отдельных элементов. Возможность подключения базовых стандартных библиотек MFC, RogueWave и др.
P+: Генерирует коды для Ada, C/C++, Visual C++, Smalltalk, Java, OO COBOL, Delphi. Также генерируются коды для SQL, Active/X и физических определений для объектных и реляционных баз данных.
Свойства практически одинаковые. Нет возможности генерации из модели завершенного приложения.
Наличие реинжиниринга
RR: Поддерживает реинжиниринг и может загрузить код из С++, PowerBuilder, Forte, Java, IDL, Ada, Smalltalk или SQLWindows в свою среду и сгенерировать диаграммы отражающие изменения сделанные в коде по сравнению с более ранними диаграммами. Поддерживается концепция возвратного проектирования (RTE) с возможностью сравнения вновь сгенерированной диаграммы с предыдущей при очередной итерации.
P+: Поддерживается реинжиниринг с кода на С, С++, Visual C++, Smalltalk, Forte, PowerBuilder, VisualBasic, Forte, Java, ObjectPro фирмы Platinum.
Есть прямой инжиниринг, реинжиниринг и возвратное проектирование для основных языков программирования.
Проектирование баз данных. Поддержка SQL и мостов для реляционных баз данных, IDL для CORBA
RR: Для выделенных классов автоматическое создание DDL-файлов с учетом особенностей конкретных СУБД (Oracle7, Sybase SQL…). Возможности генерации схем весьма ограничены. Для проектирования баз данных существуют мосты к Silverrun, Erwin, PowerDesigner. Планируется связь с Oracle8. Rational Rose генерирует и делает реинжиниринг для CORBA2.0, совместимый код для Orbix Iona.
P+: Интегрирована SQL-станция с возможностью проектирования таблиц баз данных путем отображения объектов в реляционную модель. Возможность создания и реинжиниринга схем для ведущих СУБД, включая Oracle, Sybase, Informix, DB2, SQL Server. По сути, встроен самостоятельный CASE проектирования реляционных баз данных с возможностью построения ER-моделей.
В P+ проектирование баз данных существенно лучше, чем в RR, но уступает специализированным средствам типа Silverrun.
Создание экранного интерфейса
Возможность визуальной разработки экранов отсутствует.
Возможность групповой работы
RR: Поддерживает управление и контроль версий и разбиение проекта на модули(Units), так что индивидуальный разработчик может закрыть доступ (заблокировать) к части приложения. Более того, Rational Rose может организовать их так, чтобы каждый разработчик работал с полной моделью внутри своего рабочего пространства.
Интеграция со стандартными системами контроля и управления версиями ClearCase, PVCS.
P+: Группа разработчиков может работать над проектом одновременно используя либо централизованный, либо распределенный репозитарий объектов. Поддерживается контроль версий и блокирование модулей отдельными разработчиками. Собственная система контроля и управления версиями в рамках репозитария CCC/Harvest, а также Sourсe Safe, PVCS.
Групповая работа поддерживается.
Наличие Script-языка
RR: Имеется script-язык и развитой набор API-функций, реализованных на базе Ms-VB 5.0, обеспечивающий полный доступ к элементам моделей Rational Rose.
P+: Собственный BASIC-подобный язык с набором функций доступа к репозитарию и возможностью управления диаграммами проекта.
Оба средства содержат Script-язык.
Генерирование отчетов и формирование проектной документации
RR: Диаграммы и их спецификации входящих в них объектов можно вывести на печать. Генератор отчетов в формате RTF интегрирован в MS Word. Есть возможность подготовки документации через генератор документации Rational SoDA.
P+: Все сделанное в Paradigm Plus может быть документировано, выведено на печать и импортировано во множество существующих форматов. Генерируются статистические отчеты. Используется инструмент подготовки документации Paradigm Publisher для вывода данных в MS Word.
Оба средства позволяют выводить рабочую проектную документацию.
Поддерживаемые платформы
RR: Windows,Alpha NT, Solaris, HP-UX, AIX.
P+: Windows ,Alpha NT, Solaris, HP-UX, AIX.
Оба средства многоплатформенные.
Место в общем цикле разработки программной системы
RR: Это средство для визуального объектно-ориентированного моделирования, анализа проектирования и программирования программных систем. Возможность построения различного рода диаграмм и их документирование позволяет использовать Rational Rose для сбора требований и документирования бизнесс-процессов, но это дополнительные возможности. Также можно, но нецелесообразно использовать данное средство для проектирования баз данных из-за недостаточной поддержки генерации SQL-кодов. Фирма Rational предлагает комплексное решение путем интеграции Rational Rose с Requisite Baseline, RequisitePro для сбора и документирования требований к системе, использование программных мостов для проектирования баз данных, SQA Suite или Rational Visual Test как средства тестирования.
P+: Продукт объявлен как сочетающий в себе возможности объектно-ориентированного моделирования бизнес процессов, анализа и проектирования и программирования программных систем, разработки баз данных. Все эти возможности реализованы в одном продукте. Кроме того, для комплексного решения предлагается использовать дополнительно целый набор фирменных инструментальных средств по тестированию, управлению проектом, проектной генерации документации и т.д.
Оба продукта - инструменты для итеративного объектно-ориентированного анализа проектирования и разработки программных систем.
- Разработка и стандартизация программных систем
- 1. Три типа жизненных циклов программных систем.
- Водопадная (каскадная, последовательная) модель
- Итерационная модель
- Спиральная модель
- 3. Стандарт iso серии 9000 при разработке программных систем.
- Iso 9000 — серия международных стандартов, описывающих требования к системе менеджмента качества организаций и предприятий.
- 4. Стандарты Единой системы программной документации (еспд)
- Классификация:
- 5. Стандарты рф (гост р) на документирование пс
- 6. Организация группы проекта при разработке программных систем.
- 7. Три способа определения требований к программной системе.
- 8. Спецификация требований к программной системе.
- 9. Методы контроля спецификации требований.
- 10. Спецификация качества программных систем.
- 11. Функциональная спецификация программных систем.
- 12. Архитектура программных систем
- 13. Основные классы архитектур программных систем.
- 14. Основные модели при разработке программных систем.
- (См. Вопрос 1!)
- 15. Принципы объектно-ориентированного анализа и проектирования пс
- 16. Принципы компонентной архитектуры информационных систем.
- 17. Стандарты семейства idef
- 18. Принципы построения модели idef0
- 19. Принципы разработки моделей as-is и то-ве
- 20. Диаграммы в стандарте idef0
- 21. Понятие работы в стандарте idef0
- 22. Описание взаимодействия работ в стандарте idef0
- 23. Типы связей работ в стандарте idef0
- 24. Стандарт idef1x
- 26. Диаграммы потоков данных.
- 27. Архитектурные виды программной системы.
- 28. Фазы, итерации и циклы разработки программных систем - руп.
- 29. Рабочие процессы создания программных систем - руп.
- 30. Основные артефакты при разработке программных систем.
- 31. Концепция языка uml
- 32. Язык uml как система визуализации, специфицирования, конструирования, документирования
- 33. Понятия модели и системы в языке uml
- 34. Принципы моделирования системной архитектуры в языке uml.
- 35. Принципы представления системы в языке uml.
- 36. Понятие сущностей в языке uml
- 37. Структурные сущности предметной области.
- 38. Отношения в языке uml
- 39. Диаграммы в языке uml
- 40. Правила языка uml.
- 41. Общие механизмы языка uml
- 42. Прецедент как спецификация поведения программных систем.
- 43. Организация прецедентов в языке uml.
- 44. Приемы анализа прецедентов в языке uml
- 45. Диаграммы прецедентов.
- 46. Моделирование требований к системе с помощью диаграмм прецедентов.
- 47. Критерии сравнения инструментальных систем разработки программных систем.
- 48. Технико-экономические показатели разработки программных средств
- 49. Сертификация программных средств
- 50. R-технология программирования