Разработка информационной системы "Составление расписаний занятий"

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

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 14.09.2015
Размер файла 175,2 K

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

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

КУРСОВАЯ РАБОТА

Разработка информационной системы «Составление расписаний занятий»

Введение

технический программный информационный документация

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

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

- позволять получать информацию о расписании занятий студентам;

- позволять вносить изменения в расписание.

К системе должны иметь доступ администрация учебного заведения, преподаватели, студенты.

1. Технико-экономические показатели

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

2. Функциональная модель информационной системы

Контекстная диаграмма ИС «Составления расписании занятии» показана на рисунке 1. Функциональная диаграмма первого уровня приведена на рисунке 2.

Рисунок 1. Контекстная диаграмма информационной системы

Рисунок 2. Функциональная диаграмма первого уровня

3. Объектно-ориентированное проектирование системы

Модели вариантов использования системы

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

Полученная диаграмма вариантов использования ИС «Составления расписании занятии» показана на рисунке 4.

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

Диаграмма классов

На рисунке 5 представлена диаграмма классов. На диаграмме выделены следующие классы Завуч, Диспетчер и Студент.

Рисунок 5. Диаграмма классов

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

На рисунке 6 представлена диаграмма деятельности. На диаграмме выделены следующие классы: Завуч, Диспетчер и Студент.

Диаграмма деятельности

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

На рисунке 7 представлена диаграмма последовательности. На диаграмме выделены следующие классы: Завуч, Диспетчер и Студент.

Рисунок 7. Диаграмма последовательности

Рисунок 8. Диаграмма кооперации

На рисунке 8 представлена диаграмма кооперации. На диаграмме выделены все группы объектов системы.

Диаграмма состояния.

На рисунке 9 представлена диаграмма состояний. На диаграмме выделены все состояния системы.

Рисунок 9. Диаграмма состояния

4. Создание информационной системы

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

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

Рисунок 10. Стартовое окно системы

Рисунок 11. Окно для составления расписания

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

Microsoft Visual C++ Express Edition имеет встроенный редактор исходного программного кода с полной поддержкой технологии IntelliSense, а так же возможностью простого рефакторинга (комплексной замены названий сущностей языка в определенном проекте) кода. Встроенный в Microsoft Visual C++ Express Edition отладчик предусматривает работу и как отладчик уровня исходного кода, и как отладчик машинного Assembler уровня кода. Другие встраиваемые в Visual C++ стандартные инструменты содержат простой и удобный редактор форм для упрощения процесса создания графического интерфейса (оболочки) приложения, web-редактор, а так же дизайнер классов и дизайнер схемы БД. Так же Visual Studio разрешает пользователю создавать и подключать разные дополнения (именуемые плагинами) для расширения функционала почти на любом уровне, включая добавление поддержки различных систем контроля версий исходного программного кода.

Все программные продукты Microsoft входящие в состав пакета Visual Studio и распространяющиеся отдельно в версиях Express Edition являются бесплатными, использовать их разрешается только в ознакомительных целях. В этих целях программа будет работать 30 дней, в течении которых или после чего необходимо зарегистрироваться и получить лицензионный ключ для неограниченного по времени использования программы Microsoft Visual C++ Express Edition.

5. Тестирование программного продукта

Модульное тестирование - тестируется отдельный модуль, в отрыве от остальной системы. Самый распространенный случай применения - тестирования модуля самим разработчиком, проверка того, что отдельные модули, классы, методы делают действительно то, что от них ожидается. Различные среды разработки широко поддерживают средства модульного тестирования - например, популярная свободно распространяемая библиотека для Visual Studio NUnit, JUnit для Java и т.д. Созданные разработчиком модульные тесты часто включаются в пакет регрессионных тестов и таким образом, могут запускаться многократно.

Заключение

В результате выполнения курсовой работы была разработана информационная система, позволяющая автоматизировать процесс составления расписании занятий.

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

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

Библиографический список

1. Боэм, Б. Инженерное проектирование программного обеспечения М.: Радио и связь, 1985. 234 с.

2. Боэм Б., Дж. Брун, Х. Гаспар Б и др. Характеристики качества программного обеспечения. М.: Мир, 1981. 420 с.

3. Вендеров, А.М. Проектирование программного обеспечения экономических и информационных систем. Учебник М.: Финансы и статистика, 2006. 544 с.

4. Вендеров, А.М. CASE-технологии. Современные методы и средства проектирования информационных систем. М.: Финансы и статистика, 1998. 344 с.

5. Гримм, С.Дж. Как писать руководства для пользователей. М.: Радио и связь, 2005. 438 с.

6. Иванова, Г.С. Технология программирования. Учебник для вузов М.: Издательство МГТУ им. Н.Э. Баумана, 2003. 320 с.

Приложение

Исходный программный код информационной системы

Программный код Формы 1:

#pragma once

namespace kyrsovaya {

using namespace System;

using namespace System: ComponentModel;

using namespace System: Collections;

using namespace System: Windows: Forms;

using namespace System: Data;

using namespace System: Drawing;

/// <summary>

/// Сводка для Form1

/// </summary>

public ref class Form1: public System: Windows: Forms: Form

{

public:

Form1 (void)

{

InitializeComponent();

//

//TODO: добавьте код конструктора

//

}

protected:

/// <summary>

/// Освободить все используемые ресурсы.

/// </summary>

~Form1 ()

{

if (components)

{

delete components;

}

}

private: System: Windows: Forms: Button^ button1;

protected:

private: System: Windows: Forms: Button^ button2;

private: System: Windows: Forms: Button^ button3;

private: System: Windows: Forms: Button^ button4;

private: System: Windows: Forms: Button^ button5;

private: System: Windows: Forms: PictureBox^ pictureBox1;

private: System: Windows: Forms: Button^ button6;

private:

/// <summary>

/// Требуется переменная конструктора.

/// </summary>

System: ComponentModel: Container ^components;

#pragma region Windows Form Designer generated code

/// <summary>

/// Обязательный метод для поддержки конструктора - не изменяйте

/// содержимое данного метода при помощи редактора кода.

/// </summary>

void InitializeComponent(void)

{

System: ComponentModel: ComponentResourceManager^ resources = (gcnew System: ComponentModel: ComponentResourceManager (Form1:typeid));

this->button1 = (gcnew System: Windows: Forms: Button());

this->button2 = (gcnew System: Windows: Forms: Button());

this->button3 = (gcnew System: Windows: Forms: Button());

this->button4 = (gcnew System: Windows: Forms: Button());

this->button5 = (gcnew System: Windows: Forms: Button());

this->pictureBox1 = (gcnew System: Windows: Forms: PictureBox());

this->button6 = (gcnew System: Windows: Forms: Button());

(cli:safe_cast<System: ComponentModel:ISupportInitialize^ >(this->pictureBox1))->BeginInit();

this->SuspendLayout();

//

// button1

//

this->button1->Location = System: Drawing: Point (12, 12);

this->button1->Name = L «button1»;

this->button1->Size = System: Drawing: Size (100, 30);

this->button1->TabIndex = 0;

this->button1->Text = L «Расписание»;

this->button1->UseVisualStyleBackColor = true;

//

// button2

//

this->button2->Location = System: Drawing: Point (12, 58);

this->button2->Name = L «button2»;

this->button2->Size = System: Drawing: Size (100, 31);

this->button2->TabIndex = 1;

this->button2->Text = L «Преподователи»;

this->button2->UseVisualStyleBackColor = true;

//

// button3

//

this->button3->Location = System: Drawing: Point (12, 105);

this->button3->Name = L «button3»;

this->button3->Size = System: Drawing: Size (100, 32);

this->button3->TabIndex = 2;

this->button3->Text = L «Аудиотории»;

this->button3->UseVisualStyleBackColor = true;

//

// button4

//

this->button4->Location = System: Drawing: Point (12, 152);

this->button4->Name = L «button4»;

this->button4->Size = System: Drawing: Size (100, 30);

this->button4->TabIndex = 3;

this->button4->Text = L «Студенты»;

this->button4->UseVisualStyleBackColor = true;

this->button4->Click += gcnew System: EventHandler (this, &Form1:button4_Click);

//

// button5

//

this->button5->Location = System: Drawing: Point (12, 244);

this->button5->Name = L «button5»;

this->button5->Size = System: Drawing: Size (100, 31);

this->button5->TabIndex = 4;

this->button5->Text = L «Выйти»;

this->button5->UseVisualStyleBackColor = true;

//

// pictureBox1

//

this->pictureBox1->Image = (cli:safe_cast<System: Drawing: Image^ >(resources->GetObject (L «pictureBox1. Image»)));

this->pictureBox1->InitialImage = (cli:safe_cast<System: Drawing: Image^ >(resources->GetObject (L «pictureBox1. InitialImage»)));

this->pictureBox1->Location = System: Drawing: Point (247, 86);

this->pictureBox1->Name = L «pictureBox1»;

this->pictureBox1->Size = System: Drawing: Size (352, 375);

this->pictureBox1->TabIndex = 5;

this->pictureBox1->TabStop = false;

this->pictureBox1->Click += gcnew System: EventHandler (this, &Form1:pictureBox1_Click);

//

// button6

//

this->button6->Location = System: Drawing: Point (12, 198);

this->button6->Name = L «button6»;

this->button6->Size = System: Drawing: Size (100, 27);

this->button6->TabIndex = 6;

this->button6->Text = L «О программе»;

this->button6->UseVisualStyleBackColor = true;

//

// Form1

//

this->AutoScaleDimensions = System: Drawing: SizeF (6, 13);

this->AutoScaleMode = System: Windows: Forms: AutoScaleMode: Font;

this->ClientSize = System: Drawing: Size (597, 460);

this->Controls->Add (this->button6);

this->Controls->Add (this->pictureBox1);

this->Controls->Add (this->button5);

this->Controls->Add (this->button4);

this->Controls->Add (this->button3);

this->Controls->Add (this->button2);

this->Controls->Add (this->button1);

this->Name = L «Form1»;

this->Text = L «Учет составления расписании занятии»;

this->Load += gcnew System: EventHandler (this, &Form1: Form1_Load);

(cli:safe_cast<System: ComponentModel:ISupportInitialize^ >(this->pictureBox1))->EndInit();

this->ResumeLayout(false);

}

#pragma endregion

private: System: Void button4_Click (System: Object^ sender, System: EventArgs^ e) {

}

private: System: Void pictureBox1_Click (System: Object^ sender, System: EventArgs^ e) {

}

private: System: Void Form1_Load (System: Object^ sender, System: EventArgs^ e) {

}

};

}

Программный код Формы 2:

#pragma once

namespace kyrsovaya {

using namespace System;

using namespace System: ComponentModel;

using namespace System: Collections;

using namespace System: Windows: Forms;

using namespace System: Data;

using namespace System: Drawing;

/// <summary>

/// Сводка для raspisanie

/// </summary>

public ref class raspisanie: public System: Windows: Forms: Form

{

public:

raspisanie(void)

{

InitializeComponent();

//

//TODO: добавьте код конструктора

//

}

protected:

/// <summary>

/// Освободить все используемые ресурсы.

/// </summary>

~raspisanie()

{

if (components)

{

delete components;

}

}

private: System: Windows: Forms: RichTextBox^ richTextBox1;

protected:

private: System: Windows: Forms: Label^ label1;

private: System: Windows: Forms: RichTextBox^ richTextBox2;

private: System: Windows: Forms: Label^ label2;

private:

/// <summary>

/// Требуется переменная конструктора.

/// </summary>

System: ComponentModel: Container ^components;

#pragma region Windows Form Designer generated code

/// <summary>

/// Обязательный метод для поддержки конструктора - не изменяйте

/// содержимое данного метода при помощи редактора кода.

/// </summary>

void InitializeComponent(void)

{

this->richTextBox1 = (gcnew System: Windows: Forms: RichTextBox());

this->label1 = (gcnew System: Windows: Forms: Label());

this->richTextBox2 = (gcnew System: Windows: Forms: RichTextBox());

this->label2 = (gcnew System: Windows: Forms: Label());

this->SuspendLayout();

//

// richTextBox1

//

this->richTextBox1->Location = System: Drawing: Point (9, 64);

this->richTextBox1->Name = L «richTextBox1»;

this->richTextBox1->Size = System: Drawing: Size (364, 467);

this->richTextBox1->TabIndex = 0;

this->richTextBox1->Text = L»»;

//

// label1

//

this->label1->AutoSize = true;

this->label1->Location = System: Drawing: Point (12, 36);

this->label1->Name = L «label1»;

this->label1->Size = System: Drawing: Size (86, 13);

this->label1->TabIndex = 1;

this->label1->Text = L «Преподователь»;

//

// richTextBox2

//

this->richTextBox2->Location = System: Drawing: Point (405, 65);

this->richTextBox2->Name = L «richTextBox2»;

this->richTextBox2->Size = System: Drawing: Size (368, 465);

this->richTextBox2->TabIndex = 2;

this->richTextBox2->Text = L»»;

//

// label2

//

this->label2->AutoSize = true;

this->label2->Location = System: Drawing: Point (402, 36);

this->label2->Name = L «label2»;

this->label2->Size = System: Drawing: Size (60, 13);

this->label2->TabIndex = 3;

this->label2->Text = L «Предметы»;

//

// raspisanie

//

this->AutoScaleDimensions = System: Drawing: SizeF (6, 13);

this->AutoScaleMode = System: Windows: Forms: AutoScaleMode: Font;

this->ClientSize = System: Drawing: Size (783, 577);

this->Controls->Add (this->label2);

this->Controls->Add (this->richTextBox2);

this->Controls->Add (this->label1);

this->Controls->Add (this->richTextBox1);

this->Name = L «raspisanie»;

this->Text = L «Расписание занятии»;

this->Load += gcnew System: EventHandler (this, &raspisanie:raspisanie_Load);

this->ResumeLayout(false);

this->PerformLayout();

}

#pragma endregion

private: System: Void raspisanie_Load (System: Object^ sender, System: EventArgs^ e) {

}

};

}

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


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

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