Файл: Применение объектно-ориентированного подхода при проектировании информационной системы (Методология объектно-ориентированного проектирования).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 27.04.2023

Просмотров: 308

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Важнейшим объектом диаграммы является, так называемое, действующее лиц — это роль, которую пользователь играет по отношению к системе. Действующие лица представляют собой роли, а не конкретных людей или наименования работ. Несмотря на то, что на диаграммах вариантов использования они изображаются в виде стилизованных человеческих фигурок, действующее лицо может также быть внешней системой, которой необходима некоторая информация от данной системы (например, Система учета). На диаграмме отражаются только те действующие лица, которые действительно используют ресурсы системы, совершая при этом, какое либо действие, будь то авторизация, запрос данных, составление заказа и прочее.

Все варианты использования, так или иначе, связаны с внешними требованиями к функциональности системы. Если системе учета требуется файл, то это требование должно быть удовлетворено. Варианты использования всегда следует анализировать вместе с действующими лицами системы, определяя при этом реальные задачи пользователей и рассматривая альтернативные способы решения этих задач.[[17]]

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

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

В дополнение к связям между действующими лицами и вариантами ис­пользования существуют два других типа связей: «использование» (uses) и "расширение" (extends) между вариантами использования. Связь типа "расширение" применяется тогда, когда один вариант использования подобен другому, но несет несколько большую нагрузку

Выбор применяемой связи определяется следующими правилами:

• связь "расширение" следует применять при описании изменений в нормальном поведении системы;

• связь "использование" следует применять для избежания повторов в двух (или более) вариантах использования. Варианты использования являются необходимым средством на стадии формирования требований к ПО. Каждый вариант использования — это потенциальное требование к системе, и пока оно не выявлено, невозможно запланировать его реализацию.[[18]]


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

5. Программные продукты для реализации объектно-ориентированного подхода

Для визуального представления предметной области с использованием объектов UML существует огромное количество специализированного софта, о котором и пойдет речь в данной главе.

Microsoft Visio

Пожалуй, самым распространенным графическим редактором является Visio, разработанный, компанией Microsoft. Этот продукт позволяет создавать различные виды диаграмм, в том числе UML. Выпускается в трех версиях: Standard, Professional и Pro. Отличие версии Professional в большем количестве моделей диаграмм и возможностей по их представлению. В редакторе Visio применяется векторная графика, следовательно можно масштабировать изображения без потери качества. Возможности этого редактора основаны на графическом представлении моделей, но у него имеются дополнительные функции, которые присущи CASE средствам, такие как: наличие графического интерфейса, гибкость применения, построение прототипов системы, построение отчетов.

К основным функциям Microsoft Visio относятся:

  • Графическое оформление схем, которое позволяется менять эффекты фигур, изменять конструкцию фигур, сохраняя макеты схем.
  • Совместная работа над схемами. С помощью браузера настраивается совместная работа над проектами, а при установке службы SharePoint Server пользователи имеют возможность оставлять сообщения и редактировать схемы кооперативно.
  • Взаимосвязь схем с наборами данных. Это означает, что каждый класс можно связать с данными из Excel, SharePoint Business и SQL Server.
  • Пользовательские шаблоны проектов. Позволяют добавлять собственные шаблоны и использовать готовые, которые разбиты по категориям. Каждая структура относится к определенной группе процессов и диаграмм UML, среди шаблонов наиболее популярны: схема модели UML, блок-схема, бизнес, сеть, расписания. В каждом шаблоне содержатся фигуры, относящиеся к выбранной пользователем области проектирования.

Преимущества Visio:

  • Легкость и быстрота создания схем. Visio обладает простым и интуитивно понятным интерфейсом, поэтому для разработки не требуются специальные навыки.
  • Наличие шаблонов и образцов диаграмм. В программе встроено огромное количество образцов диаграмм, что ускоряет поиск фигуры для того или иного бизнес процесса.
  • Поддержка стандартных методологий. Microsoft Visio поддерживает самые распространенные нотации по проектированию ИС, такие как eEPC, IDEF0, IDEF3, UML. Для некоторых из них Visio позволяет осуществлять контроль правильности создания схем процессов.[[19]]

IBM Rational Rose

Rational Rose относится к CASE средствам для проектирования информационных систем и визуализации предметной области разрабатываемых программ по управлению предприятиями. Главной особенностью этой программы является объектно-ориентированный подход и взаимодействие с графическими моделями UML, на которые сделан упор.

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

Виды аспектов:

  • Use case. Позволяет определить влияние участников процесса на деятельность предприятия и понять уровень их взаимодействия. К Use case диаграммам относятся: диаграмма последовательности, совместной работы и деятельности.
  • Логический аспект. Этот аспект определяет функциональные требования процессов, отражает атрибуты классов, их взаимосвязь. К этому типу относятся диаграмма классов и состояний.
  • Составляющие элементы. Этот аспект позволяет отобразить разбиение программы на структурные компоненты и связь между ними. Для моделирования используется диаграмма компонентов.
  • Ввод в эксплуатацию. Используется лишь одна диаграмма – топологии. Она позволяет обозначить схему привязки информационной системы к аппаратному обеспечению.

Возможности Rational Rose:

  • Объектное моделирование: Применение языка UML позволяет упростить вид моделей и описать процессы в системе, как взаимодействие объектов.
  • Открытость архитектуры. Позволяет дополнять функции и добавлять новые инструменты.
  • Интеграция моделей. Rational Rose позволяет объединить модели бизнес процессов, модели данных и приложений.
  • Взаимосвязь с другим ПО. С помощью этой функции Rational Rose может интегрироваться с другими программами, например

Microsoft Visual Studio.

  • Структурная визуализация. Позволяет представить модели и процессы в виде структурной иерархической схемы, отражающей их роли и взаимосвязи в системе.[[20]]

Преимущества Rational Rose

Главным преимуществом является применение объектно-ориентированного принципа моделирования, удобство обращения с языком UML и построения диаграмм.

Список преимуществ CASE средства от IBM:

  • Поддержка кооперативной работы. В Rational Rose реализована поддержка всех пользователей, которые могут работать над проектом вместе, без смены рабочего стола, при этом используя собственные модели.
  • Управление моделями. Для управления моделями применяется система контроля версий, что позволяет откатиться на ранее сохраненные стадии создания проекта. Модели могут легко изменяться и внесение изменений в одну модель, влияет и на другие элементы.
  • Контроль ошибок. Rational Rose одна из немногих программ для моделирования, осуществляющая контроль ошибок при создании диаграмм. Перед переходом на следующую стадию моделирования, программа выдает список ошибок, с их описанием, что позволяет в кратчайшие сроки устранить их.
  • Создание отчетов. Для тех пользователей, которым необходимо составить документацию по своему проекту программа предоставляет возможность составить отчеты по каждой модели, в зависимости от потребностей.
  • Настройка окружения. В программе используется графический интерфейс (GUI), с помощью которого можно перемещать элементы меню и настроить окружение по своим предпочтениям.

Rational Rose и по сей день остается одним из самых популярных средств моделирования, он подходит, как для описания бизнес-процессов, так и для работы с множеством языков программирования, среди которых: Delphi, ErWin, Jbuilder, VisualCafe, Jdeveloper, VisualAge и др. Чрезвычайно полезной функцией является – обратное проектирование, когда с помощью исходного кода, восстанавливается диаграмма классов, позволяющая понять структуру объекта моделирования. Функция обратного проектирования позволяет доработать существующую систему и впоследствии создать ее с новым кодом, в зависимости от выбранного языка. Подводя итог, можно сказать, что IBM Rational Rose является стандартом в UML проектировании, с достаточно неудобным интерфейсом в сравнении с тем же Microsoft Visio, но имеющим более полный набор функций и свойств диаграмм. [[21]]

StarUML

StarUML – программный инструмент моделирования, который ориентирован на работу с методологией UML и основывается на модельно - управляемой архитектуре. Под модельно управляемой архитектурой подразумевается вид разработки информационной системы, при котором сначала создается модель предметной области, а затем на ее основе осуществляется реализация в какой-либо среде разработки. Программа StarUML превосходно настраивается в зависимости от требований пользователя и имеет высокую степень расширяемости, позволяя добавлять в среду разработки новые модули и диаграммы, которых нет по умолчанию. Пользователи могут изменять параметры среды разработки, которые в вою очередь влияют на методологию разработки, проектную платформу и язык программирования, с помощью которого выполнена система. Среда разработки StarUML поддерживает нотации UML 1.4 и UML 2.0, позволяя создавать мультиплатформенные модели. Дизайн у этой программы своей простотой больше напоминает, обсуждаемый ранее Rational Rose. Окно рабочей области выполнено в очень сдержанных тонах, желто-зеленоватого оттенка, справа окно свойств, в центре рабочая область, а в левой части выбор классов и элементов. Важным элементом является панель ошибок, находящаяся в нижней части окна, именуемая “output”, она выдает сообщения о правильности составления моделей. Теперь коротко перечислим главные особенности StarUML:


  • Открытый формат программных файлов. При работе с проектом пользователям часто необходимо работать с файлами на разных устройствах, в том числе на тех, где не установлена программа моделирования. Для таких ситуаций в StarUML принят мировой стандарт файлов – XML. Коды проекта могут быть легко открыты в любом XML редакторе.
  • Поддержка Модульно управляемой архитектуры. Согласно принципам MDA для разработки приложения, сначала должна быть построена точная модель предметной области и на ее основе может быть автоматически сгенерирован код проекта.
  • Большой выбор методологий и платформ. StarUML применим ко всем методологиям и процессам, таким как .NET или J2EE.
  • Расширяемость. Для StarUML могут быть разработаны дополнения и программные модули на множестве языков, относящихся к Microsoft COM (Visual Basic Script, Java Script, VB, Delphi, C++, C#, VB.NET, Python).
  • Проверка модулей. Невозможно уследить за всеми ошибками, возникающими на протяжении моделирования, на помощь приходит, окно проверки на ошибки. Оно выводит сообщения о правильности конструирования той или иной схемы. [[22]]

Подводя итог по данному программному средству, следует сказать, что оно отвечает всем необходимым требованиям к CASE средству, а именно: достаточная функциональность для работы с UML, экспорт файлов, автоматизация генерации кодов и прочее. Несмотря на видимые преимущества, имеются существенные недостатки, непозволяющие порекомендовать этот редактор пользователям. Маленькое количество типов диаграмм (11 штук), отсутствие готового объекта, дороговизна лицензии и низкая скорость работы.

Помимо вышеописанных программ моделирования следует обратить внимание на инструментарий под названием Sybase PowerDesigner, который многие специалисты называют одним из лучших средств UML проектирования. Sybase PowerDesigner имеет лишь один существенный недостаток - это отсутствие кроссплатформенности, программа работает только под Windows. В остальном никаких нареканий PowerDesigner поддерживает большое количество языков программирования: С#, C++ (только генерация кода), Java, PowerBuilder, VisualBasic. Обеспечивает поддержку форматов XML и IDL.

Плюсы Sybase PowerDesigner:

  • Удобный и понятный интерфейс.
  • Хорошо реализовано проектирование баз данных.
  • Бесплатный вьювер.
  • Поддержка общего репозитория для коллективной разработки.
  • Богатые визуальные возможности. Пользователи могут как угодно раскрашивать вашу диаграмму, используя различные, в том числе и достаточно серьезные, визуальные эффекты.
  • Возможность создания новых и внесения изменений в имеющиеся шаблоны для генерации кода. Причем для этого есть пользовательский интерфейс.[[23]]