Проектирование ИС c помощью CASE –средства Ration Rose

 

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

CASE-средство Rational Rose – предназначено для автоматизации этапов анализа и проектирования ПО, а также для генерации кодов на различных языках и выпуска проектной документации. Ration Rose использует методологию объектно-ориентированного анализа и проектирования. Ration Rose содержит средства реинжиниринга программ, обеспечивающие повторное использование программных компонентов в новых проектах. Ration Rose популярное средство визуального моделирования объектно-ориентированных информационных систем компании Rational Software Corp. Работа проекта основана на уникальном языке моделирования UML (Universal Modeling Language). Благодаря уникальному языку моделирования Rational Rose способен решать практически любые задачи в проектировании информационных систем: от анализа бизнес процессов до кодогенерации на определенном языке программирования. Rational Rose позволяет разработать как высокоуровневые, так и низкоуровневые модели, осуществляя тем самым либо абстрактное проектирование, либо логическое. Rational Rose имеет весь необходимый набор визуальных средств проектирования, осуществляет прямое и обратное проектирование.

Использование CASE-средства фирмы «Rational Rose» существенно сокращает цикл разработки проекта; при этом важную роль играет возможность накопления и хранения данных. В основе работы Rational Rose лежит построение различного рода диаграмм и спецификаций, определяющих логическую и физическую структуры модели, ее статические и динамические аспекты. В их число входят диаграммы классов, состояний, сценариев, модулей, процессов.

В составе Rational Rose можно выделить 6 основных структурных компонент: репозиторий, графический интерфейс пользователя, средства просмотра проекта (browser), средства контроля проекта, средства сбора статистики и генератор документов. К ним добавляются генератор и анализатор для С++, обеспечивающий реинжиниринг - восстановление модели проекта по исходным текстам программ. Репозиторий представляет собой объектно-ориентированную базу данных. Средства просмотра обеспечивают "навигацию" по проекту, в том числе, перемещение по иерархиям классов и подсистем, переключение от одного вида диаграмм к другому и т. д. Средства контроля и сбора статистики дают возможность находить и устранять ошибки по мере развития проекта, а не после завершения его описания. Генератор отчетов формирует тексты выходных документов на основе содержащейся в репозитории информации.

В результате разработки проекта с помощью CASE-средства Rational Rose формируются следующие документы:

диаграммы классов;

диаграммы состояний;

диаграммы сценариев;

диаграммы модулей;

диаграммы процессов;

спецификации классов, объектов, атрибутов и операций

заготовки текстов программ;

модель разрабатываемой программной системы.

Последний из перечисленных документов является текстовым файлом, содержащим всю необходимую информацию о проекте. Тексты программ являются заготовками для последующей работы программистов. Они формируются в рабочем каталоге в виде файлов типов .h (заголовки, содержащие описания классов) и .cpp (заготовки программ для методов). Система включает в программные файлы собственные комментарии, которые начинаются с последовательности символов //##.

Перейдем к рассмотрению диаграмм. В первую очередь следует построить диаграмму вариантов использования. Основное назначение диаграммы – описание функциональности и поведения, позволяющее заказчику, конечному пользователю и разработчику совместно обсуждать проектируемую или существующую систему.

Диаграммы вариантов использования описывают функциональное назначение системы или то, что система должна делать. Разработка диаграммы преследует следующие цели:

1. определить общие границы и контекст моделируемой предметной области;

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

3. разработать исходную концептуальную модель системы для ее последующей детализации в форме логических и физических моделей;

4. подготовить исходную документацию для взаимодействия разработчиков системы с ее заказчиками и пользователями.

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

На основе результатов изучения предметной области для информационной системы «Рыбницкого филиала ПГУ Им.Т.Г.Шевченко» была построена диаграмма вариантов использования (рис.1)

Высшее учебное заведение (сокращённо вуз, в соответствии с нормами русского языка пишется строчными буквами) – учебное заведение, дающее высшее профессиональное образование и осуществляющее научную деятельность.

Различают государственные и частные вузы. Вуз может иметь филиалы и представительства в других населённых пунктах.

Деканат – главное звено высшего учебного заведения занимающееся управлением всеми подразделения вуза.

Отдел кадров – совокупность специализированных подразделений в структуре предприятия (с занятыми в них должностными лицами – руководителями, специалистами, техническим персоналом), призванных управлять персоналом предприятия.

Отдел молодежи – недавно организованная структура вуза, отвечающая за организационные вопросы и отдых студентов.

Кафедра – одно из главных и действующих подразделений вуза, занимающееся учебно-воспитательной работой студентов.

Рис. 1. Диаграмма вариантов использования ВУЗа

 

На данной диаграмме отраженны следующие действующие лица (актеры):

· Деканат;

· Отдел кадров;

· Бухгалтерия;

· Отдел молодежи;

· Кафедры(Кафедра АТПП, ПИЭ, ИиПП, ДПИ, Менеджмента, ОД и ГЯиМП);

Диаграмма показывает процесс работы Вуза. Весь процесс описывается следующим образом: Деканат является главным действующим лицом от которого зависит работа других отделов университета. Деканат занимается контролем и управлением работы Кафедры , Отдела кадров, Отдела молодежи, Бухгалтерии. Деканат так же занимается организацией учебного процесса. Бухгалтерия в свою очередь занимается Учетом денежных средств, Контролем бухгалтерской документации, Начислением и Выдачей заработной платы. Отдел кадров занимается Учетом сотрудников и студентов филиала, Хранением личного дела. Отдел молодежи является новой структурой и занимается Организационными вопросами филиала и студентов.

Далее Диаграмма вариантов использования отражает процесс работы кафедры ПИЭ (рис. 2), в которой участвуют следующие действующие лица (актеры):

· Деканат;

· Специалист кафедры;

· Зав.кафедрой;

· Преподаватели;

· Студенты.

Рис. 2. Диаграмма вариантов использования кафедры ПИЭ

 

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

Преподаватель проводит лекции семинары, лабораторно-практические занятия ведет научно- воспитательную работу а так же публикует статьи, разрабатывает методические пособия.

Зав. Кафедрой контролирует посещение занятий а так же совместно со специалистом кафедры подготавливает материалы к заседанию кафедры, и проводит заседания кафедры.

В дальнейшем рассмотрим работу «Специалиста кафедры» на диаграмме взаимодействия, которая включает в себядиаграмму последовательности (рис. 3) и диаграмму кооперации (рис. 4).

Взаимодействие между объектами в системе представляются диаграммами взаимодействия (interaction diagrams). Как правило, диаграмма взаимодействия используется для описания поведения в рамках одного варианта использования. На такой диаграмме изображается ряд объектов и те сообщения, которыми они обмениваются в рамках этого варианта использования.

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

Диаграмма последовательности (sequence diagram) – разновидность диаграммы взаимодействия, акцентирующая внимание на временной упорядоченности сообщений. Графически такая диаграмма представляет собой таблицу, объекты в которой располагаются вдоль оси X, а сообщения в порядке возрастания времени – вдоль оси Y.

Линия жизни объекта – вертикальная линия, отражающая существование объекта во времени. Фокус управления изображается в виде вытянутого прямоугольника, показывающего промежуток времени, в течение которого объект выполняет какое-либо действие.

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

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

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

Рис. 3. Диаграмма последовательности

 

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

 

Рис. 4. Диаграмма кооперации

 

Этими диаграммами показывается последовательность выполнения тех или иных операций, событий, классов а так же продолжительность их деятельности по времени.