Смекни!
smekni.com

Разработка информационной системы для средней школы (стр. 5 из 12)

Рисунок 3.3 – Даталогичекая модель «ИС Школьник»



Связь между таблицами осуществляется через уникальные поля – ключи.

Данные хранится в СУБД MySQL 5.1, схема данных выполнена с помощью программы MS Access.

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

Таблица 3.1 – Таблица «Auth»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 login Varchar(255) логин
3 pass Varchar(255) пароль

Таблица 3.2 – Таблица «Street»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 street Varchar(255) улица

Таблица 3.3 – Таблица «Nation»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 nation Varchar(255) национальность

Таблица 3.4 – Таблица «Day»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 day Varchar(255) день недели

Таблица 3.5 – Таблица «JobTitle»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 jobTitle Varchar(255) должность

Таблица 3.6 – Таблица «Lesson»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 lesson Varchar(255) урок

Таблица 3.7 – Таблица «Organization»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 organization Varchar(255) организация

Таблица 3.8 – Таблица «PlacePhone»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 placephone Varchar(255) место телефона

Таблица 3.9 – Таблица «Class»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 class Varchar(20) класс
3 idSchoolYear Int(11) код учебного года
4 idWorkman Int(11) код классного руководителя

Таблица 3.10 – Таблица «Education»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 education Varchar(255) образование

Таблица 3.11 – Таблица «HighSchool»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 highSchool Varchar(50) ВУЗ
3 idEducation Int(11) код образования

Таблица 3.12 – Таблица «Phone»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 number Varchar(20) номер телефона
3 idMan Int(11) код владельца телефона
4 idPlacePhone Int(11) код места телефона
5 note Varchar(100) примечание
6 owner Varchar(1) владелец

Таблица 3.13 – Таблица «Pupil»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 surname Varchar(20) фамилия
3 name Varchar(15) имя
4 fathername Varchar(20) отчество
5 idClass Int(11) код класса
6 birth Date дата рождения
7 sex Varchar(1) пол
8 idStreet Int(11) код улицы
9 house Varchar(7) дом
10 flat Varchar(6) квартира
11 idNation Int(11) код национальности
12 note Longtext примечание
13 owner Varchar(1) владелец

Таблица 3.14 – Таблица «Relative»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 idPupil Int(11) код ученика
3 idRelativeDegree Int(11) код степени родства
4 surname Varchar(20) фамилия
5 name Varchar(15) имя
6 fathername Varchar(20) отчество
7 idOrganization Int(11) код организации
8 phone Varchar(50) рабочий телефон

Таблица 3.15 – Таблица «RelativeDegree»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 relativedegree Varchar(255) степень родства

Таблица 3.16 – Таблица «SchoolYear»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 schoolYear Varchar(255) учебный год
3 currentYear Varchar(255) текущий год

Таблица 3.17 – Таблица «Timetable»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 idClass Int(11) код класса
3 time Varchar(15) время
4 idLesson Int(11) код урока
5 classroom Varchar(20) кабинет
6 idDay Int(11) код дня недели
7 idWorkman Int(11) код преподавателя

Таблица 3.18 – Таблица «Workman»

№ п/п Наименование Тип данных Назначение
1 ID Int(11)auto_inc первичный ключ
2 surname Varchar(20) фамилия
3 name Varchar(15) имя
4 fathername Varchar(20) отчество
5 idTitleJob Int(11) код должности
6 birth Date дата рождения
7 owner Varchar(1) владелец
8 idStreet Int(11) код улицы
9 house Varchar(7) дом
10 flat Varchar(6) квартира
11 idNation Int(11) код национальности
12 note Longtext примечание
13 yearEducation Date год выпуска
14 experience Date стаж

3.3 Обоснование выбора средств программирования

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

3.3.1 Язык программирования Java

Для индивидуального задания средство автоматизации язык программирования JAVA.

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

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

Часто к недостаткам концепции виртуальной машины относят то, что исполнение байт-кода виртуальной машиной может снижать производительность программ и алгоритмов, реализованных на языке Java. Данное утверждение было справедливо для первых версий виртуальной машины Java, однако в последнее время оно практически потеряло актуальность. Этому способствовал ряд усовершенствований:

- применение технологии трансляции байт-кода в машинный код непосредственно во время работы программы (JIT-технология) с возможностью сохранения версий класса в машинном коде;

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