Введение
Целью данного курсового проекта является решение прикладной задачи по учету распределения студентов по базам практики и разработка программного обеспечения для ведения и хранения этой информации и выдачи необходимых выходных форм.
Для достижения поставленной цели необходимо решить следующие задачи:
Выполнить постановку задачи, включая спецификации входных и выходных данных;
Спроектировать структуры данных для ведения и хранения информации;
Разработать алгоритм решения задачи;
Спроектировать структуру программы, определить состав и назначение процедур и функций программы;
Написать программу на алгоритмическом языке Паскаль;
Отладить программу, подготовить данные и выполнить контрольный расчет.
1. Постановка задачи
Задача учета распределения студентов по базам практики должна включать в себя выполнение следующих функций:
Ввод и просмотр НСИ
Ввод исходной информации
Формирование требуемого выходного документа на основе НСИ и информации из входного документа
Организация элементарного оконного интерфейса , контроль вводимой информации.
Имеются следующие исходные данные:
Нормативно-справочная информация, включающая в себя два показателя:
Шифр завода
Наименование завода
2. Входной документ, включающий в себя следующие пока-затели:
Шифр завода
Общее количество студентов
Количество иногородних студентов
- Ф.И.О. и должность руководителя практики по данному
предприятию.
3. Выходной документ, включающий в себя следующие пока-затeли:
- Наименование завода
- Общее количество студентов
Количество иногородних студентов
- Ф.И.О. и должность руководителя практики по данному
предприятию
Кроме того, выходной документ должен содержать подсчет итогов по общему количеству студентов и количеству иного-родних студентов.
В работе предусмотреть возможность ввода и просмотра НСИ, ввод исходной информации и выдачу выходного документа с использованием входных данных и НСИ.
НСИ необходимо хранить в дисковом файле. Программа должна иметь “дружественный ” интерфейс, включающий в себя меню, контекстно-зависимую подсказку и контроль вводимой информации.
2.Информационное обеспечение.
Информационное обеспечение включает в себя следующие виды информации:
Нормативно-справочная информация (НСИ)
Входная информация
Выходная информация
Диалоговая информация
Нормативно справочная информация (НСИ)
представляет собой редко изменяющуюся информацию, необходимую для решения задачи. В нашем случае НСИ представляет собой типизированный файл, содержащий наименования и шифры предприятий, принимающих студентов на практику. Состав и структура НСИ приведены в таблице 2.1.
Табл. 2.1.
Шифр завода |
Наименование завода |
Входная информация
включает в себя часто изменяемые данные о студентах и их руководителях, направляемых для прохождения производственной практики на предприятия. Состав и структура входных данных для рассматриваемой задачи приведена в таблице 2.2. Входные данные вводятся с клавиатуры и затем хранятся в типизированном файле.
Табл. 2.2.
Шифр завода |
Общее количество Студентов |
Количество иногородних студентов |
Ф.И.О. руководителя |
Должность руководителя |
Выходная информация
представляет собой ведомость распределения студентов по базам практики, формируется с использованием входной информации и информации, хранящейся в НСИ, и приведена на рис.2.1.
Ведомость распределения студентов по базам практики.
Шифр завода
|
Общее количество Студентов
|
Количество иногородних студентов
|
Ф.И.О. руководителя
|
Должность руководителя
|
|
|
|
|
|
Рис. 2.1. Выходной документ
Для эффективной организации взаимодействия пользователя с программой предназначена диалоговая информация
, организованная в виде “дружественного” интерфейса. Она представлена основным меню
, позволяющими выбрать необходимый режим работы программы, и контекстно-зависимой подсказкой
, облегчающей процесс общения пользователя с программным продуктом. В программе организован простейший оконный интерфейс
, реализованный средствами модуля CRT.
Окно вывода меню (верхнее)- информация в этом окне находится на экране постоянно, не обновляясь в ходе работы программы.
Окно контекстно-зависимой подсказки (нижнее) – информация в этом окне периодически обновляется в соответствии с ходом исполнения программы.
Окно ввода данных и вывода результатов (среднее) – окно с изменяемой информацией.
3. Разработка алгоритма.
Разработка алгоритма велась методом нисходящего проектирования сверху вниз с последующей детализацией отдельных блоков.
Поскольку языком программирования выбран процедурно - ориентированный алгоритмический язык высокого уровня Pascal, основной задачей, подлежащей решению на этапе разработки алгоритма, является декомпозиция основной задачи с целью выделения отдельных подзадач, которые могут быть оформлены в виде подпрограмм.
4.Проектирование прикладного программного обеспечения
Программа спроектирована методом нисходящего прое
На следующем этапе были разработаны, отлажены и поочередно подключены подпрограммы, реализующие основные функции данной задачи.
Программа реализована на языке высокого уровня Pascal .
Прикладное программное обеспечение данного проекта состоит из трех файлов:
· программный файл
· файл НСИ
· файл базы данных.
В приведенной ниже таблице 4.1. приведены наименования, назначения и обращения к подпрограммам, включенным в состав прикладного программного обеспечения .
Таблица 4.1.
№ |
Назначение подпрограммы |
Наименование подпрограммы |
1 |
Процедура для ввода НСИ |
Procedure V_NSI; |
2 |
Процедура просмотра НСИ |
Procedure Prosmotr; |
3 |
Ввод данных |
Procedure Input; |
4 |
Функция поиска наименования завода по его шифру в файле НСИ |
Function Poisk(Shifr:string):string; |
5 |
Процедура формиро-вания выходного документа и выдачи его на экран |
Procedure Print_Doc; |
5. Отладка и тестирование программы
Под отладкой понимается процесс, позволяющий получить программу, функционирующую с требуемыми характеристиками в заданной области входных данных.
Процесс отладки программы включает:
- создание совокупности тестовых эталонных значений, кото- рым должна соответствовать программа;
- статическую проверку текстов разработанных программ и данных на выполнение всех заданных правил;
- тестирование программы с исполнением ее с различными уровнями детализации;
Основным методом обнаружения ошибок при отладке программы является тестирование.
Набор тестов, которые были использованы при отладке данной программы приведен в таблице 5.1.
Таблица 5.1.
№ |
Входные данные |
Выходной документ
|
||||||
НСИ |
Входной документ |
|||||||
Шифр завода |
Наимен завода |
Шифр завода |
Количество студентов всего |
Количество иногородних студентов |
Ф.И.О. руководителя практики |
Должность |
||
1 |
1111 |
З-д К.Либкнехта |
1111 |
10 |
5 |
Иванов |
Инженер |
Рис 5.1 Рис 5.2 |
2 |
2222 |
Шинный |
5555 |
23 |
12 |
Петров |
Экономист |
|
3 |
3333 |
Южнотрубный |
2222 |
45 |
2 |
Сурко |
Ст.инженер |
|
4 |
55555 |
Южмаш |
Выходной документ №1
НСИ
Наименование завода
|
Шифр завода
|
З- д К. Либкнехта |
1111
|
Шинный з-д |
2222
|
Южнотрубный |
3333
|
Южмаш |
5555
|
Рис 5.1.
Выходной документ №2
Ведомость распределения студентов по базам практики
Наименование завода |
Количество студентов |
Количество иногородних студентов |
Ф.И.О. руководителя |
Должность |
З- д К. Либкнехта |
10 |
5 |
Иванов |
Инженер |
Южмаш |
23 |
12 |
Петров |
Экономист |
Шинный з-д |
45 |
2 |
Сурко |
Ст. инженер |
ИТОГО: 78 19
Рис 5.2.
Заключение
В данном курсовом проекте разработан программный продукт, позволяющий частично автоматизировать процесс распределения студентов по базам практики, а также отслеживать и управлять ходом прохождения производственной практики.