Автор работы: Пользователь скрыл имя, 13 Января 2014 в 17:48, курсовая работа
Базы данных обслуживаются специальными программами — системами управления базами данных (СУБД), которые делятся на локальные, преимущественно однопользовательские, предназначенные для настольных приложений, и серверные — сетевые (часто удаленные), многопользовательские, функционирующие на выделенных компьютерах — серверах. Главный критерий такой классификации — объем базы данных и средняя нагрузка на СУБД. В работе используется СУБД Firebird 2.5. В данной работе описывается автоматизированная система учета и контроля информации об учениках, преподавателях, специальностях музыкальной школы.
Введение 5
Техническое задание 6
Основание для разработки 6
Назначение разработки 6
Требования к программе 6
Требования к функциональным характеристикам 6
Требования к надежности 6
Требования к составу и параметрам технических средств 7
Требования к информационной и программной совместимости 7
Требования к программной документации 7
Стадии и этапы разработки 7
Порядок контроля и приемки 8
Концептуальное проектирование системы 9
Разработка модели предметной области 9
Анализ предметной области 9
Описание контекстной диаграммы 10
Описание детализирующей диаграммы 11
Создание структур данных 14
Разработка концептуальной модели 15
Логическое проектирование БД 17
Физическое проектирование БД 19
Описание программы 23
Общие сведения 23
Функциональное назначение 23
Описание логической структуры 24
Используемые технические средства 25
Вызов и загрузка 26
Входные данные 26
Выходные данные 27
Программа и методика испытаний 27
Объект испытаний 27
Цель испытаний 27
Требования к программе 27
Требования к программной документации 28
Средства и порядок испытаний 28
Методы испытаний 28
Описание применения 30
Назначение программы 30
Условия применения 30
Описание задачи 30
Входные и выходные данные 30
Заключение 31
Рисунок А.2 – Диаграмма декомпозиции
Выполнение работы «Ведение учета учеников» осуществляется с помощью ресурса: «Руководство».
В результате декомпозиции бизнес-процесса «Ведение учета школьников» выделено три процесса:
Для реализации этих процессов определены хранилища данных:
Входными данными для процесса «Ведение учёта приема и выпуска учеников» являются:
Выходными данными для процесса «Ведение учёта приема и выпуска учеников» являются:
Входными данными для процесса
«Формирование класса»
Выходными данными для процесса «Формирование класса» являются:
Входными данными для процесса «Корректировка сведений по классному руководству» являются:
Выходными данными для процесса «Корректировка сведений по классному руководству» являются:
Входными данными для процесса «Корректировка сведений по расписанию» являются:
Выходными данными для процесса «Корректировка сведений по расписанию» являются:
Входными данными для процесса «Учет личных данных учителей» являются:
Выходными данными для процесса «Учет личных данных учителе» являются:
Диаграмма, полученная в результате декомпозиции бизнес-процесса «Ведение учета школьников», представлена на рисунке 2.
Все процессы являются элементарными и их дальнейшая декомпозиция не требуется.
Определим следующие структуры данных:
- STUDENT
Структуры данных системы, представлены в таблицах 2-4.
Таблица 2- Описание структуры данных STUDENT
Имя атрибута |
Назначение |
Name |
Имя ученика |
FirstName |
Фамилия ученика |
ParentName |
Отчество ученика |
Specialnost |
Специальность, на которой будет обучаться ученик |
Date |
Дата поступления |
HomeAdress |
Домашний адрес |
PhoneNumber |
Контактный телефон |
NamePrepod |
Фамилия преподавателя |
ID |
Уникальный номер записей |
Таблица 3- Описание структуры данных SPECIALNOST
Имя атрибута |
Назначение |
Code |
Код специальности |
NaimSpec |
Наименование специальности |
NamePrepod |
Фамилия преподавателя |
ID |
Уникальный номер записей |
Таблица 4- Описание структуры данных PREPODAVATELI
Имя атрибута |
Назначение |
NamePrepod |
Имя преподавателя |
FNamePrepod |
Фамилия преподавателя |
Otchestvo |
Отчество преподавателя |
Specialnost |
Специальность |
ID |
Уникальный номер записей |
Таким образом, были разработаны контекстная и детализирующая диаграммы, также структуры данных системы.
На основании разработанных контекстной и детализирующей диаграмм и структуры данных была спроектирована концептуальная модель данных, представленная на рисунке 3.
Концептуальная модель данных содержит 3 сущности: Student, Prepodavateli , Specialnost.
Рисунок 3 - Концептуальная модель данных
Сущности Student и Specialnost соединены связью «учатся на». Так как у ученика не может быть 0 специальностей но и больше 1 специальности быть у него не может,то показатель кардинальности связи между сущностями Student и Specialnost равен 1:1. Бинарная связь с обязательным участием сущности Specialnost. Причем сущность Specialnost является сильной по отношению к сущности Student, на специальности в определенный момент может и не быть ни одного ученика. Сущности Prepodavateli и Specialnost соединены связью «Преподает на». Так как у преподавателя не может быть 0 специальностей но и больше 1 специальности быть у него не может, то показатель кардинальности связи между сущностями Prepodavateli и Specialnost равен 1:1. Бинарная связь с обязательным участием сущности Specialnost. Причем сущность Specialnost является сильной по отношению к сущности Student, на специальности в определенный момент может и не быть ни одного преподавателя.
Также на специальности может быть сколько угодно преподавателей и студентов, поэтому показатель кардинальности у Specialnost равен 1: N. Одна специальность ко многим студентам и многим преподавателям.
На основании концептуальной модели данных была разработана логическая модель данных, представленная на рисунке 4.
Рисунок 4 – реляционная модель данных
Логическая модель данных создана путем преобразования концептуальной модели средствами системы OpenModelSphere. Для реляционной модели необходимо сгенерировать внешние ключи. В OpenModelSphere по умолчанию внешние ключи определяются с помощью первичных ключей. В результате генерации получаем внешний ключ сущности STUDENT:
а также внешний ключ сущности Prepodavateli:
Также на данном этапе определяются правила поддержки ссылочной целостности (update rule) для всех ролей модели. Устанавливаем значение, откладывающее окончательное формирование правил ссылочной целостности до этапа разработки приложения для разрабатываемой информационной системы.
Определены физические имена и допустимость нулевых значений атрибутов сущностей, представленные в таблицах 5-7. Первичные ключи в таблицах выделены подчеркиванием.
Таблица 5- Сущность Student
Имя атрибута |
Значение NULL |
Name |
Допустимо |
FirstName |
Допустимо |
ParentName |
Допустимо |
Specialnost |
Недопустимо |
Date |
Допустимо |
HomeAdress |
Допустимо |
PhoneNumber |
Допустимо |
NamePrepod |
Допустимо |
ID |
Недопустимо |
Таблица 6- Сущность SPECIALNOST
Имя атрибута |
Значение NULL |
Code |
Недопустимо |
NaimSpec |
Допустимо |
NamePrepod |
Допустимо |
ID |
Недопустимо |
Таблица 7- Сущность PREPODAVATELI
Имя атрибута |
Значение NULL |
NamePrepod |
Допустимо |
FNamePrepod |
Допустимо |
Otchestvo |
Допустимо |
Specialnost |
Недопустимо |
ID |
Недопустимо |
На основании логической модели была разработана физическая модель данных, представленная на рисунке 5.
Рисунок 5 – Физическая модель данных FireBird 2.5
Этап физического
Определены типы данных атрибутов сущностей, представленные в таблицах 8-10.
Таблица 8- Сущность Student
Имя атрибута |
Тип домена |
Длина поля |
Ключевые парам. |
Name |
Char |
30 |
|
FirstName |
Char |
20 |
|
ParentName |
Char |
40 |
|
Specialnost |
SmalInt |
||
Date |
Date |
||
HomeAdress |
Char |
60 |
|
PhoneNumber |
Char |
10 |
|
NamePrepod |
Char |
30 |
|
ID |
Integer |
PK, FK |
Таблица 9- Сущность SPECIALNOST
Имя атрибута |
Значение NULL |
Длина поля |
Ключевые парам. |
Code |
SmalInt |
Unique | |
NaimSpec |
Char |
100 |
|
NamePrepod |
Char |
40 |
|
ID |
Integer |
PK |
Таблица 10- Сущность PREPODAVATELI
Имя атрибута |
Значение NULL |
Длина поля |
Ключевые парам. |
NamePrepod |
Char |
40 |
|
FNamePrepod |
Char |
20 |
|
Otchestvo |
Char |
30 |
|
Specialnost |
SmalInt |
||
ID |
Integer |
PK |
Таким образом, на основании логической модели была создана физическая модель данных.
Создан SQL-скрипт базы данных, приведенный в приложении В.
База данных создана с помощью инструментального средства IBExpert и находится в файле MUSICSCHOOL.fdb. База данных создана для пользователя SYSDBA (пароль masterkey).
SQL-скрипт базы данных содержит разработанные генераторы и триггеры для каждой таблицы.
Список генераторов
Таблица 11- Список генераторов
Имя генератора |
Описание |
GEN_PREPOD_ID |
Создан для таблицы Prepod для реализации автоинкрементного поля ID. |
GEN_SPECIA_ID |
Создан для таблицы SPECIA для реализации автоинкрементного поля ID. |
GEN_STUDENT_ID |
Создан для таблицы STUDENT для реализации автоинкрементного поля ID. |
Таблица тригеров
Имя тригера |
Описание |
PREPOD_BI |
Создан для добавления записи в таблицу PREPOD |
SPECIA_BI |
Создан для добавления записи в таблицу SPECIA |
STUDENT_BI |
Создан для добавления записи в таблицу STUDENT |
Таблица хранимых процедур
Имя тригера |
Описание |
PROC_INTO_PREPOD |
Процедура создания или редактирования записей таблицы PREPOD, согласно входн. параметрам |
PROC_INTO_ STUDENT |
Процедура создания или редактирования записей таблицы STUDENT, согласно входн. параметрам |
PROC_INTO_ SPECIA |
Процедура создания или редактирования записей таблицы SPECIA, согласно входн. параметрам |
Информация о работе Разработка приложения для базы данных «Музыкальная школа»