ВВЕДЕНИЕ
Процесс проектирования ИСподразумевает выполнение целого комплекса взаимоувязанных между собойспециализированных инженерных и конструкторских работ различного тематическогопрофиля (информатика, вычислительная техника, программирование, математика,экономика, строительство и т.п.), которые можно в соответствии со спецификой ихисполнения условно разделить на следующие направления:
• инженерно-техническоепроектирование, связанное с разработкой информационно-вычислительной среды исредств инженерного обеспечения системы;
• проработка проектных решений посозданию вычислительной, программной и информационной среды системы, в том числеосуществление математико-компьютерного моделирования информационно-длительных икоммуникационных процессов как для отдельных элементов системы, так и длясистемы в целом;
• проектирование инженерныхкоммуникаций и средств жизнеобеспечения системы — проектирование кабельнойкоммуникационной системы, проектирование систем энергоснабжения, вентиляции,освещения, охранной и пожарной сигнализации, архитектурно-строительноепроектирование производственных помещений для персонала, разработка интерьеровпомещений и т.д.;
• технико-экономическое обоснованиепроектных решений, включающее определение, оптимизацию и обоснование технико-экономическихпоказателей и характеристик проектируемой системы на основе заданных целевыхкритериев ее функционирования;
• проектная проработка вопросовтехнической поддержки эксплуатации системы после ее создания и ввода вдействие, включающая обеспечение технической поддержки программно-техническихсредств системы в процессе эксплуатации;
• управление ходом выполнения самогопроцесса проектирования, обеспечивающее:
— определение состава и этапностипроектных работ;
— обеспечение календарногопланирования хода выполнения проектных работ в соответствии с их этапностью;
— планирование материальных и людскихресурсов, выделенных на реализацию проекта, увязка ресурсного планирования скалендарным;
— контроль хода реализации проекта;
• разработка проектно-конструкторскойдокументации на систему.
В качестве средств методической ипрограммно-технической поддержки процесса проектирования в соответствии сприведенной классификацией проектных работ можно выделить:
• для проектирования вычислительнойсреды — методы экспертных оценок и математико-компьютерного моделирования, атакже соответствующие программно-технические средства (ПТС) на основе экспертныхсистем и ПТС для создания моделей вычислительной среды, в том числе ПТСимитационного моделирования;
• для проектирования программной иинформационной среды — компьютерное моделирование и 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/>Options (Инструменты/>Параметры), открытьвкладку Toolbars (Панели инструментов) появившегося диалогового окна инажать кнопку Standard (Стандартная). Вдополнительно открытом окне можно переносить требуемые кнопки из левого спискав правый список, а ненужные кнопки — из правого списка в левый. Данным способомможно показать или скрыть различные кнопки инструментов, а также изменить ихразмер. Назначение отдельных кнопок стандартной панелиинструментов приводится далее при рассмотрении операций главногоменю./>Назначение операцийглавного меню File и Edit
Рабочий интерфейс средства 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
/> Позволяет распечатать на принтере отдельные диаграммы и спецификации различных элементов разрабатываемой модели. В этом случае вызывается диалоговое окно выбора диаграмм и спецификаций для печати на подключенном к данному компьютеру принтеру 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,Format и Browse
Операции главного меню View (Вид) позволяют отображать наэкране различные элементы рабочего интерфейса иизменять графическое представление диаграмм. Назначение операций этого пункта главного меню представлено в следующей таблице (табл. 3).
Таблица 3 — Операциипункта главного меню View (Вид)
/>Название операции меню
Наличие кнопки на стандартной панели
Назначение операции главного меню Toolbars
Позволяет настроить внешний вид рабочего интерфейса системы IBM Rational Rose 2003 и содержит дополнительные подпункты:
Standard — делает видимой/невидимой стандартную панель инструментов (рис. 1.3)
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 — представление компонентов, вкотором содержатся диаграммы компонентов разрабатываемой модели;
· DeploymentView — представлениеразвертывания, в котором содержится единственная диаграмма развертыванияразрабатываемой модели.
/>/>
Рис. 1 — Внешний вид браузера проектас иерархическим представление его структуры
При созданиинового проекта указанная иерархическая структура формируется программой автоматически./>Специальная панельинструментов и окно диаграммы
Специальная панель инструментов располагается между окном браузера и окном диаграммыв средней части рабочего интерфейса. По умолчанию предлагается панельинструментов для построения диаграммы классов модели.
/>Расположение специальной панелиинструментов можно изменять, переместив рамку панелив нужное место. Программа IBM Rational Rose 2003 позволяет настраивать составкнопок данной панели, добавляя или удаляя отдельныекнопки, соответствующие тем или иным инструментам. Назначение отдельных кнопокразличных панелей инструментов будут рассмотрены далее при изложенииособенностей построения различных канонических диаграмм в соответствующихлекциях курса. Названия кнопок данной панели всегдаможно узнать из всплывающих подсказок, появляющихся после задержки указателямыши над соответствующей кнопкой.
Внешний вид специальной панели инструментов зависит не только отвыбора типа разрабатываемой диаграммы, но от выбора графической нотации дляизображения самих элементов этих диаграмм. В IBM Rational Rose 2003 реализованытри таких нотации: UML, OMT и Booch. Хотя последние две нотации практически неиспользуются на практике, разработчики неизменно включают их в очередные версиипрограммы IBM Rational Rose 2003, видимо, отдавая этим дань памяти авторампервых версий языка UML. При использовании отдельной нотации одна и та жедиаграмма может быть представлена различным образом, для этого достаточновыбрать желаемое представление через соответствующую операцию главного меню View(Вид). При этом никаких дополнительных действий выполнять не требуется — диаграмма преобразуется в выбранную нотацию автоматически. Однако, рассматриваяиспользование программы IBM Rational Rose 2003 только в контексте языка UML,можно оставить без внимания особенности двух других нотаций, которые отражаютэволюционный аспект этого программного инструмента.
Окно диаграммы является основной графической областью программы IBMRational Rose 2003, в которой визуализируются различные представления моделипроекта. По умолчанию окно диаграммы располагается вправой части рабочего интерфейса, однако его расположение и размеры также можноизменить. При разработке нового проекта, если не был использован мастерпроектов, окно диаграммы представляет собойчистую область, не содержащую никаких элементов модели (рис. 1). По мереразработки отдельных диаграмм в окне диаграммы будутрасполагаться соответствующие графические элементы модели />
Названиедиаграммы, которая является активной и располагается в данном окне, котороеразвернуто на всю область диаграммы, указывается в строке заголовка программыIBM Rational Rose 2003. Если же окно диаграммы неразвернуто на всю область диаграммы, то название диаграммы указывается в строкезаголовка окна диаграммы.Одновременно в графическойобласти диаграмм могут присутствовать несколько окон диаграмм; при этомактивной может быть только одна из них. Переключение между диаграммами можноосуществить выбором нужного представления на стандартной панели инструментов, атакже с помощью выделения требуемой диаграммы в браузере проекта или с помощьюопераций главного меню Window (Окно). При активизации отдельного видадиаграммы изменяется внешний вид специальной панелиинструментов, которая настраивается под конкретный вид диаграммы.Окно документации и окно журнала
Окно документации по умолчанию должно присутствовать на экране после загрузки программы.Если по какой-то причине оно отсутствует, то его можно отобразить через пунктменю View/>Documentation(Вид/>Документация),после чего окно документации появится ниже окна браузера проекта (рис. 2). Окнодокументации, как следует из его названия, предназначено длядокументирования элементов разрабатываемой модели. В него можно записыватьразличную текстовую информацию, и что важно — на русском языке. Эта информацияпри генерации программного кода преобразуется в комментарии и никак не влияетна логику выполнения программного кода.
/>
/>
Рис. 2 — Внешний вид окнадокументации с информацией о диаграмме деятельности модели
В окнедокументации активизируется та информация, которая относится к выделенномуэлементу диаграммы или к диаграмме в целом. При этом выделить элемент можнолибо в окне браузера, либо непосредственно в окне диаграммы. При добавлении нового элемента надиаграмму, например, класса, документация к нему является пустой (Nodocumentation). В последующем разработчик самостоятельно вносит необходимуюпояснительную информацию, которая запоминается программой и может быть измененав ходе работы над проектом. Так же, как и для других окон рабочего интерфейсапрограммы IBM Rational Rose 2003, разработчик по своему усмотрению можетизменять размеры и положение окна документации.
Окно журнала (Log) предназначено для автоматической записиразличной служебной информации в ходе работы с программой. В журналефиксируется время и характер выполняемых разработчиком действий, таких какобновление модели, настройка меню и панелей инструментов, а также сообщений обошибках, возникающих при генерации программного кода. Окножурнала изображается поверх других окон в нижней области рабочегоинтерфейса программы/>.
Если окно журнала отсутствует на экране, то отобразить егоможно с помощью операции главного меню View/>Log (Вид/>Журнал), для чегоследует выставить отметку в соответствующей строке вложенного меню для даннойоперации. С целью увеличения размеров графической области диаграммы окно журнала чаще всего убирают с экрана, что можновыполнить с помощью кнопки закрытия этого окна в верхнем левом его углу илиубрав отметку в соответствующей строке вложенного меню View/>Log.
3. Анализ задачи
3.1 Описание предметной области
Что такое модель
Модель – это фиксация взгляда еесоздателя на вещи реального мира. Или упрощенное представление реальности. Этовсегда абстракция на некотором уровне детализации. В большинстве случаев модельможно сделать более детальной, но, зачастую более детальная модель теряетлаконичность, система не становится более понятной, и к тому же увеличиваеттрудоемкость создания самой модели.
Модель сужает проблему и позволяетбыстрее в нее вникнуть. А использование различных типов диаграмм позволяетрассмотреть проблему с различных сторон, а также в движении и взаимосвязями собщим контекстом.
Модели и UML
UML является стандартом для созданиямоделей. В спецификации языка прописаны виды моделей и правила, по которым онисоздаются. Использование единого стандарта позволяет разработчикам программногообеспечения общаться на одном языке и понимать, что хотел сказать создательмодели.
Однозначность создаваемых моделейтакже позволяет специальному программному обеспечению, такому как Rational Rose или Rational XDE создавать на основе моделейпрограммный код.
Основные понятия языка UML – это сущности,отношения и диаграммы. Все модели строятся при помощи диаграмм. Диаграммасостоит из сущностей и связывающих их отношений. Диаграммы используют длявизуализации системы с разных точек зрения. При этом нельзя путать понятиемодель и диаграмма, поскольку диаграмма – это лишь набор связанных элементов, амодель – отражение сущностей реального мира.
Например, для модели предметнойобласти используется диаграмма классов, а для описания бизнес-процессаиспользуются: диаграмма прецедентов и диаграмма последовательности.
Предметнаяобласть:
Существует небольшаякомпания, занимающаяся продажей мебели. Покупатель звонит в компанию, делаетзаказ, по которому составляется специальная форма. По этой форме менеджермагазина заполняет все необходимые документы и готовит отправку покупателю.Копия формы отдается в бухгалтерию. Бухгалтер вводит данные о заказе вбухгалтерскую систему и выписывает счет.
Будущая система должнаобеспечивать возможность добавления новых заказов, изменения старых, выполнениязаказов, проверки и возобновления инвентарных описей. При получении заказасистема должна послать сообщение бухгалтерской системе, которая выписываетсчет. Если требуемого товара нет на складе, заказ должен быть отклонен.
3.2 Выбор средств разработки и реализации
Для разработки лабораторногопрактикума используются следующие средства и технологии: Rational Rose 2003, Microsoft Word 2007.
1) Rational Rose2003 — мощное CASE-средство для проектирования программных систем любойсложности. Одним из достоинств этого программного средства является возможностьиспользования диаграмм на языке UML. Можно сказать, что Rational Rose являетсяграфическим редактором UML диаграмм.
Враспоряжение проектировщика системы Rational Rose предоставляет следующие типыдиаграмм, последовательное создание которых позволяет получить полноепредставление о всей проектируемой системе и об отдельных ее компонентах :
· Use case diagram(диаграмма вариантов использования (прецедентов));
· Activity diagram(диаграмма видов деятельности);
· Interactiondiagram (диаграмма взаимодействия);
· Sequence diagram(диаграмма последовательности);
· Collaborationdiagram (диаграмма кооперации);
· Class diagram(диаграмма классов);
· Component diagram(диаграмма компонентов).
· Deploymentdiagram (диаграмма размещений);
· Statechartdiagram (диаграмма состояний).
CASE-средство IBM Rational Rose современи своего появления претерпело серьезную эволюцию, и в настоящее времяпредставляет собой современный интегрированный инструментарий дляпроектирования архитектуры, анализа, моделирования и разработки программныхсистем. Именно в IBM Rational Rose язык UML стал базовой технологиейвизуализации и разработки программных систем, что определило популярность истратегическую перспективность этого инструментария.
2) Microsoft Word 2007 — это текстовый процессор, предназначенный длясоздания, просмотра и редактирования текстовых документов, с локальнымприменением простейших форм таблично-матричных алгоритмов. Текстовый процессор,выпускается корпорацией Microsoft в составе пакета Microsoft Office.
3.3 Постановка задачи
Основной задачейучебно-исследовательской работы является создание лабораторного практикума,предоставляющего необходимую информацию о средстве разработки, а так жепоказывающего поэтапное создание требуемых диаграмм. Необходимопроанализировать требования к лабораторному практикуму, а так же изучитьсредство проектирования Rational Rose 2003, чтобыреализовать основные модели и составить достоверное описание процессареализации.
Лабораторный практикум долженсостоять из четырех лабораторных работ, позволяющих освоить разработкуследующих типов диаграмм:
— диаграммы вариантовиспользования
— диаграммы видовдеятельности
— диаграммыпоследовательности
— диаграммы кооперации
— диаграммы классов
— диаграммы компонентов
— диаграммы размещений
— диаграммы состояний.
4.Разработка лабораторного практикума
4.1 Лабораторная работа№ 1
Цель работы:построить в RationalRose общую модель будущей ИС попредставленной предметной области в виде диаграммы вариантов использования.Один из вариантов использования декомпозировать диаграммой видов деятельности.
Use case diagram(Диаграмма вариантов использования).
Этот вид диаграмм позволяет создатьсписок операций, которые выполняет система. Часто этот вид диаграмм называютдиаграммой прецедентов, потому что на основе набора таких диаграмм создаетсясписок требований к системе и определяется множество выполняемых системойфункций.
Каждая такая диаграмма или, как ееобычно называют, каждый Use case – это описание сценария поведения, которомуследуют действующие лица (Actors).
Данный тип диаграмм используется приописании бизнес процессов автоматизируемой предметной области, определениитребований к будущей программной системе. Отражает объекты как системы, так ипредметной области и задачи, ими выполняемые.
Для разработки диаграммы вариантовиспользования модели в среде IBM Rational Rose 2003 необходимо активизироватьсоответствующую диаграмму в окне диаграммы. Это можно сделать следующимиспособами:
· раскрыть представлениевариантов использования Use Case View в браузере проекта и дваждыщелкнуть на пиктограмме Main (Главная);
· с помощьюоперации главного меню Browse/>Use Case Diagram (Браузер/>Диаграммавариантов использования).
При этом появляется новое окно счистым рабочим листом диаграммы вариантов использования и специальная панельинструментов, содержащая кнопки с изображением графических элементов,необходимых для разработки диаграммы вариантов использования. Назначениеотдельных кнопок данной панели можно узнать также из всплывающих подсказок,которые появляются, если подвести и задержать на некоторое время указатель мышинад той или иной кнопкой (табл. 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-> UseCaseDiagram(рис. 4).
3. Выделив новуюдиаграмму, введите её имя.
4. Дважды щелкнув поназванию диаграммы, откройте её.
5. С помощью кнопки UseCase/>панелиинструментов поместите на диаграмму новый вариант использования.
6.Выделив новый вариантиспользования, введите его имя «Ввести новый заказ».
7. Добавить так жеследующие варианты использования: «Изменить существующий заказ», «Начатьинвентарную опись», «Обновить инвентарную опись», «Оформить заказ», «Отклонитьзаказ»
8. С помощью кнопки Actor/> поместите надиаграмму следующие действующие лица: «Продавец», «Бухгалтерская система»,«Директор магазина», «Менеджер магазина».
9. С помощью кнопки UnidirectionalAssociation/> добавитьассоциации.
10. С помощью кнопки Generalization/> панелиинструментов добавьте ассоциацию между вариантом использования «Отклонитьзаказ» и вариантом использования «Оформить заказ». Связь обобщения означает,что вариант использования «Отклонить заказ» при необходимости дополняетфункциональные возможности варианта использования «Оформить заказ».
/>11.Щелкните правой кнопкой мыши на новой связи между вариантами использования, воткрывшемся меню выберите пункт OpenSpecification. В раскрывшемся спискестереотипов введите слово «extends»(расширение), затем нажмите ОК (рис. 5).
/>
Рис. 5 — Диаграммавариантов использования
4.1.2 Созданиедиаграммы видов деятельности/>Activity diagram (диаграммы активности)
Данный тип диаграмм можетиспользоваться для отражения состояний моделируемого объекта, однако, основноеназначение Activity diagram в том, чтобы отражать бизнес-процессы объекта. Этоттип диаграмм позволяет показать не только последовательность процессов, но иветвление и даже синхронизацию процессов.
Этот тип диаграмм позволяет проектировать алгоритмы поведения объектовлюбой сложности, в том числе может использоваться для составления блок-схем.
Диаграмма деятельности в среде IBMRational Rose 2003, так же как и диаграмма состояний, может относиться котдельному классу, операции класса, варианту использования, пакету илипредставлению. Общие рекомендации по построению диаграммы деятельности былирассмотрены в лекции 11 курса «Основы объектно-ориентированного моделирования внотации UML». Для того чтобы построить диаграмму деятельности, ее вначаленеобходимо создать и активизировать.
Начать построение диаграммыдеятельности для выбранного элемента модели или моделируемой системы в целомможно одним из следующих способов:
· Щелкнуть накнопке с изображением диаграммы состояний на стандартной панели инструментов,после чего следует выбрать представление и тип разрабатываемой диаграммы — диаграмма деятельности.
· Выделитьлогическое представление (Logical View) или представление вариантовиспользования (Use Case View) в браузере проекта и выполнить операциюконтекстного меню: New/>Activity Diagram (Новая/>Диаграммадеятельности).
· Раскрытьлогическое представление (Logical View) в браузере проекта и выделитьрассматриваемый класс, операцию класса, пакет, или раскрыть представлениевариантов использования (Use Case View) и выбрать вариант использования,после чего выполнить операцию контекстного меню: New/>Activity Diagram (Новая/>Диаграммадеятельности).
· Выполнитьоперацию главного меню: Browse/>State Machine Diagram (Обзор/>Диаграммасостояний), после следует чего выбрать представление и тип разрабатываемойдиаграммы — диаграмма деятельности.
В результате выполнения этих действийпоявляется новое окно с чистым рабочим листом диаграммы деятельности испециальная панель инструментов, содержащая кнопки с изображением графическихэлементов, необходимых для разработки диаграммы деятельности (табл. 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. Найдите в браузере вариантиспользования (use case) Изменить существующий заказ
2. В открывшемся меня выберите пункт SubDiagram-> NewActivityDiagramm
3. Добавьте на диаграмму начальноесостояние />
4. Добавьте на диаграмму два конечныхсостояния />
5. Добавьте на диаграмму следующие видыдеятельностей />: «Получение запроса на изменениезаказа», «Ввод номера заказа», «Отображение формы заказа», «Детализация данныхпо позициям заказа», «Детализация данных по покупателю», «Запомнить изменения»,«Направить информацию в бухгалтерию и на склад»
6. Добавьте на диаграмму два символа горизонтальнойсинхронизации />
7. Добавьте на диаграмму символ принятиярешений />
8. Используя переходы /> приведите диаграмму к виду,показанному на рисунке 6.
/>
Рис. 6 — Диаграмма видов деятельности
4.2 Лабораторная работа№2
4.2.1 Создание диаграммывзаимодействий
Interactiondiagram (диаграммы взаимодействия). Этот типдиаграмм включает в себя Sequence diagram (диаграммы последовательности)и Collaboration diagram (диаграммы кооперации).Эти диаграммы позволяют сразных точек зрения рассмотреть взаимодействие объектов в создаваемой системе.
4.2.2 Создание диаграммыпоследовательностейSequence diagram(диаграммы последовательности действий)
Взаимодействие объектов в системепроисходит посредством приема и передачи сообщений объектами-клиентами иобработки этих сообщений объектами-серверами. При этом в разных ситуациях однии те же объекты могут выступать и в качестве клиентов, и в качестве серверов.
Данный тип диаграмм позволяетотразить последовательность передачи сообщений между объектами.
Этот тип диаграммы не акцентируетвнимание на конкретном взаимодействии, главный акцент уделяетсяпоследовательности приема/передачи сообщений. Для того чтобы окинуть взглядомвсе взаимосвязи объектов, служит Collaboration diagram.
Особенности разработки диаграммыпоследовательности в среде IBM Rational Rose
Диаграммапоследовательности является формой визуализации взаимодействия в модели и, каки диаграмма кооперации, оперирует объектами и сообщениями. Особенность работы в среде IBM Rational Rose2003 заключается в том, что этот вид канонической диаграммы может быть созданавтоматически после построения диаграммы кооперации и нажатия клавиши. С помощью этой же клавиши осуществляется переключение междудиаграммами последовательности и кооперации в модели.
Однако вотдельных случаях бывает удобно начать построение диаграмм взаимодействия сдиаграммы последовательности. В этом случае активизировать рабочее окнодиаграммы последовательности можно несколькими способами:
· Щелкнуть накнопке с изображением диаграммы взаимодействия на стандартной панелиинструментов и выбрать для построения диаграмму последовательности.
· Выполнитьоперацию главного меню: Browse/>Interaction Diagram (Браузер/>Диаграммавзаимодействия) и выбрать для построения новую диаграмму последовательности.
· Выполнитьоперацию контекстного меню: New/>Sequence Diagram (Новая/>Диаграммапоследовательности) для логического представления или представления вариантовиспользования в браузере проекта.
При этомпоявляется новое окно с чистым рабочим листом диаграммы классов и специальнаяпанель инструментов, содержащая кнопки с изображением графических примитивов,необходимых для разработки диаграммы последовательности (табл. 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 введите«Выбор заказа».
Рис.20. Соотнесение объектов с классами 15. Проделайте те жедействия с оставшимися объектами, согласно рисунку 7.
/>
Рис. 7 — Диаграммапоследовательности
4.2.3 Созданиедиаграммы кооперации
Collaborationdiagram (диаграмма кооперации)
Этот тип диаграмм позволяет описатьвзаимодействия объектов, абстрагируясь от последовательности передачисообщений.
На этом типе диаграмм в компактномвиде отражаются все принимаемые и передаваемые сообщения конкретного объекта итипы этих сообщений.
По причине того, что диаграммыSequence и Collaboration являются разными взглядами на одни и те же процессы,Rational Rose позволяет создавать из Sequence диаграммы диаграмму Collaborationи наоборот, а также производит автоматическую синхронизацию этих диаграмм.Особенности разработки диаграммкооперации в среде IBM Rational Rose 2003
Активизироватьрабочее окно диаграммы кооперации в программе IBM Rational Rose 2003 можнонесколькими способами:
· Щелкнуть накнопке с изображением диаграммы взаимодействия на стандартной панелиинструментов и выбрать для построения новую диаграмму кооперации.
· Выполнитьоперацию главного меню: Browse/>Interaction Diagram (Браузер/>Диаграммавзаимодействия) и выбрать для построения новую диаграмму кооперации.
· Выполнитьоперацию контекстного меню: New/>Collaboration Diagram (Новая/>Диаграммакооперации) для логического представления или представления вариантовиспользования в браузере проекта.
При этомпоявляется новое окно с чистым рабочим листом диаграммы кооперации испециальная панель инструментов, содержащая кнопки с изображением графическихпримитивов, необходимых для разработки диаграммы кооперации (табл. 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Особенности разработки диаграмм классовв среде IBM Rational Rose 2003
Диаграмма классов является основным логическим представлением моделии содержит детальную информацию о внутреннем устройствеобъектно-ориентированной программной системы или, используя современнуютерминологию, об архитектуре программной системы. Активизировать рабочее окнодиаграммы классов можно несколькими способами:
· окно диаграммы классов появляется по умолчанию в рабочем окне диаграммыпосле создания нового проекта;
· щелкнуть накнопке с изображением диаграммы классов настандартной панели инструментов;
· раскрытьлогическое представление (Logical View) в браузере проекта и дважды щелкнуть напиктограмме Main (Главная);
· выполнитьоперацию главного меню: Browse/>Class Diagram (Обзор/>Диаграмма классов).
При этомпоявляется новое окно с чистым рабочим листом диаграммы классови специальная панель инструментов, содержащая кнопки с изображением графическихпримитивов, необходимых для разработки диаграммы классов(табл. 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 -> Class Diagramm.
6. Назовите новую диаграмму классов«Добавить новый заказ», дважды щелкнув на ней в браузере, откройте ее.
7. Перетащите из браузера все классы:«Выбор Заказа», «Детали заказа», «Заказ», «МнджЗак», «АдмТранз».
8. Щелкните правой кнопкой мыши наклассе «Выбор заказа», в открывшемся меню выберите Open Specification.
9. В поле стереотипа введите слово Boundary (граница), нажмите ОК.
10. Таким же образом укажите дляклассов следующие стереотипы:
«Детали заказа» — Boundary (граница)
«Заказ» — Entity (сущность)
«МнджЗак», «АдмТранз» — Control (контроль)11. В браузереперетащите соответствующие классы на пакеты согласно стереотипам.
Рис.28. Диаграмма классов 12.Щелкните правой кнопкой мыши на классе «Заказ», в открывшемся меню выберите NewAttribute, введите следующиеатрибуты: OrderNumber,CustomerName, OrderDate,OrderFillDate.
13.НажмитеOpen Specification, и вовкладкеAttributes укажите типыатрибутов:Integer, String, Date.
Рис.30. Создание атрибутов 14.Щелкните правой кнопкой мыши на классе «Заказ», в открывшемся меню выберите NewOperation, создайте следующиеоперации: Create, SetInfo,GetInfo.
15. Отредактируйтеоперацию Create() такимобразом, чтобы она выглядела Create(): Boolean. Это можносделать во вкладке Operationsокна OpenSpecifications, либо нажатием наизображение операции под классом «Заказ».
ОтредактируйтеоперациюSetInfo () так, чтобыонавыгляделакакSetInfo(OrderNumber: Integer, CustomerName: String, OrderDate: Date,OrderFillDate: Date): Boolean.
Отредактируйте операциюGetInfo () так, чтобы онавыглядела как GetInfo (): String.
16. Остальным классамдобавьте операции в соответствии с рисунком 9.
/>
Рис. 9 — Конечный виддиаграммы классов
17. Так же всоответствии с рисунком добавьте связи, используя кнопку UnidirectionalAssociation /> панели инструментов. Щелкнув накаждом конце любой связи, в открывшемся меню выберите пункт Multiplicityи установите одно из соответствующих значений кратности.
4.3.2 Созданиедиаграммы состоянийStatechartdiagram (диаграммы состояний)
Каждый объект системы, обладающийопределенным поведением, может находиться в определенных состояниях, переходитьиз состояния в состояние, совершая определенные действия в процессе реализациисценария поведения объекта. Поведение большинства объектов реальных системможно представить с точки зрения теории конечных автоматов, то есть поведениеобъекта отражается в его состояниях, и данный тип диаграмм позволяет отразить этографически. Для этого используется два вида диаграмм: Statechart diagram(дмаграмма состояний) и Activity diagram (диаграмма активности)
Рис.33. Пример диаграммы состояний Диаграмма состояний (Statechart) предназначена дляотображения состояний объектов системы, имеющих сложную модель поведения. Этоодна из двух диаграмм State Machine, доступ к которой осуществляется из одногопункта меню.
Особенности разработкидиаграммы состояний в среде IBM Rational Rose 2003.
Переходя крассмотрению диаграммы состояний, следует отметить,что в среде IBM Rational Rose 2003 этот тип диаграмм может относиться котдельному классу, операции класса, варианту использования, пакету илипредставлению. Для того чтобы построить диаграмму состояний,ее вначале необходимо создать и активизировать.
Начатьпостроение диаграммы состояний для выбранногоэлемента модели или моделируемой системы в целом можно одним из следующихспособов:
· Щелкнуть накнопке с изображением диаграммы состояний настандартной панели инструментов, после чего следует выбрать представление и типразрабатываемой диаграммы — новая диаграмма состояний.
· Выделитьлогическое представление (Logical View) или представление вариантовиспользования (Use Case View) в браузере проекта и выполнить операциюконтекстного меню: New/>Statechart Diagram (Новая/>Диаграмма состояний).
· Раскрытьлогическое представление (Logical View) в браузере проекта и выделитьрассматриваемый класс, операцию класса, пакет, или раскрыть представлениевариантов использования (Use Case View) и выбрать вариант использования,после чего выполнить операцию контекстного меню: New/>Statechart Diagram (Новая/>Диаграмма состояний).
· Выполнитьоперацию главного меню: Browse/>State Machine Diagram (Обзор/>Диаграмма состояний), после чего следует выбрать представление и типразрабатываемой диаграммы.
В результатевыполнения этих действий появляется новое окно с чистым рабочим листомдиаграммы состояний и специальная панельинструментов, содержащая кнопки с изображением графических элементов модели,необходимых для разработки диаграммы состояний(табл. 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-> StatechartDiagramm.
2. Назовите новуюдиаграмму StateDiag.
3. Поместите на диаграмму состояния StartState /> иEnd State />
4. Так жепоместите на диаграмму состояние State /> , оно будет составным состоянием. Составное состояние (compositestate) — сложное состояние, которое состоит из других вложенных в негосостояний.
Составное состояние называют также состоянием-композитом. Вложенные состояниявыступают по отношению к составному состоянию как подсостояния (substate). И хотя между ними имеетместо отношение композиции, графически все вершины диаграммы,которые соответствуют вложенным состояниям, изображаются внутри символа составного состояния. В этом случае размеры графическогосимвола составного состояния увеличиваются, такчтобы вместить в себя все подсостояния.
5. Поместитена диаграмму еще два состояния State,назовите из «Отменен» и «Выполнен»
6. Добавьтедва состояния State внутрь созданного ранее составногосостояния, назовите их «Инициализация» и «Выполнение заказа приостановлено»
7. Дваждыщелкните на состоянии «Инициализация» и перейдите во вкладку Actions. В открывшемся окне щелкните правойкнопкой мыши и выберите пункт Insert
8. Дваждыщелкните на новом действии, назовите его «Сохранить дату заказа». В окне When выберите пункт On Entry. Входное действие (entry action) — действие, которое выполняется вмомент перехода в данное состояние.
Обозначается с помощью ключевогослова — метки действия entry, которое указывает на то, что следующее за нейвыражение действия должно быть выполнено в момент входа в данное состояние.
9. Так жедобавьте действия «Собрать клиентскую информацию» и «Добавить к заказу новыепозиции», в окне When укажите Do. Внутренняя деятельность (do activity) — выполнениеобъектом операций или процедур, которые требуют определенного времени.
Обозначается с помощью ключевогослова — метки деятельности do, которое специфицирует так называемую«ду-деятельность», выполняемую в течение всего времени, пока объектнаходится в данном состоянии, или до тех пор, пока не будет прервано внешнимсобытием. При нормальном завершении внутренней деятельности генерируетсясоответствующее событие.
10. Дваждыщелкните на состоянии «Отменен», повторив вышеописанные шаги, добавьте действие«Сохранить дату отмены», в окне Whenукажите On Exit. Действие выхода (exit action) — действие, производимое при выходеиз данного состояния.
Обозначается с помощью ключевогослова — метки действия exit, которое указывает на то, что следующее за нейвыражение действия должно быть выполнено в момент выхода из данного состояния.
11. Дваждыщелкните на состоянии «Выполнен», повторив вышеописанные шаги, добавьтедействие «Выписать счет», в окне Whenукажите Do.
12. Припомощи кнопки StateTransition /> панели инструментов, добавьте надиаграмму линии перехода. При помощи кнопки Transition to Self />, добавьтерефлексивный переход на состояние «Выполнение заказа приостановлено».
13. Дважды щелкните напереходе от состояния «Инициализация» к состоянию «Выполнение заказаприостановлено», в поле Eventоткрывшегося окна спецификации перехода введите фразу «Выполнить заказ». Такимже образом добавьте событие «Отменить заказ» к переходу между составнымсостоянием и состоянием «Отменен».
14. Дважды щелкните напереходе от состояния «Выполнение заказа приостановлено» к состоянию«Выполнен», в поле Event введите фразу«Добавить к заказу новую позицию». Перейдите на вкладку Detail,в поле GuardCondition введите «Не осталосьнезаполненных позиций». Для рефлексивного перехода состояния «Выполнение заказаприостановлено» добавьте событие «Добавить к заказу новую позицию» и GuardCondition «Остаютсянезаполненные поля».
4.4 Лабораторная работа№4
4.4.1 Создание диаграммы компонентовComponent diagram(диаграммы компонентов)
Этот тип диаграмм предназначен дляраспределения классов и объектов по компонентам при физическом проектированиисистемы. Часто данный тип диаграмм называют диаграммами модулей.
При проектировании больших системможет оказаться, что система должна быть разложена на несколько сотен или дажетысяч компонентов, и этот тип диаграмм позволяет не потеряться в обилии модулейи их связей.Особенности разработки диаграммыкомпонентов в среде IBM Rational Rose 2003
Диаграмма компонентов служит частью физического представлениямодели, играет важную роль в процессе ООАП и является необходимой для генерациипрограммного кода. Для разработки диаграмм компонентовв браузере проекта предназначено отдельное представление компонентов(Component View), в котором уже содержится диаграмма компонентов с пустым содержанием и именем по умолчанию Main(Главная).
Активизациядиаграммы компонентов может быть выполнена одним изследующих способов:
· Щелкнуть накнопке с изображением диаграммы компонентов настандартной панели инструментов.
· Раскрытьпредставление компонентов в браузере (ComponentView) и дважды щелкнуть на пиктограмме Main (Главная).
· Через пункт меню Browse/>ComponentDiagram (Браузер/>Диаграмма компонентов).
В результатевыполнения этих действий появляется новое окно с чистым рабочим листомдиаграммы компонентов и специальная панельинструментов, содержащая кнопки с изображением графических примитивов,необходимых для разработки диаграммы компонентов(табл. 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. Откройте диаграмму, содержащуюпакеты «Сущности», «Границы», «Контроль» (LogicalView).
Поместите классы из браузера всоответствующие их типам пакеты.
2. Перейдите в браузере в ComponentView. Нажмите на Component View правой кнопкой мыши, создайте пакеты New-> Packages. Назовите их «Сущности», «Границы», «Контроль».
3. При помощи кнопки Dependency/> проведителинии зависимостей.
4. Дважды щелкнув на пакете«Сущности», откройте главную диаграмму компонентов этогопакета.
5. Нажмите кнопкуPackageSpecification (Содержит определение класса, его атрибутов и операций) />панелиинструментов. Поместите спецификацию пакета на диаграмму. Введите имяспецификации пакета «ЗаказПредмета». Таким же образом добавьте спецификациюпакета «Заказ».
6. Нажмите кнопку Package Body(Содержит код реализации операций класса.) /> панели инструментов, поместите надиаграмму тело пакета и введите его имя, «Заказ предмета». Добавьте тело пакета«Заказ». При помощью кнопки Dependancy проведите линии зависимостей.
7. Постройте диаграммы компонентовпакетов «Границы» и «Контроль», как показано на рисунках 10 и 11.
/>
Рис. 10
/>
Рис. 11
8. Щелкните правойкнопкой на представлении Компонентов в браузере (Componentview). В открывшемсяменю выберите New-> ComponentDiagram.Назовите новую диаграмму System.Дважды щелкнув по диаграмме, откройте ее.
9. Разверните вбраузере пакеты «Сущности», «Границы» и «Контроль». Переместите всеспецификации пакетов на диаграмму классов.
10. Нажмите кнопку TaskSpecification (Может содержать определение класса, его атрибутов иопераций, которые предполагается использовать в независимом потоке управления) /> панелиинструментов и поместите на диаграмму спецификации задач ЗаказКлиент иЗаказСервер. Приведите диаграмму к виду, показанному на рисунке 12.
/>
Рис. 12 — Диаграммакомпонентов системы
4.4.2 Созданиедиаграммы размещенийDeployment diagram(диаграммы размещения)
Этот вид диаграмм предназначен дляанализа аппаратной части системы, то есть «железа», а не программ. В прямомпереводе с английского Deployment означает «развертывание», но термин«размещение» точнее отражает сущность этого типа диаграмм.
Для каждой модели создается толькоодна такая диаграмма, отображающая процессоры (Processor), устройства (Device)и их соединения.
Обычно этот тип диаграмм используетсяв самом начале проектирования системы для анализа аппаратных средств, накоторых она будет эксплуатироваться.Особенности разработки диаграммыразвертывания в среде IBM Rational Rose 2003.
Активизациядиаграммы развертывания может быть выполнена одним из следующих способов:
· Щелкнуть накнопке с изображением диаграммы развертывания на стандартной панелиинструментов.
· Дважды щелкнутьна пиктограмме представления развертывания (Deployment View) в браузерепроекта.
· Выполнитьоперацию главного меню: Browse/>Deployment Diagram (Обзор/>Диаграммаразвертывания).
В результатевыполнения этих действий появляется новое окно с чистым рабочим листомдиаграммы развертывания и специальная панель инструментов, содержащая кнопки сизображением графических примитивов, необходимых для разработки диаграммыразвертывания (табл. 13).
Таблица 13 — Назначение кнопокспециальной панели инструментов диаграммы развертывания
/>Графическое изображение
Всплывающая подсказка
Назначение кнопки
/> Selection Tool Превращает изображение курсора в форму стрелки для последующего выделения элементов на диаграмме
/> Text Box Добавляет на диаграмму текстовую область
/> Note Добавляет на диаграмму примечание
/> Anchor Note to Item Добавляет на диаграмму связь примечания с соответствующим графическим элементом диаграммы
/> Processor Добавляет на диаграмму процессор
/> Connection Добавляет на диаграмму отношение соединения
/> Device Добавляет на диаграмму устройство
1. Дважды щелкнитемышкой на представлении Размещений в браузере (DeploymentView). Добавьте надиаграмму три процессора />, назовите их «Сервер банковскойБД», «Региональный сервер» и «Беговая Аллея 12», соответственно.
2. Добавьте надиаграмму устройство />, назовите его «Принтер».
3. Установите отношениясоединений />, как показано на рисунке 42. Также в соответствии с рисунком задайте имена отношений, нажимая на них правойкнопкой и выбирая OpenSpecification.
/>
Рис. 13 — Диаграммаразмещений
ЗАКЛЮЧЕНИЕ
В рамках данной работыбыла поставлена задача разработать лабораторный практикум по освоению процессапроектирования ИС в среде RationalRose. Для этого был изучен объектно-ориентированныйподход проектирования ИС, смоделирована предметная область, на основе которойразрабатывались основные проектные диаграммы. Результатом работы являютсяметодические указания к выполнению лабораторных работ в RationalRose, а также разработанные диаграммыбудущей ИС. В методические указания входит теоретическая часть(описаниеосновных компонентов и элементов), а так же пошаговое руководство к созданиюосновных диаграмм. В работе использовалось средство проектирования RationalRose 2003 EnterpriseEdition. Методические указаниямогут применяться с образовательных целях при изучении данного средствапроектирования.
СПИСОК ЛИТЕРАТУРЫ
1. Уэнди Боггс, МайклБоггс: UML и Rational Rose, 2008 г.
2. Материалы сайта www.interface.ru
3. Материалы сайта www.sql.ru