проектирование информационной системы коипьютерных курсов. Я комп курсы 57 стр. Разработка базы данных для асу "Компьютерные курсы" Курсовая работа Студента 4 курса группы по0701
Скачать 233.37 Kb.
|
ВыводыВо второй главе курсовой работы приведена разработка информационно-логической модели. Выделены сущности, дано их описание и построена инфологическая модель предметной области. Далее в ходе обоснования выбора модели данных описаны существующие модели данных (иерархическая, сетевая, реляционная, объектно-ориентированная), указаны их достоинства и недостатки, и сделан выбор в пользу реляционной модели. Затем на основании инфологической модели построена даталогическая модель данных, дан список атрибутов ее отношений и проведена нормализация до третьей нормальной формы. Таким образом, завершено проектирование базы данных и получена вся информация, необходимая для реализации проектируемой инфомационной системы в одной из реляционных СУБД. Глава III. Программная реализацияВ данной главе проведен анализ и выбрана СУБД, в которой осуществлено физическое проектирование базы данных. Также указаны особенности разработки представлений, форм и отчетов, методы реализации ограничений и способы обеспечения безопасности информации, хранимой в базе данных. В конце главы приведены выводы. 3.1 Анализ и выбор СУБДДля программной реализации информационной системы выбрана СУБД Microsoft SQL Server 2005 Express Edition. Эта СУБД бесплатна для некоммерческого использования, имеет все средства для разработки реляционной базы данных, использует язык Transact-SQL, поддерживает проверочные ограничения (constraints), представления, процедуры и триггера. Данная СУБД более подробно описана в разделе 1.2. Для отображения отчетов и форм написана программа на языке C# на платформе.net Framework 3.5, используя технологию LINQ для доступа к базе данных Microsoft SQL Server. C# - объектно-ориентированный язык программирования. Разработан в 1998 - 2001 годах группой инженеров под руководством Андерса Хейлсберга в компании Microsoft как основной язык разработки приложений для платформы Microsoft.net. Компилятор с C# входит в стандартную установку самой.net, поэтому программы на нем можно создавать и компилировать даже без инструментальных средств, вроде Visual Studio. C# относиться к семье языков с С-подобным синтаксисом, из них его синтаксис наиболее близок к C++ и Java. Язык имеет статическую типизацию, поддерживает полиморфизм, перегрузку операторов (в том числе операторов явного и неявного приведения типа), делегаты, атрибуты, события, свойства, обобщенные типы и методы, итераторы, анонимные функции с поддержкой замыканий, LINQ, исключения, комментарии в формате XML. LINQ (Language Integrated Query) - проект Microsoft по добавлению синтаксиса языка запросов, напоминающего SQL, в языки программирования платформы.net Framework. Изначально поддерживая механизм запросов для коллекций объектов в памяти, реляционных баз данных и данных в формате XML, LINQ обладает расширяемой архитектурой, которая позволяет сторонним разработчикам реализовать доступ к их хранилищам данных через механизм LINQ. Для этого необходимо реализовать стандартные операторы запросов, используя методы расширения, или реализовать интерфейс IQueryable, позволяющий разбирать дерево выражения во время выполнения, транслируя его в свой язык запросов. 3.2 Физическое проектирование базы данных в СУБДПри физическом проектировании базы данных созданы следующие таблицы: Преподаватель Направление Студент Группа Аудитория Преп_Ауд - сущность связка между Преподаватель и Аудитория. Схема разработанной в СУБД базы данных приведена на рисунке 6. Рис. 6 Схема базы данных в СУБД Microsoft SQL Server Для автоматизации обработки в базе данных разработаны процедуры и триггеры. Основным назначением процедур в данной базу данных является упрощение процесса добавления записей. Ниже приведены функциональные особенности для каждой из них: AddTeacher - добавляет нового преподавателя в таблицу Преподаватель; AddStudent - добавляет нового студента в таблицу Студент; Триггеры в базе данных служат для реализации некоторых ограничений, которые невозможно организовать иным образом. Ниже приведено назначение каждого из триггеров: TriggerPrepClass - вводит ограничение на преподавателей, которые могут вести только один предмет у одной группы; TriggerGroupCabinet - вводит ограничение на зачисление в группу большего кол-ва человек, чем вмещает аудитория, которая числится за преподавателем; TriggerZaved - вводит ограничение на кол-во заведующих в учебном заведении; 3.3 Разработка представленийНа основании типовых запросов, приведенных в первой главе, и для отображения специфической информации, получаемой из нескольких таблиц, в удобной для пользователей форме, разработано несколько представлений, описание которых приведено ниже: PrepView - отображает информацию о преподавателях: ФИО - полное имя преподавателя; Должность - название должности, занимаемое преподавателем; Аудитория - номер аудитории закрепленный за данным преподавателем; Возраст - текущий возраст преподавателя; Адрес - домашний адрес преподавателя; Кол-во групп (вычисляется из подзапроса) - количество групп, у которых преподаватель ведет занятия; Оклад - зарплата преподавателя; Стаж - стаж данного преподавателя; StudentView - отображение информацию о студентах: ФИО - полное имя студента; Адрес - домашний адрес студента; Возраст - текущий возраст студента; Дата зачисления - дата зачисления студента; Группа - номер группы, в которой числится студент; ClassView - отображает информацию об учебном процессе: ФИО преподавателя - полное имя преподавателя; Группа - номер группы, у которой преподает данный преподаватель; Предмет - название предмета; 3.4 Разработка формДля упрощения добавления новых данных в базу данных для пользователей информационной системы созданы следующие формы: Добавление преподавателя - добавляет нового преподавателя в базу данных с назначением аудитории, которая закрепляется за преподавателем; Добавление студента - добавляет нового студента в базу данных, а также записывается группа, в которой будет числиться студент; 3.5 Разработка отчетовДля отображения представлений (раздел 3.3), созданных на основании типовых запросов, описанных в первой главе, в удобной для печати форме, разработаны следующие запросы: Отчет о преподавателях; Отчет о студентах; Отчет о дисциплинах; 3.6 Реализация ограниченийДля реализации ограничений на информацию, описанных в разделе 1.1, использованы триггеры и проверочные ограничения. Триггеры в данной базе служат для реализации тех ограничений, которые невозможно организовать другим образом: TriggerPrepClass - вводит ограничение на преподавателей, которые могут вести только один предмет у одной группы; TriggerGroupCabinet - вводит ограничение на зачисление в группу большего кол-ва человек, чем вмещает аудитория, которая числится за преподавателем; TriggerZaved - вводит ограничение на кол-во заведующих в учебном заведении; Более подробно о триггерах в разделе 3.2 Для реализации всех остальных ограничений на информацию использовались следующие проверочные ограничения: CK_Teacher (таблица Teacher) - предусматривает минимальный оклад равным 7000 руб. CK_AgeTeacher (таблица Teacher) - предусматривает минимальный возраст преподавателя 18 лет. 3.7 Безопасность и контрольДля безопасного хранения информации в базе данных используются средства, предоставляемые СУБД Microsoft SQL Server 2005, такие как: авторизация и аутентификация пользователей: SQL Server 2005 поддерживает два режима аутентификации: с помощью Windows и с помощью SQL Server. Первый режим позволяет реализовать решение, основанное на однократной регистрации пользователя и едином пароле при доступе к различным приложениям (Single SignOn solution, SSO). Подобное решение упрощает работу пользователей, избавляя их от необходимости запоминания множества паролей и тем самым снижая риск их небезопасного хранения. Кроме того, данный режим позволяет использовать средства безопасности, предоставляемые операционной системой, такие как применение групповых и доменных политик безопасности, правил формирования и смены паролей, блокировка учетных записей, применение защищенных протоколов аутентификации с помощью шифрования паролей (Kerberos или NTLM). Аутентификация с помощью SQL Server предназначена главным образом для клиентских приложений, функционирующих на платформах, отличных от Windows. Этот способ считается менее безопасным, но в SQL Server 2005 он поддерживает шифрование всех сообщений, которыми обмениваются клиент и сервер, в том числе с помощью сертификатов, сгенерированных сервером. Шифрование также повышает надежность этого способа аутентификации. Для учетной записи SQL Server можно указать такой параметр, как необходимость сменить пароль при первом соединении с сервером. Если SQL Server 2005 работает под управлением Windows Server 2003, можно воспользоваться такими параметрами учетной записи, как проверка срока действия пароля и локальная парольная политика Windows разделение прав с помощью схем: принцип распределения прав доступа к объектам баз данных основан на наличии у каждого объекта базы данных пользователя-владельца, который может предоставлять другим пользователям права доступа к объектам базы данных. При этом набор объектов, принадлежащих одному и тому же пользователю, называется схемой. В SQL Server 2005 концепция ролей расширена: эта СУБД позволяет полностью отделить пользователя от схем и объектов базы данных. Теперь объекты базы данных принадлежат не пользователю, а схеме, не имеющей никакого отношения ни к каким учетным записям и тем более к административным привилегиям. Таким образом, схема становится механизмом группировки объектов, упрощающим предоставление пользователям прав на доступ к объектам. механизм ролей: Для упрощения управления правами доступа применяется механизм ролей - наборов прав доступа к объектам базы данных, присваиваемых некоторой совокупности пользователей. При использовании ролей управление распределением прав доступа к объектам между пользователями, выполняющими одинаковые функции и применяющими одни и те же приложения, существенно упрощается: создание роли и однократное назначение ей соответствующих прав осуществляется намного быстрее, нежели определение прав доступа каждого пользователя к каждому объекту. SQL Server 2005 позволяет создавать так называемые вложенные роли, то есть присваивать одной роли другую со всеми ее правами. Это упрощает управление не только правами пользователей, но и самими ролями, создавая, к примеру, сходные между собой группы ролей. SQL Server 2005 также поддерживает так называемые роли для приложений (application roles), которые могут использоваться для ограничения доступа к объектам базы данных в тех случаях, когда пользователи обращаются к данным с помощью конкретных приложений. В отличие от обычных ролей, роли для приложений, как правило, неактивны и не могут быть присвоены пользователям. Их применение оказывается удобным в том случае, когда требования безопасности едины для всех пользователей, при этом не требуется аудит или иная регистрация деятельности конкретных пользователей в базе данных. ВыводыВ третьей главе курсовой работы проведен анализ и выбрана СУБД Microsoft SQL Server 2005, в которой осуществлено физическое проектирование базы данных. При этом построена схема базы данных, введены ограничения на информацию, составлены процедуры и триггеры, и получены отчеты. Для реализации форм и отчетов написаны программы на языке C# с использованием технологии доступа к базе данных LINQ. В конце главы рассмотрены вопросы безопасности и контроля доступа к информации, хранящейся в базе данных. Таким образом, разработанная автоматическая система управления полностью готова к опытной эксплуатации в учебном заведении "Компьютерные курсы". ЗаключениеРазработанная автоматическая система управления "Компьютерные курсы" является актуальной в связи с высокой потребностью в автоматизации практически в любой сфере. В курсовой работе решены следующие задачи: Проведен системный анализ предметной области "Компьютерные курсы"; Проведен обзор информационных технологий, подходящих для разработки информационной системы учебного заведения; Изучены аналогичные информационные системы данной предметной области; Описаны требования, предъявляемые к разработке данной базы данных; Разработана инфологическая модель базы данных; Обоснован выбор модели данных и осуществлено логическое проектирование информационной системы; Нормализована спроектированная модель и составлена схема базы данных; Осуществлено физическое проектирование базы данных в СУБД Microsoft SQL Server 2005; Разработана программа в среде выполнения.net Framework, реализующая формы и отчеты для базы данных; В итоге разработана реляционная база данных, содержащая элементы автоматизации и обработки данных. База данных содержит следующие объекты: 6 таблиц (Teacher, Student, Class, Cabinet, Prep_cabinet, Groups); 2 проверочных ограничения (CK_Teacher, CK_AgeTeacher); 3 триггера (TriggerPrepClass, TriggerGroupCabinet, TriggerZaved); 2 процедуры (AddTeacher, AddStudent); 2 формы (Новый преподаватель, Новый студент); 3 отчета (Преподаватели, Студенты, Дисциплины); Список источников и литературыhttp://www.tpcol.ru/asu/ - АСУ "КОЛЛЕДЖ" http://www.mkr.org.ua/index. php? mnu=36 - АСУ "Учебное заведение" http://www.gisoft.ru/ - АСУ "ВУЗ" Ульман Д., Уидом Д. "Основы реляционных баз данных", 2006 Баженова И.Ю. "Основы проектирования приложений баз данных", 2009 Гладченко А., Щербинина В. "Репликация SQL Server 2005/2008", 2009 Кириллов В.В., Громов Г.Ю. "Введение в реляционные базы данных", 2009 Макин Дж., Хотек М. "Проектирование серверной инфраструктуры баз данных Microsoft SQL Server. Учебный курс Microsoft", 2008 Морган С., Тернстрем Т. "Проектирование и оптимизация доступа к базам данных Microsoft SQL Server 2005. Учебный курс Microsoft", 2008 |