Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная_1.doc
Скачиваний:
8
Добавлен:
31.01.2023
Размер:
3.39 Mб
Скачать

МИНОБРНАУКИ РОССИИ

Санкт-Петербургский государственный

электротехнический университет

«ЛЭТИ» им. В. И. Ульянова (Ленина)

Кафедра автоматики процессов управления

отчет

по лабораторной работе

по дисциплине «Технология программирования»

Тема: Информационная система (ИС) АБИТУРИЕНТ для автоматизации работы приёмной комиссии вуза

Студент гр. 8091

Гришин И. Д.

Преподаватель

Литвинов В. Л.

Санкт-Петербург

2022

Цель работы.

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

Описание предметной области.

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

Задание.

Один из фрагментов этой предметной области требует обработки анкетных данных абитуриентов. Для этого фрагмента необходимо разработать:

1) меню и средства диалога;

2) модули ввода и изменения данных.

Анкета включает следующие данные об абитуриенте:

  • регистрационный номер;

  • фамилия, имя и отчество;

  • дата рождения;

  • оконченное среднее учебное заведение (название, номер, город);

  • дата окончания;

  • наличие красного диплома или золотой/серебряной медали;

  • адрес (город, улица, номер дома, телефон);

  • выбранная специальность.

Исходными данными для заполнения анкеты являются аттестат или диплом о среднем образовании, заявление абитуриента.

В вузе определен список специальностей, который может изменяться ежегодно. По каждой специальности вуза определен список сдаваемых предметов, например:

  • математика (п), математика (у), русский язык и т. д.

ИС должна обеспечивать выполнение следующих функций:

  • ввод и коррекцию анкетных данных;

  • просмотр анкетных данных по специальностям в алфавитном порядке;

  • ввод, коррекцию и просмотр специальностей и сдаваемых предметов;

  • вывод на экран анкетных данных абитуриентов, имеющих красный диплом или медаль.

Основные цели внедрения ИС.

  • Повышение качества работы с абитуриентами;

  • Повышение эффективности приёмной комиссии;

  • Увеличение прозрачности работы с абитуриентами;

  • Оптимизация внутренних процессов;

  • Удобная форма отчётов для принятия студентов в университет.

Общая функциональная модель ИС.

Требования к ИС.

Модуль «Приём документов».

  • Модуль должен обеспечивать возможность записи абитуриентов и их документов ИС.

  • К характеристикам абитуриентов относятся:

    • ФИО и дата рождения;

    • Мобильный номер;

    • Выбор специальности;

    • Данные о проживании: страна, город улица и номер дома;

    • Данные о среднем образовании: аттестат, название и номер учреждения, страна и город, дата окончания и выдачи, наличие достижений

  • При определении характеристик должны быть обеспечены следующие возможности:

    • Ввод характеристик абитуриента;

    • Редактирование характеристик абитуриента;

    • Удаление вводимой информации;

    • Формирование вывода данных студентов.

  • Все из перечисленных характеристик являются обязательным для ввода абитуриентов в ИС.

  • Номер аттестата является уникальным для каждого абитуриента.

  • Редактирование сохранённых данных невозможно.

Модуль «Подача документов».

  • Модуль должен обеспечивать наличие данных абитуриента на ввод для приёма документов.

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

    • ФИО и дата рождения;

    • Мобильный номер;

    • Выбор специальности;

    • Данные о проживании: страна, город улица и номер дома;

    • Данные о среднем образовании: аттестат, название и номер учреждения, страна и город, дата окончания и выдачи, наличие достижений

  • При определении характеристик должны быть обеспечены следующие возможности:

    • Ввод характеристик абитуриента;

    • Редактирование характеристик абитуриента;

    • Удаление вводимой информации;

    • Формирование вывода данных студентов.

  • Все из перечисленных характеристик являются обязательным для ввода абитуриентов в ИС.

  • Номер аттестата является уникальным для каждого абитуриента.

  • Редактирование сохранённых данных невозможно.

Модуль «Отбор студентов».

  • Модуль должен обеспечивать возможность отображения данных студентов в ИС и сортировку по определённым данных среди выведенной таблицы.

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

    • ФИО и дата рождения;

    • Мобильный номер;

    • Выбор специальности;

    • Данные о проживании: страна, город улица и номер дома;

    • Данные о среднем образовании: аттестат, название и номер учреждения, страна и город, дата окончания и выдачи, наличие достижений

  • При возможности просмотра вывода данных абитуриентов должны быть доступны следующие возможности:

    • Сортировка специальностей в алфавитном порядке;

    • Сортировка по наличию достижений;

    • Сортировка по наличию побед в школьных олимпиадах;

  • Все из перечисленных характеристик являются обязательным для вывода абитуриентов в ИС.

  • Номер аттестата является уникальным для каждого абитуриента.

  • Редактирование выведенных данных невозможно.

Разработка концептуальной модели данных.

Результирующая концептуальная модель данных ИС автоцентра.

ER-диаграмма:

Логическая структура базы данных.

Рисунок 2. Логическая структура БД

Фрагменты программного кода.

Таблица «Студенты»

Название поля

Тип и размер данных

Обязательное или нет

Индексированное или нет

Дополнительные ограничения

ID

Числовой, целое

Да

Да (Совпадения не допускаются)

Фамилия

Короткий текст, 30

Да

Да (Совпадения допускаются)

Имя

Короткий текст, 30

Да

Да (Совпадения допускаются)

Отчество

Короткий текст, 30

Да

Да (Совпадения допускаются)

Номер телефона

Короткий текст, 20

Да

Да (Совпадения допускаются)

Маска ввода

\+0\(000\)000\-00\-00

Специальность

Короткий текст, 50

Да

Да (Совпадения допускаются)

День рождения

Дата и время (расширенный)

Да

Да (Совпадения допускаются)

Маска ввода

00\.00\.0000

Страна

Числовой, целое

Да

Да (Совпадения допускаются)

Город

Числовой, целое

Да

Да (Совпадения допускаются)

Улица

Короткий текст, 50

Да

Да (Совпадения допускаются)

Номер дома

Короткий текст, 10

Да

Да (Совпадения допускаются)

Страна школы

Числовой, целое

Да

Да (Совпадения допускаются)

Город школы

Числовой, целое

Да

Да (Совпадения допускаются)

Название школы

Короткий текст, 50

Да

Да (Совпадения допускаются)

Номер школы

Короткий текст, 10

Да

Да (Совпадения допускаются)

Дата выпуска

Дата и время (расширенный)

Да

Да (Совпадения допускаются)

Маска ввода

00\.00\.0000

Достижения

Числовой, целое

Да

Да (Совпадения допускаются)

Номер аттестата

Числовой, длинное целое

Да

Да (Совпадения не допускаются)

Дата выдачи

Дата и время (расширенный)

Да

Да (Совпадения допускаются)

Маска ввода

00\.00\.0000

Таблица «Страна»

Название поля

Тип и размер данных

Обязательное или нет

Индексированное или нет

Дополнительные ограничения

ID

Числовой, целое

Да

Да (Совпадения не допускаются)

Название

Короткий текст, 50

Да

Да (Совпадения не допускаются)

Таблица «Города»

Название поля

Тип и размер данных

Обязательное или нет

Индексированное или нет

Дополнительные ограничения

ID

Числовой, целое

Да

Да (Совпадения не допускаются)

ID страны

Числовой, целое

Да

Да (Совпадения допускаются)

Название

Короткий текст, 50

Да

Да (Совпадения не допускаются)

Таблица «Достижения»

Название поля

Тип и размер данных

Обязательное или нет

Индексированное или нет

Дополнительные ограничения

ID

Числовой, целое

Да

Да (Совпадения не допускаются)

Название

Короткий текст, 50

Да

Да (Совпадения не допускаются)

Фрагменты программного кода.

index.php

<?php

if (isset($_GET['table'])) {

require_once('table.php');

} else {

require_once('form.php');

}

?>

form.php

<?php

require_once('getApplicantData.php');

?>

<!DOCTYPE html>

<html lang="ru">

<head>

<title>Абитуриенты</title>

<link rel="stylesheet" type="text/css" href="common.css" />

<meta name="viewport" content="width=device-width, initial-scale=1">

</head>

<body>

<div class="content">

<form action="" method="post">

<h1>Анкета абитуриента</h1>

<a id="linkTable" href="/applicant?table">Таблица →</a>

<div class="formSheet">

<div class="textField">

<input type="text" name="studentSurname" id="studentSurname" required/>

<span class="hightlightBorder"></span>

<label for="studentSurname">Фамилия</label>

</div>

<div class="textField">

<input type="text" name="studentName" id="studentName" required/>

<span class="hightlightBorder"></span>

<label for="studentName">Имя</label>

</div>

<div class="textField">

<input type="text" name="studentSecondName" id="studentSecondName" required/>

<span class="hightlightBorder"></span>

<label for="studentSecondName">Отчество</label>

</div>

</div>

<div class="formSheet">

<div class="textField">

<input type="date" value="2004-01-01" name="studentBirthday" id="studentBirthday" required/>

<span class="hightlightBorder"></span>

<label for="studentBirthday">Дата рождения</label>

</div>

<div class="textField">

<input id="phoneInput" type="phone" name="studentPhone" required/>

<span class="hightlightBorder"></span>

<label for="phoneInput" id="phoneLabel">Моб. номер</label>

</div>

</div>

<div class="formSheet">

<div class="textField">

<select id="profession" name="profession">

<option disabled selected>Не выбрана</option>

<option value="Биотехнические системы и технологии">Биотехнические системы и технологии</option>

<option value="Инноватика">Инноватика</option>

<option value="Инфокоммуникационные технологии и системы связи">Инфокоммуникационные технологии и системы связи</option>

<option value="Информатика и вычислительная техника">Информатика и вычислительная техника</option>

<option value="Информационные системы и технологии">Информационные системы и технологии</option>

<option value="Компьютерная безопасность">Компьютерная безопасность</option>

<option value="Конструирование и технология электронных средств">Конструирование и технология электронных средств</option>

<option value="Лингвистика">Лингвистика</option>

<option value="Мехатроника и робототехника">Мехатроника и робототехника</option>

<option value="Нанотехнологии и микросистемная техника">Нанотехнологии и микросистемная техника</option>

</select>

<span class="hightlightBorder"></span>

<label for="profession">Выберите специальность</label>

<span id="altProfession" class="alt">Предметы для ЕГЭ</span>

</div>

</div>

<h2>Место проживания</h2>

<div class="formSheet">

<div class="textField">

<input type="hidden" name="studentCountry" id="hStudentCountry" />

<input type="text" list="country" id="studentCountry" required/>

<span class="hightlightBorder"></span>

<label for="studentCountry">Страна</label>

<datalist id="country">

<option value="Россия">

<option value="Казахстан">

<option value="Беларусь">

</datalist>

</div>

<div class="textField">

<input type="hidden" name="studentCity" id="hStudentCity" />

<input type="text" list="city" id="studentCity" required/>

<span class="hightlightBorder"></span>

<label for="studentCity">Город</label>

<datalist id="city">

<option value="Chocolate">

<option value="Coconut">

<option value="Mint">

<option value="Strawberry">

<option value="Vanilla">

</datalist>

</div>

</div>

<div class="formSheet">

<div class="textField">

<input type="text" name="studentStreet" id="studentStreet" required/>

<span class="hightlightBorder"></span>

<label for="studentStreet">Улица</label>

</div>

<div class="textField" style="width: 30%;">

<input type="text" name="studentStreetNumber" id="studentStreetNumber" required/>

<span class="hightlightBorder"></span>

<label for="studentStreetNumber">Номер дома</label>

</div>

</div>

<h3>Данные о среднем образовании</h3>

<div class="formSheet">

<div class="textField">

<input type="hidden" name="schoolCountry" id="hSchoolCountry" />

<input type="text" id="schoolCountry" required/>

<span class="hightlightBorder"></span>

<label for="schoolCountry">Страна</label>

</div>

<div class="textField">

<input type="hidden" name="schoolCity" id="hSchoolCity" />

<input type="text" id="schoolCity" required/>

<span class="hightlightBorder"></span>

<label for="schoolCity">Город</label>

</div>

</div>

<div class="formSheet">

<div class="textField">

<input type="text" name="schoolName" id="schoolName" required/>

<span class="hightlightBorder"></span>

<label for="schoolName">Название учреждения</label>

</div>

<div class="textField" style="width: 40%;">

<input type="text" name="schoolNumber" id="schoolNumber" required/>

<span class="hightlightBorder"></span>

<label for="schoolNumber">Номер учреждения</label>

</div>

</div>

<div class="formSheet">

<div class="textField">

<input type="date" name="schoolDate" id="schoolDate" value="2022-05-30" required/>

<span class="hightlightBorder"></span>

<label for="schoolDate">Дата окончания</label>

</div>

<div class="textField">

<select name="studentAchievements" id="studentAchievements">

<option value="0" selected>Отстуствуют</option>

<option value="1">Золотая медаль</option>

<option value="2">Сереберянная медаль</option>

<option value="3">Победитель олимпиады</option>

<option value="4">Призер олимпиады</option>

<option value="5">Наличие ГТО</option>

</select>

<span class="hightlightBorder"></span>

<label for="studentAchievements">Достижения</label>

</div>

</div>

<div class="formSheet">

<div class="textField">

<input type="text" name="docNumber" id="docNumber" required/>

<span class="hightlightBorder"></span>

<label for="docNumber">Номер аттестата</label>

</div>

<div class="textField" style="width: 40%;">

<input type="date" name="docDate" id="docDate" value="2022-05-30" required/>

<span class="hightlightBorder"></span>

<label for="docDate">Дата выдачи</label>

</div>

</div>

<div class="buttonFooter">

<input type="submit" value="Добавить абитуриента" />

<input type="button" onclick="addData()" value="Заполнить случайными данными" class="tertiary" />

</div>

</form>

</div>

<script type="text/javascript" src="common.js"></script>

</body>

</html>

Соседние файлы в предмете Технология программирования