Проектирование программной системы проведения соревнований школьников по различным предметам

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 04.03.2014
Размер файла 3,4 M

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

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

На диаграмме последовательности (Приложение E рисунок E1) рассматривается процесс организации проведения турнира.

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

3.5 С - требования

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

Создать простую и платформо - независимую систему проведения турниров для школьников с нестандартной системой проведения и подсчета очков по различным общеобразовательным предметам для развития их познавательной деятельности.

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

1. Администратору системы:

· Система должна предоставлять возможность создавать ограниченные по времени турниры по различным общеобразовательным предметам (предполагается, что в рамках общего времени проведения карусели на решение каждой задачи будет предоставляться не ограниченное время) и осуществление работы над ними, а именно:

- Добавлять и редактировать (при необходимости) условия задач и ответов к ним (предполагается создание вопросов с любым контентом);

- Активировать, деактивировать или удалять необходимый турнир (с возможностью установления пароля для участия в турнире);

· Система должна предоставлять возможность одновременного проведения нескольких турниров;

· Система должна предоставлять возможность автоматической проверки введенных ответов на задачу и подсчета результатов.

· Система должна предоставлять возможность автоматического вычисления статистики по соревнованию (по его завершению соответственно);

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

· Система должна предоставлять возможность изменять права доступа любого пользователя в системе;

· Система должна предоставлять возможности, предоставляемые любому участнику турнира, описанные ниже;

2. Участнику турнира:

· Система должна предоставлять возможность быстрой и удобной регистрации/авторизации в системе;

· Система должна предоставлять возможность просматривать список активных или предстоящих турниров, а так же информации о них.

· Система должна предоставлять возможность записываться на необходимый турнир и в дальнейшем участвовать в нем;

· Система должна предоставлять возможность просматривать предварительные результаты и конечные (по завершению турнира);

· Система должна предоставлять возможность просматривать архив прошедших турниров и их результатов (список участников и занятых ими мест);

· Система должна предоставлять возможность связи с администратором (отправка сообщения).

Для выражения взаимодействия приложения с внешним пользователем воспользуемся диаграммами вариантов использования (Use Case) UML. [10] Общая схема Use Case представлена в приложении J на рисунке J1.

1. Варианты использования для актера «Участник» представлены на рисунке 7:

Рисунок 7. Варианты использования для актера «Пользователь»

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

2. Варианты использования для актера «Администратор» представлены на рисунке 8.

Рисунок 8. Варианты использования для актера «Администратор»

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

3.6 D - требования

Разработчикам программного обеспечения нужна база для проектирования и разработки. Эта база представляет собой детальные требования (D - требования). D - требования состоят из полного списка конкретных свойств и функциональности, которую должна иметь программа. D - требования должны быть согласованы с С - требованиями. [2]

Существует несколько типов D - требований:

1) Функциональные требования.

Функциональные требования определяют работы, которые должна выполнять проектируемая система. Согласно проведенному обследованию к ним относятся все функции, описанные в пункте 3.5 «C - требования».

2) Нефункциональные требования. [2]

Ниже представлен список нефункциональных требований:

· Производительность. Требования к производительности определяют временные ограничения, которые должны быть выполнены в программе. Для ускорения обмена данными необходимо использовать MS SQL БД, в которой представлены таблицы. Для ускорения обработки запросов к БД ввести "индексы". Для ускорения ответа установить Кеш на некоторые страницы. Требования к производительности связаны с обеспечением комфортности работы пользователей.

· Надежность и безопасность. Требования надежности определяют надежность в измеряемых величинах. Для решения вопроса обеспечения безопасности системы, связанного с несанкционированным доступом в систему, должна быть предусмотрена предварительная идентификация пользователей перед началом работы, посредством ввода личного логина и пароля. Также необходимо, чтобы клиент - серверное приложение удерживало 100 запросов в секунду и функционировало 24 часа в сутки.

· Обработка ошибок. Система должна проверять корректность введенных пользователем данных. На всех формах две проверки "клиентская" (написанная на Javascript) и "серверная" на уровне приложения. В случае возникновения ошибки выдавать соответствующее информационное сообщение. Также, дополнительно, необходимо использовать триггеры в БД.

· Интерфейсные требования. Создать панель администрирования для удобного управления.

· Ограничения. Не обозначены.

3) Обратные требования. [2]

Обратные требования - это тот функционал, который система не обеспечивает.

К данным требованиям относятся:

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

3.7 Оценка затрат и предварительный расчет ожидаемой эффективности АСОИУ. Методология DFD: TO - BE

Для оценки затрат и предварительного расчета ожидаемой эффективности АСОИУ точно также воспользуемся методологией оценивания функционального размера, которая заключается в единообразном измерении всех возможностей приложения и выражении размера приложения в виде одного числа. [2] Было принято решение отталкиваться от внешних хранилищ данных, так как в процессе создания диаграммы потоков данных по методологии DFD (TO - BE) их количество уменьшилось.

Информационные характеристики и их ранг представлены в таблице 7.

Таблица 7. Информационные характеристики и их ранг

Хранилища

Информационная характеристика

Ссылки

Элементы

данных

Ранг

Текущий турнир

Внут. лог. файл

7

8

Средний (10)

Текущий турнир

Внешний ввод

8

8

Высокий (6)

Текущий турнир

Внешний вывод

2

8

Средний (5)

Текущий турнир

Внешний запрос

4

8

Высокий (6)

Жалобы

Внут. лог. файл

2

3

Низкий (7)

Жалобы

Внешний ввод

1

3

Низкий (3)

Жалобы

Внешний вывод

1

3

Низкий (4)

Участники турнира

Внут. лог. файл

4

12

Низкий (7)

Участники турнира

Внешний ввод

3

12

Высокий (6)

Участники турнира

Внешний вывод

2

12

Средний (5)

Участники турнира

Внешний запрос

1

12

Низкий (3)

Список вопросов, ответов турнира

Внут. лог. файл

3

5

Низкий (7)

Список вопросов, ответов турнира

Внешний ввод

1

5

Низкий (3)

Список вопросов, ответов турнира

Внешний вывод

3

5

Средний (5)

Перейдем к расчету метрики -- количества функциональных указателей FP. В таблицу 8 заносятся количественное значение характеристики каждого вида (по всем уровням сложности). Полученные в каждой характеристике значения суммируются, после чего формируется общее количество информационных характеристик. [2]

Таблица 8. Исходные данные для расчета FP - метрик

Имя характеристики

Количество

Низкий

Средний

Высокий

Итого

Внешние вводы

2 * 3 = 6

0 * 4 = 0

2 * 6 = 12

18

Внешние выводы

1 * 4 = 4

3 * 5 = 15

0 * 7 = 0

19

Внешние запросы

1 * 3 = 3

0 * 4 = 0

1 * 6 = 6

9

Внутренние логические файлы

3 * 7 = 21

1 * 10 = 10

0 * 15 = 0

31

Внешние интерфейсные файлы

0 * 5 = 0

0 * 7 = 0

0 * 10 = 0

0

Общее количество:

77

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

FP = Общее количество (0,65+ 0,01 ), (1)

где Fi - коэффициенты сложности. Каждый коэффициент может принимать следующие значения: 0 - нет влияния, 1 - случайное, 2 - небольшое, 3 - среднее, 4 - важное, 5 - основное.

Значение каждого - ого коэффициента определяется эмпирически в результате ответа на 14 вопросов, которые характеризуют системные параметры приложения (см. таблицу 9).

Таблица 9. Определение системных параметров приложения

Системный параметр

Значение

1

Передача данных

3

2

Распределенная обработка данных

3

3

Производительность

4

4

Распространенность используемой конфигурации

2

5

Скорость транзакций

3

6

Оперативный ввод данных

4

7

Эффективность работы конечного пользователя

3

8

Оперативное обновление

4

9

Сложность обработки

2

10

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

4

11

Легкость инсталляции

3

12

Легкость эксплуатации

4

13

Разнообразные условия размещения

1

14

Гибкость

3

Итого:

43

Подставив значения из таблицы 8 в формулу 1, получим количество функциональных указателей:

FP = 77 (0,65+ 0,01 43) = 83,16, (2)

Подсчитаем количество строк для языка C#. Для этого количество функциональных указателей умножим на количество операторов языка C# на один FP, которое равно 53.

автоматизированная система обработка информация

(3)

Для оценивания затрат труда и продолжительности проекта необходимо использовать конструктивную модель стоимости СОСОМО Барри Боэма. [2]

Подмодели СОСОМО могут применяться к трем типам программных проектов. В нашем случае ведётся разработка распространённого типа программного проекта. Уравнения базовой подмодели COCOMO имеют вид:

Е = [чел - мес]; (4)

D = [мес], (5)

где Е - затраты в человеко - месяцах, D - время разработки, KLOC - количество тысяч строк в программном продукте.

Коэффициенты а, b, с, d определяются по таблице 10.

Таблица 10 - Коэффициенты для базовой подмодели COCOMO

Тип проекта

а

b

c

d

Распространенный

2,4

1,05

2,5

0,38

Полунезависимый

3,0

1,12

2,5

0,35

Встроенный

3,6

1,20

2,5

0,32

Подставив коэффициенты a, b, c и d для распространенного типа проекта в формулы 4 и 5 получим:

[чел/мес]

[мес]6 месяцев и 9 дней

Полученные оценки позволят скорректировать сроки выполнения проекта.

3.8 Проектирование графического пользовательского интерфейса (ГПИ)

Ввиду ограниченного объема времени, выделенного на проектирование, проработку ГПИ следует выполнять в два этапа:

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

2. подготовка итогового эскиза путем переработки чернового варианта ГПИ в соответствии с описанной на страницах ПЗ концепцией.

Описание макета типовой формы и последовательности форм будет приведено ниже, в пунктах 3.8.1 «Описание последовательности форм (диаграмма состояний)» и 3.8.2 «Описание макета типовой формы».

3.8.1 Описание последовательности форм (диаграмма состояний)

Диаграмма состояний предназначена для описания состояний объекта и условий перехода между ними. Данный тип диаграмм позволяет представить все поведение полученного программного объекта в виде графических значков состояний. [2] Проектируемая система взаимодействует с восьмью типами форм различных по функциональности (см. приложение K рисунок K1).

Перед началом работы с системой, будет запускаться главная форма с вкладкой «Главная» (предполагается свободное переключение вкладок между собой) содержащая список активных и предстоящих турниров, после чего пользователь может либо обратиться к форме авторизации, где ему будет предоставлена возможность ввести личный логин и пароль в соответствующие поля формы, либо перейти на форму обратной связи и отправить сообщение администратору. Если пользователь не зарегистрирован - ему предоставится возможность, перейдя на форму регистрации в системе, пройти этапы регистрации. После успешной регистрации пользователь сможет вновь перейти на форму авторизации в системе и ввести свой личный логин и пароль. Если их подлинность будет подтверждена, то пользователю об этом сообщит информационное сообщение и осуществится вход в систему в соответствии с правами доступа. В противном случае, пользователю будет выдано сообщение о том, что подлинность логина и пароля не подтверждена. После этого он может повторно ввести данные, либо выйти из программы.

Если вход выполнен под администратором будет активна вкладка «Управление». Администратор может обратиться к форме создания предварительного турнира, затем перейти на форму добавления задач. После добавления более трех задач, можно завершить добавление и сохранить турнир. Для активации турнира необходимо перейти на соответствующую форму (предполагается, что если турнир был создан, но не активирован - его можно будет активировать в дальнейшем).

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

3.8.2 Описание макета типовой формы

Пользовательский графический интерфейс был составлен в соответствии с требованиями заказчика. Эскизы форм интерфейса представлены в приложении L.

На рисунке L1 представлены макетные виды страниц (на рисунках изображены ссылки на страницы в соответствии со своей буквой):

A - главная страница, вкладка «Главная»;

B - форма обратной связи;

С - главная страница, вкладка «Правила»;

D - главная страница, вкладка «Архив»;

E - страница информации о турнире;

F - страница информации об участниках турнира.

На рисунке L2 представлены макетные виды страниц:

G - страница регистрации нового участника;

H - информационная страница успешной регистрации.

На рисунке L3 представлены макетные виды страниц:

J - страница авторизации в системе;

K - информационная страница успешной авторизации (Вход выполнен, как «Пользователь»);

L - информационная страница успешной авторизации (Вход выполнен, как «Администратор»).

На рисунке L4 под буквой Z представлен макетный вид страницы записи на турнир.

На рисунке L5 представлены макетные виды страниц:

X - страница информации о турнире с активной кнопкой «Участвовать»;

Y - страница прохождения турнира.

На рисунке L6 под буквой M представлен макетный вид главной страницы, вкладки «Управление».

На рисунке L7 под буквой N представлен макетный вид страницы создания турнира с последующим созданием вопросов с любым контентом.

Глава 4. Разработка концепции АСОИУ

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

Рассмотрим основные типы архитектур, приведенных Гарланом и Шоу [2].

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

2. Архитектура независимых компонентов состоит из компонентов, функционирующих параллельно во времени.

2.1 Наиболее ярким примером такого типа архитектуры является клиент-серверная. Существуют многочисленные модификации клиент-серверной архитектуры, в частности, широкое распространение получили трехуровневые системы, в которых помимо традиционных клиента и сервера выделен промежуточный уровень, отвечающий за преобразование данных и их перенаправление (например, CORBA, COM).

2.2 Архитектура параллельно взаимодействующих процессов характеризуется тем, что в ней одновременно запускается несколько процессов (в различных потоках).

2.3 Приложение, построенное по архитектуре событийно-управляемых систем, представляет собой набор компонентов, каждый из которых находится в состоянии ожидания, пока не произойдет воздействующее на него событие.

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

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

Сравнение архитектур для данной системы приведено в таблице 11.

Таблица 11. - Сравнение архитектур

Показатель

Вес (1-10)

Архитектура 1

Архитектура 2.1

Архитектура 2.2

Архитектура 2.3

Архитектура 3

Архитектура 4

1

Обеспечение обслуживания пользовательских процессов

10

4

10

3

5

5

6

2

Малое сцепление между компонентами

6

8

9

7

8

5

8

3

Налаженная работа с базами данных

8

3

9

6

6

3

10

Итог:

24

15

28

16

19

13

24

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

Преимущества архитектуры:

1. Делает возможным, в большинстве случаев, распределение функций вычислительной системы между несколькими независимыми компьютерами в сети. Это позволяет упростить обслуживание вычислительной системы. В частности, замена, ремонт, модернизация или перемещение сервера не затрагивают клиентов.

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

3. Позволяет объединить различные клиенты. Использовать ресурсы одного сервера часто могут клиенты с разными аппаратными платформами, операционными системами и т. п.

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

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

1. Принцип «слабой вешней связанности» (Low Coupling) - количество связей между отдельными подсистемами должно быть минимальным;

2. Принцип «сильного внутреннего сцепления» (High Cohesion) - связность отдельных частей внутри каждой подсистемы должна быть максимальной.

Архитектура большинства корпоративных приложений включает в свой состав три слоя:

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

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

3. Слой источника данных (data source) - отвечает за обращение к БД, обмен сообщениями, управление транзакциями с внешними приложениями.

Глава 5. Эскизный проект

5.1 Диаграмма деятельности для системы в целом

Диаграмма деятельности (диаграмма активности, Activity diagram) ? это специальная разновидность диаграммы состояний. В этом типе диаграмм большинство используемых знаков - это знаки активности, переходы между которыми вызваны завершением одних действий и началом других. Activity diagram подходит для моделирования последовательности действий, так же позволяет определить независимо выполняемые действия и показать зависимость дальнейшей работы от внешних условий или решений.[10]

Диаграммы деятельности (Activity Diagram) позволяет изобразить поток операций в системном, производственном или технологическом процессе. Диаграммы деятельности используется для моделирования прецедента в виде последовательности действий (activity), описывающих взаимодействие актера с системой. Эта диаграмма концентрирует внимание на том, какие действия выполняются, и кто несет ответственность за их выполнение.

Диаграмма деятельности для системы в целом представлена на рисунке M1 в приложении M.

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

Диаграмма последовательностей отражают временную зависимость событий, происходящих в рамках варианта использования. Стрелки соответствуют сообщениям, передаваемым между действующим лицом и объектами для выполнения требуемой функции. [1]

Диаграммы последовательности сделаны для четырех вариантов использования (см. приложение N).

1. Диаграмма последовательности для варианта использования «Регистрация в системе» (см. рисунок N1). К примеру, можно прокомментировать данную диаграмму:

На диаграмме изображен один актер - участник, один контроллер (Контроллер обработки данных) и две сущности (База данных User и интерфейс взаимодействия (форма «Регистрация нового участника»)).

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

2. Диаграмма последовательности для варианта использования «Авторизация в системе» (см. рисунок N2). К примеру, можно прокомментировать данную диаграмму:

На диаграмме изображен один актер - участник (верно и для актера «Администратор»), один контроллер (Контроллер взаимодействия с БД User) и две сущности (База данных User и интерфейс взаимодействия (форма «Авторизация в системе»)).

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

3. Диаграмма последовательности для варианта использования «Формирование отчета» (см. рисунок N3).

4. Диаграмма последовательности для варианта использования «Участие в турнире» (см. рисунок N4).

5.3 Диаграмма классов по уровням

Диаграмма классов описывает структуру системы, показывая её классы, их атрибуты и операторы, а также взаимосвязи этих классов.[2]

Архитектуры клиент - сервер в системах управления предприятием связана с делением любой прикладной программы на три основных компонента или слоя:

1. База данных - ER модель.

2. Компоненты визуализации данных - интерфейсы.

3. Компоненты бизнес логики - контроллеры.

Как уже говорилось в главе 4 «Разработка концепции АСОИУ», данное деление удовлетворяет основным принципам проектирования архитектуры:

1. Принцип «слабой вешней связанности» - количество связей между отдельными подсистемами должно быть минимальным;

2. Принцип «сильного внутреннего сцепления» - связность отдельных частей внутри каждой подсистемы должна быть максимальной.

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

1. Слой данных - ER модель. Слой данных описывает структуру таблиц хранящихся в БД. Атрибуты классов соответствуют полям таблицы.[1] Диаграмма слоя данных представлена в приложении P, рисунок P1. ER модель включает 6 сущностей:

1. Таблица «User» - таблица пользователей (логин, пароль и т.д.);

2. Таблица «Message» - таблица, которая хранит в себе сообщений с сайта;

3. Таблица «Role» - таблица с правами доступа (т.е. роли: «Администратор», «Пользователь (участник турнира)»);

4. Таблица «Event» - таблица (список) турниров (т.е. хранятся турниры со ссылкой на таблицу «Problem»);

5. Таблица «Problem» - таблица с вопросами (условиями задач) и ответами для турниров;

6. Таблица «Player» - таблица, в которой хранятся результаты турниров.

2. Слой представления - интерфейсы. Слой представлений описывает формы, существующие в системе. Каждый класс соответствует своей форме. Диаграмма слоя представления изображена в приложении P, рисунок P2.

Список форм, существующих в системе:

· Форма авторизации в системе;

· Форма регистрации в системе;

· Форма обратной связи;

· Форма записи на турнир;

· Форма ввода ответа;

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

· Форма добавления задач;

· Форма активации турнира.

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

3. Сервисный слой - контроллеры (см приложение P рисунок P3). Сервисный слой описывает элементы бизнес - логики, т.е. основные классы, методы которых, выполняют функциональные требования. Каждый класс содержит методы связанные с определенной работой. Контроллеры принимают поступающие от форм запросы, и обрабатывают их (см. приложение N рисунки N1,N2,N3 и N3). По характеру выполняемых функций контроллеры разделены на пять классов. Атрибутов у классов контроллеров в диаграмме сервисного слоя нет.

Список классов контроллеров:

· Контроллер взаимодействия с БД User;

· Контроллер взаимодействия с БД Event;

· Контроллер логики данных;

· Контроллер обработки данных;

· Контроллер формирования отчета.

Заключение

В результате проектирования, поставленные перед разработчиком задачи, были выполнены. Для Югорского физико-математического лицея - интерната была спроектирована программная система проведения соревнований школьников по различным общеобразовательным предметам.

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

1. Администратору системы:

· Возможность создания ограниченных по времени турниров по различным общеобразовательным предметам (предполагается, что в рамках общего времени проведения карусели на решение каждой задачи будет предоставляться не ограниченное время) и работы над ними, а именно:

- Добавление и редактирование (при необходимости) условий задач и ответов к ним (предполагается создание вопросов с любым контентом);

- Активация, деактивация или удаление необходимого турнира (с возможностью установления пароля для участия в турнире);

· Возможность одновременного проведения нескольких турниров;

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

· Возможность автоматического вычисления статистики по соревнованию (по его завершению соответственно);

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

· Возможность изменения прав доступа любого пользователя в системе;

· Возможности, предоставляемые любому участнику турнира, описанные ниже;

2. Участнику турнира:

· Возможность быстрой и удобной регистрации/авторизации в системе;

· Возможность просмотра списка активных или предстоящих турниров, а так же информации о них.

· Возможность записи на необходимый турнир и дальнейшее участие в нем;

· Возможность просмотра предварительных результатов и конечных (по завершению турнира);

· Возможность просмотра архива прошедших турниров и их результатов (список участников и занятых ими мест);

· Возможность связи с администратором (отправка сообщения).

При обследовании объекта автоматизации с использованием конструктивной модели стоимости COCOMO была вычислена оценка затрат на проектирование системы. Трудозатраты составили примерно 11,4 (чел-мес), а время, которое понадобится для разработки системы одним человеком, составляет 6 месяцев и 9 дней.

На этапе формирования требований к проектируемой АСОИУ были составлены два нормативных документа:

1. План управления программным проектом в соответствии со стандартом IEEE 1058.1-1987.

2. Техническое задание на создание АСОИУ, оформленное в соответствии с ГОСТ 34.602 - 89.

Были построены диаграммы IDEF0, DFD, IDEF3 модели «AS-IS» и «TO-BE», а также UML-диаграммы:

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

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

3. Диаграмма деятельности для системы в целом.

4. Диаграммы классов по уровням (ER модель, слой представления (интерфейсы), сервисный слой (контроллер)).

Был разработан эскиз ГПИ. Создан макет типовой формы и описана диаграмма состояний форм системы.

В процессе разработки концепции АСОИУ была аргументировано выбрана клиент-серверная архитектура системы.

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

Список используемой литературы

1. Мелихов А.Ю. Проектирование автоматизированных систем обработки информации и управления: Методические указания к лабораторным работам/ Сост. А.Ю. Мелихов- Ханты-Мансийск, Югорский гос. ун-т, РИЦ ЮГУ, 2010. - 172 с.

2. Мелихов А.Ю. Проектирование автоматизированных систем обработки информации и управления: Методические указания по проектированию / Сост. А.Ю. Мелихов- Ханты-Мансийск, Югорский гос. ун-т, РИЦ ЮГУ, 2009. - 63 с.

3. ГОСТ 34.003-90. Информационная технология. Комплекс стандартов на автоматизированные системы. Автоматизированные системы. Термины и определения. - Введ. 1992-01-01. - М.: Изд-во стандартов, 1992. - 14 с.

4. ГОСТ 24.103-84. Автоматизированные системы управления. Основные положения. - Введ. 1985-07-01. - М.: Изд-во стандартов, 1985. - 2 с.

5. ГОСТ 24.104-85. Автоматизированные системы управления. Общие требования. - Введ. 1987-01-01. - М.: Изд-во стандартов, 1987. - 7 с.

6. ГОСТ Р ИСО/МЭК 12207-99. Информационная технология. Процессы жизненного цикла программных средств. - Введ. 1999-12-23. - М.: Изд-во стандартов, 2000. - 84 с.

7. ГОСТ 24.602-86. Состав и содержание работ по стадиям создания. - Введ. 1988-01-01. - М.: Изд-во стандартов, 1988. - 6 с.

8. ГОСТ 34.601-90. Автоматизированные системы. Стадии создания. - Введ. 1992-01-01. - М.: Изд-во стандартов, 1992. - 3 с.

9. ГОСТ 34.602-89. Техническое задание на создание автоматизированной системы. - Введ. 1990-01-01. - М.: Изд-во стандартов, 1990. - 6 с.

10. Фаулер М. UML. Основы / М. Фаулер. - СПб: Символ-Плюс, 2004. - 192 с.

11. Официальный сайт LMS Moodle. [http:// moodle.org/]

12. Официальный сайт GNU. [http://www.gnu.org/]

13. Свободная энциклопедия [http://ru.wikipedia.org]

14. Мясникова Т.С., Мясников С.А. Система дистанционного обучения MOODLE. - Харьков: Издательство Шейниной Е.В., 2008. - 232 с., ил.

15. Интернет Карусель [http://karusel.desc.ru/]

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


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

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