Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Диплом.docx
Скачиваний:
22
Добавлен:
23.03.2016
Размер:
452 Кб
Скачать

Календарно-ресурсное планирование проекта, анализ бюджетных ограничений и рисков

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

Список спринтов и время их выполнения отображён в таблице 1.

Задачи

Дата начала

Дата окончания

1

  • Создать таблицу курсов

  • Создать таблицу стажёров

  • Создать страницы отображения и редактирования данных сущностей

8.12.2014

19.12.2014

2

  • Создать страницы лекций и домашних заданий

  • Добавить возможность рассылки по почте расписания лекций и домашних заданий

22.12.2014

14.01.2015

3

  • Отображение на странице студента его курсов и потоков

  • Отображение на странице студента лекций и домашних заданий, которые он должен выполнить

15.12.2014

28.01.2015

4

  • Создать страницу домашнего задания

  • Создать страницу посещаемости

  • Добавить возможность рассылки тестового заданий всему потоку

29.01.2015

11.02.2015

5

  • Создать страницы отображения и редактирования стажировок

12.02.2015

26.02.2015

6

  • Добавить возможность отправки напоминаний на почту

  • Отображение на странице куратора списка стажёров, непроверенных задач

27.02.2015

9.03.2015

Таблица 1. Календарный план проекта.

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

Рисунок 2. Страница редактирования лекии и домашнего задания.

Рисунок 3. Страница создания и редактирования стажировки.

Проект автоматизации бизнес-процессов Функциональная структура

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

Рисунок 4. Диаграмма вариантов использования системы.

Информационное обеспечение

Проектирование базы данных осуществлялось в соответствии с принципом «CodeFirst». Этот принцип подразумевает написание классов на объектно-ориентированном языке программирования, соответствующих сущностям в базе данных, из которых в дальнейшем генерируются таблицы с помощью специальногоORM-фреймфорка.

В процессе проектирования было выделено 7 основных сущностей:

  1. курс (Course) – содержит название курса и список потоков;

  2. поток (Stream) – содержит название потока, статус, даты начала и окончания, списки кандидатов, студентов, лекций и лекторов.

  3. лекция (Lection) – содержит название лекии, дату проведения, информацию о посещаемости, текст домашнего задания;

  4. тестовое задание (TaskAction) – представляет собой тестовое задание, которое выполняет студент перед принятием на курсы и содержит название, даты начала и окончания, описание, результаты в виде текстового ответа или файлов, статус выполнения, комментарии и отзыв руководителя;

  5. домашнее задание (HomeWorkResult) – представляет собой домашнее задание, выполняемое студентом во время прохождения курсов и содержит название, результаты выполнения в виде текстового ответа и файлов, ссылку наGitLab-репозиторий домашнего задания, статус выполнения, комментарии и отзыв руководителя;

  6. стажировка (InternshipAction) – представляет собой событие стажировки и содержит название, даты начала и окончания, список задач, статус прохождения и отзывы кураторов;

  7. задача стажировки (InternshipTask) – представляет собой задачу выполняемую стажёром во время прохождения стажировки и содержит описание, даты начала и окончания, статус;

Инфологическая модель представлена на ER-диаграмме (рис. 2).

Рисунок 5. ER-диаграмма.

stream

Наименование поля

Тип данных

Связь с таблицей

enddate

date

-

name

character varying(255)

-

startdate

date

-

status

character varying(255)

-

version

integer

-

started

boolean

-

gitenabled

boolean

-

course

Наименование поля

Тип данных

Связь с таблицей

name

character varying(255)

-

version

integer

-

lection

Наименование поля

Тип данных

Связь с таблицей

date

timestamp with time zone

-

description

text

-

homework

text

-

name

character varying(255)

-

version

integer

-

stream_id

bigint

stream

internshiptask

Наименование поля

Тип данных

Связь с таблицей

description

text

-

enddate

date

-

startdate

date

-

status

character varying(255)

-

version

integer

-

internship_action_id

bigint

action

homeworkresult

Наименование поля

Тип данных

Связь с таблицей

attendance

boolean

-

status

character varying(255)

-

version

integer

-

employee_id

bigint

-

notified

boolean

-

homeworkmark

integer

action

Описание суррогатных таблиц, используемых для связи сущностей:

stream_candidates

Наименование поля

Тип данных

Связь с таблицей

stream_id

bigint

stream

candidates_id

bigint

employee

stream_students

Наименование поля

Тип данных

Связь с таблицей

stream_id

bigint

stream

students_id

bigint

employee

stream_lectors

Наименование поля

Тип данных

Связь с таблицей

stream_id

bigint

stream

lectors_id

bigint

employee

lection_employee

Наименование поля

Тип данных

Связь с таблицей

lection_id

bigint

lection

lectors_id

bigint

employee

lection_homeworkresult

Наименование поля

Тип данных

Связь с таблицей

lection_id

bigint

lection

results_id

bigint

homeworkresult

homeworkresult_attachment

Наименование поля

Тип данных

Связь с таблицей

homeworkresult_id

bigint

homeworkresult

attachments_id

bigint

attachment