Программный продукт «АКАДА ВУЗ». Разработчик: Синергия Софт.



Система управления учебным заведением «АКАДА — ВУЗ» демонстрирует возможности системы:

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

- ориентация на индивидуальный процесс обучения студента;

- управление процессом подготовки специалистов (среднее профессиональное образование), бакалавров, магистров, специалистов (высшее профессиональное образование);

- управление процессом переподготовки кадров, повышения их квалификации и стажировки;

- управление послевузовским профессиональным образованием;

- управление учащимися подготовительных курсов;

- внедрение внутривузовской системы контроля качества образования;

- возможность реализации дистанционного обучения;

Дополнительные возможности:

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

- поддержка работы с системой через веб-интерфейс;

- соответствие ФЗ-152 о персонализации данных, многоуровневая система защиты информации от несанкционированного доступа.

Технические характеристики

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

Таблица 1 – Характеристики аппаратно-программного комплекса

Название характеристики Значение характеристики
Процессор Intel Core i7 860 2.89 GHz
Видеокарта NVIDIA GeForce GTX 550 Ti
Оперативная память Samsung M378B5273CH0 8 Gb
Операционная система MS Windows 7

Требования и временной график выполнения программного проекта

1.3.1 Постановка задачи

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

Таким образом, можно сформулировать тему курсового проекта:

«Разработка автоматизированной системы работы преподавателей кафедры ВУЗа».

Основной целью разрабатываемой системы является повышение эффективности работы сотрудников кафедры ВУЗа.

Для достижения заданной цели требуется решить ряд задач:

- изучить предметную область;

- построить модель потоков данных и модель данных предметной области;

- на базе построенных моделей спроектировать базу данных для хранения информации разрабатываемой системы;

- реализовать базу данных в СУБД MS Access;

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

- оформить комплект проектной документации.

1.3.2 Временной график разработки

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

 

Дата
Этапы

Рисунок 2 – Временной график работ

 

Этапы графика:

1. анализ предметной области;

2. моделирование;

3. проектирование;

4. конструирование;

5. эксплуатация и поддержка.


РАЗРАБОТКА РАБОЧЕГО ПРОЕКТА

Разработка интерфейса программы

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

 

Рисунок 3- Внешний вид главного окна

На примере формы просмотра представлена форма просмотра студентов на рисунке 4. Ширину каждого столбца можно свободно регулировать.

Рисунок 4 – Форма просмотра данных

Пример формы с добавлением данных в базу данных представлена на рисунке 5.

Рисунок 5 – форма добавления данных

Жизненный цикл программы

2.2.1 Моделирование потоков данных.

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

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

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

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

 

Автоматизированная информационная система – это основной объект в нашей системе. Главный участник – это преподаватель. Поэтому потоки данных только внутри этих двух объектов (рисунок 6).

Рисунок 6 – Контекстная диаграмма

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

Рисунок 7 – Начальный уровень

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

Рисунок 8 – Декомпозиция процесса «Учета видов деятельности»

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

Рисунок 9 – Декомпозиция процесса «Планирование деятельности»

2.2.2 Моделирование данных и разработка базы данных.

Моделирование данных будет разрабатываться программой ERwin которая имеет два уровня представления модели – логический и физический.

Логический уровень – это абстрактный взгляд на данные, на нем данные представляются так, как выглядят в реальном мире, и могут называться так, как они называются в реальном мире, например, «Фамилия сотрудника», «Отдел». Объекты модели, представляемые на логическом уровне, называются сущностями и атрибутами. Логическая модель может быть построена на основе другой логической модели, например на основе модели процессов. Логическая модель данных является универсальной и никак не связана с конкретной реализацией СУБД.

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

При создании ER-модели были выделены следующие сущности (рисунок 10).

 

Рисунок 10 – Схема отношений между сущностями

Разработанная таким образом модель была использована для генерации базы данных в среде MS Access на рисунке 11.

Рисунок 11 – Модель схемы данных в MS Access

Описание программы

2.3.1 Создание проекта

Для начала разработки приложения необходимо создать новый проект в среде разработки Microsoft Visual C++ 2008 Express. При создании проекта выбирается вид проекта «Приложение Windows Forms». Указав название проекта и его местоположение, нажмем кнопку «Создать». При этом будет создан новый проект, содержащий одну пустую форму Form1.

Данная форма будет стартовой формой разрабатываемого приложения.

В качестве основного инструмента работы используем меню приложения. Для этого на панели элементов выберем элемент «MenuStrip» и переносим его на форму Form1. Заполним меню, добавив в него разделы  «Просмотр данных» и «Добавление данных», внеся в них дополнительные пункты, как на рисунке 12.

Рисунок 12 – Главное меню продукта

При выборе одного из пунктов меню открывается новое окно, предназначенное для выполнения соответствующих выбранному пункту меню действий. Для создания этих окон необходимо расширить состав проекта, включив в него дополнительные формы, щелкнув правой кнопкой мыши на проект в обозревателе решений и выбрав в выпадающем меню пункт «Добавить … - Создать элемент». В качестве типа элемента выбираем «Форма Windows Forms». Разработанное приложение должно предусматривать просмотр семь таблиц базы данных, поэтому добавим поочередно семь новых форм, дав им имена Form2, Form3, …, Form8.

Данные формы должны быть доступны при выборе соответствующих пунктов меню формы Form1. Для этого необходимо связать их друг с другом. Щелчком правой кнопкой мыши в свободном месте формы Form1 и выбераем пункт «Перейти к коду». Откроется файл с исходным программным кодом формы Form1 (файл Form1.h). Добавим в начало файла код (рисунок 13)

 
#include “Form2.h” #include “Form3.h” #include “Form4.h” #include “Form5.h” #include “Form6.h” #include “Form7.h”  

 


Рисунок 13 – Код добавления форм

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

 
Form2 ^f = gcnew Form2; f->ShowDialog();  

 


Рисунок 14 – Обработчик события

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

Выполним аналогичные действия для остальных пунктов меню раздела «Просмотр данных», изменяя код, чтобы открывать формы Form3, Form4 и т.д.

Теперь перейдем непосредственно к просмотру данных, содержащихся в базе данных. Открываем форму Form2 в режиме конструктора. Для просмотра данных будем использовать таблицу. Добавим ее, найдя на панели элементов элемент DataGridView. Так как таблица «Оценки» содержит семь полей данных, добавим в размещенной нами таблице семь колонок,  дав им заголовки, соответствующие названиям полей таблицы «Оценки».

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

 
dataGridView1->Rows->Clear(); System::Data::OleDb::OleDbConnection ^con = gcnew System::Data::OleDb::OleDbConnection; con->ConnectionString = "provider=Microsoft.Jet.OleDb.4.0; data source=Base.mdb"; con->Open(); System::Data::OleDb::OleDbCommand ^cmd = con->CreateCommand(); cmd->CommandText = "SELECT [Код записи], [Дата занятия], [Номер пары], [название группы], [Номер зачетки], [Балл], [Пропуск] FROM Оценки"; System::Data::OleDb::OleDbDataReader ^r = cmd->ExecuteReader(); while (r->Read()) {        String ^Cod = r->GetValue(0)->ToString();        String ^Dat = r->GetValue(1)->ToString();        String ^Nomp = r->GetValue(2)->ToString();        String ^Nazg = r->GetValue(3)->ToString();        String ^Nomz = r->GetValue(4)->ToString();        String ^Ball = r->GetValue(5)->ToString();        String ^Prop = r->GetValue(6)->ToString();        dataGridView1->Rows->Add(Cod, Dat, Nomp, Nazg, Nomz, Ball, Prop); }; con->Close();

 

 


Рисунок 15 – Код обработчика в форме просмотра данных

Теперь при открытии окна «Просмотр оценок» приложение будет обращаться к базе данных, выбирать из нее соответствующие данные и отображать их в таблице на форме.

Аналогичные действия выполняются на формах Form3-Form8, за исключением того, что информация выбирается из других таблиц базы данных.

Аналогично тому, как в проект были добавлены формы для просмотра данных, включим в проект и формы добавления информации в БД. Для этого создаем семь дополнительных форм (через меню «Проект – Добавить… – Создать элемент»). Именуем формы имена с Form9 по Form15 и подключим их к соответствующим пунктам меню аналогично тому, как это было сделано для форм просмотра (т.е. добавим в начало файла Form1.h строки с подключением новых файлов и создадим обработчики для пунктов меню «Добавление данных»).

Таблицы используемой нами при проектировании БД можно разбить на 2 группы: независимые и зависимые. Разница между ними состоит в том, что зависимые таблицы содержат информацию, которая уже присутствует в БД, например, в таблице «Занятия» присутствует поле «Табельный номер». При вводе данных в это поле пользователь должен быть ограничен только теми вариантами единиц измерения, которые уже присутствуют в таблице «Преподаватели».

Действия по добавлению данных будут отличаться для независимых и зависимых таблиц.

В нашей БД присутствует четыре независимые таблицы («Предмет»,  «Преподаватели», «Группы», «Виды занятий») и три зависимые («Оценки», «Студенты», «Занятия»).

Рассмотрим добавление данных в независимую таблицу «Группы». Данная таблица содержит три переменные, поэтому разместим на форме Form12 (открывающейся по команде меню «Добавление группы») 3 элементов управления TextBox. Помимо этого добавим на форму кнопку (элемент управления Button). При нажатии на кнопку, введенные пользователем в текстовые поля данные, должны добавляться в таблицу «Группы». Добавим для этого обработчик события Click у кнопки (рисунок 16).

 
System::Data::OleDb::OleDbConnection ^con = gcnew System::Data::OleDb::OleDbConnection; con->ConnectionString = "provider=Microsoft.Jet.OleDb.4.0; data source=Base.mdb"; con->Open(); System::Data::OleDb::OleDbCommand ^cmd = con->CreateCommand(); String ^Nazg = textBox1->Text; String ^Spe = textBox2->Text; String ^Kurs = textBox3->Text; cmd->CommandText = "INSERT INTO Группы ([название группы], [Специальность], [Курс]) VALUES ('"+Nazg+"','"+Spe+"','"+Kurs+"')"; cmd->ExecuteScalar(); con->Close(); Close();

 


Рисунок 16 – Код обработчика события Click

Принцип добавления зависимых данных.

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

Рассмотрим добавление данных в таблицу «Студенты». Данная таблица содержит пять полей, второе из которых («название группы») обеспечивает связь с таблицей «Группы». Добавим на форму Form11 четыре текстовых поля, выпадающий список (элемент ComboBox) и кнопку (элемент Button). Порядок расположения элементов должен соответствовать порядку полей: сначала одно текстовое поле, затем один выпадающий список, после все оставшиеся три текстового поля (рисунок 17).

Рисунок 17 – Внешний вид расположения полей ввода в зависимой таблице

Чтобы ограничить выбор единицы измерения только теми значениями, которые указаны в списке, необходимо изменить его вид. Для этого выберираем элемент управления comboBox1, щелкаем по нему правой кнопкой мыши и выбираем пункт «Свойства». Меняем свойство «DropDownStyle» на значение «DropDownList». Теперь при работе с этим элементом управления пользователь не сможет ввести в него произвольные данные, а будет ограничен доступным ему списком значений.

Добавим обработчик события Load у формы Form11 (рисунок 18).

 

Рисунок 18 – Обработчик события Load зависимой переменной

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

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

Рисунок 19 – Обработчик Click в зависимой форме

Аналогично осуществляется добавление данных в другие зависимые таблицы БД.

Тестирование программы

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

При добавлении студента в БД необходимо выбрать «Добавление данных -> Добавление студента». Заполнить все необходимые поля, представленные в форме (рисунок 20).

 

 

Рисунок 20 – Образец добавления студента в БД

После добавления данных через «Добавление студента» можно  просмотреть на внесенные изменения в таблицу БД через форму «Просмотр данных -> Просмотр студентов» (рисунок 21).

Рисунок 21 – Форма просмотра таблицы студентов после внесения нового студента

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


Заключение

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

Поставленная задача выполнена.

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

- обеспечение защиты информации (пароль, кодировка и так далее);

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

- автоматическое заполнение одинаковых полей в разных таблицах при вводе.

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

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


Дата добавления: 2018-02-18; просмотров: 850; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!