Скачиваний:
18
Добавлен:
10.04.2015
Размер:
234.27 Кб
Скачать

Лабораторная работа N 8

Моделирование информационной системы. Разработка диграммы компонентов

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

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

1. Общие сведения

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

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

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

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

2.Спецификации исполняемого варианта программной системы.

3.Обеспечения многократного использования отдельных фрагментов программного кода.

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

Вразработке диаграммы компонентов принимают участие системные аналитики, архитекторы системы и программисты. Одни компоненты существуют на этапе компиляции программного кода ( исходные модули), другие на этапе его исполнения.

Вбизнес - системах диаграммы включают отделы, службы и документы, которые реально существуют в системе.

Физическая сущность в UML называется компонентом. Компонент реализует некоторый набор интерфейсов. На диаграмме он обозначается следующим образом:

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

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

В качестве простых имен компонент используют имена файлов:

*.exe, *.dll, *.htm, *.txt, *.doc, *.hlp, *.db, *.mdb, *.h, *.cpp, *.java, *.class, *.pl, *.asp и т.д.

В ряде случаев символ компонента разделяется на секции, чтобы явно указать имена реализованных в нем интерфейсов ( расширенное обозначение компонента).

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

для *.dll – два зубчатых колеса на листе, для *.htm – закрашенный круг, для *.hlp – строчки текста с точками перехода в виде закрашенных прямоугольников на листе, для *.cpp – строчки текста и т. д. Эти дополнительные обозначения не специфицированы в языке UML. В языке же UML выделяют только три вида компонентов:

1.Компоненты развертывания, которые обеспечивают непосредственное выполнение сис-

темой своих функций: *.dll, *.htm, *.hlp.

2.Компоненты – рабочие продукты, как правило – это файлы с исходными текстами про-

грамм: *.h, *.cpp и т. п.

3.Компоненты исполнения – файлы *.exe. Эти компоненты называют артефактами разработки. Другой способ спецификации различных видов компонентов - явное указание стереотипа компонента перед его именем:

Библиотека (library) –для динамической или статической библиотеки.

Таблица (table) –для таблицы базы данных.

Файл (file) – для файлов с исходными текстами программ.

Документ (document) – для документов.

Исполнимый (executable) – для компонентов, которые могут исполняться в узле.

Компонентами также являются u1080 интерфейсы, которые изображаются кружочком, соединяемыми с программными компонентами отрезками линий без стрелок. При этом имя интерфейса должно начинаться с буквы “I” и записывается рядом с окружностью. Линия означает, что программный компонент реализует этот интерфейс.

Другим способом представления интерфейса является его изображения в виде прямоугольника класса со стереотипом Interface и возможными секциями атрибутов и операций. Если компонент реализует некоторый интерфейс, то такой интерфейс называется экспортируемым. Используемый интерфейс другого модуля называется импортируемым и изображается пунктирной линией со стрелкой, направленной к интерфейсу.

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

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

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

Дадим несколько рекомендаций по построению диаграммы компонентов :

1.Максимально учитывать информацию о логическом представлении модели системы.

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

3.Хорошо представлять возможности выбранного языка программирования.

4.Определиться с выбором базы данных или знаний.

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

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

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

8.При разработке диаграммы компонентов необходимо использовать уже имеющиеся в языке UML компоненты и стереотипы, прибегая лишь в исключительных случаях к механизмам расширения: дополнительные стереотипы и помеченные значения.

2.Дополнительная литература

1.Боггс У., Боггс М. UML и Rational Rose - М.: "ЛОРИ", 2000. - 582 с.

2.Леоненков А.В. Самоучитель UML. 2-е издание - СПб.: "БХВ-Петербург", 2004. - 432 с.

3.Буч Г., Рамбо Дж., Джекобсон А. Язык UML. Руководство пользователя - М.: ДМК, 2000. - 432 с.

4.Леоненков А.В. Визуальное моделирование в среде IBM Rational Rose 2003.Интернет-

курс.

5.Вендров А.М. Проектирование программного обеспечения экономических информа-

ционных систем М: «Финансы и статистика», 2006

6.Вендров А.М. Практикум по проектированию программного обеспечения экономических информационных систем М: «Финансы и статистика», 2006

7.Трофимов С.А. CASEтехнологии. Практическая работа в Rational Rose – М.: Бином, 2001 г.-

3.Задание на лабораторную работы

В данной лабораторной работе для вашего варианта курсовой работы требуется:

1.На основе диаграммы классов создать диграмму компонентов.

2.Указать взаимосвязи между компонентами на диаграммах.

При возникновении затруднений по работе с интерфейсом среды Rational Rose можно использовать Интернет-курс Леоненкова [4], практикум Вендова [8] или книгу Трофимова [9] .

4.Порядок выполнения работы

1.В созданный проект в среде Rational Rose добавьте диаграмму компонентов.

2.В соответствии с заданием разработайте диаграмму компонентов в среде Rational Rose.

3.Подготовьте отчет о выполнении лабораторной работы.

Для успешной сдачи лабораторной работы необходимо:

1)представить преподавателю UMLдиаграммы компонентов;

2)представить преподавателю отчет созданный на основе модели.

3)уметь ответить на вопросы по. диаграмме компонентов.

5. Порядок оформления отчета

Отчет о выполнении лабораторной работы сдается сначала в электронном, а затем в распечатанном виде. Отчет должен содержать:

1)титульный лист;

2)постановку задачи (берется из методички по курсовой работе);

3)UMLдиаграммы компонентов;

Соседние файлы в папке predstavlenieZnanyVinfSist