Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Задания, лекции / Червенчук

.pdf
Скачиваний:
54
Добавлен:
02.05.2015
Размер:
818.35 Кб
Скачать

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования

«Омский государственный технический университет»

И. В. ЧЕРВЕНЧУК

МОДЕЛИРОВАНИЕ И ПРОЕКТИРОВАНИЕ ОБЪЕКТНО ОРИЕНТИРОВАННЫХ СИСТЕМ СРЕДСТВАМИ ЯЗЫКА UML

Учебное текстовое электронное издание локального распространения

 

Омск

 

Издательство ОмГТУ

 

2014

 

 

Сведения об издании: 1, 2

© ОмГТУ, 2014

 

ISBN 978-5-8149-1812-3

1

УДК 004.435 ББК 32.973.26-018.2.75

Ч-45

Рецензенты:

О. Н. Лучко, канд. пед. наук, профессор; В. А. Моренко, канд. тех. наук, доцент

Червенчук, И. В.

Ч-45 Моделирование и проектирование объектно ориентированных систем средствами языка UML : учеб. пособие / И. В. Червенчук ; Минобрнауки России, ОмГТУ. – Омск : Изд-во ОмГТУ, 2014.

ISBN 978-5-8149-1812-3

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

Предназначено для студентов, обучающихся по направлению подготовки бакалавров 230100 – Информатика и вычислительная техника, и магистрантов, осваивающих направление 230101.68 – Отказоустойчивые вычислительные системы, по дисциплине «Компьютерные технологии в науке и производстве».

УДК 004.435 ББК 32.973.26-018.2.75

Рекомендовано редакционно-издательским советом Омского государственного технического университета

ISBN 978-5-8149-1812-3

© ОмГТУ, 2014

2

1 электронный оптический диск

Оригинал-макет издания выполнен в Microsoft Office Word 2007 с использованием возможностейAdobe Acrobat X.

Минимальные системные требования:

процессор Intel Pentium 1,3 ГГц и выше;

оперативная память 256 Мб;

свободное место на жестком диске 260 Мб;

операционная система Microsoft Windows XP/Vista/7;

разрешение экрана 1024×576 и выше;

акустическая система не требуется;

дополнительные программные средстваAdobe Acrobat Reader v 5.0 и выше.

№ госрегистрации 0321402588

Редактор О. В. Маер Компьютерная верстка А. Н. Кошелапова

Сводный темплан 2014 г. Подписано к использованию 02.09.14. Объем 815 Кб.

—————————————————

Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11; т. 23-02-12

Эл. почта: info@omgtu.ru

3

ВВЕДЕНИЕ

Споявлением первых компьютерных программ возникла потребность

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

Первый этап развития вычислительной техники ассоциируется с так называемыми алгоритмическими языками. Основой алгоритмического подхода к разработке программ являлась алгоритмическая организация структуры программного кода, что было естественно для решения вычислительных задач, доминировавших на данном этапе. Исходным для данной методологии являлось понятие алгоритма, под которым в общем случае понималось некоторое предписание выполнить точно определенную последовательность действий, направленных на достижение заданной цели или решение поставленной задачи. Примерами алгоритмов являются хорошо известные правила нахождения корней квадратного уравнения, расчет собственных чисел матрицы или решение системы дифференциальных уравнений. Введенное на данном этапе первое графическое средство документирования программ получило название блок-схемы алгоритма. Данная нотация содержала основные структурные элементы: процесс, ветвление, цикл. Соответствующая система графических обозначений была зафиксирована в ГОСТ 19.701–90 (ИСО 5807–85), который регламентировал использование условных обозначений в схемах алгоритмов, программ, данных и систем. Такие средства с успехом использовались, был организован специальный фонд алгоритмов и программ, где хранилась и куда поступала документация наиболее интересных и используемых вычислительных алгоритмов, любой разработчик программных средств мог при необходимости воспользоваться данными алгоритмами.

4

По мере развития вычислительной техники возрастала и сложность программ. Успешное решение сложной задачи требовало ее разбиения на подзадачи, которые в свою очередь могли содержать свои подзадачи и так далее. В языках программирования возникли и закрепились понятия

вспомогательного алгоритма и процедуры. Так же, как и алгоритм,

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

Программы становились сложнее, наглядность представления их

спомощью блок-схем стала резко ухудшаться. Была выявлена основная причина «запутывания» программ – наличие безусловных переходов (goto метка). Хорошим тоном, а потом и обязательным требованием стало программирование без использования оператора безусловного перехода. Языками программирования стали поддерживаться конструкции ветвления

снесколькими условиями (if… else…, case…), циклы с предусловием (while…) и постусловием (do…until), с командами выхода из цикла (break, exit), перехода к следующей итерации (loop, repeat) и пр. Широко стали применяться «бесконечные циклы» (while .t.), выход из которых производился с помощью команд выхода. Как теоретическое обоснование структурного программирования была доказана теорема Бёма – Якопини, согласно который любой исполняемый алгоритм может быть преобразован к структурированному виду, то есть к такому виду, когда ход его выполнения определяется только при помощи трёх структур управления: последовательной (англ. sequence), ветвлений (англ. selection) и повторов или циклов (англ. repetition, cycle). В рамках методологии структурного программирования получило развитие нисходящее проектирование программ или программирование «сверху-вниз».

Период наибольшей популярности идей структурного программирования приходится на конец 70-х – начало 80-х годов XX века. В арсенал блок-схем был введен элемент «процедура», дополнительно введены та-

5

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

Примерно во второй половине 80-х годов XX века стало очевидно, что традиционные методы процедурного программирования не способны справиться ни с растущей сложностью программ и их разработки, ни с необходимостью повышения их надежности. Возникла необходимость новой методологии программирования. Такой методологией стало объектно ориентированное программирование (ООП). Базовыми понятиями ООП являются понятия класса и объекта. При этом под классом понимают некоторую абстракцию совокупности объектов, которые имеют общий набор свойств и обладают одинаковым поведением. Каждый объект в этом случае рассматривается как экземпляр соответствующего класса. Принцип инкапсуляции (заключение в некоторой программной единице – классе некоторого логически законченного программного элемента с соответствующими ему данными и функциями) становится одним из фундаментальных принципов программирования. Применение принципов наследования и полиморфизма позволило в значительной степени оптимизировать программу, повысить ее надежность.

При разработке крупной информационной системы возникает совокупность задач. Эта совокупность задач не столько связана с написанием кода, сколько с общим анализом требований к будущей программе, а также с анализом конкретной предметной области, для которой разрабатывается программа. Все эти обстоятельства привели к появлению специальной методологии, получившей название методологии объектно ориентированного анализа и проектирования (ООАП). В рамках этого подхода возникало много направлений, период конца 80-х и начало 90-х годов принято называть «войной методов», завершение которой (хотя споры продолжаются) связано с появлением языка UML.

6

Унифицированный язык моделирования (UML, Unified Modeling Language) является преемником методологии объектно ориентированного анализа и проектирования, он непосредственно унифицирует методы ведущих специалистов в этой области Буча, Рамбо и Джекобсона, однако обладает большими возможностями по объектно ориентированному анализу [2]. Язык UML прошел процесс стандартизации в рамках консорциу-

ма OMG (Object Management Group) и с 1997 года является стандартом OMG.

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

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

Внастоящее время существует множество средств моделирования

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

ВРоссии для моделирования и анализа информационных систем достаточно широко используются следующие средства моделирования:

Rational Rose, Oracle Designer, AllFusion Process Modeler (BPWin)

иAllFusion ERwin Data Modeler (ERWin), ARIS, Power Designer.

BPWin и ERWin – компании Соmputer Associates. Computer Asso-

ciates International, Inc. (CA) входит в пятерку ведущих производителей программного обеспечения, предлагая средства моделирования, резервного копирования, управления инфраструктурой предприятия (сетями, серверами и т. д.), информационной безопасности, business intelligence и т. д. Пакет BPWin основан на методологии IDEF и предназначен для функционального моделирования и анализа деятельности предприятия. Методология IDEF, являющаяся официальным федеральным стандартом США, представляет собой совокупность методов, правил и процедур, предназначенных для построения функциональной модели объекта какой-либо

7

предметной области. Функциональная модель IDEF отображает функциональную структуру объекта.

BPwin поддерживает сразу три стандартные нотации: IDEF0 (функциональное моделирование), DFD (моделирование потоков данных) и IDEF3 (моделирование потоков работ). Эти три основных ракурса позволяют описывать предметную область наиболее комплексно.

Пакет ERWin – это средство концептуального моделирования баз данных (БД). Используется при моделировании и создании баз данных произвольной сложности на основе диаграмм «сущность – связь». В настоящее время ERWin является наиболее популярным пакетом моделирования данных благодаря поддержке широкого спектра СУБД самых различных классов.

Oracle Designer компании Oracle. Набор инструментальных средств Oracle Designer предлагает интегрированное решение для разработки прикладных систем корпоративного уровня для Web и клиент-серверных приложений. Oracle Designer участвует в каждой фазе жизненного цикла разработки программного обеспечения – от моделирования бизнес-процессов до внедрения. Применение единого репозитория делает возможным использование любых его компонент для быстрой разработки масштабируемых, кросс-платформенных распределенных приложений. Средства концептуального моделирования Oracle Designer включают:

ER-диаграммы (диаграммы информационной структуры предметной области, представляемой в виде объектов и их взаимосвязей);

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

диаграммы потоков данных, циркулирующих на предприятии. Такие модели представляют информационные потребности в удоб-

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

Rational Rose компании IBM. IBM Rational Rose входит в состав пакета IBM Rational Suite и предназначен прежде всего для моделирова-

8

ния программных систем с использованием широкого круга инструментальных средств и платформ. Rational Rose является одним из ведущих систем визуального моделирования объектно ориентированных систем

впрограммной индустрии, благодаря полноценной поддержке языка UML (унифицированный язык моделирования) и многоязыковой поддержке командной разработки. Система полностью поддерживает ком- понентно-ориентированный процесс разработки информационных систем. Любые участники проекта – аналитики, специалисты по моделированию, разработчики и другие – могут использовать модели, построенные

вRational Rose, для большей эффективности создания конечного продукта. Любые модели, разрабатываемые с помощью языка UML, являются взаимосвязанными: бизнес-модель, функциональная, модели анализа, проектирования, базы данных, компонентов и физического развертывания системы. Существуют расширения Rational Rose, которые позволяют выполнять скелетную (round-trip) разработку ИС, создаваемых на базе язы-

ков C/C++, Java, Smalltalk, Ada, Object Pascal (Borland Delphi) и др. Таким

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

теграция Rational Rose с Rational TestManager дает возможность формиро-

вать сценарии тестирования на базе визуальной модели. Интеграция Rational Rose с Rational ClearCase позволяет поставить на версионный контроль модель целиком или по частям. Интеграция Rational Rose с Rational SoDA дает возможность автоматизировать процесс создания документов и отчетов по визуальной модели.

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

9

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

ARIS компании IDS Scheer AG. В настоящее время наблюдается тенденция интеграции разнообразных методов моделирования и анализа систем, проявляющаяся в форме создания интегрированных средств моделирования. Одним из таких средств является продукт, носящий название ARIS, разработанный германской фирмой IDS Scheer. Основное направление – программное обеспечение и консалтинг. Система ARIS представляет собой комплекс средств анализа и моделирования деятельности предприятия. Ее методическую основу составляет совокупность различных методов моделирования, отражающих разные взгляды на исследуемую систему. Одна и та же модель может разрабатываться посредством нескольких методов, что позволяет использовать ARIS специалистам с различными теоретическими знаниями и настраивать ARIS на работу с системами, имеющими свою специфику. Методика моделирования ARIS основывается на разработанной профессором Августом Шером теории построения интегрированных ИС, определяющей принципы визуального отображения всех аспектов функционирования анализируемых компаний. ARIS поддерживает четыре типа моделей, отражающих различные аспекты исследуемой системы:

1)организационные модели, представляющие структуру системы – иерархию организационных подразделений, должностей и конкретных лиц, связи между ними, а также территориальную привязку структурных подразделений;

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

10

Соседние файлы в папке Задания, лекции