Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчет ОООА (1.3).doc
Скачиваний:
6
Добавлен:
20.09.2019
Размер:
537.09 Кб
Скачать

Министерство образования и науки Российской Федерации

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

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

Факультет химической техники и кибернетики

Кафедра информационных технологий

ОТЧЕТ

по практическим занятиям дисциплины

«Основы объектно-ориентированного анализа»

ВАРИАНТ 13

Студенты: Фоминых М.В.

Жаровикова Е.В.

Иваново 2012

История изменений

п/п

Дата

Изменение

Автор

1

25/03/2012

Текстуальный анализ

Харовикова

2

12/04/2012

Глоссарий

Фоминых

3

20/04/2012

Начальная диаграмма классов, диаграмма ВИ, список действующих лиц и их задач

Жаровикова

Фоминых

4

24/04/2012

Проверил, сделал в тексте замечания

Галиаскаров

5

28/04/2012

ВИ, обновлены диаграммы ВИ

Жаровикова,Фоминых

6

30/04/2012

Список атрибутов-кандидатов, уточненная диаграмма классов

Жаровикова, Фоминых

7

05/05/2012

Проверка навигации модели (OCL-запросы)

Жаровикова

Фоминых

8

9/05/2012

Диаграмма деятельности для варианта использования

Хоченков, Масалин

9

09/05/2012

Список объектов-кандидатов и их возможных состояний

Жаровикова, Фоминых

10

11/05/2012

Диаграмма состояний для выбранного объекта

Жаровикова Фоминых

11

14/05/2012

Спецификация для каждого состояния диаграммы

Жаровикова Фоминых

12

15/05/2012

Диаграмма экранных форм (раскадровка) для варианта использования

Жаровикова Фоминых

13

17/05/2012

Системная диаграмма последовательности для варианта использования

Жаровикова Фоминых

Содержание работы

ЗАНЯТИЕ 1. РАЗРАБОТКА МОДЕЛИ ИСПОЛЬЗОВАНИЯ И КОНЦЕПТУАЛЬНОЙ МОДЕЛИ КЛАССОВ 4

Список действующих лиц и их задач 5

ЗАНЯТИЕ 3. РАЗРАБОТКА МОДЕЛИ СОСТОЯНИЙ 12

Список объектов-кандидатов и их возможных состояний 12

Диаграмма состояний для выбранного объекта 13

Спецификации для каждого состояния диаграммы 13

ЗАНЯТИЕ 4. РАЗРАБОТКА МОДЕЛИ ВЗАИМОДЕЙСТВИЙ. РЕАЛИЗАЦИЯ ВАРИАНТА ИСПОЛЬЗОВАНИЯ 15

Системная диаграмма последовательности для варианта использования 19

Системная диаграмма последовательности для варианта использования 19

ЗАДАНИЕ. ВАРИАНТ 13

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

Занятие 1. Разработка модели использования и концептуальной модели классов

Текстуальный анализ

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

Класс

Класс (актер)

Вариант использования

Список классов-кандидатов

Компания, Отдел, Работник, Проект

Список ассоциаций-кандидатов

Компания – Отдел(состоит)

Отдел – Проект(отвечает)

Служащий – Проект(руководит)

Служащий – Проект (выполняет)

Глоссарий

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

Отдел – подразделение организации, отвечающее за создание проекта, имеющее руководителя и название.

Проект – зафиксированное в системе задание, имеющее название, руководителя и сроки.

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

Начальная модель классов

Список действующих лиц и их задач

Действующее лицо

Задача

Директор

Создать проект

Руководитель отдела

Назначить руководителя проекта и проверить выполнение проекта

Руководитель проекта

Собрать команду и распределить работы

Работник

Выполнить работу

Диаграмма вариантов использования

Краткое описание каждого варианта использования

  1. Создать проект.

Директор компании назначает отдел в котором проект будет разрабатываться, устанавливает сроки его сдачи и название.

  1. Назначить руководителя проекта.

Руководитель отдела назначает руководителя проекта который будет отвечать за конкретный проект.

  1. Проверить выполнение проекта.

Руководитель отдела следит за выполнением работ, их статусом, сроками и качеством.

  1. Собрать команду.

Руководитель проекта формирует команду состоящую из работников, которые будут работать над конкретным проектом .

  1. Распределить работы.

Руководитель проекта дает задание каждому члену сформированной команды.

  1. Выполнить работу.

Работник выполняет работу в соответствии с данным ему заданием, формирует статус работы.

При рассмотрении данной модели возник вопрос о значимости класса «Компания», был сделан вывод о нецелесообразности его включения, т.к. в данной работе мы рассматриваем деятельность одной конкретной компании.

ЗАНЯТИЕ 2. УТОЧНЕНИЕ КОНЦЕПТУАЛЬНОЙ МОДЕЛИ КЛАССОВ И СПЕЦИФИКАЦИЯ ВАРИАНТА ИСПОЛЬЗОВАНИЯ

Список атрибутов-кандидатов

Класс

Атрибуты

Отдел

-Название

Проект

-Название

-Сроки

- Статус

Работник

-Ф.И.О.

-Адрес

-Оклад

Назначение

-Название работы

-Дата начала

-Дата завершения

-Статус

Уточненная модель классов

Проверка навигации модели (OCL-запросы)

1.Вывести Ф.И.О. работника выполняющего работу с названием А.

аНазначение->select(Название работы = «А»).Работник.Ф.И.О.

2.Вывести оклад руководителя проекта Б.

аПроект->select(Название = «Б»).Руководитель проекта.Оклад

3.Сколько работ в проекте А выполняет работник И?

аПроект->select(Название = «А» ).Назначение.Работник->select(Ф.И.О.= «И»)->size()

4.Вывести название проекта в котором программист работает на языке С#

аПрограммист->select(Язык программирования = «С#»).Назначение.Проект.Название.

5. Вывести Ф.И.О руководителя отдела отвечающего за проект А.

аПроект->select(Название = «А»).Отдел.Руководитель отдела.Ф.И.О

6. Вывести название работ проекта А который находятся в статусе «Выполнено»

аПроект->select(Название = «А»).Назначение->select(Статус = «Выполнено»).Название работы

Детальная спецификация варианта использования

Имя: Создать проект

ID : 1

Краткое описание: добавляется информация о названии проекта, его сроках сдачи и назначается отдел

Действующие лица: Директор (основное действующее лицо)

Предусловия: Поступил заказ

Постусловия: В системе созданы записи о названии проекта, его сроках сдачи и название отдела назначенного для его выполнения

Основной поток:

  1. Директор инициирует ВИ

  2. Система предлагает ввести сведения о новом проекте (Название, сроки), выбрать отдел, отвечающий за проект

  3. Директор вводит сведения в систему

  4. Директор сообщает о завершении ввода

  5. Система подтверждает ввод

  6. Система сохраняет сведения о новом проекте

Специальные требования:

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

Альтернативные потоки:

  1. Сведения не корректны

Имя: Создать проект. Сведения не корректны

ID: 1.1

Краткое описание: В заполняемых полях присутствуют недопустимые символы; проект с таким названием уже существует; дата сдачи проекта превышает дату начала проекта.

Предусловия: Директор некорректно заполнил какое-либо поле.

Постусловия: Все данные о проекте зарегистрированы в корректном виде.

Альтернативный поток:

  1. При попытке сохранения система обнаруживает, что значение поля/полей введено некорректно

  2. Система сообщает об обнаруженной ошибке Директору, с указанием места некорректного значения

  3. Переход на шаг 2 основного потока

Имя: Назначить руководителя проекта

ID: 2

Краткое описание: добавляется информация о руководителе проекта (Ф.И.О)

Действующие лица: Руководитель отдела (основное действующее лицо)

Предусловия: Назначен отдел

Постусловия: В системе созданы записи о назначенном руководителе проекта

Основной поток:

  1. Руководитель отдела инициирует вариант использования

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

  3. Руководитель отдела вводит сведения в систему

  4. Система идентифицирует работника и выводит соответствующую информацию

  5. Руководитель отдела сообщает о завершении ввода

  6. Система подтверждает ввод

  7. Система сохраняет сведения о руководителе проекта

Специальные требования:

  • Необходимо предусмотреть факт того, что руководитель отдела может одновременно являться руководителем проекта.

Альтернативные потоки:

  1. Работник не найден

Имя: Назначить руководителя проекта. Работник не найден

ID: 2.1

Краткое описание: Ф.И.О. работника не найдено в системе

Предусловия: Руководитель отдела ввел данные о руководителе проекта

Постусловия: Сведения о работнике не сохранены в системе

Альтернативный поток:

  1. После ввода Ф.И.О. система уведомляет об ошибке

  2. Система отменяет ввод

  3. Переход на шаг 2 основного потока

Имя: Собрать команду

ID : 3

Краткое описание: добавляется информация о работниках участвующих в проекте

Действующие лица: Руководитель проекта (основное действующее лицо)

Предусловия: Назначен руководитель отдела

Постусловия: В системе созданы записи о работниках участвующих в проекте

Основной поток:

  1. Руководитель проекта инициирует ВИ

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

  3. Руководитель проекта вводит сведения в систему

  4. Руководитель проекта сообщает о завершении ввода

  5. Система подтверждает ввод

  6. Система сохраняет сведения о работниках

Альтернативные потоки:

  1. Работник не найден

Имя: Назначить руководителя проекта. Работник не найден

ID: 3.1

Краткое описание: Ф.И.О. работника не найдено в системе

Предусловия: Руководитель отдела ввел данные о руководителе проекта

Постусловия: Сведения о работнике не сохранены в системе

Альтернативный поток:

  1. После ввода Ф.И.О. система уведомляет об ошибке

  1. Система отменяет ввод

  2. Переход на шаг 2 основного потока

Диаграмма деятельности для варианта использования

ЗАНЯТИЕ 3. РАЗРАБОТКА МОДЕЛИ СОСТОЯНИЙ

Список объектов-кандидатов и их возможных состояний

Проект – в разработке, проверяется, дорабатывается, сдан.

Диаграмма состояний для выбранного объекта

Спецификации для каждого состояния диаграммы

Состояние

Разрабатывается

Описание

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

Событие, приводящее к этому состоянию

Проект зарегистрирован в системе

События, возможные в этом состоянии

Событие

Отклик

Следующее состояние

Все работы выполнены

Отобразить уведомление

Проверяется

Состояние

Проверяется

Описание

Все работы проверяются на наличие ошибок и недоработок .

Событие, приводящее к этому состоянию

Все работы выполнены

События, возможные в этом состоянии

Событие

Отклик

Следующее состояние

Работы выполнены корректно

Отобразить уведомление

Сдан

Работы выполнены некорректно

Передать на доработку

Дорабатывается

Состояние

Дорабатывается

Описание

Работы, выполненные некорректно исправляются автором

Событие, приводящее к этому состоянию

Работы выполнены некорректно

События, возможные в этом состоянии

Событие

Отклик

Следующее состояние

Работы исправлены

Передать работы на проверку

Проверяется

Состояние

Сдан

Описание

Все работы по проекту выполнены, проект закончен .

Событие, приводящее к этому состоянию

Все работы выполнены корректно

События, возможные в этом состоянии

Событие

Отклик

Следующее состояние