Моделирование информационных систем с использованием языка UML

Особенности разработки информационных систем с использованием унифицированного языка моделирования UML. Основные этапы рационального унифицированного процесса разработки информационных систем с примерами и иллюстрациями. Реализация информационной системы.

Рубрика Программирование, компьютеры и кибернетика
Вид методичка
Язык русский
Дата добавления 23.01.2014
Размер файла 950,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

На основе диаграммы классов модно создать профиль базы данных (диаграмма реляционных таблиц системы). При этом следует иметь ввиду, что объектно-ориентированная модель системы и профиль баз данных далеко не одно и то же. Реляционная модель не поддерживает наследования, имеет типы данных, соответствующие используемой СУБД, для обеспечения связей между таблицами используются специальные кодовые поля. Подробно о преобразовании объектно-ориентированной модели в реляционную можно прочитать в [3], мы остановимся на основных моментах: 1) основные классы, содержащие данные, предназначенные для хранения, преобразуются в таблицы; 2) при наличии ассоциаций типа "один к одному" хотя бы с одной стороны нужно добавить дополнительное кодовое поле, где указать код (ключ) второй записи для обеспечения связи данных; 2) при наличии ассоциаций типа "один ко многим" со стороны подчиненных записей (со стороны "многие") необходимо ввести дополнительное поле, где указать код (ключ) записи, которой они подчиняются (со стороны "один"); 3) при наличии ассоциаций типа "многие ко многим" необходимо ввести дополнительную таблицу связей, содержащую минимум два поля: код одного участника и код второго участника, таким образом ассоциация типа "многие ко многим" преобразуется в две ассоциации типа "один ко многим" через таблицу связи; 4) при наличии класса-ассоциации класс-ассоциация вводится как таблица связи, имеющая дополнительные атрибуты. 5) при наличии обобщения необходимо дополнить исходную таблицу полями, соответствующими атрибутам суперкласса (тогда суперкласс не вводить как таблицу), или ввести таблицу суперкласса (с полями соответствующими его атрибутам) а в таблице, соответствующей исходному классу добавить поле, соответствующее коду (ключу) записи суперкласса.

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

Рис. 9. Диаграмма профиля БД АРМ секретаря кафедры

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

В соответствии разработанной объектно-ориентированной моделью определим таблицы на базе классов, соответствующих основным концептуальным сущностям информационной системы. Каждой соответствующей таблице дадим имя, начинающиеся на букву "Т" и включающие имя соответствующего класса, например, Т_Студент, Т_Дисциплина. Таблицы UML являются стереотипными классами со стереотипом "Table", вид пиктограммы может регулироваться опцией Stereotype Display.

Структура классов содержит классы с иерархическими связями наследования: персона, студент, преподающий, преподаватель, аспирант. В соответствии с рекомендациями разработки реляционного профиля при наличии наследования базовых классов необходимо либо транслировать все атрибуты предков в таблицы, соответствующие листовым классам иерархии наследования; либо вводить таблицы, соответствующие всем классам иерархии наследования с обеспечением связей между таблицами от потомка к предку. Мы изберем компромиссный вариант: класс персона в отдельную таблицу преобразовывать не будем, соответствующие атрибуты транслируем в таблицы, соответствующие классам преподающий (Т_Преподающие) и студенты (Т_Студенты). Таблицы T_Преподаватель и Т_Аспиранты будут содержать столбцы соответствующие только специфическим атрибутам и по полю ID_PREP связываться с таблицей Т_Преподающие, содержащий всю основную информацию о преподавателях и аспирантах. Такой подход позволяет сэкономить внешнюю память, не прибегая к большому увеличению связей.

Для выполнения условия атомарности атрибутов, атрибуты класса T_ADR непосредственно транслируем в таблицы Т_Студенты и Т_Преподающий. Разбиение адреса на несколько атрибутов позволяет расширить возможности поиска и сортировки данных по адресу проживающих.

Таблица Т_Аспиранты имеет дополнительную связь к таблице Т_Преподающие, определяющую руководителя аспиранта, в поле руководитель находится только код руководителя (ID_PREP), дополнительные атрибуты которого можно узнать по этому же коду в таблице T_Преподаватель.

Для обеспечения связи по типу "один ко многим" между студентами и группами в таблицу Т_Студенты для записи каждого студента указывается код группы.

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

Чтобы реализовать связь по типу "многие ко многим" между преподавателями и группами студентов вводится дополнительная таблица связей Т_Группа-Преп, присоединенная связями типа "один ко многим" соответственно к таблицам Т_Группа и Т_Преподающие.

Веденные через перечисления специализированные типы в реляционных таблицах кодируются типом SMALLINT (короткое целое), соответствие между кодами и их значением (например, для класса Т_Должн: 01 - ассистент, 02 - старший преподаватель, 03 - доцент …) обеспечивается средствами интерфейса конечной программы (например, с помощью элемента ListBox VCL).

Текстовые атрибуты типа String объектно-ориентированной модели преобразуются в поля типа VARCHAR с указанием длины в текстовых символах.

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

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

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

Используя UML, разработчик практически не зависит от организации процесса программирования; он не привязан к какому-либо конкретному циклу изготовления программного продукта. Тем не менее, разработчиками UML рекомендуется применять процесс, который:

управляется прецедентами использования;

основан на архитектуре;

является итеративным и инкрементным.

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

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

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

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

5. Вопросы реализации информационной системы

Выбор конкретных средств реализации предлагается студенту сделать самостоятельно, единственное требование при этом - использование объектно-ориентированных средств программирования.

Наиболее популярными средствами программирования на сегодняшний день являются Delphi, C++ Builder, Java-Builder, Visual Basic. Все они предоставляют пользователю развитые возможности по разработке программных продуктов, содержат мощные средства визуального программирования. При выполнении специфических задач работы с текстами, создания WEB-приложений могут быть использованы специализированные средства на основе языков PERL, PHP и др.

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

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

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

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

Средства обратного проектирования позволяют из исходного кода программы на языке программирования построить UML-модель. Средства обратного проектирования являются дополнительными средствами систем моделирования и встраиваются в них. Кроме того, сторонними фирмами выпускаются программы, обеспечивающие связь между средствами UML-моделирования и популярными средствами разработки программного обеспечения, так фирма Ensamble Tools выпустила продукт Rose Delphi Link, предназначенная для обеспечения двухсторонней связи при проектировании между системой моделирования Rational Rose и популярной системной разработки приложений Borland Delphi.

Применение средств обратного проектирования может вносить существенные коррективы в общий цикл разработки информационной системы. При программировании в Delphi есть особенность, существенно отличающая разработку в Delphi от разработки в других средах программирования: программирование пользовательского интерфейса. Как правило, разработка большей части программ начинается именно с проектирования интерфейса пользователя, а при дальнейшем программировании - его существенного изменения. Поэтому использовать стандартный подход Rational Rose не совсем удобно. Для решения этой проблемы компания Ensemble Systems предлагает следующую методологию проектирования (рис.10).

Рис. 10. Методология проектирования с использованием RDL

При этом реализуется основная идея обратного проектирования: все изменения, сделанные на уровне программного кода в Delphi, отображаются в объектной модели, построенной в Rose, и наоборот, при изменении классов, методов и т.п. в объектной модели Rose, соответственно, корректируется программный код. Обратите внимание на пару стрелок, которые соединяют третий и четвертый блок. Как раз эти стрелки и отображают процесс обратного проектирования.

На рис.11. в качестве иллюстрации приводится экранная форма "Инструменты" (TForm2), реализованная визуальными средствами Delphi. Данная форма реализует интерфейс управления таблицей базы данных, содержащей информацию о номенклатуре инструментов для системы "Электронная кладовая".

Рис 11. Экранная форма "Инструмент"

Для реализации данной табличной формы использовались следующие компоненты VCL: DBGrid и DBNavigator, которые с помощью компонентов ADOConnection, ADOTable и DataSours были подключены к созданной в MS Access базе данных. На рис.12 приводится фрагмент модели (диаграмма классов), соответствующий данному программному модулю, полученный автоматически на базе исходного года посредством утилиты Rose Delphi Link.

Рис 12. Uml-модель формы "Инструмент"

Rose Delphi Link также позволяет в автоматическом режиме построить диаграмму компонентов проекта, отражающую структуру модулей проекта (рис.13.).

Рис 13. Структура модулей проекта - диаграмма компонентов

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

6. Темы курсовых работ

1. Записная книжка - дневник (для заметок).

2. Личный органайзер (телефоны, контакты, записи).

3. Личный телефонный справочник (разделение по категориям, поиск по фамилии т т.д.).

4. Электронный календарь - органайзер. (Включает средства напоминания о встречах, запланированных делах и т.д.).

5. Мой фотоальбом (фотографии по категориям, возможность перемещения из одной категории в другую)

6. Справочная система фильмов на CD.

7. Справочная система музыка на CD.

8. Справочная система программное обеспечение на CD.

9. Справочная система "Мои компакт диски".

10. Справочная система "Моя библиотека". (Аудиокассеты, CD - диски)

11. Справочная система "Моя фонотека".

12. Справочная система "Мои видеофильмы". (С учетом кому отдал …)

13. Домашний бухгалтер. (Приход/ расход, предупреждения…)

14. Домашняя кладовая. (Учет инструментов, деталей, описания, материалы).

15. Маленькая организация. (Сведения об отделах, сотрудниках, и т.п.)

16. "Погребок" (Реестр домашних заготовок).

17. "Моя коллекция" (Информационная система коллекционера).

18. Программа проведения тестов. (Имеет два режима "учитель"-подготовка теста, "ученик" - тестирование.)

19. Домашняя аптечка. (Система учета лекарств, срока годности лекарств, вспомогательных мед. принадлежностей.)

20. База рецептов кулинарных блюд, подбор рецепта по блюдам, и продуктам.

21. Расчет одномерных статистических характеристик массива данных. (Расчет средних, оценок дисперсии, асимметрии, эксцесса, вывод гистограммы).

Напомним, что полная тема курсовой работы должна включать слова "Разработка информационной системы …" или "Разработка информационно-справочной системы…", так, например, тема №11 полностью будет выглядеть как "Разработка информационно-справочной системы "Моя фонотека".

Студентом могут быть предложены свои темы курсовых работ.

Библиографический список

1. Буч Г. Рамбо Дж., Джекобсон А. UML Руководство пользователя: Пер. с англ. - М.: ДМК Пресс, 2001. - 423 с.: ил.

2. Ларман К. Применение UML 2.0 и шаблонов проектирования,.3-е издание. Пер. с англ. - Изд-во Вильямс, 2007. - 736с.: ил.

3. Мюллер Р. Дж. Базы данных и UML. Проектирование. Пер. с англ. - Изд-во ЛОРИ, 2000. - 420с.: ил.

4. Рамбо Д., Блаха М. UML 2.0. Объектно-ориентированное моделирование и разработка. - СПб.: Питер, 2007. - 545 с.: ил.

5. Розенберг Д., Скотт К. Применение объектного моделирования с использованием UML и анализ прецедентов. - М.: ДМК пресс, 2002. - 160 с.: ил.

6. Фаулер М., Скотт К. UML в кратком изложении. Применение стандартного языка объектного моделирования. Пер. с англ. - М. Мир, 1999. - 192с.: ил.

7. Червенчук И.В. Моделирование информационных систем с помощью UML: Учебное пособие по курсу "Информационные системы и процессы, моделирование и управление". - Омск: Изд. - во ОГИС, 2006. - 48с.

Размещено на Allbest.ru


Подобные документы

  • Методологии разработки информационных систем в отечественной и зарубежной литературе. Государственные и международные стандарты в области разработки программного обеспечения. Разработка фрагмента информационной системы "Учебно-методический ресурс".

    курсовая работа [364,6 K], добавлен 28.05.2009

  • Определение понятия "система". История развития и особенности современных информационных систем. Основные этапы развития автоматизированной информационной системы. Использование отечественных и международных стандартов в области информационных систем.

    презентация [843,9 K], добавлен 14.10.2013

  • Основная идея методологии и принципы RAD-разработки информационных систем, ее главные преимущества. Причины популярности, особенности применения технологии. Формулировка основных принципов разработки. Среды разработки, использующие принципы RAD.

    презентация [866,8 K], добавлен 02.04.2013

  • Роль структуры управления в информационной системе. Примеры информационных систем. Структура и классификация информационных систем. Информационные технологии. Этапы развития информационных технологий. Виды информационных технологий.

    курсовая работа [578,4 K], добавлен 17.06.2003

  • Понятие CASE-средств как программных средств, которые поддерживают процессы создания и сопровождения информационных систем (ИС). Особенности IDEF-технологии разработки ИС. Описание нотации IDEF0. Разработка функциональных моделей бизнес-процесса.

    презентация [399,8 K], добавлен 07.04.2013

  • Сущность унифицированного языка моделирования, его концептуальная модель и принцип действия, общие правила и механизмы. Моделирование понятия "компетентность". Диаграмма классов, описывающих учебный процесс. Реализация заданной информационной системы.

    дипломная работа [3,1 M], добавлен 17.02.2015

  • Жизненный цикл информационных систем, методологии и технологии их проектирования. Уровень целеполагания и задач организации, классификация информационных систем. Стандарты кодирования, ошибки программирования. Уровни тестирования информационных систем.

    презентация [490,2 K], добавлен 29.01.2023

  • Развитие информационных систем. Современный рынок финансово-экономического прикладного программного обеспечения. Преимущества и недостатки внедрения автоматизированных информационных систем. Методы проектирования автоматизированных информационных систем.

    дипломная работа [1,5 M], добавлен 22.11.2015

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

    дипломная работа [1,4 M], добавлен 23.06.2015

  • Решение по информационной безопасности. Системы для датацентров. Что такое оборудование центра обработки данных. Основные понятия и принципы моделирования. Выбор метода решения задач. Метод допустимых направлений Зойтендейка, алгоритм Франка–Вульфа.

    курсовая работа [57,3 K], добавлен 18.05.2017

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.