Ежегодно кафедра информационных технологий ФГАОУ РГППУ проводит турнир по робототехнике для школьников и студентов. При этом организаторы турнира сталкиваются с трудностью учета, статистики и хранения информации об участниках. Растущая популярность турнира по робототехнике, ежегодное увеличение обрабатываемого объема данных, а также университетский статус обязывают иметь в наличии удобный гибкий механизм обработки информации, поступающей от школьников и студентов.
Информационная система – взаимосвязанная совокупность средств, методов и персонала, используемых для хранения, обработки и выдачи информации.
Информационные системы (ИС) бывают разного назначения и масштаба. Также информационные системы отличаются по степени охвата сфер деятельности предприятия. Однако все информационные системы обладают рядом свойств, которые являются для них общими:
информационные системы предназначены для сбора, хранения и обработки информации. Таким образом, в основе любой информационной системы лежат средства хранения и доступа к данным;
информационные системы предназначены для конечного пользователя, не являющегося специалистом в области вычислительной техники.
Из этого следует, что информационная система должны включать в себя клиентские приложения, обеспечивающие интуитивно понятный интерфейс.
Основу информационной системы составляет база данных. Разработка базы данных проходит несколько последовательных этапов (рис. 1).
Рис. 1. Последовательность этапов работы с базами данных
В связи с невозможностью эффективной обработки традиционными способами всевозрастающих массивов информации появляется потребность в автоматизации информационных процессов. Осуществляется всестороннее аналитическое исследование предметной области. Тщательность действий, достоверность полученных оценок и обоснованность принимаемых решений на данном этапе определяют будущую эффективность применения БД для решения различных прикладных задач исследуемой сферы деятельности.
Этап системного анализа предполагает выполнение следующих работ:
ознакомление с общими целями и структурой исследуемой системы, проблематикой решаемых задач и характером информационных процессов;
определение перечня задач структурных подразделений системы, установление общих закономерностей и особенностей управляющих воздействий и потоков информации между ними и внешней средой;
изучение сущности и традиционной технологии решения конкретных задач, определение источников и потребителей информации для каждой из задач;
определение объемов потоков информации, их изменчивости, распределения во времени, формы представления входных и выходных данных;
оценка возможностей автоматизации процессов хранения и обработки данных;
выбор модели хранения данных в базе данных;
определение программно-технических средств обеспечения разработки автоматизированной системы хранения, обработки и защиты информации;
определение возможных способов и средств автоматизированного решения прикладных задач;
расчет предполагаемых финансово-экономических и материальных затрат и людских ресурсов для создания автоматизированной системы хранения и обработки информации;
прогнозирование сроков разработки.
По результатам системного анализа исследуемой предметной области при наличии положительных оценок эффекта от перевода к автоматизированному решению задач принимается решение на проектирование автоматизированной системы, в частности, на создание БД. Эффект от перевода считается положительным, если в результате достигается хотя бы один из факторов: экономия денежных затрат, сокращение времени решения задач, повышение качества решения или улучшение условий труда.
Учитывая неоспоримость применения информационных технологий в различных сферах жизнедеятельности человека, а также опыт использования СУБД для хранения и обработки информации, необходимость создания баз данных не требует расширенного обоснования.
Проектирование БД должно осуществляться таким образом, чтобы в будущем при необходимости можно было безболезненно нарастить ее возможности и расширить комплекс решаемых задач. База данных должна быть открытой системой, доступной к модификации, обновлению и изменению. Должны быть предусмотрены эффективные способы хранения данных, минимизация избыточности, удобные средства применения и сопровождения. В то же время при работе с БД должны обеспечиваться разграничение доступа пользователей к данным, защита от случайных или преднамеренных, несанкционированных изменений, шифрование информации.
В зависимости от предполагаемой модели хранения данных в БД и возможностей используемой для ее создания и обработки СУБД процесс проектирования базы данных имеет свои особенности.
Этап проектирования базы данных предполагает выполнение следующих действий:
определение общего перечня данных, которые должны обрабатываться в ходе решения прикладных задач и помещаться в формы и отчеты итоговых документов;
анализ перечня данных, разделение перечня на данные, которые должны храниться в базе данных, и те, которые могут быть вычислены перед помещением их в итоговые документы;
определение типов, свойств и характеристик данных;
классификация и распределение данных, помещаемых в базу данных, по нескольким таблицам в зависимости от их общности и совместного размещения в отчетах и формах выходных документов;
организация полей данных в таблицах в соответствие с правилами нормализации:
избавление от повторов и разбиение составных полей данных на отдельные элементы с целью обеспечения в каждом поле уникального типа информации;
установление в каждой таблице уникального идентификатора или первичного ключа, который может состоять из одного или нескольких полей;
исключение размещения в таблицах данных, не относящихся к объекту, определенному первичным ключом;
обеспечение независимости полей таблицы, не входящих в первичный ключ, с целью обеспечения их изменения без воздействия на другие поля;
планирование связей между таблицами.
Общая архитектура информационной системы по учету и регистрации участников турнира по робототехнике состоит из сервера базы данных и клиентского приложения со специальной клиентской библиотекой (рис. 2).
Рис. 2. Архитектура информационной системы по учету и регистрации участников турнира по робототехнике
На основе анализа предметной области, мы выделили пять сущностей, которые должны входить в базу данных.
Сущность Участники (Код_участника, ФИО, Дата_рождения, Образовательное_учреждение, Код_заявки) – хранит информацию об участниках турнира.
Сущность Заявка (Код_заявки, ФИО, Язык_программирования, Заявленная_категория, Телефон, Дата_заполнения_заявки) – содержит информацию об участниках и дату подачи заявления на турнир.
Сущность Команда (Код_команды, Название_команды, Количество_участников, Код_участника, Код_руководителя, Код_турнира) – содержит информацию команде, название команды и количество участниках турнира:
Сущность Руководитель команды (Id, Код_команды, ФИО, Место_работы, Телефон) – содержит информацию о руководителях команды.
Сущность Турнир (Код_турнира, Количество_баллов, Результат) – хранит информацию о турнире и результатах команды в данном турнире.
Все сущности базы данных, так или иначе, связаны между собой, показывая каким образом сущности, соотносятся или взаимодействуют между собой.
Связь – представляет собой некоторую ассоциацию между двумя сущностями. Одна сущность может быть связана с другой сущностью или сама с собой.
Сущности, объединяемые связью, называются участниками. Степень связи определяется количеством участников связи.
Связь сущностей базы данных информационной системы регистрации и учета участников турнира по робототехнике представлена на рисунке 3.
Рис. 3. Схема связи таблиц
Список литературы
Бенкен Е.С. Разработка Web-приложений на РНР и MySQL. СПб.: Авалон. 2013, 139 с.
Бобцов А. А, Шнегин В.В. Банки и базы данных. СПб.: Питер, 2005. 123 с.
Борисенко А.А. Web-дизайн. Просто как дважды два. – М.: Эксмо, 2008. 320 с.
Боровиков В.В. Программирование и разработка баз данных и приложений. М.: Солорон-Р, 2010. 68 с.