Автор: Пользователь скрыл имя, 28 Апреля 2013 в 12:40, дипломная работа
В ходе дипломного проектирования была детально проработана постановка задачи и обоснован выбор ее решения.
При построении системы использовалась двухзвенная архитектура клиент-сервер, которая предполагает разделение приложения на серверуню и клиентскую части. Серверная часть включает в себя базу данных и обеспечивает управление данными, администрирование, защиту данных. Клиентская часть обеспечивает выполнение пользовательских функций и представляет собой графический интерфейс для работы с базой данных
Введение 8
1 Постановка задачи 11
2 Технико-экономическое обоснование темы. 13
3 Теоретическая часть 17
3.1 Информационные системы. 17
3.2 Базы данных. 18
4 Проектная часть. 20
4.1 Логическое моделирование предмета разработки 20
4.1.1 Модель вариантов исользовния 20
4.1.2 Модель классов системы 22
4.1.3 Поведение предмета разработки 23
4.1.4 Взаимодействие объектов системы по времени 24
4.2 Разработка структуры базы данных 24
4.2.1 Инфологическое проектирование базы данных 24
4.2.2 Выбор модели данных 38
4.2.3 Даталогическое проектирование базы данных 39
4.2.4 Ограничение целостности данных 55
4.2.5 Физическая модель базы данных 57
4.3 Выбор и обоснование СУБД 64
4.4 Выбор и обоснование языка программирования 66
4.5 Разработка информационного обеспечения системы 67
4.5.1 Проектирование серверной части 67
4.5.2 Проектирование клиентской части 68
4.5.3 Проектирование пользовательского интерфейса 70
5 Разработка документации 74
5.1 Требования к оборудованию и программному обеспечению 74
5.1.1 Конфигурация оборудования серверной части 74
5.1.2 Конфигурация оборудования клиентской части 74
5.1.3 Программное обеспечение серверной части 75
5.1.4 Программное обеспечение клиентской части 75
5.2 Общие сведения о программе 75
5.3 Руководство системного администратора 76
5.3.1 Установка серверной части приложения 76
5.4 Руководство пользователя 77
6 Тестирование программного обеспечения 85
6.1 Тестирование методом «белого ящика» 86
6.2 Системное тестирование 88
6.3 Тестирование методом «черного ящика» 88
6.4 Результаты испытаний 90
7 Экономическая часть 91
7.1 Технико-экономическое обоснование проекта 91
7.2 Составление плана-графика разработки 92
7.3 Составление сметы затрат на разработку 94
7.4 Выводы по эффективности использования программы 98
8 Безопасность и экологичность проекта 101
8.1 Введение 101
8.2 Анализ вредных и опасных факторов 101
8.3 Требования к рабочей мебели для снижения психофизиологических перегрузок и эргономические параметры рабочего места оператора ПК 109
8.4 Рационализация режима труда и отдыха для снижения умственного утомления 111
8.5 Обеспечение пожарной безопасности 113
8.6 Экологичность проекта. 116
Заключение 117
Список используемой литературы 118
Приложение. Листинг наиболее значимых частей программы 120
Продолжение таблицы 4.2
Имя таблицы |
Атрибут |
Тип данных |
Обязатель-ное поле |
Тип ключа |
НагрузкаИспы-тания |
Группа |
int |
да |
PK/FK |
УчПлИспытаний |
int |
да |
PK/FK | |
Преподаватель |
int |
да |
PK/FK | |
Ведомость |
НомерВедомости |
int |
да |
PK |
Группа |
int |
да |
FK | |
Преподаватель |
int |
да |
FK | |
УчПланИспытаний |
int |
да |
FK | |
Семестр |
int |
да |
||
ДатаВыдачи |
Datetime |
да |
||
ВедомостьСту-дент |
НомерВедомости |
int |
да |
PK/FK |
Студент |
int |
да |
PK/FK | |
Оценка |
int |
нет |
FK | |
Оценка |
КодОценки |
int |
да |
PK |
Оценка |
char(10) |
да |
||
Расшифровка |
char(15) |
да |
||
ЭкзЛист |
НомерЭкзЛиста |
int |
да |
PK |
НомерВедомости |
int |
да |
FK | |
Студент |
int |
да |
FK | |
Оценка |
int |
да |
FK | |
ДатаВыдачи |
datetime |
да |
Конечная схема физической модели
данных представлена на рис. 4.66.
|
Рисунок 4.66. Физическая модель данных |
Для разработки базы данных использовалась СУБД MS SQL Server 2008 R2 Express. Эта система наделена всеми необходимыми возможностями. В частности, система обладает следующими преимуществами:
Сервер баз данных Microsoft SQL Server в качестве языка запросов использует версию языка SQL, получившую название Transact-SQL (сокращённо T-SQL). Язык T-SQL является реализацией SQL-92 (стандарт ISO для языка SQL) с множественными расширениями. T-SQL позволяет использовать дополнительный синтаксис для хранимых процедур и обеспечивает поддержку транзакций (взаимодействие базы данных с управляющим приложением).[14]
Для обеспечения доступа к данным Microsoft SQL Server поддерживает Open Database Connectivity (ODBC) — интерфейс взаимодействия приложений с СУБД. Версия SQL Server 2005 обеспечивает возможность подключения пользователей через веб-сервисы, использующие протокол SOAP. Это позволяет клиентским программам, не предназначенным для Windows, кроссплатформенно соединяться с SQL Server.[4]
Начиная с версии SQL Server 2005, в СУБД встроена поддержка .NET Framework. Благодаря этому хранимые процедуры БД могут быть написаны на любом языке платформы .NET, используя полный набор библиотек, доступных для .NET Framework, включая Common Type System (система обращения с типами данных в Microsoft .NET Framework). Однако, в отличие от других процессов, .NET Framework, будучи базисной системой для SQL Server 2005, выделяет дополнительную память и выстраивает средства управления SQL Server вместо того, чтобы использовать встроенные средства Windows. Это повышает производительность в сравнении с общими алгоритмами Windows, так как алгоритмы распределения ресурсов специально настроены для использования в структурах SQL Server.
Microsoft SQL Server Express является
бесплатно распространяемой
Ограничения Express-версии:
При выборе СУБД рассматривались две альтернативы – Microsoft Access 2007 и Microsoft SQL Server 2008 R2 Express. Система Microsoft Access 2007 не позволяет реализовывать технологию распределенных баз данных, поэтому применение данной системы невозможно.
Для написания клиентского приложения выбор был сделан в пользу Microsoft Visual C#. При выборе среды программирования были рассмотрены три альтернативы: Microsoft Visual C#, Delphi 7 и C++ Builder 6.0. Прежде всего необходимо отметить, что Delphi использует язык Object Pascal, который уступает по своей функциональности и гибкости языку C# и С++. Поэтому выбирать нужно между Microsoft Visual C# и С++ Builder.
Опираясь на мощный фундамент, который составляют унаследованные характеристики, C# содержит ряд важных новшеств, поднимающих искусство программирования на новую ступень. Например, в состав элементов языка C# включены такие понятия, как делегаты (представители), индексаторы, добавлен синтаксис, поддерживающий атрибуты; упрощено создание компонентов за счёт исключения проблем, связанных с COM; язык C# предлагает средства динамического обнаружения ошибок, обеспечения безопасности и управляемого выполнения программ. Таким образом, C# сочетает первозданную мощь C++ с типовой безопасностью Java, которая обеспечивается наличием механизма контроля типов и корректным использованием шаблонных классов. C# является изначально компонентно-ориентированным языком.
Переняв многое от своих предшественников — языков C++, Java, Delphi, Модула и Smalltalk — С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем, например, C# не поддерживает множественное наследование классов (в отличие от C++).
При построения системы использовалась двухзвенная архитектура клиент-сервер, которая предполагает разделение приложения на серверную и клиентскую части. Серверная часть включает в себя базу данных и отвечает за управление данными, администрирование, обеспечение защиты и разделение информации. Клиентская часть, включающая в себя персональные программы, обеспечивает графический интерфейс для работы с БД и размещается на компьютерах пользователей.
Достоинствами клиент-серверной архитектуры являются:
К недостаткам данной архитектуры можно отнести сильную загруженность сервера.
При использовании двухзвенной архитектуры практически все задачи обработки данных возлагаются на сервер. В роли сервера в системе будет выступать СУБД MS SQL Server 2008 R2 Express. На данной системе будет обслуживаться разработанная база данных. Пользователи, посредством клиентского приложения, отправляют на сервер запросы или вызывают хранимые на сервере процедуры. В ответ сервер выполняет необходимые операции с данными и отправляет результаты своей работы клиентам.
Рассмотрим хранимую процедуру добавления приказа «dbo.AddPrikaz». СУБД получает от клиентского приложения список значений параметров, соответствующих полям таблицы «Приказ», происходит добавление данных в таблицу.
USE [E:\BASE\DEANSQL.MDF]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[AddPrikaz]
( @nprikaz int,
@data datetime,
@tipprikaz int,
@osnovaniye int,
@status int,
@forma int,
@osnova int,
@kurs int,
@gruppa int )
AS
INSERT INTO Приказ (НомерПриказа, ДатаПриказа, ТипПриказа, Основание, Статус, ФормаОбучения, ОсноваОбучения, Курс, Группа)
VALUES (@nprikaz, @data, @tipprikaz, @osnovaniye, @status, @forma, @osnova, @kurs , @gruppa)
RETURN
Среда Microsoft Visual Studio предоставляет разработчику удобный инструментарий для проектирования приложений и доступа к базам данных.
При работе с базами данных необходимо установить соединение между сервером и клиентом. Для этого в среде разработки предусмотрено добавление источника данных с указанием параметров подключения.[21]
Рассмотрим основы технологии доступа к информации базы данных через компоненты MS Visual Studio.
Адаптеры таблиц (TableAdapters). Обеспечивают связь между приложением и базой данных. Точнее говоря, адаптер таблиц подключается к базе данных, выполняет запросы или хранимые процедуры и либо возвращает новую заполненную таблицу данных, либо заполняет существующую DataTable возвращаемыми данными. Адаптеры таблиц также используются для отправки обновленных данных из приложения обратно в базу данных. [19]
Адаптеры таблиц могут содержать несколько запросов для заполнения связанных таблиц. Пользователь может определить столько запросов для TableAdapter, сколько требуется для приложения. При этом каждый запрос возвращает данные, которые соответствуют той же схеме, что и связанная таблица данных. Это позволяет загружать данные, которые удовлетворяют различным критериям. Например, если приложение содержит таблицу студентов, то можно создать запрос, заполняющий таблицу студентов-выпускников, и другой запрос, отбирающий всех студентов, учащихся в одной группе.
Строка “this.
Адаптеры таблиц создаются конструктором наборов данных внутри строго типизированных наборов данных. Можно создавать адаптеры таблиц во время создания нового набора данных в мастере конфигурации источников данных.
Набор данных (DataSet). Класс DataSet представляет собой резидентную упрощенную реляционную базу данных, не соединенную прямо ни с какой другой базой данных (кэш данных в памяти). Некоторые из его свойств описывают таблицы (Tables) и отношения (Relations) между ними в наборе данных. Класс DataSet может содержать адаптеры таблиц, запросы, таблицы данных и отношения.
Например, для получения списочного состава группы, в обработчике события «SelectedIndexChanged» элемента «ComboBox» (содержит список номеров групп, при выборе возвращает значение КодГруппы) ввдем следующие строки:
DataSet2TableAdapters.
DataSet2TableAdapters.
Для отображения табличных данных используется элемент управления DataGridView, свзянный с источником данных. Источник данных устанавливается в свойствах элемента.
Так же для отображения значений отдельных полей таблиц могут использоваться элементы «TextBox», «ComboBox» и другие с привязкой к источникам данных.
Графический интерфейс пользователя является средой для работы пользователя с данными, поэтому его разработка является одним из важнейших моментов написания хорошего программного обеспечения. В настоящее время основные элементы интерфейса унифицированы и подчиняются общему стилю операционной системы.
Основными принципами являются: