База данных "Кафедра"
ВВЕДЕНИЕ
Высшее
учебное заведение сегодня –
это сложный учебно-
Система управления ВУЗом должна представлять собой гибкую, динамичную систему, позволяющую эффективно рассматривать намеченные планы, оперативно учитывать все изменения и новые тенденции. Большие возможности для совершенствования управления каждым ВУЗом предоставляет использование вычислительной техники и средств связи. В настоящее время накоплен определённый опыт разработки и внедрения автоматизированных систем управления ВУЗом.
В
организационной системе
Практически все современные виды деятельности человека немыслимы без использования современных информационных средств, компьютерных технологий. В Таразском Государственном Университете на кафедре «Компьютерные системы» готовят специалистов по самым современным, перспективным и престижным специальностям, таким как вычислительная техника и программное обеспечение, информационные системы, компьютерные системы управления. Деятельность кафедры связана с учетом большого количества информации, которую необходимо систематизировать.
Целью данного проекта является создание ИС для автоматизации учета и анализа информации (данных) об успеваемости студентов кафедры «Компьютерные системы». Необходимо не только упорядочить информацию, но и упростить процессы ее анализа и принятия необходимых управленческих решений.
Задачами данного проекта являются:
- выявить необходимость автоматизации информационных потоков процессов деятельности кафедры;
- проектирование базы данных в ERWin и генерация ее в Interbase;
- создание клиент-приложения в объектно-ориентированной среде программирования Delphi7.
Целью всех выполняемых действий являются:
- автоматизировать процесс регистрации, учета информации;
- сократить время поиска необходимых данных;
- оптимизировать хранение информации, необходимой для деятельности кафедры.
1.
АНАЛИЗ ПРЕДМЕТНОЙ ОБЛАСТИ
1.1. Постановка задачи
В настоящий момент на кафедре «Компьютерные системы» студенты обучаются по направлениям 050602 «Информатика», 050703 «Информационные системы», 050704 «Вычислительная техника и программное обеспечение».
В Таразском Государственном
Университете с 2004 года обучение
производится по кредитной
Разработка и корректировка учебных планов специальностей ведется сотрудниками кафедр. На этапе получения стандартов специальностей решаются следующие задачи:
- ввод данных об обязательных циклах дисциплин;
- корректировка контрольных показателей.
На этапе разработки учебных планов:
- ввод данных о дисциплинах, назначенных кафедрой, дисциплинах специализации, дисциплинах по выбору студента;
- ввод данных о распределении занятий и курсовых работ по семестрам.
Обработать вручную такой объем информации довольно таки сложно. Именно поэтому было принято решение создать автоматизированную систему для учета и анализа успеваемости студентов, а также контроля учебных планов.
С точки зрения реализации проектируемая система должна удовлетворять следующим требованиям:
- системность и информационная совместимость подсистем и элементов подсистемы, т.е. создание во всей информационной системе взаимоувязанной совокупности форм обмена информацией;
- методическое единство, т.е. разработка различных подсистем на основе единых принципов, и обеспечение взаимосвязи различных подсистем, входящих в состав системы (показатели, формы документов);
Следовательно,
результатом данной работы должен стать
проект, удовлетворяющий требованиям
заведующего кафедрой «Компьютерные
системы» по учету хранимой информации
об успеваемости студентов кафедры.
1.2. Входные/выходные данные
Исходными данными являются:
- данные о студенте (ФИО, группа);
- данные о преподавателе (ФИО, должность);
- данные о группах (наименование, староста, эдвайзер, год поступления);
- сведения о специальностях (наименование, год введения);
- данные о дисциплинах (наименования, кредиты, наличие курсовой работы).
На основе исходных данных формируется:
- рабочий учебный план, который носит справочный характер;
- ведомость успеваемости студентов.
Выходные документы/данные в деятельности кафедры:
- отчет «Рабочий учебный план»;
- отчет Дисциплин, по которым есть курсовые работы;
- отчет по дисциплинам с учетом итогового балла и балла полученного по курсовой работе, если такая имеется;
- отчет по итоговым баллам студентов по дисциплинам.
2. ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ
2. 1. Анализ известных подходов к решению проблемы
На сегодняшний день существуют два основных подхода к разработке ПО ИС, один из которых называется функционально-модульный или структурный. В его основу положен принцип функциональной декомпозиции, при которой структура системы описывается в терминах иерархии ее функций и передачи информации между отдельными функциональными элементами. Второй, объектно-ориентированный использует объектную декомпозицию. Структура системы описывается в терминах объектов и связей между ними, а поведение системы описывается в терминах обмена сообщениями между объектами. Каждый объект системы обладает своим собственным поведением, моделирующим поведение объекта реального мира.
При разработке ПО ИС с использованием структурного подхода система разбивается на функциональные подсистемы, которые в свою очередь, делятся на подфункции, те – на задачи и так далее. Процесс разбиения продолжается вплоть до конкретных процедур. При этом автоматизируемая система сохраняет целостное представление, в котором все составляющие компоненты взаимосвязаны. При разработке системы "снизу-вверх", от отдельных задач ко всей системе, целостность теряется, возникают проблемы при описании информационного взаимодействия отдельных компонентов.
Важным качеством объектно-ориентированного подхода является согласованность моделей деятельности организации и моделей проектируемой системы от стадии формирования требований до стадии реализации. Объектно-ориентированный подход обладает рядом преимуществ, таких как:
- объектная декомпозиция дает возможность создавать ПС меньшего размера путем использования общих механизмов. Использование объектно-ориентированного подхода существенно повышает уровень унификации разработки и пригодность для повторного использования программ, а также проектов;
- объектная декомпозиция уменьшает риск создания сложных систем ПО, т.к. она предполагает эволюционный путь развития системы на базе относительно небольших подсистем;
- объектная модель позволяет в полной мере использовать выразительные возможности объектных и объектно-ориентированных языков программирования.
Главным же достоинством объектно-ориентированного подхода является то, что объектно-ориентированные системы более открыты и легче поддаются внесению изменений, т.к. их конструкция базируется на устойчивых формах. Переход на новую технологию связан с высокими начальными затратами, а также с преодолением психологических трудностей. Это относится к недостаткам объектно-ориентированного подхода. Но все-таки объектно-ориентированная модель наиболее адекватно отражает реальный мир, представляющий собой совокупность взаимодействующих объектов. Объектно-ориентированный подход не дает немедленной отдачи. Эффект от его применения начинает сказываться после разработки двух-трех проектов [6].
В настоящее время на практике количество CASE-средств, поддерживающих объектно-ориентированный подход, невелико по сравнению с поддерживающими структурный подход. В том числе, диаграммы, отражающие специфику объектно-ориентированного подхода (диаграммы классов, объектов и т.д.), гораздо менее наглядны и плохо понимаемы непрофессионалами. Примерами объектно-ориентированных CASE-средств являются: Rational Rose фирмы Rational Software и Paradigm Plus фирмы Computer Associates, предназначенные для автоматизации этапов анализа и проектирования ПО.
Современные CASE-средства, поддерживающих структурный подход, охватывают обширную область поддержки многочисленных технологий проектирования ИС: от простых средств анализа и документирования до полномасштабных средств автоматизации, покрывающих весь жизненный цикл ПО. На сегодняшний день российский рынок программного обеспечения располагает следующими наиболее развитыми CASE-средствами: Vantage Team Builder (Westmount I-CASE); Designer/2000; Silverrun; ERwin+BPwin; S-Designor; CASE.Аналитик.
ERwin — современное средство проектирования баз данных. Отличительной чертой ERwin/ERX является высокая степень обеспечения согласованного взаимодействия между средствами создания баз данных и средствами разработки приложений. ERwin поддерживает все наиболее популярные реляционные СУБД, включая Oracle; Sybase; Informix; Microsoft SQL Server; FoxPro; InterBase; Paradox; Access и др. Одна и та же модель может быть использована для создания нескольких баз данных или для переноса приложения с платформы одной СУБД на другую. ERwin можно использовать совместно со многими популярными средствами разработки приложений: Delphi, PowerBuilder, Visual Basic, Oracle Designer/2000 и др. [6]
Основные характеристики:
- поддержка стандартной нотации IDEF1X для ER диаграмм моделей данных, нотации IE и специальной нотации, предназначенной для проектирования хранилищ данных – DIMENSIONAL;
- возможность импорта/экспорта данных из BРwin, Oracle Designer;
- поддержка триггеров, хранимых процедур и шаблонов;
- развитые средства проверки корректности моделей данных;
- автоматическая генерация SQL DDL для создания баз данных;
- глубокая интеграция с продуктами Oracle, Sybase, Centura, Microsoft на базе единого репозитория и эффективного обмена проектами; импорт/экспорт с Rational Rose;
- автоматическая генерация экранных форм приложений для PowerBuilder, Delphi, Visual Basic, созданных на основе спроектированной модели данных.
2.2.
Проектирование базы
данных в ERwin
Для создания ER – диаграммы в проекте используется программное средство ERwin.
В базе данных использованы домены. Домен - это потенциальное множество значений простого типа данных, он имеет сходство с подтипом данных в некоторых языках программирования. Домен определяется двумя элементами - типом данных и логическим выражением, которое применяется к данным. Если результат этого выражения равен значению «истина», то экземпляр данных принадлежит домену [6].
Таблица 1- Домены, используемые в диаграмме.
| Логическое имя домена | Физическое имя домена | Родительский домен |
| examen | t_examen | Number |
| itog | t_itog | Number |
| kol_vo_kreditov | t_ko_lvo_kreditov | Number |
| lc1 | t_lc1 | Number |
| lc2 | t_lc2 | Number |
| pr1 | t_pr1 | Number |
| pr2 | t_pr2 | Number |
| srs1 | t_srs1 | Number |
| srs2 | t_srs2 | Number |
| Disciplina_s | t_Disciplina_s | String |
| Disciplina_p | t_Disciplina_p | String |
| Specialnost_s | t_Specialnost_s | String |
| Specialnost_p | t_Specialnost_p | String |
| Doljnost | t_Doljnost | String |
| FIO | t_FIO | String |
| gruppa | t_gruppa | String |
| Semester | T_semestr | number |
В диаграмму входят такие сущности:
Сущность Student включает:
- FIO;
- Gruppa.
Сущность Gruppa включает:
- Gruppa;
- God postuplenia;
- Edvaizer.
Сущность Specialnost включает:
- Shifr_specialnosti;
- Specialnost_p;
- Specialnost_s;
- God_vvedenia.
Сущность Disciplina включает:
- Kod_disciplina;
- Disciplina_p;
- Disciplina_s.
Сущность Prepodavatel включает:
- Kod_disciplina;
- Shifr_specialnost;
- Semester;
- Kol_vo_kreditov.
СущностьVedomost включает:
- Kod_prepod;
- Kod_disciplina;
- Shifr_specialnost;
- Kod_student;
- Lc1;
- Lc2;
- Pr1;
- Pr2;
- Srs1;
- Srs2;
- Examen;
- Itog.
На физическом уровне модель, напротив, зависит от конкретной базы данных, выбираемой пользователем. Таким образом, одной логической модели может соответствовать несколько физических моделей. Кроме того, так как в физической модели речь идет уже о реально существующих в БД физических объектах, то обязательно должны быть определены типы данных и атрибутов.
На логическом уровне данные представляются так, как они выглядят в реальном мире. Объектами логического уровня являются сущности и атрибуты. Модель логического уровня является универсальной и не связана с конкретной базой данных [6.
Затем генерируем SQL код первоначально установив программу выбрав Server/Target Interbase, затем выбрав Server Tasks/Schema Generation, установив необходимые параметры нажимаем кнопку Preview для просмотра сгенерированного SQL кода. Итак, получив SQL код, мы можем перейти к следующему этапу проектирования.
Рисунок 1- Диаграмма на физическом уровне
Рисунок
2 - Диаграмма на логическом уровне.
2.3.
Создание базы данных
в INTERBASE
2.3.1. INTERBASE и область его применения
InterBase представляет собой полнофункциональный SQL- сервер. Сервер баз данных- это программный процесс, который выполняется на узле сети, где расположен главный компьютер или физически расположена сама база данных. Процесс сервера- единственный процесс на любом узле, который может исполнять прямые операции ввода-вывода для файлов базы данных.
Клиенты
посылают запросы серверному процессу,
чтобы выполнить различные
- Поиск в базе данных по заданным условиям;
- Сравнение, сортировку и представление данных в табличном виде;
- Изменение хранимых данных;
- Добавление новых данных в базу;
- Удаление данных из базы данных;
- Создание новых базы данных и структур данных;
- Выполнение программного кода на сервере;
- Передачу сообщения другим клиентам, подключенным в данный момент к серверу.
Серверный процесс является полностью сетевым, он поддерживает запросы на подключение от других узлов сети и тот же самый протокол InterBase прикладной программы, что и клиентские процессы.
Несколько
клиентов могут быть связаны с
многопоточным процессом
Сервер регулирует доступ к отдельным записям данных в пределах базы данных и обеспечивают монопольный доступ к записям, когда клиенты выдают запросы на изменение данных в записях.
Отличительными качествами InterBase являются:
- Высокая производительность и надежность сервера при минимальных требованиях к техническим средствам.
- Поддержка стандарта SQL-92, обеспечивающая переносимость приложений.
- Относительно низкая стоимость продукта.
- Простота установки и поддержки сервера. Удобный и не требующий специальной подготовки механизм администрирования базой данных.
Все
это делает InterBase прекрасным выбором
для реализации корпоративных систем
малого и среднего масштаба (с количеством
пользователей в несколько десятков).
При реализации очень крупных проектов
(с сотнями или более пользователей) стоит,
наверное, рассмотреть более мощные серверы
– типа Oracle или Informix [1].
2.3.2. Уровни реализации языка SQL
По своему существу SQL предназначен только для описания взаимодействия с базой данных. SQL не содержит средств, необходимых для разработки законченных программ и может использоваться только как их часть. В зависимости от назначения SQL может использовать один из трех уровней реализации.
- Интерактивный или автономный SQL(ISQL) дает возможность пользователям непосредственно извлекать информацию из базы данных или записывать ее в базу данных. Этот уровень доступен посредством соответствующих утилит или специальных стандартных средств для работы с базами данных. В InterBase это реализуется такими утилитами, как Isql.exe и Wisql32.exe. С их помощью информация может быть загружена в базу данных или извлечена из нее и выведена на экран, печать или файл.
- Статический SQL (SQL)- фиксированный (исполнимый), т.е. заранее подготовленный и записанный , а не формируемый в процессе выполнения программы SQL код, обычно используемый в приложениях. Существует две версии статического SQL. Встроенный или внедренный SQL – это код SQL, включенный в исходный код программы, написанной на том или ином алгоритмическом языке. Используемый язык при этом называют базовым. InterBase поддерживает внедренный SQL. Другое использование статического SQL- модульный язык. В этом случае модули SQL присоединяются к приложению на этапе компоновки.
- Динамический SQL (DSQL) – код SQL, генерируемый приложением во время его выполнения. Динамический SQL заменяет статический в тех случаях, когда необходимый код не может быть определен во время написания приложения, так как он сам зависит от действий пользователя во время выполнения приложения.
В InterBase
используются все 3 уровня реализации
SQL. Необходимо помнить, что на разных уровнях
доступны не все команды языка. Кроме того,
синтаксис команд разных уровней может
отличаться. При описании синтаксиса соответствующих
команд оговаривается уровень реализации,
на который ориентирован это синтаксис.
В большинстве случаев, правда этот синтаксис
является единым [8].
2.3.3. Скорость доступа к данным
Скорость доступа к данным определяется объемом просматриваемой в процессе выборки информации. При отсутствии условий для выборки (фильтрации) и упорядочения просмотр осуществляется всегда в физическом порядке, обеспечивая максимальную скорость поиска. Когда задаются некоторые условия, то скорость поиска может быть существенно увеличена, если данные, участвующие в условиях выборки тем или иным способом упорядочены. В этом случае оказывается возможным сократить объем просматриваемых данных, сразу исключив те, которые не удовлетворяют условиям выборки.
В InterBase упорядочение данных достигается заданием индексов по интересующему полю или группе полей. Индекс представляет собой список значений индексных полей, в котором каждому набору значений сопоставляется указатель на соответствующие строки таблиц. Сами индексы организуются, как правило, в виде бинарных деревьев или списков, что позволяет вести достаточно быстрый поиск по ним. При этом объем памяти, занимаемый индексом, относительно невелик.
Следует помнить, что при всяком обновлении данных должны обновляться и индексы. Таким образом, платой за быстрый поиск является увеличение затрат времени на обновление данных. Кроме того, сами индексы после большого числа обновлений становятся несбалансированными, вследствие чего время поиска по ним возрастает. Их можно перестроить, но это также требует затрат времени.
В
этих условиях при проектировании базы
данных необходимо находить разумный
компромисс между требованиями по ускорению
поиска данных и требования по скорости
их обновления. В частности, использование
индексов для небольших по объему таблиц
вообще не оправдано. Если имеется индекс
по группе полей, то поиск по первому из
полей групп может прямо использовать
этот индекс, следовательно, нет смысла
по нему делать отдельный индекс. Если
поиск по каким-либо полям редок, то построение
по ним индекса тоже не эффективно. К сожалению,
более конкретные рекомендации по определению
состава индексов едва ли возможны. Оптимальный
выбор зависит и от структуры базы и от
характера ее использования [8].
2.4. Этапы создания базы данных в INTERBASE
Первым этапом является создание базы данных:
Базы данных InterBase-сервера хранятся в виде файлов, имеющих расширение .gdb. для создания новой БД в окне программы IBConsole выберем команду Database ® Create Database.

- База данных "Кинотеатр"
- База данных книжного магазин а
- База данных книжного магазина
- База данных книжного магазина
- База данных книжного магазина
- База данных “Книжные склады”
- База данных “Книжные склады”
- База-данных интернет-магазина
- База данных интернет-провайдеров
- База-данных «ИС Аэропорт»
- База данных и способы ее представление
- База данных и способы ее представления
- База данных «ИС Центр занятости »
- База данных "кадры"