Открыть Электронные книги
Категории
Открыть Аудиокниги
Категории
Открыть Журналы
Категории
Открыть Документы
Категории
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
к расчетной работе
по курсу “Объектно-ориентированное программирование и проектирование”
на тему “ Объектно-ориентированный анализ и проектирование
программного обеспечения. Программное обеспечение для управления
контактами с клиентами”
Руководитель _____________
(подпись)
Минск 2010
Содержание
Минск 2010Содержание................................................................................................................1
Содержание....................................................................................................................................2
Введение.........................................................................................................................................3
1. Постановка задачи.....................................................................................................................4
1.1. Цель разработки..................................................................................................................4
1.2. Постановка задачи заказчиком..........................................................................................4
1.3. Глоссарий проекта..............................................................................................................5
1.4. Анализ и определение требований...................................................................................6
2. Проектирование программного продукта...............................................................................8
2.1. Описание модели вариантов использования...................................................................8
2.1.1. Диаграмма вариантов использования............................................................................8
2.2. Описание модели анализа системы..................................................................................8
2.2.1. Диаграммы деятельности................................................................................................8
2.2.3. Диаграммы состояний...................................................................................................10
2.3. Описание модели реализации..........................................................................................10
2.3.1. Диаграмма компонентов...............................................................................................10
3. Процесс генерации программного кода............................................................................12
Заключение...................................................................................................................................13
Список литературы......................................................................................................................14
Приложения..................................................................................................................................15
Приложение 1. Диаграмма вариантов использования.........................................................15
Приложение 2. Диаграмма кооперации для прецедента «Создание задания»..................16
Приложение 3. Диаграмма последовательности для прецедента «Создание
задания(create task)»................................................................................................................16
Приложение 4. Диаграмма состояний системы....................................................................17
Приложение 5. Диаграмма классов........................................................................................18
2
Введение
3
1. Постановка задачи
4
Менеджеры назначают задания себе или кому-либо из рядовых сотрудников.
Менеджер в ходе выполнения созданного им задания может поменять
исполнителя.
Просматривать задание, автором которого является менеджер, может
либо автор, либо исполнитель задания. Просматривать задание, автором
которого является рядовой сотрудник, может автор и любой менеджер.
Задания сотрудника отображаются на экране его компьютера в виде
страницы календаря (один день на страницу). Приоритет каждого задания
(низкий, средний, высокий) визуально выделяется на экране. Каждый
менеджер может помимо своего календаря просматривать календари
рядовых сотрудников. Помечать задание как выполненное и указывать дату
завершения может либо автор, либо исполнитель задания. Вносить какие-
либо другие изменения в задание может только автор. После завершения
задания внесение в него изменений не допускается. По прошествии 12
месяцев после даты завершения задания сведения о нем удаляются из
системы.
Администратор системы управляет доступом сотрудников: выдает
логины и пароли пользователям, формирует две группы пользователей:
менеджеров и рядовых сотрудников. Он также имеет доступ к специальным
функциям, например, может изменить автора задания или внести изменения
в завершенное задание.
Система имеет возможности для поиска в базе клиентов и контактных
лиц по их атрибутам (названию, городу, имени контактного лица). Система
генерирует отчет по исполнению заданий каким-либо сотрудником в течение
периода времени, указываемого в параметре отчета. В отчете указывается:
общее количество заданий для данного сотрудника в указанный период,
сколько заданий завершено вовремя, сколько заданий завершено с
нарушением срока исполнения, сколько заданий с истекшим сроком
исполнения не завершено, и сколько не завершенных заданий, срок
исполнения которых не истек.
5
1.4. Анализ и определение требований
7
2. Проектирование программного продукта
Актёры:
Менеджер – человек, работающий с системой. Этот актер инициирует
все прецеденты.
Рядовой рабочий – человек, работающий с системой. Этот актер
инициирует следующие прецеденты.
Исполнитель – человек, работающий с системой. Этот актер выполняет
следующие прецеденты.
Прецеденты:
Планирование события – включает в себя процедуры добавления,
редактирования и удаления записей из базы.
Создание события – включает в себя процедуры добавления,
редактирования и удаления записей из базы.
Перенаправление заданий – включает в себя процедуры добавления,
редактирования и удаления записей из базы.
Запрос к базе – включает в себя процедуры обработки
пользовательских запросов и вывода найденной информации.
8
1.1.2.1. Исполнитель следит за выполнением задания.
1.1.2.2. Система запрашивает новые данные о задания и контакте.
1.1.2.3. Пользователь вводит данные о задании.
1.1.2.4. Система проверяет, о ходе задания.
1.1.3. Удалить задание.
1.1.3.1. Пользователь выбирает задание из списка.
1.1.3.2. Система проверяет, дату окончание задание.
1.1.3.3. Если после даты окончания прошло больше 12 месяцов,
задание удаляется из базы.
1.2. Работа с мероприятиями.
1.2.1. Добавить связь.
1.2.1.1. Система проверяет, имеется ли хотя бы 2 записи в
таблице персон.
1.2.1.2. Если имеется, пользователь выбирает участников и тип
связи.
1.2.1.3. Система проверяет, возможна ли связь между
выбранными персонами.
1.2.1.4. Если возможна, в базу добавляется новая запись.
1.2.2. Удалить связь.
1.2.2.1. Пользователь выбирает нужную связь.
1.2.2.2. Из базы удаляется запись о связи.
Предусловия.
1. Система должна находиться в состоянии «Ожидание действий от
пользователя».
Постусловия.
1. Система возвращается в состояние «Ожидание действий от
пользователя».
Предусловия.
1. Система должна находиться в состоянии «Ожидание действий от
пользователя».
Постусловия.
1. Система возвращается в состояние «Ожидание действий от
пользователя».
11
3. Процесс генерации программного кода
12
Заключение
13
Список литературы
14
Приложения
<<include>>
Maintain organization
Customer
Manager
<<extend>>
15
Приложение 2. Диаграмма кооперации для прецедента «Создание
задания»
: Customer : Task
Manager
: Event
5: get address(customer)
: Courier
Address
plan task
5://get address(customer)
7://finish task()
16
Приложение 4. Диаграмма состояний системы
Startstate
Waiting
Get event
Savedtcreate()
Insert data
create
Savecost()
Insert cost
Getcost()
17
Приложение 5. Диаграмма классов.
0..1
1..*
0..1
Org Contact
<<pk>> org_id : Integer 0..1 0..1 <<pk>> concact_id : Integer
org_name : String surname : String
phone : String name : String
fax : String phone : String
1 org_con *
email : String Task fax : String
current : Boolean email : String
description : String
1 created_dt : Date
value : Currency
0..* 0..*
Getevent()
Datacreate()
Getcost()
Getcontact()
1 Getorg()
Savedtcreate() 0..*
Savecost()
Sendtask2emlp()
1..*
1
Event
created 1 Employment
description : String 0..*
created_dt : Date <<pk>> emploeee_id : String
0..* 1
due_dt : Date name : String
due
completed_dt : Date surname : String
priority : Byte 0..* 0..1
completed
18