Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Modelirovanie_sistem_uch_posobie_izdatelstvo.doc
Скачиваний:
100
Добавлен:
15.04.2019
Размер:
5.93 Mб
Скачать

7.2.4. Преимущества uml

Использование UML обеспечивает следующие преимущества:

  • UML ‑ объектно-ориентированный язык, в результате чего методы описания результатов анализа и проектирования семантически близки к методам программирования на современных объектно-ориентированных языках;

  • UML позволяет описать систему практически со всех возможных точек зрения и разные аспекты поведения системы;

  • Диаграммы UML сравнительно просты для чтения после достаточно быстрого ознакомления с его синтаксисом;

  • UML расширяем, и позволяет вводить собственные текстовые и графические стереотипы, что позволяет применять его не только в сфере программной инженерии;

  • UML получил широкое распространение и динамично развивается.

UML необходим:

  • руководителям проектов, которые управляют распределением задач и контролем за проектом;

  • проектировщикам информационных систем, которые разрабатывают технические задания для программистов;

  • бизнес-аналитикам, обследующим реальную систему и проводящим инжиниринг и реинжиниринг бизнеса компании;

  • программистам, которые реализуют модули информационной системы.

UML может быть применен на всех этапах жизненного цикла анализа и разработки бизнес-приложений. Различные виды диаграмм, поддерживаемые UML, и богатейший набор возможностей представления определенных аспектов системы делает UML универсальным средством описания как программных, так и деловых (бизнес-) систем.

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

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

Практически все мировые производители CASE-средств заявили о реализации поддержки UML в ближайших версиях своих продуктов. Но уже сегодня существуют множество CASE-средств, автоматизирующих процесс анализа и проектирования в UML (Rational Rose, Paradigm Plus, Select Enterprise, Microsoft Visual Modeler for Visual Basic и др.), поддерживающих множество языков программирования, таких, как C++, Java, Delphi, Power Builder, Visual Basic, Centura, Forte, Ada, Smalltalk, а также позволяющих осуществлять генерацию базы данных для большинства из существующих SQL-серверов.

7.2.5. Унифицированный Процесс разработки по компании Rational

Унифицированный Процесс разработки компании Rational (Rational Unified Process, RUP) – это сумма различных видов деятельности, необходимых для преобразования требований пользователей в программную систему, [18]. Его абстрактное и развёрнутое представление показано на рис. 7.2.

Основными понятиями RUP являются артефакт (artifact) и прецедент (precedent). Артефакты — это некоторые продукты проекта, порождаемые или используемые в нем при работе над окончательным программным продуктом. Прецеденты или варианты использования (use-case) это последовательности действий, выполняемых программной системой для получения наблюдаемого результата.

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

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

(а)

(б)

Рис. 7.2. Унифицированный процесс разработки ПО (а ‑ абстрактное представление, б – развёрнутое представление основных процессов RUP)

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

Для разработки графических представлений (моделей) программной системы RUP использует Унифицированный Язык Моделирования (UML). Фактически UML является неотъемлемой частью RUP ‑ они и разрабатывались совместно.

Однако действительно специфичные аспекты RUP-процесса заключаются в трех словосочетаниях — управляемый вариантами использования, архитектурно-ориентированный, итеративный и инкрементный. Это то, что делает Унифицированный процесс уникальным.

Полное представление программной системы в RUP включает девять моделей, которые совместно охватывают все важнейшие решения относительно визуализации, специфицирования, конструирования и документирования программной системы (рис 7.3):

  1. модель бизнес-процессов, которая формализует абстракцию организации (со всеми вариантами использования управляющей ПС и их связями с пользователями);

  2. модель прецедентов - формализует функциональные требования к системе ;

  3. модель предметной области или бизнес-модель, описывающую контекст системы.

  4. модель анализа, которая имеет две цели — уточнить детали вариантов использования и создать первичное распределение поведения системы по набору объектов, предоставляющих различные варианты поведения;

  5. модель процессов (необязательная) - формализует механизмы параллелизма и синхронизации в системе;

  6. модель проектирования, которая определяет: (а) ‑ статическую структуру системы, такую, как подсистемы, классы и интерфейсы, и (b) ‑ варианты использования, реализованные в виде коопераций между подсистемами, классами и интерфейсами;

  7. модель реализации, которая включает в себя компоненты (представленные исходным кодом) и раскладку классов по компонентам;

  8. модель развертывания, которая определяет физические компьютеры — узлы сети и раскладку компонентов по этим узлам;

  9. модель тестирования, которая описывает варианты тестов для проверки вариантов использования;

Рис. 7.3. Модели RUP (в форме соответствующих UML-диаграмм) и их связи, [18]

Все эти модели связаны. Вместе они полностью описывают программную систему. Элементы одной модели имеют трассировочные зависимости вперед и назад, организуемые с помощью связей с другими моделями (см. рис. 7.3). Например, вариант использования (в модели вариантов использования) может быть оттрассирован на соответствующую реализацию варианта использования (в модели проектирования) и вариант тестирования (в модели тестирования). Трассировка облегчает понимание и внесение изменений. UML-диаграммы, созданные в процессе RUP-разработки, дают полное представление о программном продукте).

Основной упор в RUP делается не на подготовку документов как таковых, а на моделирование разрабатываемой системы. Модели помогают очерчивать как проблему, так и пути ее решения, а создаются они при помощи языка UML, который давно уже стал стандартом де-факто для описания сложных систем и позволяет разработчикам определять, визуализировать, конструировать и документировать артефакты программных систем любой сложности.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]