- •Р.А. Файзрахманов, А.В. Архипов
- •ПРОЕКТИРОВАНИЕ АВТОМАТИЗИРОВАННЫХ ИНФОРМАЦИОННЫХ СИСТЕМ НА ОСНОВЕ ОБЪЕКТНО ОРИЕНТИРОВАННОГО ПОДХОДА
- •4.3. Подведение итогов
- •4.4. Контрольные вопросы
- •4.5. Контрольные задачи и упражнения
- •5. ДИАГРАММА КЛАССОВ
- •5.1. Теоретическая часть
- •5.2. Реализация в Rational Rose
- •5.5. Контрольные задачи и упражнения
- •6.1. Теоретическая часть
- •6.2. Реализация в Rational Rose
- •6.3. Подведение итогов
- •6.4. Контрольные вопросы
- •6.5. Контрольная задача
- •7. ДИАГРАММА ПОСЛЕДОВАТЕЛЬНОСТЕЙ
- •7.1. Теоретическая часть
- •7.2. Реализация в Rational Rose
- •7.3. Подведение итогов
- •7.4. Контрольные вопросы
- •7.5. Контрольные задачи
- •8. ДИАГРАММА СОТРУДНИЧЕСТВА
- •8.1. Теоретическая часть
- •8.2. Реализация в Rational Rose
- •8.5. Контрольные задачи
- •9. ДИАГРАММА СОСТОЯНИЙ
- •9.1. Теоретическая часть
- •9.3. Подведение итогов
- •9.4. Контрольные вопросы
- •9.5. Контрольные задачи
- •10. ДИАГРАММА ДЕЯТЕЛЬНОСТЕЙ
- •10.1. Теоретическая часть
- •10.3. Подведение итогов
- •10.4. Контрольные вопросы
- •11. ДИАГРАММА КОМПОНЕНТОВ
- •11.1. Теоретическая часть
- •11.4. Контрольные вопросы
- •11.5. Контрольные задачи
- •12.3. Подведение итогов
- •12.4. Контрольные вопросы
- •12.5. Контрольная задача
- •13. ГЕНЕРАЦИЯ КОДА
- •13.1. Алгоритм получения исходного кода C++
- •13.2. Задания для самостоятельного выполнения
- •ЗАКЛЮЧЕНИЕ
- •СПИСОК ЛИТЕРАТУРЫ
- •ИСПОЛЬЗОВАНИЕ МОДУЛЯ «RATIONAL ROSE C++ ANALYZER» ДЛЯ ОБРАТНОГО ВОССТАНОВЛЕНИЯ МОДЕЛИ ПО ИСХОДНОМУ КОДУ
- •РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ С ИСПОЛЬЗОВАНИЕМ UML
- •1. Разработка диаграммы прецедентов
- •2. Разработка диаграммы классов
- •3. Разработка диаграмм взаимодействия
- •4. Разработка диаграммы состояний
- •5. Разработка диаграммы деятельности
- •9. Разработка приложения
- •Контрольные вопросы
- •МОДЕЛЬ РАБОТЫ ПРЕДПРИЯТИЯ ОПТОВОЙ ТОРГОВЛИ. РАЗРАБОТКА АВТОМАТИЗИРОВАННОЙ СИСТЕМЫ
- •ОГЛАВЛЕНИЕ
- •1. Деятельность и структура предприятия
- •2.1. Реализация продукции со склада
- •2.2. Возврат товара клиентом
- •2.3. Закупка продукции
- •3.1. Общие требования и принципы построения системы
- •3.2. Обеспечение связи офис - склад
- •3.3. Требования к персоналу
- •4. Диаграмма прецедентов
- •4.1. Реализация продукции со склада
- •5. Диаграмма классов
- •5.2. Контрагенты предприятия оптовой торговли
- •5.3. Продукция предприятия оптовой торговли
- •5.4. Заказ продукции
- •5.5. Накладная на получение товара
- •6. Диаграмма взаимодействия
- •12. Разработка приложения
- •ПРОЕКТИРОВАНИЕ АВТОМАТИЗИРОВАННЫХ ИНФОРМАЦИОННЫХ СИСТЕМ НА ОСНОВЕ ОБЪЕКТНО ОРИЕНТИРОВАННОГО ПОДХОДА
Приложение 2
Лабораторная работа
РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ С ИСПОЛЬЗОВАНИЕМ UML
Цель работы: изучение визуального моделирования с помо
щью UML.
Постановка задачи: Разработать компьютерную программу (систему), позволяющую преподавателям создавать электронные за дания для студентов и реализующую процедуру тестирования.
1. Разработка диаграммы прецедентов
Диаграмма прецедентов используется для определения функцио нальных требований к поведению проектируемой системы.
Из постановки задачи следует, что на диаграмме прецедентов бу дет два актера (активных объекта): «Преподаватель» и «Студент».
Прецеденты, ассоциированные с указанными актерами, будут представлять возможные опции системы.
Система позволяет преподавателю:
-создать задание;
-найти ранее созданное задание;
-удалить задание;
-посмотреть результаты студентов. Система позволяет студенту:
-решить тест, состоящий из 10 заданий.
Используя Rational Rose, постройте диаграммы прецедентов, изображенные на рис.П2.1, a; IJ2.J, б.
Решить тест |
''- . ^ « in c lu d e » |
Студент
"'А
Решить задание
Рис. П2.1, б. Решение теста - диаграмма прецедентов
2. Разработка диаграммы классов
Диаграмма классов служит для описания статической структуры модели системы. Перед построением диаграммы необходимо оты скать все классы системы.
В первую очередь можно выделить такие классы, как: «Teacher» (преподаватель), «Student» (студент), «Test» (тест) и «Task» (задание).
Классы «Teacher» и «Student» должны содержать такие атрибуты, как «фамилия», «имя», «отчество» и т.п. В связи с этим имеет смысл создать родительский класс «Person» (человек), который будет со держать подобные атрибуты. В этом случае классы «Teacher» и «Stu dent» будут его потомками, а атрибуты данных классов будут ото бражать только специфичные (отличительные) свойства.
Классы «Test» и «Task» связаны между собой отношением агре гирования. Агрегирование представляет собой форму ассоциации, устанавливающей соотношение частей и целого. В данном случае тест (целое) состоит из 10 заданий (частей).
Каждое задание теста принадлежит строго определенной области знаний, такой как физика, экономика, философия и т.д. Поэтому не обходимо классифицировать каждое задание. Это можно сделать раз личными способами. Один из таких способов - использование меха низма наследования от класса-родителя, представляющего описание области знаний задания. Таковым классом является «TaskGroup» (группа задания). Минус данного способа заключается в сложности переноса задания из одной области в другую. Но так как подобные операции не допускаются, то данный способ может быть применен.
Все перечисленные классы являются классами сущностей. По мимо них необходимо создать классы границ, которые будут
обслуживать процессы взаимодействия между системой и ее окру жением. Таковыми будут являться классы «TeacherTaskOptions» и «StudentTaskOptions».
Используя Rational Rose постройте диаграммы классов, пред ставленные на рис. П2.2 и П2.3.
Рис. П2.2. Пользователь системы - диаграмма классов