ВВЕДЕНИЕ
Процесс проектирования ИС подразумевает выполнение целого комплекса взаимоувязанных между собой специализированных инженерных и конструкторских работ различного тематического профиля (информатика, вычислительная техника, программирование, математика, экономика, строительство и т.п.), которые можно в соответствии со спецификой их исполнения условно разделить на следующие направления:
• инженерно-техническое проектирование, связанное с разработкой информационно-вычислительной среды и средств инженерного обеспечения системы;
• проработка проектных решений по созданию вычислительной, программной и информационной среды системы, в том числе осуществление математико-компьютерного моделирования информационно-длительных и коммуникационных процессов как для отдельных элементов системы, так и для системы в целом;
• проектирование инженерных коммуникаций и средств жизнеобеспечения системы - проектирование кабельной коммуникационной системы, проектирование систем энергоснабжения, вентиляции, освещения, охранной и пожарной сигнализации, архитектурно-строительное проектирование производственных помещений для персонала, разработка интерьеров помещений и т.д.;
• технико-экономическое обоснование проектных решений, включающее определение, оптимизацию и обоснование технико-экономических показателей и характеристик проектируемой системы на основе заданных целевых критериев ее функционирования;
• проектная проработка вопросов технической поддержки эксплуатации системы после ее создания и ввода в действие, включающая обеспечение технической поддержки программно-технических средств системы в процессе эксплуатации;
• управление ходом выполнения самого процесса проектирования, обеспечивающее:
- определение состава и этапности проектных работ;
- обеспечение календарного планирования хода выполнения проектных работ в соответствии с их этапностью;
- планирование материальных и людских ресурсов, выделенных на реализацию проекта, увязка ресурсного планирования с календарным;
- контроль хода реализации проекта;
• разработка проектно-конструкторской документации на систему.
В качестве средств методической и программно-технической поддержки процесса проектирования в соответствии с приведенной классификацией проектных работ можно выделить:
• для проектирования вычислительной среды - методы экспертных оценок и математико-компьютерного моделирования, а также соответствующие программно-технические средства (ПТС) на основе экспертных систем и ПТС для создания моделей вычислительной среды, в том числе ПТС имитационного моделирования;
• для проектирования программной и информационной среды - компьютерное моделирование и CASE-технологии, а также соответствующие ПТС для проведения моделирования и программные CASE-продукты;
Объектно-ориентированное программирование нацелено на разработку крупных программных комплексов, разрабатываемых командой программистов (возможно, достаточно большой). Проектирование системы в целом, создание отдельных компонент и их объединение в конечный продукт при этом часто выполняется разными людьми, и нет ни одного специалиста, который знал бы о проекте всё.
Объектно-ориентированное проектирование состоит в описании структуры и поведения проектируемой системы, то есть, фактически, в ответе на два основных вопроса:
· Из каких частей состоит система
.
· В чём состоит ответственность каждой из частей
.
Выделение частей производится таким образом, чтобы каждая имела минимальный по объёму и точно определённый набор выполняемых функций (обязанностей), и при этом взаимодействовала с другими частями как можно меньше.
Дальнейшее уточнение приводит к выделению более мелких фрагментов описания. По мере детализации описания и определения ответственности выявляются данные, которые необходимо хранить, наличие близких по поведению агентов, которые становятся кандидатами на реализацию в виде классов с общими предками. После выделения компонентов и определения интерфейсов между ними реализация каждого компонента может проводиться практически независимо от остальных (разумеется, при соблюдении соответствующей технологической дисциплины).
Большое значение имеет правильное построение иерархии классов. Одна из известных проблем больших систем, построенных по ООП - технологии - так называемая проблема хрупкости базового класса
. Она состоит в том, что на поздних этапах разработки, когда иерархия классов построена и на её основе разработано большое количество кода, оказывается трудно или даже невозможно внести какие-либо изменения в код базовых классов иерархии (от которых порождены все или многие работающие в системе классы). Даже если вносимые изменения не затронут интерфейс базового класса, изменение его поведения может непредсказуемым образом отразиться на классах-потомках. В случае крупной системы разработчик базового класса не просто не в состоянии предугадать последствия изменений, он даже не знает о том, как именно базовый класс используется и от каких особенностей его поведения зависит корректность работы классов-потомков.
1.
UML
как стандарт для создания модели информационной системы
UML
(сокр. от англ. Unified Modeling Language
- унифицированный язык моделирования) - язык графического описания создания моделей. UML создавался для использования в процессе разработки программного обеспечения. Главной его целью было достижение единого видения разработчиков и пользователей на создаваемые программы.
Унифицированный язык моделирования ( Unified Modeling Language ) появился в конце 80-х в начале 90-х годов в основном благодаря усилиям Гради Буча, Джима Рамбо и Ивара Якобсона. В настоящее время консорциум OMG принял этот язык как стандартный язык моделирования, который предоставляет разработчикам четкую нотацию, позволяющую отображать модели общепринятыми и понятными каждому члену проекта графическими элементами.
Производство программного обеспечения – высокозатратный процесс. Стоимость разработки во многом зависит как от объема необходимой работы и от качества принимаемых решений.
Неправильные решения уводят проект с нужного направления, что увеличивает его сроки и стоимость. Наиболее эффективный вариант проверки решений – это демонстрация результатов пользователям и изменение программ по их замечаниям. Однако, это и наиболее долгий и затратный вариант, поскольку пользователи зачастую не могут заранее подробно объяснить свои пожелания и до последнего момента оценить правильность реализации, что может привести к дорогостоящим переделкам кода, а иногда и всей концепции системы.
Создание моделей позволяет более наглядно документировать решения. До реализации идей в коде понять и объяснить другим участникам проекта, как будет работать программа. А пользователям предоставление моделей позволяет понять, соответствует ли заявленная работа тому, что им действительно нужно.
Создать модель можно в сотни и тысячи раз быстрее, чем создать реальный прототип программы. Модель намного легче и быстрее доработать и изменить, если обсуждение покажет принятые решения не верными. В итоге создание моделей сокращается необходимость переделок в программах, что делает разработку дешевле и быстрее. Использование моделей при создании больших систем, позволяет охватить систему одним взглядом и достичь лучшего его понимания всеми заинтересованными лицами.
2. Особенности работы в средстве проектирования Rational Rose 2003
В CASE-средстве IBM Rational Rose 2003 реализованы общепринятые стандарты на рабочий интерфейс программы, аналогично известным средам визуального программирования. После установки IBM Rational Rose 2003 на компьютер пользователя, что практически не вызывает трудностей у разработчиков, запуск этого средства в среде MS Windows 2000/XP приводит к появлению на экране соответствующего рабочего интерфейса (рис.1).
Рабочий интерфейс программы IBM Rational Rose 2003 состоит из различных элементов, основными из которых являются:
· главное меню;
· стандартная панель инструментов;
· специальная панель инструментов;
· окно браузера проекта;
· рабочая область изображения диаграммы или окно диаграммы;
· окно документации;
· окно журнала.
Рассмотрим назначение и основные функции каждого из этих элементов.
Главное меню программы IBM Rational Rose 2003 выполнено в общепринятом стандарте.
Отдельные пункты меню объединяют сходные операции, относящиеся ко всему проекту в целом. Некоторые из пунктов меню содержат хорошо знакомые операции, такие как открытие проекта, вывод на печать диаграмм, копирование в буфер и вставка из буфера различных элементов диаграмм. Другие операции настолько специфичны, что могут потребоваться дополнительные усилия для их изучения (свойства операций генерации программного кода или проверки согласованности моделей). Назначение отдельных операций главного меню приводится далее в данной лекции.
Стандартная панель инструментов располагается ниже строки главного меню. Некоторые из инструментов недоступны для нового проекта, который не имеет никаких элементов. Стандартная панель инструментов обеспечивает быстрый доступ к тем командам меню, которые выполняются разработчиками наиболее часто.
Пользователь может настроить внешний вид этой панели по своему усмотрению. Для этого необходимо выполнить операцию главного меню: Tools
(Инструменты
(Панели инструментов) появившегося диалогового окна и нажать кнопку Standard
(Стандартная) . В дополнительно открытом окне можно переносить требуемые кнопки из левого списка в правый список, а ненужные кнопки - из правого списка в левый. Данным способом можно показать или скрыть различные кнопки инструментов, а также изменить их размер. Назначение отдельных кнопок стандартной панели инструментов приводится далее при рассмотрении операций главного меню.
Рабочий интерфейс средства IBM Rational Rose 2003 имеет главное меню, которое позволяет пользователю загружать и сохранять информацию во внешних файлах, изменять внешний вид элементов графического интерфейса, вызывать справочную информацию, вызывать другие диалоговые окна для работы с программой IBM Rational Rose 2003 и т.д. Рассмотрим назначение отдельных пунктов главного меню средства IBM Rational Rose 2003.
Операции главного меню File
(Файл) позволяют создавать новые модели в нотации языка UML, загружать и сохранять разрабатываемую модель во внешнем файле, распечатывать на принтере разработанные диаграммы. Назначение операций этого пункта главного меню представлено в таблице 1.
Операции главного меню Edit
(Редактирование) позволяют выполнять действия по редактированию элементов модели и их свойств, а также выполнять поиск элементов в рамках разрабатываемого проекта. Назначение операций этого пункта главного меню представлено в таблице 2.
Таблица 1 - Операции пункта главного меню File (Файл)
Название операции меню | Наличие кнопки на стандартной панели | Назначение операции главного меню |
New | Создает новую модель IBM Rational Rose 2003. При этом новая модель по умолчанию имеет имя untitled | |
Open | Вызывает стандартное диалоговое окно открытия внешнего файла с диска. Открыть можно либо файл модели (файл с расширением «mdl»), либо файл подмодели (файл с расширением «ptl») | |
Save | Позволяет сохранить разрабатываемую модель во внешнем файле на диске | |
Save As | Позволяет сохранить разрабатываемую модель под другим именем во внешнем файле на диске. При этом вызывается стандартное диалоговое окно сохранения файла на диске с предложением задать имя соответствующего файла модели или подмодели. | |
Save Log As | Позволяет сохранить содержание журнала во внешнем файле на диске с именем error.log. При этом вызывается стандартное диалоговое окно сохранения файла на диске с предложением изменить предлагаемое по умолчанию имя соответствующего файла. | |
AutoSave Log | Позволяет автоматически сохранять содержание журнала во внешнем файле на диске с именем error.log. При первом выполнении этого пункта меню также вызывается стандартное диалоговое окно сохранения файла на диске с предложением изменить предлагаемое по умолчанию имя соответствующего файла. | |
Clear Log | Очищает содержание журнала | |
Load Model Workspace | Позволяет загрузить рабочую область из внешнего файла на диске. Вызывает стандартное диалоговое окно открытия внешнего файла с диска, при этом открыть можно файл с расширением «wsp» | |
Save Model Workspace | Позволяет сохранить рабочую область модели во внешнем файле на диске. При выполнении этого пункта меню вызывается стандартное диалоговое окно сохранения файла с расширением «wsp» | |
Save Model Workspace As | Позволяет сохранить рабочую область модели во внешнем файле на диске. Вызывается стандартное диалоговое окно сохранения файла с предложением изменить предлагаемое по умолчанию имя соответствующего файла | |
Units | Позволяет загрузить категорию элементов модели из внешнего файла на диске. Вызывает стандартное диалоговое окно открытия внешнего файла с диска, при этом открыть можно файл с расширением «cat» | |
Import | Позволяет импортировать информацию из внешних файлов различных форматов, включая файлы моделей, подмоделей, категорий и подсистем | |
Export Model | Позволяет экспортировать информацию о модели во внешний файл. Вид этого пункта меню зависит от выделенного элемента модели | |
Update | Позволяет вставить информацию обратного проектирования из внешнего файла с расширением «red» в разрабатываемую модель | |
Позволяет распечатать на принтере отдельные диаграммы и спецификации различных элементов разрабатываемой модели. В этом случае вызывается диалоговое окно выбора диаграмм и спецификаций для печати на подключенном к данному компьютеру принтеру | ||
Print Setup | Вызывается стандартное диалоговое окно макета страницы для настройки свойств печати | |
Edit Path Map | Вызывает окно задания путей доступа к файлам системы IBM Rational Rose 2003. Как правило, значения путей, установленные по умолчанию, следует изменять только в случае крайней необходимости | |
<Имена файлов> | Секция с именами последних файлов, с которыми осуществлялась работа в IBM Rational Rose 2003 | |
Exit | Прекращает работу и закрывает IBM Rational Rose 2003 |
Таблица 2 - Операции пункта главного меню Edit (Редактирование)
Название операции меню | Наличие кнопки на стандартной панели | Назначение операции главного меню |
Undo | Отменяет выполнение последнего действия по удалению или перемещению элементов модели | |
Redo | Восстанавливает изображение диаграммы после отмены выполнения последней операции перемещения | |
Cut | Вырезает выделенный элемент разрабатываемой модели и помещат его в буфер обмена | |
Copy | Копирует выделенный элемент разрабатываемой модели и помещает его в буфер обмена | |
Paste | Вставляет элемент разрабатываемой модели или его копию из буфера обмена в текущую активную диаграмму | |
Delete | Удаляет выделенные элементы из текущей диаграммы, но не из разрабатываемой модели | |
Select All | Выделяет все элементы на текущей диаграмме разрабатываемой модели | |
Delete from Model | Удаляет все выделенные элементы из разрабатываемой модели | |
Relocate | Позволяет перемещать или отменять перемещение классов, ассоциаций или компонентов из одного пакета в другой | |
Find | Вызывает диалоговое меню поиска элемента в разрабатываемой модели по его имени | |
Reassign | Позволяет заменить выделенный элемент разрабатываемой модели другим элементом модели | |
Compartment | Позволяет отображать дополнительную информацию об объектах, классах, актерах или пакетах | |
Change Info | Позволяет изменить тип выделенного элемента на текущей диаграмме на другой тип элемента |
Операции главного менюView
(Вид) позволяют отображать на экране различные элементы рабочего интерфейса и изменять графическое представление диаграмм. Назначение операций этого пункта главного меню представлено в следующей таблице (табл. 3).
Таблица 3 - Операции пункта главного меню View (Вид)
Название операции меню | Наличие кнопки на стандартной панели | Назначение операции главного меню |
Toolbars | Позволяет настроить внешний вид рабочего интерфейса системы IBM Rational Rose 2003 и содержит дополнительные подпункты: Standard Toolbox Configure | |
Status Bar | Делает видимой/невидимой строку состояния | |
Documentation | Делает видимым/невидимым окно документации | |
Browser | Делает видимым/невидимым браузер проекта | |
Log | Делает видимым/невидимым окно журнала | |
Editor | Делает видимым/невидимым встроенный текстовый редактор | |
Time Stamp | Включает/выключает режим отображения времени в записях журнала | |
Zoom to Selection | Изменяет масштаб изображения выделенных элементов модели , так чтобы они разместились в одном окне | |
Zoom In | Увеличивает масштаб изображения | |
Zoom Out | Уменьшает масштаб изображения | |
Fit in Window | Изменяет (уменьшает) масштаб изображения всех элементов текущей диаграммы, так чтобы все они разместились в одном окне | |
Undo Fit in Window | Отменяет изменение масштаба изображения размещения элементов в одном окне | |
Page Breaks | Разбивает текущую диаграмму на страницы для последующей печати | |
Refresh | Перерисовывает текущую диаграмму | |
As Booch | Изображает элементы модели в соответствии с нотацией Г. Буча | |
As OMT | Изображает элементы модели в соответствии с нотацией OMT | |
As Unified | Изображает элементы модели в соответствии с нотацией языка UML |
Операции главного менюFormat
(Формат) позволяют выполнять действия по изменению внешнего вида элементов модели на различных диаграммах. Назначение операций этого пункта главного меню представлено в следующей таблице (табл. 4).
Таблица 4 - Операции пункта главного меню Format (Формат)
Название операции меню | Назначение операции главного меню |
Font Size | Изменяет масштаб используемого шрифта |
Font | Вызывает диалоговое окно выбора шрифта |
Line Color | Вызывает диалоговое окно выбора цвета линий |
Fill Color | Вызывает диалоговое окно выбора цвета для изображения графических элементов диаграмм |
Use Fill Color | Включает/выключает режим отображения цвета для изображения графических элементов диаграмм |
Automatic Resize | Включает/выключает режим автоматического изменения размеров графических элементов диаграмм для отображения текстовой информации об их свойствах |
Stereotype | Позволяет выбрать способ изображения стереотипов выделенных элементов диаграммы и содержит дополнительные подпункты: None Label Decoration Icon |
Stereotype Label | Включает/выключает режим отображения текстовых стереотипов для взаимосвязей (ассоциаций, зависимостей и пр.) диаграммы |
Show Visibility | Включает/выключает режим отображения кванторов видимости атрибутов и операций выделенных классов |
Show Compartment Stereotypes | Включает/выключает режим отображения текстовых стереотипов атрибутов и операций выделенных классов |
Show Operation Signature | Включает/выключает режим отображения сигнатуры операций выделенных классов |
Show All Attributes | Делает видимыми/невидимыми атрибуты выделенных классов |
Show All Operations | Делает видимыми/невидимыми операции выделенных классов |
Suppress Attributes | Делает видимой/невидимой секцию атрибутов выделенных классов. Скрывает секцию атрибутов даже в том случае, когда выбрана опция Show All Attributes |
Suppress Operations | Делает видимой/невидимой секцию операций выделенных классов. Скрывает секцию операций даже в том случае, когда выбрана опция Show All Operations |
Line Style | Позволяет выбрать способ графического изображения линий взаимосвязей и содержит дополнительные подпункты: Rectilinear Oblique Toggle |
Layout Diagram | Позволяет автоматически разместить графические элементы в окне диаграммы с минимальным количеством пересечений и наложений соединительных линий |
Autosize All | Позволяет автоматически изменить размеры графических элементов текущей диаграммы таким образом, чтобы текстовая информация помещалась внутри изображений соответствующих элементов |
Layout Selected Shapes | Позволяет автоматически разместить выделенные графические элементы в окне диаграммы с минимальным количеством пересечений и наложений соеденительных линий |
Операции главного меню Browse
(Обзор) позволяют отображать рабочие окна с различными каноническими диаграммами разрабатываемой модели и вызывать диалоговые окна редактирования свойств отдельных элементов модели. Назначение операций этого пункта главного меню представлено в следующей таблице (табл. 5).
Таблица 5 - Операции пункта главного меню Browse (Обзор)
Название операции меню | Наличие кнопки на стандартной панели | Назначение операции главного меню |
Use Case Diagram | Вызывает диалоговое окно с предложением выбрать для отображения в рабочем окне одну из существующих диаграмм вариантов использования модели или приступить к разработке новой диаграммы | |
Class Diagram | Вызывает диалоговое окно с предложением выбрать для отображения в рабочем окне одну из существующих диаграмм классов модели или приступить к разработке новой диаграммы | |
Component Diagram | Вызывает диалоговое окно с предложением выбрать для отображения в рабочем окне одну из существующих диаграмм компонентов модели или приступить к разработке новой диаграммы | |
Deployment Diagram | Позволяет отобразить в рабочем окне диаграмму размещения разрабатываемой модели | |
Interaction Diagram | Вызывает диалоговое окно с предложением выбрать для отображения в рабочем окне одну из существующих диаграмм кооперации или последовательности, а также приступить к разработке новой диаграммы взаимодействия | |
State Machine Diagram | Вызывает диалоговое окно с предложением выбрать для отображения в рабочем окне одну из существующих диаграмм состояний модели или приступить к разработке новой диаграммы | |
Expand | Отображает в рабочем окне первую из диаграмм выделенного пакета модели | |
Parent | Отображает в рабочем окне родителя выделенной диаграммы модели | |
Specification | Вызывает диалоговое окно свойств выделенного элемента модели | |
Top Level | Отображает в рабочем окне диаграмму самого верхнего уровня для текущей диаграммы модели | |
Referenced Item | Отображает в рабочем окне диаграмму классов, содержащую класс для выделенного объекта модели | |
Previous Diagram | Отображает в рабочем окне предыдущую диаграмму модели | |
Create Message Trace Diagram | Позволяет создать диаграмму трассировки сообщений |
Окно браузера проекта по умолчанию располагается в левой части рабочего интерфейса ниже стандартной панели.
Браузер проекта организует представления модели в виде иерархической структуры, которая упрощает навигацию и позволяет отыскать любой элемент модели в проекте. При этом самая верхняя строка браузера проекта содержит имя разрабатываемого проекта. Любой элемент, который разработчик добавляет в модель, сразу отображается в окне браузера. Соответственно, выбрав элемент в окне браузера, мы можем его визуализировать в окне диаграммы или изменить его спецификацию. Браузер проекта позволяет также организовывать элементы модели в пакеты и перемещать элементы между различными представлениями модели. При желании окно браузера можно расположить в другом месте рабочего интерфейса либо скрыть вовсе, используя для этого операцию Browser
главного меню View
(Вид). Можно также изменить размеры браузера, переместив мышью границу его внешней рамки. Иерархическое представление структуры каждого разрабатываемого проекта организовано в форме 4-х представлений:
· Use Case View
- представление вариантов использования, в котором содержатся диаграммы вариантов использования и их реализации в виде вариантов взаимодействия;
· Logical View
- логическое представление, в котором содержатся диаграммы классов, диаграммы состояний и диаграммы деятельности;
· Component View
- представление компонентов, в котором содержатся диаграммы компонентов разрабатываемой модели;
· Deployment View
- представление развертывания, в котором содержится единственная диаграмма развертывания разрабатываемой модели.
Рис. 1 - Внешний вид браузера проекта с иерархическим представление его структуры
При создании нового проекта указанная иерархическая структура формируется программой автоматически.
Специальная панель инструментов располагается между окном браузера и окном диаграммы в средней части рабочего интерфейса. По умолчанию предлагается панель инструментов для построения диаграммы классов модели.
Расположение специальной панели инструментов можно изменять, переместив рамку панели в нужное место. Программа IBM Rational Rose 2003 позволяет настраивать состав кнопок данной панели, добавляя или удаляя отдельные кнопки, соответствующие тем или иным инструментам. Назначение отдельных кнопок различных панелей инструментов будут рассмотрены далее при изложении особенностей построения различных канонических диаграмм в соответствующих лекциях курса. Названия кнопок данной панели всегда можно узнать из всплывающих подсказок, появляющихся после задержки указателя мыши над соответствующей кнопкой.
Внешний вид специальной панели инструментов зависит не только от выбора типа разрабатываемой диаграммы, но от выбора графической нотации для изображения самих элементов этих диаграмм. В IBM Rational Rose 2003 реализованы три таких нотации: UML, OMT и Booch. Хотя последние две нотации практически не используются на практике, разработчики неизменно включают их в очередные версии программы IBM Rational Rose 2003, видимо, отдавая этим дань памяти авторам первых версий языка UML. При использовании отдельной нотации одна и та же диаграмма может быть представлена различным образом, для этого достаточно выбрать желаемое представление через соответствующую операцию главного меню View
(Вид). При этом никаких дополнительных действий выполнять не требуется - диаграмма преобразуется в выбранную нотацию автоматически. Однако, рассматривая использование программы IBM Rational Rose 2003 только в контексте языка UML, можно оставить без внимания особенности двух других нотаций, которые отражают эволюционный аспект этого программного инструмента.
Окно диаграммы является основной графической областью программы IBM Rational Rose 2003, в которой визуализируются различные представления модели проекта. По умолчанию окно диаграммы располагается в правой части рабочего интерфейса, однако его расположение и размеры также можно изменить. При разработке нового проекта, если не был использован мастер проектов, окно диаграммы представляет собой чистую область, не содержащую никаких элементов модели (рис. 1). По мере разработки отдельных диаграмм в окне диаграммы будут располагаться соответствующие графические элементы модели
Название диаграммы, которая является активной и располагается в данном окне, которое развернуто на всю область диаграммы, указывается в строке заголовка программы IBM Rational Rose 2003. Если же окно диаграммы не развернуто на всю область диаграммы, то название диаграммы указывается в строке заголовка окна диаграммы.Одновременно в графической области диаграмм могут присутствовать несколько окон диаграмм; при этом активной может быть только одна из них. Переключение между диаграммами можно осуществить выбором нужного представления на стандартной панели инструментов, а также с помощью выделения требуемой диаграммы в браузере проекта или с помощью операций главного меню Window
(Окно). При активизации отдельного вида диаграммы изменяется внешний вид специальной панели инструментов, которая настраивается под конкретный вид диаграммы.
Окно документации по умолчанию должно присутствовать на экране после загрузки программы. Если по какой-то причине оно отсутствует, то его можно отобразить через пункт меню View
(Вид
Рис. 2 - Внешний вид окна документации с информацией о диаграмме деятельности модели
В окне документации активизируется та информация, которая относится к выделенному элементу диаграммы или к диаграмме в целом. При этом выделить элемент можно либо в окне браузера, либо непосредственно в окне диаграммы. При добавлении нового элемента на диаграмму, например, класса, документация к нему является пустой (No documentation). В последующем разработчик самостоятельно вносит необходимую пояснительную информацию, которая запоминается программой и может быть изменена в ходе работы над проектом. Так же, как и для других окон рабочего интерфейса программы IBM Rational Rose 2003, разработчик по своему усмотрению может изменять размеры и положение окна документации.
Окно журнала (Log
) предназначено для автоматической записи различной служебной информации в ходе работы с программой. В журнале фиксируется время и характер выполняемых разработчиком действий, таких как обновление модели, настройка меню и панелей инструментов, а также сообщений об ошибках, возникающих при генерации программного кода. Окно журнала изображается поверх других окон в нижней области рабочего интерфейса программы
.
Если окно журнала отсутствует на экране, то отобразить его можно с помощью операции главного меню View
(Вид
.
3. Анализ задачи
3.1 Описание предметной области
Что такое модель
Модель – это фиксация взгляда ее создателя на вещи реального мира. Или упрощенное представление реальности. Это всегда абстракция на некотором уровне детализации. В большинстве случаев модель можно сделать более детальной, но, зачастую более детальная модель теряет лаконичность, система не становится более понятной, и к тому же увеличивает трудоемкость создания самой модели.
Модель сужает проблему и позволяет быстрее в нее вникнуть. А использование различных типов диаграмм позволяет рассмотреть проблему с различных сторон, а также в движении и взаимосвязями с общим контекстом.
Модели и UML
UML является стандартом для создания моделей. В спецификации языка прописаны виды моделей и правила, по которым они создаются. Использование единого стандарта позволяет разработчикам программного обеспечения общаться на одном языке и понимать, что хотел сказать создатель модели.
Однозначность создаваемых моделей также позволяет специальному программному обеспечению, такому как Rational Rose или Rational XDE создавать на основе моделей программный код.
Основные понятия языка UML – это сущности, отношения и диаграммы. Все модели строятся при помощи диаграмм. Диаграмма состоит из сущностей и связывающих их отношений. Диаграммы используют для визуализации системы с разных точек зрения. При этом нельзя путать понятие модель и диаграмма, поскольку диаграмма – это лишь набор связанных элементов, а модель – отражение сущностей реального мира.
Например, для модели предметной области используется диаграмма классов, а для описания бизнес-процесса используются: диаграмма прецедентов и диаграмма последовательности.
Предметная область
:
Существует небольшая компания, занимающаяся продажей мебели. Покупатель звонит в компанию, делает заказ, по которому составляется специальная форма. По этой форме менеджер магазина заполняет все необходимые документы и готовит отправку покупателю. Копия формы отдается в бухгалтерию. Бухгалтер вводит данные о заказе в бухгалтерскую систему и выписывает счет.
Будущая система должна обеспечивать возможность добавления новых заказов, изменения старых, выполнения заказов, проверки и возобновления инвентарных описей. При получении заказа система должна послать сообщение бухгалтерской системе, которая выписывает счет. Если требуемого товара нет на складе, заказ должен быть отклонен.
3.2 Выбор средств разработки и реализации
Для разработки лабораторного практикума используются следующие средства и технологии: RationalRose 2003, MicrosoftWord 2007.
1) Rational Rose 2003 - мощное CASE-средство для проектирования программных систем любой сложности. Одним из достоинств этого программного средства является возможность использования диаграмм на языке UML. Можно сказать, что Rational Rose является графическим редактором UML диаграмм.
В распоряжение проектировщика системы Rational Rose предоставляет следующие типы диаграмм, последовательное создание которых позволяет получить полное представление о всей проектируемой системе и об отдельных ее компонентах :
· Use case diagram (диаграмма вариантов использования (прецедентов));
· Activity diagram (диаграмма видов деятельности);
· Interaction diagram (диаграмма взаимодействия);
· Sequence diagram (диаграмма последовательности);
· Collaboration diagram (диаграмма кооперации);
· Class diagram (диаграмма классов);
· Component diagram (диаграмма компонентов).
· Deployment diagram (диаграмма размещений);
· Statechart diagram (диаграмма состояний).
CASE-средство IBM Rational Rose со времени своего появления претерпело серьезную эволюцию, и в настоящее время представляет собой современный интегрированный инструментарий для проектирования архитектуры, анализа, моделирования и разработки программных систем. Именно в IBM Rational Rose язык UML стал базовой технологией визуализации и разработки программных систем, что определило популярность и стратегическую перспективность этого инструментария.
2) MicrosoftWord 2007 - это текстовый процессор, предназначенный для создания, просмотра и редактирования текстовых документов, с локальным применением простейших форм таблично-матричных алгоритмов. Текстовый процессор, выпускается корпорацией Microsoft в составе пакета MicrosoftOffice.
3.3 Постановка задачи
Основной задачей учебно-исследовательской работы является создание лабораторного практикума, предоставляющего необходимую информацию о средстве разработки, а так же показывающего поэтапное создание требуемых диаграмм. Необходимо проанализировать требования к лабораторному практикуму, а так же изучить средство проектирования RationalRose 2003, чтобы реализовать основные модели и составить достоверное описание процесса реализации.
Лабораторный практикум должен состоять из четырех лабораторных работ, позволяющих освоить разработку следующих типов диаграмм:
- диаграммы вариантов использования
- диаграммы видов деятельности
- диаграммы последовательности
- диаграммы кооперации
- диаграммы классов
- диаграммы компонентов
- диаграммы размещений
- диаграммы состояний.
4. Разработка лабораторного практикума
4.1 Лабораторная работа № 1
Цель работы:
построить в RationalRose общую модель будущей ИС по представленной предметной области в виде диаграммы вариантов использования. Один из вариантов использования декомпозировать диаграммой видов деятельности.
Use case diagram
(Диаграмма вариантов использования).
Этот вид диаграмм позволяет создать список операций, которые выполняет система. Часто этот вид диаграмм называют диаграммой прецедентов, потому что на основе набора таких диаграмм создается список требований к системе и определяется множество выполняемых системой функций.
Каждая такая диаграмма или, как ее обычно называют, каждый Use case – это описание сценария поведения, которому следуют действующие лица (Actors).
Данный тип диаграмм используется при описании бизнес процессов автоматизируемой предметной области, определении требований к будущей программной системе. Отражает объекты как системы, так и предметной области и задачи, ими выполняемые.
Для разработки диаграммы вариантов использования модели в среде IBM Rational Rose 2003 необходимо активизировать соответствующую диаграмму в окне диаграммы. Это можно сделать следующими способами:
· раскрыть представление вариантов использования Use Case View
в браузере проекта и дважды щелкнуть на пиктограмме Main
(Главная);
· с помощью операции главного меню Browse
(Браузер
При этом появляется новое окно с чистым рабочим листом диаграммы вариантов использования и специальная панель инструментов, содержащая кнопки с изображением графических элементов, необходимых для разработки диаграммы вариантов использования. Назначение отдельных кнопок данной панели можно узнать также из всплывающих подсказок, которые появляются, если подвести и задержать на некоторое время указатель мыши над той или иной кнопкой (табл. 6).
Таблица 6 - Назначение кнопок специальной панели инструментов для диаграммы вариантов использования
Графическое изображение | Всплывающая подсказка | Назначение кнопки |
Selection Tool | Превращает изображение курсора в форму стрелки для последующего выделения элементов на диаграмме | |
Text Box | Добавляет на диаграмму текстовую область | |
Note | Добавляет на диаграмму примечание | |
Anchor Note to Item | Добавляет на диаграмму связь примечания с соответствующим графическим элементом диаграммы | |
Package | Добавляет на диаграмму пакет | |
Use Case | Добавляет на диаграмму вариант использования | |
Actor | Добавляет на диаграмму актера | |
Unidirectional Association | Добавляет на диаграмму направленную ассоциацию | |
Dependency or Instantiates | Добавляет на диаграмму отношение зависимости | |
Generalization | Добавляет на диаграмму отношение обобщения |
4.1.1 Создание диаграммы вариантов использования
1. Для создания диаграммы вариантов использования нужно щелкнуть правой кнопкой мыши на пакете представления Вариантов Использования в браузере (рис. 3).
Рис. 3 - Выбор Пакета представления вариантов использования
Рис. 4 - Создание UseCase диаграммы
2. Во всплывающем меню выберите пункт New
->
Use
Case
Diagram
(рис. 4).
3. Выделив новую диаграмму, введите её имя.
4. Дважды щелкнув по названию диаграммы, откройте её.
5. С помощью кнопки Use
Case
6.Выделив новый вариант использования, введите его имя «Ввести новый заказ».
7. Добавить так же следующие варианты использования: «Изменить существующий заказ», «Начать инвентарную опись», «Обновить инвентарную опись», «Оформить заказ», «Отклонить заказ»
8. С помощью кнопки Actor
9. С помощью кнопки Unidirectional
Association
10. С помощью кнопки Generalization
Рис. 5 - Диаграмма вариантов использования
Данный тип диаграмм может использоваться для отражения состояний моделируемого объекта, однако, основное назначение Activity diagram в том, чтобы отражать бизнес-процессы объекта. Этот тип диаграмм позволяет показать не только последовательность процессов, но и ветвление и даже синхронизацию процессов.
Этот тип диаграмм позволяет проектировать алгоритмы поведения объектов любой сложности, в том числе может использоваться для составления блок-схем.
Диаграмма деятельности в среде IBM Rational Rose 2003, так же как и диаграмма состояний, может относиться к отдельному классу, операции класса, варианту использования, пакету или представлению. Общие рекомендации по построению диаграммы деятельности были рассмотрены в лекции 11 курса «Основы объектно-ориентированного моделирования в нотации UML». Для того чтобы построить диаграмму деятельности, ее вначале необходимо создать и активизировать.
Начать построение диаграммы деятельности для выбранного элемента модели или моделируемой системы в целом можно одним из следующих способов:
· Щелкнуть на кнопке с изображением диаграммы состояний на стандартной панели инструментов, после чего следует выбрать представление и тип разрабатываемой диаграммы - диаграмма деятельности.
· Выделить логическое представление (Logical View
) или представление вариантов использования (Use Case View
) в браузере проекта и выполнить операцию контекстного меню: New
(Новая
· Раскрыть логическое представление (Logical View
) в браузере проекта и выделить рассматриваемый класс, операцию класса, пакет, или раскрыть представление вариантов использования (Use Case View
) и выбрать вариант использования, после чего выполнить операцию контекстного меню: New
(Новая
· Выполнить операцию главного меню: Browse
(Обзор
В результате выполнения этих действий появляется новое окно с чистым рабочим листом диаграммы деятельности и специальная панель инструментов, содержащая кнопки с изображением графических элементов, необходимых для разработки диаграммы деятельности (табл. 7). Назначение отдельных кнопок панели можно узнать из всплывающих подсказок.
Таблица 7 - Назначение кнопок специальной панели инструментов для диаграммы видов деятельности
Графическое изображение | Всплывающая подсказка | Назначение кнопки |
Selection Tool | Превращает изображение курсора в форму стрелки для последующего выделения элементов на диаграмме | |
Text Box | Добавляет на диаграмму текстовую область | |
Note | Добавляет на диаграмму примечание | |
Anchor Note to Item | Добавляет на диаграмму связь примечания с соответствующим графическим элементом диаграммы | |
State | Добавляет на диаграмму состояние | |
Activity | Добавляет на диаграмму деятельность | |
Start State | Добавляет на диаграмму начальное состояние | |
End State | Добавляет на диаграмму конечное состояние | |
State Transition | Добавляет на диаграмму переход | |
Transition to Self | Добавляет на диаграмму рефлексивный переход | |
Horizontal Synchronization | Добавляет на диаграмму горизонтально расположенный символ синхронизации | |
Vertical Synchronization | Vertical SynchronizationДобавляет на диаграмму вертикально расположенный символ синхронизации | |
Decision | Добавляет на диаграмму символ принятия решения для альтернативных переходов | |
Swimlane | Добавляет на диаграмму дорожку | |
Object | Добавляет на диаграмму объект (по умолчанию отсутствует) | |
Object Flow | Добавляет на диаграмму стрелку потока объектов (по умолчанию отсутствует) | |
Business Activity | Добавляет на диаграмму бизнес-деятельность (по умолчанию отсутствует) | |
Business Transaction | Добавляет на диаграмму бизнес-транзакцию (по умолчанию отсутствует) |
1. Найдите в браузере вариант использования (usecase) Изменить существующий заказ
2. В открывшемся меня выберите пункт Sub
Diagram
->
New
Activity
Diagramm
3. Добавьте на диаграмму начальное состояние
4. Добавьте на диаграмму два конечных состояния
5. Добавьте на диаграмму следующие виды деятельностей
6. Добавьте на диаграмму два символа горизонтальной синхронизации
7. Добавьте на диаграмму символ принятия решений
8. Используя переходы
Рис. 6 - Диаграмма видов деятельности
4.2 Лабораторная работа №2
4.2.1 Создание диаграммы взаимодействий
Interaction
diagram
(диаграммы взаимодействия). Этот тип диаграмм включает в себя Sequence diagram
(диаграммы последовательности) и Collaboration diagram
(диаграммы кооперации).Эти диаграммы позволяют с разных точек зрения рассмотреть взаимодействие объектов в создаваемой системе.
4.2.2 Создание диаграммы последовательностей
Взаимодействие объектов в системе происходит посредством приема и передачи сообщений объектами-клиентами и обработки этих сообщений объектами-серверами. При этом в разных ситуациях одни и те же объекты могут выступать и в качестве клиентов, и в качестве серверов.
Данный тип диаграмм позволяет отразить последовательность передачи сообщений между объектами.
Этот тип диаграммы не акцентирует внимание на конкретном взаимодействии, главный акцент уделяется последовательности приема/передачи сообщений. Для того чтобы окинуть взглядом все взаимосвязи объектов, служит Collaboration diagram
.
Особенности разработки диаграммы последовательности в среде IBM Rational Rose
Диаграмма последовательности является формой визуализации взаимодействия в модели и, как и диаграмма кооперации, оперирует объектами и сообщениями. Особенность работы в среде IBM Rational Rose 2003 заключается в том, что этот вид канонической диаграммы может быть создан автоматически после построения диаграммы кооперации и нажатия клавиши <F5>. С помощью этой же клавиши осуществляется переключение между диаграммами последовательности и кооперации в модели.
Однако в отдельных случаях бывает удобно начать построение диаграмм взаимодействия с диаграммы последовательности. В этом случае активизировать рабочее окно диаграммы последовательности можно несколькими способами:
· Щелкнуть на кнопке с изображением диаграммы взаимодействия на стандартной панели инструментов и выбрать для построения диаграмму последовательности.
· Выполнить операцию главного меню: Browse
(Браузер
· Выполнить операцию контекстного меню: New
(Новая
При этом появляется новое окно с чистым рабочим листом диаграммы классов и специальная панель инструментов, содержащая кнопки с изображением графических примитивов, необходимых для разработки диаграммы последовательности (табл. 8). Назначение отдельных кнопок панели можно узнать из всплывающих подсказок.
Таблица 8 - Назначение кнопок
Графическое изображение | Всплывающая подсказка | Назначение кнопки |
Selection Tool | Превращает изображение курсора в форму стрелки для последующего выделения элементов на диаграмме | |
Text Box | Добавляет на диаграмму текстовую область | |
Note | Добавляет на диаграмму примечание | |
Anchor Note to Item | Добавляет на диаграмму связь примечания с соответствующим графическим элементом диаграммы | |
Object | Добавляет на диаграмму объект | |
Object Message | Добавляет на диаграмму простое сообщение | |
Message To Self | Добавляет на диаграмму рефлексивное сообщение | |
Return Message | Добавляет на диаграмму сообщение типа возврата из вызова процедуры | |
Destruction Marker | Добавляет на диаграмму символ уничтожения объекта | |
Procedure Call | Добавляет на диаграмму сообщение типа вызова процедуры (по умолчанию отсутствует) | |
Asynchronous Message | Добавляет на диаграмму асинхронное сообщение (по умолчанию отсутствует) |
1. Щелкните правой кнопкой на варианте использования «Ввести новый заказ» в браузере.
2. В открывшемся меню выберите пункт New -> Sequence Diagramm.
3. Назовите новую диаграмму «Добавить заказ».
4. Дважды щелкнув по ней, откройте ее.
5. Перетащите действующее лицо «Продавец» из браузера на диаграмму.
6. Поместите объект
7. Создайте еще четыре объекта, назовите их «Форма деталей заказа», «Менеджер по заказам», «Номер заказа» и «Администратор транзакций», соответственно.
8. Создайте сообщение, нажав кнопку Object Message
9. Выделив сообщение, введите его имя «Создать новый заказ».
10. Так же поместите на диаграмму следующие сообщения:
- «Открыть форму», между «Выбор варианта заказа» и «Форма деталей заказа»
- «Ввести номер заказа, покупателя, предметы заказа», между «Продавец» и «Форма деталей заказа»
- «Сохранить заказ», между «Продавец» и «Форма деталей заказа»
- «Сохранить заказ», между «Форма деталей заказа» и «Менеджер по заказам»
- «Создать новый пустой заказ», между «Менеджер по заказам» и «Номер заказа»
- «Указать номер заказа, покупателя, предметы заказа» между «Менеджер по заказам» и «Номер заказа»
- «Сохранить заказ», между «Менеджер по заказам» и «Администратор транзакций»
- «Получить информацию о заказе», между «Номер заказа» и «Администратор транзакций».
11. Также добавить рефлексивное сообщение
Соотнесение объектов с классами:
12. Щелкните правой кнопкой на объекте «Выбор варианта заказа».
13. В открывшемся меню выберите пункт Open Specification.
14. В раскрывшемся списке классов выберите пункт New.Появится окно спецификации классов, в поле Name введите «Выбор заказа».
|
Рис. 7 - Диаграмма последовательности
4.2.3 Создание диаграммы кооперации
Collaboration diagram (диаграмма кооперации)
Этот тип диаграмм позволяет описать взаимодействия объектов, абстрагируясь от последовательности передачи сообщений.
На этом типе диаграмм в компактном виде отражаются все принимаемые и передаваемые сообщения конкретного объекта и типы этих сообщений.
По причине того, что диаграммы Sequence и Collaboration являются разными взглядами на одни и те же процессы, Rational Rose позволяет создавать из Sequence диаграммы диаграмму Collaboration и наоборот, а также производит автоматическую синхронизацию этих диаграмм.
Активизировать рабочее окно диаграммы кооперации в программе IBM Rational Rose 2003 можно несколькими способами:
· Щелкнуть на кнопке с изображением диаграммы взаимодействия на стандартной панели инструментов и выбрать для построения новую диаграмму кооперации.
· Выполнить операцию главного меню: Browse
(Браузер
· Выполнить операцию контекстного меню: New
(Новая
При этом появляется новое окно с чистым рабочим листом диаграммы кооперации и специальная панель инструментов, содержащая кнопки с изображением графических примитивов, необходимых для разработки диаграммы кооперации (табл. 9). Назначение отдельных кнопок панели можно узнать из всплывающих подсказок.
Таблица 9 - Назначение кнопок специальной панели инструментов диаграммы кооперации
Графическое изображение | Всплывающая подсказка | Назначение кнопки |
Selection Tool | Превращает изображение курсора в форму стрелки для последующего выделения элементов на диаграмме | |
Text Box | Добавляет на диаграмму текстовую область | |
Note | Добавляет на диаграмму примечание | |
Anchor Note to Item | Добавляет на диаграмму связь примечания с соответствующим графическим элементом диаграммы | |
Object | Добавляет на диаграмму объект | |
Class Instance | Добавляет на диаграмму экземпляр класса | |
Object Link | Добавляет на диаграмму связь | |
Link To Self | Добавляет на диаграмму рефлексивную связь | |
Link Message | Добавляет на связь диаграммы прямое сообщение | |
Reverse Link Message | Добавляет на связь диаграммы обратное сообщение | |
Data Token | Добавляет на связь диаграммы элемент прямого потока данных | |
Reverse Data Token | Добавляет на связь диаграммы элемент обратного потока данных |
Так же, диаграмму кооперации можно получить из диаграммы последовательности нажатием клавиши F5 (рис. 8).
Рис. 8 - Диаграмма кооперации
4.3 Лабораторная работа №3
Диаграмма классов является основным логическим представлением модели и содержит детальную информацию о внутреннем устройстве объектно-ориентированной программной системы или, используя современную терминологию, об архитектуре программной системы. Активизировать рабочее окно диаграммы классов можно несколькими способами:
· окно диаграммы классов появляется по умолчанию в рабочем окне диаграммы после создания нового проекта;
· щелкнуть на кнопке с изображением диаграммы классов на стандартной панели инструментов;
· раскрыть логическое представление (Logical View) в браузере проекта и дважды щелкнуть на пиктограмме Main
(Главная);
· выполнить операцию главного меню: Browse
(Обзор
При этом появляется новое окно с чистым рабочим листом диаграммы классов и специальная панель инструментов, содержащая кнопки с изображением графических примитивов, необходимых для разработки диаграммы классов (табл. 10). Назначение отдельных кнопок панели можно узнать также из всплывающих подсказок.
Таблица 10 - Назначение кнопок специальной панели инструментов для диаграммы классов
Графическое изображение | Всплывающая подсказка | Назначение кнопки |
Selection Tool | Превращает изображение курсора в форму стрелки для последующего выделения элементов на диаграмме | |
Text Box | Добавляет на диаграмму текстовую область | |
Note | Добавляет на диаграмму примечание | |
Anchor Note to Item | Добавляет на диаграмму связь примечания с соответствующим графическим элементом диаграммы | |
Class | Добавляет на диаграмму класс | |
Interface | Добавляет на диаграмму интерфейс | |
Unidirectional Association | Добавляет на диаграмму направленную ассоциацию | |
Association Class | Добавляет на диаграмму ассоциацию класс | |
Package | Добавляет на диаграмму пакет | |
Dependency or Instantiates | Добавляет на диаграмму отношение зависимости | |
Generalization | Добавляет на диаграмму отношение обобщения | |
Realize | Добавляет на диаграмму отношение реализации |
4.3.1 Создание диаграммы классов
1. Щелкните правой кнопкой мыши на логическом представлении браузера. В открывшемся меню выберите New
->
Package
.
2. Назовите новый пакет «Сущности».
3. Создайте так же пакеты «Границы» и «Контроль».
4. Дважды щелкнув на Main в логическом представлении браузера, перетащите все пакеты из браузера на диаграмму.
5. Щелкните правой кнопкой мыши на логическом представлении браузера, в открывшемся меню выберите New -> ClassDiagramm.
6. Назовите новую диаграмму классов «Добавить новый заказ», дважды щелкнув на ней в браузере, откройте ее.
7. Перетащите из браузера все классы: «Выбор Заказа», «Детали заказа», «Заказ», «МнджЗак», «АдмТранз».
8. Щелкните правой кнопкой мыши на классе «Выбор заказа», в открывшемся меню выберите OpenSpecification.
9. В поле стереотипа введите слово Boundary (граница), нажмите ОК.
10. Таким же образом укажите для классов следующие стереотипы:
«Детали заказа» - Boundary (граница)
«Заказ» - Entity (сущность)
«МнджЗак», «АдмТранз» - Control (контроль)
|
13. Нажмите Open Specification,ивовкладке Attributes укажитетипыатрибутов: Integer, String, Date.
|
15. Отредактируйте операцию Create() таким образом, чтобы она выглядела Create () : Boolean. Это можно сделать во вкладке Operations окна OpenSpecifications, либо нажатием на изображение операции под классом «Заказ».
Отредактируйтеоперацию SetInfo () так, чтобыонавыгляделакак SetInfo(OrderNumber : Integer, CustomerName : String, OrderDate : Date, OrderFillDate : Date) : Boolean.
Отредактируйте операцию GetInfo () так, чтобы она выглядела как GetInfo () : String.
16. Остальным классам добавьте операции в соответствии с рисунком 9.
Рис. 9 - Конечный вид диаграммы классов
17. Так же в соответствии с рисунком добавьте связи, используя кнопку Unidirectional Association
4.3.2 Создание диаграммы состояний
Каждый объект системы, обладающий определенным поведением, может находиться в определенных состояниях, переходить из состояния в состояние, совершая определенные действия в процессе реализации сценария поведения объекта. Поведение большинства объектов реальных систем можно представить с точки зрения теории конечных автоматов, то есть поведение объекта отражается в его состояниях, и данный тип диаграмм позволяет отразить это графически. Для этого используется два вида диаграмм: Statechart diagram
(дмаграмма состояний) и Activity diagram
(диаграмма активности)
|
Особенности разработки диаграммы состояний в среде IBM Rational Rose 2003.
Переходя к рассмотрению диаграммы состояний, следует отметить, что в среде IBM Rational Rose 2003 этот тип диаграмм может относиться к отдельному классу, операции класса, варианту использования, пакету или представлению. Для того чтобы построить диаграмму состояний, ее вначале необходимо создать и активизировать.
Начать построение диаграммы состояний для выбранного элемента модели или моделируемой системы в целом можно одним из следующих способов:
· Щелкнуть на кнопке с изображением диаграммы состояний на стандартной панели инструментов, после чего следует выбрать представление и тип разрабатываемой диаграммы - новая диаграмма состояний.
· Выделить логическое представление (Logical View
) или представление вариантов использования (Use Case View
) в браузере проекта и выполнить операцию контекстного меню: New
(Новая
· Раскрыть логическое представление (Logical View
) в браузере проекта и выделить рассматриваемый класс, операцию класса, пакет, или раскрыть представление вариантов использования (Use Case View
) и выбрать вариант использования, после чего выполнить операцию контекстного меню: New
(Новая
· Выполнить операцию главного меню: Browse
(Обзор
В результате выполнения этих действий появляется новое окно с чистым рабочим листом диаграммы состояний и специальная панель инструментов, содержащая кнопки с изображением графических элементов модели, необходимых для разработки диаграммы состояний (табл. 11). Назначение отдельных кнопок панели можно узнать из всплывающих подсказок.
Таблица 11 - Назначение кнопок специальной панели инструментов диаграммы состояний
Графическое изображение | Всплывающая подсказка | Назначение кнопки |
Selection Tool | Превращает изображение курсора в форму стрелки для последующего выделения элементов на диаграмме | |
Text Box | Добавляет на диаграмму текстовую область | |
Note | Добавляет на диаграмму примечание | |
Anchor Note to Item | Добавляет на диаграмму связь примечания с соответствующим графическим элементом диаграммы | |
State | Добавляет на диаграмму состояние | |
Start State | Добавляет на диаграмму начальное состояние | |
End State | Добавляет на диаграмму конечное состояние | |
State Transition | Добавляет на диаграмму переход | |
Transition to Self | Добавляет на диаграмму рефлексивный переход | |
Horizontal Synchronization | Добавляет на диаграмму горизонтально расположенный символ синхронизации (по умолчанию отсутствует) | |
Vertical Synchronization | Добавляет на диаграмму вертикально расположенный символ синхронизации (по умолчанию отсутствует) | |
Decision | Добавляет на диаграмму символ принятия решения для альтернативных переходов (по умолчанию отсутствует) |
1. Найдите в браузере класс Order.Щелкнув по нему правой кнопкой мыши, выберите New
->
Statechart
Diagramm
.
2. Назовите новую диаграмму StateDiag.
3. Поместите на диаграмму состояния Start State
4. Так же поместите на диаграмму состояние State
) - сложное состояние, которое состоит из других вложенных в него состояний.
Составное состояние называют также состоянием-композитом. Вложенные состояния выступают по отношению к составному состоянию как подсостояния (substate
). И хотя между ними имеет место отношение композиции, графически все вершины диаграммы, которые соответствуют вложенным состояниям, изображаются внутри символа составного состояния. В этом случае размеры графического символа составного состояния увеличиваются, так чтобы вместить в себя все подсостояния.
5. Поместите на диаграмму еще два состояния State, назовите из «Отменен» и «Выполнен»
6. Добавьте два состояния State внутрь созданного ранее составного состояния, назовите их «Инициализация» и «Выполнение заказа приостановлено»
7. Дважды щелкните на состоянии «Инициализация» и перейдите во вкладку Actions. В открывшемся окне щелкните правой кнопкой мыши и выберите пункт Insert
8. Дважды щелкните на новом действии, назовите его «Сохранить дату заказа». В окне When выберите пункт OnEntry. Входное действие (entry action
) - действие, которое выполняется в момент перехода в данное состояние.
Обозначается с помощью ключевого слова - метки действия entry, которое указывает на то, что следующее за ней выражение действия должно быть выполнено в момент входа в данное состояние.
9. Так же добавьте действия «Собрать клиентскую информацию» и «Добавить к заказу новые позиции», в окне When укажите Do. Внутренняя деятельность (do activity
) - выполнение объектом операций или процедур, которые требуют определенного времени.
Обозначается с помощью ключевого слова - метки деятельности do, которое специфицирует так называемую "ду-деятельность", выполняемую в течение всего времени, пока объект находится в данном состоянии, или до тех пор, пока не будет прервано внешним событием. При нормальном завершении внутренней деятельности генерируется соответствующее событие.
10. Дважды щелкните на состоянии «Отменен», повторив вышеописанные шаги, добавьте действие «Сохранить дату отмены», в окне When укажите OnExit. Действие выхода (exit action
) - действие, производимое при выходе из данного состояния.
Обозначается с помощью ключевого слова - метки действия exit, которое указывает на то, что следующее за ней выражение действия должно быть выполнено в момент выхода из данного состояния.
11. Дважды щелкните на состоянии «Выполнен», повторив вышеописанные шаги, добавьте действие «Выписать счет», в окне When укажите Do.
12. При помощи кнопкиState Transition
13. Дважды щелкните на переходе от состояния «Инициализация» к состоянию «Выполнение заказа приостановлено», в поле Event открывшегося окна спецификации перехода введите фразу «Выполнить заказ». Таким же образом добавьте событие «Отменить заказ» к переходу между составным состоянием и состоянием «Отменен».
14. Дважды щелкните на переходе от состояния «Выполнение заказа приостановлено» к состоянию «Выполнен», в поле Event введите фразу «Добавить к заказу новую позицию». Перейдите на вкладку Detail, в поле GuardCondition введите «Не осталось незаполненных позиций». Для рефлексивного перехода состояния «Выполнение заказа приостановлено» добавьте событие «Добавить к заказу новую позицию» и GuardCondition «Остаются незаполненные поля».
4.4 Лабораторная работа №4
4.4.1 Создание диаграммы компонентов
Этот тип диаграмм предназначен для распределения классов и объектов по компонентам при физическом проектировании системы. Часто данный тип диаграмм называют диаграммами модулей.
При проектировании больших систем может оказаться, что система должна быть разложена на несколько сотен или даже тысяч компонентов, и этот тип диаграмм позволяет не потеряться в обилии модулей и их связей.
Диаграмма компонентов служит частью физического представления модели, играет важную роль в процессе ООАП и является необходимой для генерации программного кода. Для разработки диаграмм компонентов в браузере проекта предназначено отдельное представление компонентов (Component View
), в котором уже содержится диаграмма компонентов с пустым содержанием и именем по умолчанию Main
(Главная).
Активизация диаграммы компонентов может быть выполнена одним из следующих способов:
· Щелкнуть на кнопке с изображением диаграммы компонентов на стандартной панели инструментов.
· Раскрыть представление компонентов в браузере (Component View
) и дважды щелкнуть на пиктограмме Main
(Главная).
· Через пункт меню Browse
(Браузер
В результате выполнения этих действий появляется новое окно с чистым рабочим листом диаграммы компонентов и специальная панель инструментов, содержащая кнопки с изображением графических примитивов, необходимых для разработки диаграммы компонентов (табл. 12).
Таблица 12 - Назначение кнопок специальной панели инструментов диаграммы компонентов
Графическое изображение | Всплывающая подсказка | Назначение кнопки |
Selection Tool | Превращает изображение курсора в форму стрелки для последующего выделения элементов на диаграмме | |
Text Box | Добавляет на диаграмму текстовую область | |
Note | Добавляет на диаграмму примечание | |
Anchor Note to Item | Добавляет на диаграмму связь примечания с соответствующим графическим элементом диаграммы | |
Component | Добавляет на диаграмму компонент | |
Package | Добавляет на диаграмму пакет | |
Dependency | Добавляет на диаграмму отношение зависимости | |
Subprogram Specification | Добавляет на диаграмму спецификацию подпрограммы | |
Subprogram Body | Добавляет на диаграмму тело подпрограммы | |
Main Program | Добавляет на диаграмму главную программу | |
Package Specification | Добавляет на диаграмму спецификацию пакета | |
Package Body | Добавляет на диаграмму тело пакета | |
Task Specification | Добавляет на диаграмму спецификацию задачи | |
Task Body | Добавляет на диаграмму тело задачи | |
Generic Subprogram | Добавляет на диаграмму типовую подпрограммы(по умолчанию отсутствует) | |
Generic Package | Добавляет на диаграмму типовой пакет (по умолчанию отсутствует) | |
Database | Добавляет на диаграмму базу данных (по умолчанию отсутствует) |
1. Откройте диаграмму, содержащую пакеты «Сущности», «Границы», «Контроль» (Logical
View
).
Поместите классы из браузера в соответствующие их типам пакеты.
2. Перейдите в браузере в Component
View
. Нажмите на ComponentView правой кнопкой мыши, создайте пакеты New
->
Packages
.
Назовите их «Сущности», «Границы», «Контроль».
3. При помощи кнопки Dependency
4. Дважды щелкнув на пакете «Сущности», откройте главную диаграмму компонентов этогопакета.
5. Нажмите кнопкуPackage Specification (Содержит определение класса, его атрибутов и операций)
6. Нажмите кнопку Package Body
(Содержит код реализации операций класса.)
7. Постройте диаграммы компонентов пакетов «Границы» и «Контроль», как показано на рисунках 10 и 11.
Рис. 10
Рис. 11
8. Щелкните правой кнопкой на представлении Компонентов в браузере (Component
view
). В открывшемся меню выберите New
->
Component
Diagram
. Назовите новую диаграмму System. Дважды щелкнув по диаграмме, откройте ее.
9. Разверните в браузере пакеты «Сущности», «Границы» и «Контроль». Переместите все спецификации пакетов на диаграмму классов.
10. Нажмите кнопку Task Specification
(Может содержать определение класса, его атрибутов и операций, которые предполагается использовать в независимом потоке управления)
Рис. 12 - Диаграмма компонентов системы
4.4.2 Создание диаграммы размещений
Этот вид диаграмм предназначен для анализа аппаратной части системы, то есть «железа», а не программ. В прямом переводе с английского Deployment
означает «развертывание», но термин «размещение» точнее отражает сущность этого типа диаграмм.
Для каждой модели создается только одна такая диаграмма, отображающая процессоры (Processor
), устройства (Device
) и их соединения.
Обычно этот тип диаграмм используется в самом начале проектирования системы для анализа аппаратных средств, на которых она будет эксплуатироваться.
Активизация диаграммы развертывания может быть выполнена одним из следующих способов:
· Щелкнуть на кнопке с изображением диаграммы развертывания на стандартной панели инструментов.
· Дважды щелкнуть на пиктограмме представления развертывания (Deployment View
) в браузере проекта.
· Выполнить операцию главного меню: Browse
(Обзор
В результате выполнения этих действий появляется новое окно с чистым рабочим листом диаграммы развертывания и специальная панель инструментов, содержащая кнопки с изображением графических примитивов, необходимых для разработки диаграммы развертывания (табл. 13).
Таблица 13 - Назначение кнопок специальной панели инструментов диаграммы развертывания
Графическое изображение | Всплывающая подсказка | Назначение кнопки |
Selection Tool | Превращает изображение курсора в форму стрелки для последующего выделения элементов на диаграмме | |
Text Box | Добавляет на диаграмму текстовую область | |
Note | Добавляет на диаграмму примечание | |
Anchor Note to Item | Добавляет на диаграмму связь примечания с соответствующим графическим элементом диаграммы | |
Processor | Добавляет на диаграмму процессор | |
Connection | Добавляет на диаграмму отношение соединения | |
Device | Добавляет на диаграмму устройство |
1. Дважды щелкните мышкой на представлении Размещений в браузере (Deployment
View
). Добавьте на диаграмму три процессора
2. Добавьте на диаграмму устройство
3. Установите отношения соединений
Рис. 13 - Диаграмма размещений
ЗАКЛЮЧЕНИЕ
В рамках данной работы была поставлена задача разработать лабораторный практикум по освоению процесса проектирования ИС в среде RationalRose. Для этого был изучен объектно-ориентированный подход проектирования ИС, смоделирована предметная область, на основе которой разрабатывались основные проектные диаграммы. Результатом работы являются методические указания к выполнению лабораторных работ в RationalRose, а также разработанные диаграммы будущей ИС. В методические указания входит теоретическая часть(описание основных компонентов и элементов), а так же пошаговое руководство к созданию основных диаграмм. В работе использовалось средство проектирования RationalRose 2003 EnterpriseEdition. Методические указания могут применяться с образовательных целях при изучении данного средства проектирования.
СПИСОК ЛИТЕРАТУРЫ
1. Уэнди Боггс, Майкл Боггс: UML и RationalRose, 2008 г.
2. Материалы сайта www.interface.ru
3. Материалы сайта www.sql.ru
! | Как писать дипломную работу Инструкция и советы по написанию качественной дипломной работы. |
! | Структура дипломной работы Сколько глав должно быть в работе, что должен содержать каждый из разделов. |
! | Оформление дипломных работ Требования к оформлению дипломных работ по ГОСТ. Основные методические указания. |
! | Источники для написания Что можно использовать в качестве источника для дипломной работы, а от чего лучше отказаться. |
! | Скачивание бесплатных работ Подводные камни и проблемы возникающие при сдаче бесплатно скачанной и не переработанной работы. |
! | Особенности дипломных проектов Чем отличается дипломный проект от дипломной работы. Описание особенностей. |
→ | по экономике Для студентов экономических специальностей. |
→ | по праву Для студентов юридических специальностей. |
→ | по педагогике Для студентов педагогических специальностей. |
→ | по психологии Для студентов специальностей связанных с психологией. |
→ | технических дипломов Для студентов технических специальностей. |
→ | выпускная работа бакалавра Требование к выпускной работе бакалавра. Как правило сдается на 4 курсе института. |
→ | магистерская диссертация Требования к магистерским диссертациям. Как правило сдается на 5,6 курсе обучения. |
Дипломная работа | Формирование устных вычислительных навыков пятиклассников при изучении темы "Десятичные дроби" |
Дипломная работа | Технологии работы социального педагога с многодетной семьей |
Дипломная работа | Человеко-машинный интерфейс, разработка эргономичного интерфейса |
Дипломная работа | Организация туристско-экскурсионной деятельности на т/к "Русский стиль" Солонешенского района Алтайского края |
Дипломная работа | Разработка мероприятий по повышению эффективности коммерческой деятельности предприятия |
Дипломная работа | Совершенствование системы аттестации персонала предприятия на примере офиса продаж ОАО "МТС" |
Дипломная работа | Разработка системы менеджмента качества на предприятии |
Дипломная работа | Организация учета и контроля на предприятиях жилищно-коммунального хозяйства |
Дипломная работа | ЭКСПРЕСС-АНАЛИЗ ФИНАНСОВОГО СОСТОЯНИЯ ООО «АКТ «ФАРТОВ» |
Дипломная работа | Психическая коммуникация |