Разработка автоматизированного рабочего места администратора кинотеатра "Мир"

Анализ предметной области и описание основных функциональных подсистем автоматизированного рабочего места администратора кинотеатра "Мир". Разработка инфологической модели базы данных и заполнение форм данных. Обеспечение безопасности и доступа к данным.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 27.12.2014
Размер файла 4,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

2

ДЕПАРТАМЕНТ СМОЛЕНСКОЙ ОБЛАСТИ ПО ОБРАЗОВАНИЮ И НАУКЕ

СМОЛЕНСКОЕ ОБЛАСТНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

СРЕДНЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

«ВЯЗЕМСКИЙ ПОЛИТЕХНИЧЕСКИЙ ТЕХНИКУМ»

(СОГБОУ СПО «Вяземский политехнический техникум»)

КУРСОВОЙ ПРОЕКТ

Тема: Разработка автоматизированного рабочего места администратора кинотеатра «Мир»

СОДЕРЖАНИЕ

Введение

1. Теоретический раздел

1.1 Постановка задачи

1.2 Описание основных функциональных подсистем

1.3 Обоснование и выбор субд

1.4 Обоснование и выбор инструментария разработки субд и форм

1.5 Инфологическое моделирование предметной области

1.6 Датологическое проектирование

2. Экспериментальный раздел

2.1 Создание базы данных, заполнение таблиц данными

2.2 Создание запросов и фильтров

2.3 Создание форм

2.4 Обеспечение безопасности доступа к данным

2.5 Правила и порядок работы с базой данных

Заключение

Литература

Приложение

предметная область база данных кинотеатр

Введение

Развитие рынка киноиндустрии непрерывно развивается и постоянно находится в состоянии трансформации. Трансформация происходит в зависимости от потребностей потребителей данной услуги. Постоянно расширяется сфера услуг и уровень обслуживания. В настоящее время на рынке города имеется значительная нехватка предприятий в данной сфере обслуживания.

С каждым годом в России увеличивается количество зрителей, которые предпочитают посмотреть качественный продукт с идеальным качеством изображения и звука. Это осуществим лишь в кинотеатре, так как в домашних условиях чаще всего недостижимы данные критерии (пользовательские колонки не могут передать должное качество звука или качество изображения оставляет желать наилучшего). Поэтому спрос на услуги кинотеатра растет.

При создании программного продукта использовались современные инструментальные средства разработки: MicrosoftVisualStudio 2008, Microsoft SQL server 2005, MicrosoftOffice 2007.

Целью курсового проекта является разработка автоматизированного рабочего места администратора кинотеатра «Мир».

Объектом исследования курсового проекта является общественный кинотеатр «Мир».

Предметом исследования курсового проекта является деятельность кинотеатра «Мир».

Информационной базой исследования послужили формы документов, , должностные инструкции сотрудников, осуществляющих обслуживание клиентов и работу кинотеатра.

1. Теоретический раздел

1.1 Постановка задачи

Разработать автоматизированную информационную систему для облегчения работы выбранного мной кинотеатра. Для этого необходимо создать базу данных, на основе которой создать информационную систему в виде веб-сайта.

Веб - сайт сделан с помощью ASP.NET приложения. ASP.NET -- этотехнология создания динамических веб - приложений. Она является частью платформы .NET Framework. Приложения ASP.NET можно писать на любом языке, совместимом с технологиями .NET. В их число входят VisualBasic,C# и J#. Страницы ASP.NET (веб-формы) проходят компиляцию, что обеспечивает лучшую производительность по сравнению с приложениями на основе сценариев. Веб-формы позволяют создавать многофункциональные веб-страницы. При разработке можно использовать серверные элементы управления. ASP.NET для создания общих элементов пользовательского интерфейса и программирования общих задач для них. Процесс создания веб-форм ускоряется за счет использования стандартных встроенных компонентов, таких как представления GridView и DetailsView, и пользовательских компонентов, помогающих при написании кода страницы.

Интерфейс программ должен быть понятным и легкодоступным даже не опытным пользователям компьютеров.

Процесс создания базы данных можно представить как последовательность следующих шагов:

- регистрация сервера;

- создания файла базы данных;

- выполнение SQL-запросов.

Чтобы перейти к конечной цели курсового проекта надо разобраться со следующими задачами:

- разработка базы данных;

- разработка графического интерфейса пользователя клиент-серверных приложений;

- обеспечение работоспособности программного продукта на любом компьютере.

1.2 Описание основных функциональных подсистем

Автоматизированная система - это система, состоящая из персонала и комплекса средств автоматизации его деятельности, реализующая информационную технологию выполнения установленных задач.

Для успешного функционирования и решения ею поставленных задач необходима ПЭВМ типа IBMPC с автоматизированнойсистемой серверной части процессором IntelPentium или аналогичных моделей с тактовой частотой от 1800 МГц и выше, объёмом оперативной памяти 512 Мб и более, SVGA, свободным пространством на жёстком диске 1000 Мб и более. Необходимо наличие внешних устройств: монитора, клавиатуры, мыши. АРМ может работать на ПЭВМ, на которой установлена любая операционная система семейства Windows Vista HomePremium, Windows Vista Business, Windows Vista Enterprise и Windows Vista Ultimate32-разрядный (x86) или 64-разрядный (x64). Поскольку информационное обеспечение представляет собой файл СУБД SQLServerс расширением .mdb, то для его функционирования необходима версия указанной СУБД. Программное обеспечение АРМ представляет собой исполняемый файл, созданный средствами интегрированной среды разработки MicrosoftVisualStudio 2008.

Лингвистическое обеспечение АРМ включает, прежде всего, язык управления и манипуляции данными - язык SQL, язык программирования

С# -язык, на котором выполнен интерфейс программного обеспечения АРМ. А также словарь, содержащий все наименования файлов базы данных, их полей, префиксов и ключей, обозначенных набором букв латинского алфавита.

Информационное обеспечение автоматизированной системы серверной части включает базу данных, организованную с помощью СУБД SQLServer.

Эргономическое обеспечение (ЭО) как совокупность методов и средств, используемых на разных этапах разработки и функционирования АИТ, предназначено для создания оптимальных условий высокоэффективной и безошибочной деятельности человека с АРМ.

При работе пользователя с автоматизированной системой клиентской части упрощена и оптимизирована процедура ввода информации за счёт применяемой совокупности справочников, которые создаются и поддерживаются пользователем модели АРМ в адекватном состоянии, а затем многократно используются.

Математическое обеспечение АРМ включает типовые алгоритмы работы с базой данных, алгоритмы выполнения запросов на поиск информации и формирования отчётности.

1.3 Обоснование и выбор СУБД

После того, как построена инфологическая модель исследуемой предметной области, необходимо определить инструментальные средства для создания базы данных (БД) и приложения по её ведению. Для создания базы данных необходимо выбрать систему управления базой данных (СУБД), а прикладную программу можно создать на языке программирования и манипулирования данными, а также с помощью средств быстрой разработки приложений баз данных, встроенных в СУБД, или с помощью других инструментальных средств.

Кроме того, в рамках данного этапа проектирования базы данных и её приложения необходимо не только определить инструментальные средства для их реализации, но и привести обоснование сделанного выбора. Пример, обоснования выбора СУБД SQL Server для разработки базы данных и приложения приводится ниже.

Назначение любой системы управления базами данных - создание, ведение и обработка баз данных. Как в текстовом редакторе можно подготовить много разных документов, так в СУБД SQL Server можно создать много разных баз данных. Для проектирования базы данных выбирается СУБД SQL Server, которая предоставляет значительные возможности по работе с хранящимися данными, их обработке и совместному использованию.

База данных под управлением СУБД SQL Server - это файл с расширением .MDB, включающий в себя классы объектов:

- таблицы для хранения данных;

- формы для ввода и редактирования БД в интерактивном режиме;

- запросы для обработки таблиц и других запросов;

- страница доступа конструктора;

- модули на базовом языке программирования C# для обработки данных;

- отчеты для вывода результатов обработки данных.

СУБД SQL Server позволяет создавать БД различного объема, с которыми работают в монопольном режиме или режиме коллективного доступа.

СУБД SQL Server содержит много новых функций для работы в сети Интернет, это: страницы доступа к данным, вывод таблиц запросов, добавление полей-ссылок на объекты БД. В СУБД SQL Server усовершенствована функция создания и перехода по гиперссылкам. СУБД SQL Server поддерживает новый стандарт доступа к данным OLE DB, благодаря которому можно создавать полноценные клиент-серверные приложения. Клиентская часть приложений разрабатывается с использованием средств SQL Server, серверная часть - с помощью Microsoft SQL Server.

СУБД SQL Server позволяет производить обмен данными между компонентами системы и другими приложениями Windows, поддерживается экспорт и импорт данных из текстовых файлов и электронных таблиц. При коллективном использовании СУБД SQL Server дает возможность защитить информацию так, что разные пользователи имеют разные права по просмотру или изменению информации: при этом предусмотрены средства обеспечения целостности данных.

Модули, в отличие от макросов, являются более тонким и мощным средством создания программных расширений в среде SQL Server, максимально приближающимся по своим функциональным возможностям к таким профессиональным инструментам, как Visual Studio 2008. Одновременно применение модулей требует от пользователя навыков и квалификации программиста, а также знания основных принципов объектно-ориентированного программирования.

Для программирования в SQL Server используется процедурный язык Visual Studio 2008 для приложений с добавлением объектных расширений и элементов SQL. Сам процесс создания программных расширений в среде SQL Server предполагает активное использование технологии объектно-ориентированного программирования (ООП). В основе ООП лежит идея «упакованной функциональности», в соответствии с которой программа строится из фундаментальных сущностей, называемых объектами. Каждый из объектов характеризуется набором свойств (англ, -property) и операций, которые он может выполнять (англ,- method). Реализация взаимодействий между объектами ложится на исполняющую среду того средства разработки, на котором пишется программа, и поэтому работа программиста в рамках технологии ООП сводится к созданию объектов, описанию их свойств и реакций на те иди иные внешние события.

Многие программные объекты в SQL Server совпадают с физическими объектами базы данных, такими как таблицы, формы, отчеты. Для названия составных объектов, которые включают в себя совокупность более простых объектов, используется термин семейство. Например, объект отчет входит в семейство отчеты. Помимо «видимых» объектов существует и большое количество «скрытых» объектов, управлять которыми можно только из программных приложений.

В SQL Server существуют два типа модулей: стандартные и модули класса. Стандартные модули содержат процедуры и функции, которые могут быть вызваны из любого окна базы данных. Как правило, такие модули содержат программный код универсального характера, предназначенный для применения в различных местах текущего приложения или даже в различных приложениях.

Модули класса используются, для создания новых классов объектов.

При создании конкретного объекта, являющегося экземпляром такого класса, любые процедуры, определенные в модуле, становятся свойствами и методами этого объекта.

Модули форм и модули отчетов являются модулями класса, связанными с определенной формой или отчетом. Заметим, что в ранних версиях SQL Server они являлись единственно возможным инструментом объектно-ориентированного программирования. Эти модули содержат процедуры обработки событий, запускаемых в ответ на их возникновение в форме или отчете. Процедуры обработки событий используются для управления поведением формы или отчета и их откликом на события, например такие, как нажатие кнопки.

Важнейшей областью применения объектно-ориентированного программирования в SQL Server является программирование доступа к данным.

При создании информационной системы я использовал язык С# (произносится "си-шарп"), который является одной из самых последних разработок компании Microsoft. Язык С# -- это не просто еще один язык программирования, но является одним из важнейших компонентов новой платформы Microsoft .NET Framework. Язык C# взял от других языков все самое лучшее, что накопилось в них, а также использует при этом новейшие разработки в области программирования. Создателем языка является сотрудник Microsoft Андреас Хейлсберг. Он стал известным в мире программистов задолго до того, как пришел в Microsoft. Хейлсберг входил в число ведущих разработчиков одной из самых популярных сред разработки - Delphi. В Microsoft он участвовал в создании версии Java - J++, так что опыта в написании языков и сред программирования ему не занимать. Как отмечал сам Андереас Хейлсберг, С# создавался как язык компонентного программирования, и в этом одного из главных достоинства языка, направленное на возможность повторного использования созданных компонентов. Из других объективных факторов отметим следующие:

- C# создавался параллельно с каркасом с каркасом Framework .Net и в полной мере учитывает все его возможности - как FCL, так и CLR;

- C# является полностью объектно-ориентированным языком, где даже типы, встроенные в язык, представлены классами;

- C# является мощным объектным языком с возможностями наследования и универсализации;

- C# является наследником языков С/С++, сохраняя лучшие черты этих популярных языков программирования. Общий с этими языками синтаксис, знакомые операторы языка облегчают переход программистов от С++ к C#;

- сохранив основные черты своего великого родителя, язык стал проще и надежнее. Простота и надежность, главным образом, связаны с тем, что на C# хотя и допускаются, но не поощряются такие опасные свойства С++ как указатели, адресация, разыменование, адресная арифметика;

- благодаря каркасу Framework.Net, ставшему надстройкой над операционной системой, программисты C# получают те же преимущества работы с виртуальной машиной, что и программисты Java. Эффективность кода даже повышается, поскольку исполнительная среда CLR представляет собой компилятор промежуточного языка, в то время как виртуальная Java-машина является интерпретатором байт-кода;

- мощная библиотека каркаса поддерживает удобство построения различных типов приложений на C#, позволяя легко строить Web-службы, другие виды компонентов, достаточно просто сохранять и получать информацию из базы данных других хранилищ данных;

- реализация, сочетающая построение надежного и эффективного кода, является немаловажным фактором, способствующим успеху C#.

Особенности С#:

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

- Полный и хорошо определенный набор основных типов.

- Встроенная поддержка автоматической генерации XML-документации.

- Автоматическое освобождение динамически распределенной памяти.

- Возможность отметки классов и методов атрибутами, определяемыми пользователем. Это может быть полезно при документировании и способно воздействовать на процесс компиляции (например, можно пометить методы, которые должны компилироваться только в отладочном режиме).

- Полный доступ к библиотеке базовых классов .NET, а также легкий доступ к Windows API (если это действительно необходимо).

- Указатели и прямой доступ к памяти, если они необходимы. Однако язык разработан таким образом, что практически во всех случаях можно обойтись и без этого.

- Поддержка свойств и событий в стиле VB.

- Простое изменение ключей компиляции. Позволяет получать исполняемые файлы или библиотеки компонентов .NET, которые могут быть вызваны другим кодом так же, как элементы управления ActiveX (компоненты СОМ).

- Возможность использования С# для написания динамических web-страниц ASP.NET.

Одной из областей, для которых не предназначен этот язык, являются критичные по времени и высокопроизводительные программы.

Поэтому для разработки данной программы был выбран язык С#.

1.4 Обоснование и выбор инструментария разработки СУБД и форм

Важнейшие характеристики данной СУБД - это:

Простота администрирования.

возможность подключения к Web.

Быстродействие и функциональные возможности механизма сервера СУБД.

Наличие средств удаленного доступа.

В комплект средств административного управления данной СУБД входит целый набор специальных мастеров и средств автоматической настройки параметров конфигурации. Также данная БД оснащена замечательными средствами тиражирования, позволяющими синхронизировать данные ПК с информацией БД и наоборот. Входящий в комплект поставки сервер OLAP дает возможность сохранять и анализировать все имеющиеся у пользователя данные. В принципе данная СУБД представляет собой современную полнофункциональную база данных, которая идеально подходит для малых и средних организаций. Общемировой тенденцией в XXI веке стал практически повсеместный переход на платформу LINUX, а SQL Server функционирует только в среде Windows. Поэтому использование SQL Server целесообразно, по моему мнению, только если для доступа к содержимому БД используется исключительно стандарт ODBC.

1.5 Инфологическое моделирование предметной области

Инфологическое моделирование данных - это процесс создания логического представления структуры базы данных. Правильно сконструированная модель данных должна поддерживать все пользовательские представления данных. Моделирование данных является наиболее важной задачей при разработке эффективных приложений баз данных. Если база данных будет неверно отражать пользовательское представление данных, то пользователи найдут её приложения неудобными, неполными и не оправдывающими ожиданий. Инфологическое моделирование данных - основа для всей последующей работы по разработке базы данных и приложения по её ведению.

1. Информационный объект «Должности» - данный объект содержит информацию о всех должностях в базе данных:

- Код_должности;

- Наименование должности;

- Оклад;

- Обязанности;

- Требования;

2. Информационный объект «Жанры» - данный объект содержит информацию о жанрах фильмов, созданных в базе:

- Код жанра;

- Наименование жанра;

- Описание жанра.

3. Информационный объект «Места» - данный объект содержит информацию о свободных либо занятых местах:

- Код_сеанса;

- Номер сеанса;

- Номер ряда;

- Занятость;

- Код_сотрудника;

4. Информационный объект «Пароли» - данный объект содержит информацию о паролях, используемых при входе в систему:

- Код;

- Password;

- Login;

- Admin;

5. Информационный объект «Репертуар» - данный объект содержит информацию о репертуаре данного кинотеатра:

- Код_сеанса;

- Дата;

- Время начала;

- Время окончания;

- Цена билета.

6. Информационный объект «Сотрудники» - данный объект содержит информацию о сотрудниках, которые работают в данном кинотеатре:

- Код_сотрудника;

- ФИО;

- Возраст;

- Пол;

- Адрес;

- Телефон;

- Паспортные данные;

- Код должности.

7. Информационный объект «Фильмы» - данный объект содержит информацию о фильмах, которые в данное время стоят в прокате кинотеатра:

- Код_фильма;

- Наименование фильма;

- Код жанра;

- Длительность;

- Фирма производитель;

- Страна производитель;

- Актеры;

- Возрастные ограничения;

- Описание фильма.

8. Информационный объект «Отдел кадров» - данный объект содержит информацию о всех сотрудниках, их должностях, требованиях и обязанностях:

- Код сотрудника;

- ФИО

- Возраст

- Пол

- Адрес

- Телефон

- Паспортные данные

- Наименование должности

- Оклад

- Обязанности

- Требования

9. Информационный объект «Свободные места» - данный объект содержит информацию о свободных местах, времени начала и окончания сеанса:

- Код сеанса;

- Время начала;

- Время окончания;

- Номер ряда;

- Номер места;

- Дата;

- Цена билетов;

10. Информационный объект «Список фильмов» - данный объект содержит информацию о фильме и жанре:

- Код_фильма;

- Наименование фильма;

- Длительность;

- Наименование жанра;

- Описание жанра;

- Фирма производитель;

- Страна производитель;

- Актеры;

- Возрастные ограничения;

- Описание фильма.

1.6 Датологическое проектирование

После того, как выбор СУБД и других инструментальных средств разработки базы, данных и программного обеспечения для её ведения завершён, необходимо приступить к проектированию датологической модели базы данных (БД). При формировании датологической схемы, каждая из определённых в инфологической модели сущностей отображается в таблицу (отношение), кроме того, в отношения могут быть преобразованы различные информационные отношения между сущностями.

После определения информационных объектов предметной области и их свойств необходимо ответить на ряд вопросов.

На какие таблицы можно разбить данные, подлежащие хранению в БД?

Какое имя можно присвоить каждой таблице?

Однако этап логического или датологического проектирования не заканчивается проектирование схемы отношений. В общем случае в результате выполнения этого этапа должны быть получены следующие результирующие документы:

- описание концептуальной схемы БД в терминах выбранной СУБД;

- описание внешних моделей в терминах выбранной СУБД;

- разработка процедур поддержки семантической целостности БД.

Рассмотрим методику построения корректной схемы БД, ориентируясь на реляционную модель данных. Корректной называют схему БД, в которой отсутствуют нежелательные зависимости между атрибутами отношений.

Проектирование схемы БД может быть выполнено двумя путями.

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

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

В рамках выполнения настоящем курсовом проекте создаются следующие таблицы (таблицы уже нормализованы).

В таблице «Должности» хранится информация о должностях базы данных, её структура приведена в таблице 1.

Таблица 1 - Должности.

Название поля

Тип данных

Пример

Код должности

bigint

1

Наименование должности

nvarchar(50)

Директор

Оклад

nvarchar(10)

25 000 руб

Обязанности

nvarchar(50)

Ведение документации

Требования

nvarchar(50)

Знание 1С

В таблице «Жанры» отображены все жанры фильмов. Её структура отображена в таблице 2.

Таблица2 - Жанры

Название поля

Тип данных

Пример

Код жанра

bigint

1

Название жанра

nvarchar(40)

Ужасы

Описание жанра

nvarchar(100)

Захватывающий фильм

В таблице «Места» отображаются все занятые и свободные места. Структура приведена в таблице 3.

Таблица 3 - Места

Название поля

Тип данных

Пример

Код сеанса

bigint

1

Номер места

tinyint

1

Номер ряда

tinyint

1

Занятость

bit

1

Код сотрудника

bigint

1

В таблице «Пароли» хранится информация о паролях для доступа к базе данных. Структура таблицы отображена в таблице 4.

Таблица 4 - Пароли

Название поля

Тип данных

Пример

Код

bigint

1

Password

nvarchar(30)

12345

Login

nvarchar(30)

Student

Admin

nvarchar(30)

Admin

В таблице «Репертуар» хранится информация времени начала и окончания сеансов. Её структура приведена в таблице 5.

Таблица 5 - Репертуар

Название поля

Тип данных

Пример

Код сеанса

bigint

1

Дата

nchar(10)

25,09,2014

Время начала

nchar(10)

11.00

Время окончания

nchar(10)

13.00

Цена билета

Money

250 руб

В таблице «Сотрудники» отображены все сотрудники, которые работают в данном кинотеатре. Её структура отображена в таблице 6.

Таблица 6 - Сотрудники

Название поля

Тип данных

Пример

Код сотрудника

bigint

1

ФИО

nvarchar(50)

Иванов Иван Иванович

Возраст

tinyint

25

Пол

nvarchar(50)

м

Адрес

nvarchar(50)

Относово. Луговая д. 3

Телефон

nvarchar(50)

8 800 200 06 00

Паспортные данные

nvarchar(50)

6604 562352

Код должности

bigint

1

В таблице «Фильмы» хранитсяинформация всех фильмах в прокате кинотеатра. Её структура отображена в таблице 7.

Таблица 7 - Фильмы

Название поля

Тип данных

Пример

Код фильма

bigint

1

Наименование фильма

nvarchar(50)

Стражи галактики

Код жанра

bigint

Фантастика

Длительность фильма

tinyint

120

Фирма производитель

nvarchar(50)

WornerBrothers

Актеры

nvarchar(50)

София Буш

Возрастные ограничения

nvarchar(50)

16+

Описание фильма

Nvarchar(100)

Фантастическая история

Вид датологической схемы базы данных представлен на рисунке 1.6.1

Рисунок 1.6.1 - датологическая схема базы данных

2. Экспериментальный раздел

2.1 Создание базы данных, заполнение таблиц данными

Этапы проектирования базы данных отчетной документации студентов СПО: Создаём базу данных с названием BD_Rabota.mdf с помощью инструментария VisualStudio 2008. В данной базе данных создаём следующие таблицы: Пароли, Должности, Жанры, Занятость, Репертуар, Сотрудники, фильмы, представленные на рисунке 2.1.1 - 2.1.7.

Рисунок 2.1.1 - Таблица Пароли

Рисунок 2.1.2 - Таблица Должности

Рисунок 2.1.3 - Таблица Жанры

Рисунок 2.1.4 - Таблица Занятость мест

Рисунок 2.1.5 - Таблица Репертуар

Рисунок 2.1.6 - Таблица Сотрудники

Рисунок 2.1.7 - Таблица Фильмы

2.2 Создание запросов и фильтров

Запрос «Отдел кадров» связывает таблицы: Должности и Сотрудники по полю «Код должности».

Рисунок 2.2.1 - Схема запроса «Отдел кадров».

Запрос «Свободные места» связывает таблицы: Репертуар и Места по полю «Код сеанса».

Рисунок 2.2.2 - Схема запроса «Свободные места».

Запрос «Список фильмов» связывает таблицы: Фильмы и Жанры по полю «Код жанра».

Рисунок 2.2.3 - Схема запроса «Список фильмов».

2.3 Создание форм

Форма default.aspx, главная страница сайта

Рисунок 2.3.1 - Форма default.aspx.

Панель Администратора

Рисунок 2.3.2 - Панель Администратора.

Панель Пользователя

Рисунок 2.3.3 - Панель пользователя.

Панель администратора, форма Должности.aspx, показывает все должности кинотеатра.

Рисунок 2.3.4 - Форма Должности.aspx

Панель администратора, форма Жанры.aspx, показывает все жанры фильмов кинотеатра.

Рисунок 2.3.5 - Форма Жанры.aspx

Панель администратора, Занятость.aspx, показывает какие места в кинотеатре заняты и какие свободны.

Рисунок 2.3.6 - Занятость.aspx

Панель администратора, форма Репертуар.aspx, показывает время начала и время окончания сеансов.

Рисунок 2.3.7 - Форма Репертуар.aspx

Панель администратора, форма Сотрудники.aspx, показывает общую информацию о всех сотрудниках.

Рисунок 2.3.8 - Форма Сотрудники.aspx

Панель администратора, форма Фильмы.aspx, показывает какие фильмы показываю в прокате кинотеатр в данное время.

Рисунок 2.3.9 - Форма Фильмы.aspx

Панель администратора, форма Отдел_кадров.aspx, показывает общую информацию о сотруднике и о занимаемой им должности.

Рисунок 2.3.10 - Форма Отдел_кадров.aspx

Панель Пользователя, форма Свободные_места.aspx, показывает пользователю только свободные места на данный сеанс.

Рисунок 2.3.11 - Форма Свободные_места.aspx

Панель Пользователя, форма Список_фильмов.aspx, показывает пользователю всю информацию о фильмах, показываемых в прокате кинотеатра.

Рисунок 2.3.12 - Форма Список_фильмов.aspx

2.4 Обеспечение безопасности доступа к данным

Большинство веб-приложений ASP.NET тем или иным образом используют доступ к данным. Многие приложения аккумулируют данные в базе данных или файле, а хранимые данные часто основаны на сведениях, предоставленных пользователями. Поскольку исходные данные могут поступать из ненадежных источников, а информация хранится длительное время и необходимо быть уверенным в том, что неавторизованные пользователи не смогут получить непосредственный доступ к данным, требуется уделить особое внимание проблеме безопасности доступа к данным. В этом разделе приводятся рекомендации, которые помогут повысить безопасность доступа к данным в веб-приложении ASP.NET.

Предлагаемые рекомендации в отношении конфигурации и кодирования помогут повысить безопасность приложений. Но не менее важно на постоянной основе следить за тем, чтобы на веб-сервере были установлены последние обновления для системы безопасности Microsoft Windows и служб IIS, а также обновления для системы безопасности Microsoft SQL Server или другого программного обеспечения, обеспечивающего доступ к источникам данных.

2.5 Правила и порядок работы с базой данных

После создания базы данных и форм для работы с базой данных, администратору необходимо осуществить первичную настройку системы.

Администратор заполняет таблицы:

- фильмы проката кинотеатра;

- сотрудники данного кинотеатра;

- жанры фильмов данного кинотеатра;

- должности;

- репертуар;

- занятость мест;

После того как администратор создал все необходимое система готова к работе.

Заключение

Целью исследования настоящего курсового проекта явилась разработка автоматизированного рабочего места администратора кинотеатра «Мир».

В данном курсовом проекте были решены основные задачи исследования:

-выполнен системный анализ предметной области и деятельности объекта автоматизации;

-разработана инфологическая модель предметной области;

-сформирована датологическая модель базы данных с учётом выбранной СУБД и созданной инфологической модели;

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

На этапе проектирования программного обеспечения АРМ были разработаны подсистемы АРМ. В пояснительной записке курсового проекта описаны основные функциональные возможности модулей разработанной программы. Построена схема физической структуры приложения, в рамках которой изложено об изменениях в деятельности администратора кинотеатра с внедрением разработанной АРМ.

Функциональные подсистемы АРМ представлены взаимосвязанной совокупностью информационных процессов, отражающих логику обработки информации и внутренние информационные потоки информационной системы АРМ администратора На этапе датологического проектирования были определены основные таблицы АРМ и их структура. Обозначены связи между созданными таблицами. Сайт работает по технологии «клиент-сервер», что позволяет охватить большое количество пользователей и добиться необходимого уровня оптимизации.

ЛИТЕРАТУРА

1.Бишоп Дж.C# в кратком изложении.- М.: БИНОМ, 2005.

2.Вилдермьюс Ш.Практическое использование ADO.NET. ДоступкданнымвInternet. Учебный курс.- М.: Издательский дом «Вильяме», 2003.

3.Морган С. Разработка распределенных приложений на платформе Microsoft .NetFramework: Учебный курс Microsoft. - СПб.:Питер, 2008.

4.Шилдт Г. C#: учебный курс. - СПб.:Питер, 2003.

ПРИЛОЖЕНИЕ

Страница входа пользователя в систему:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

using System.Data.SqlClient;

namespace Целичин

{

public partial class Pass : System.Web.UI.Page

{

private SqlConnection www = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Кинотеатр.mdf;Integrated Security=True;User Instance=True");

protected void Button1_Click(object sender, EventArgs e)

{

SqlCommand Команда = new SqlCommand();

Команда.Connection = www;

Команда.CommandType = CommandType.Text;

Команда.CommandText = "Select * from Пароли ";

try

{

www.Open();

SqlDataReader dr = Команда.ExecuteReader();

while (dr.Read())

{

if (dr[2].ToString() == TextBox1.Text && dr[1].ToString() == TextBox2.Text)

{

if (dr[3].ToString() == "Yes")

{

Button2.Visible = true;

Button3.Visible = true;

}

else

{

Button3.Visible = true;

Button2.Visible = false;

}

}

}

Главнаястраница:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

namespace Целичин

{

public partial class _Default : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

if (Request.UrlReferrer == null)

{

Response.Redirect("Pass.aspx");

return;

}

}

}

СтраницаДолжности:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

using System.Data.SqlClient;

namespace Целичин

{

public partial class Должности : System.Web.UI.Page

{

private SqlConnection www = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Кинотеатр.mdf;Integrated Security=True;User Instance=True");

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

if (Request.UrlReferrer == null)

{

Response.Redirect("Pass.aspx");

return;

}

}

}

protected void Button2_Click(object sender, EventArgs e)

{

SqlCommand SaveDocCommand = new SqlCommand();

SaveDocCommand.Connection = www;

SaveDocCommand.CommandText = "INSERT INTO Должности ( [Наименование должности], Оклад, Обязанности, Требования) VALUES ( @nd,@okl,@ob,@tr) ";

SqlParameter ndParameter = new SqlParameter("@nd", SqlDbType.VarChar);

SqlParameter oklParameter = new SqlParameter("@okl", SqlDbType.Money);

SqlParameter obParameter = new SqlParameter("@ob", SqlDbType.VarChar);

SqlParameter trParameter = new SqlParameter("@tr", SqlDbType.VarChar);

SaveDocCommand.Parameters.Add(ndParameter);

SaveDocCommand.Parameters.Add(oklParameter);

SaveDocCommand.Parameters.Add(obParameter);

SaveDocCommand.Parameters.Add(trParameter);

ndParameter.Value = TextBox1.Text;

oklParameter.Value = DropDownList1.Text;

obParameter.Value = TextBox2.Text;

trParameter.Value = TextBox3.Text;

try

{

SaveDocCommand.Connection.Open();

SaveDocCommand.ExecuteNonQuery();

Response.Write(@"<script>alert(""Выполнено"");</script>");

}

catch (Exception ex)

{

Response.Write(@"<script>alert(""Невыполнено"");</script>");

}

}

СтраницаЖанры:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

using System.Data.SqlClient;

namespace Целичин

{

public partial class Жанры : System.Web.UI.Page

{

private SqlConnection www = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Кинотеатр.mdf;Integrated Security=True;User Instance=True");

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

if (Request.UrlReferrer == null)

{

Response.Redirect("Pass.aspx");

return;

}

}

}

protected void Button2_Click(object sender, EventArgs e)

{

SqlCommand SaveDocCommand = new SqlCommand();

SaveDocCommand.Connection = www;

SaveDocCommand.CommandText = "INSERT INTO Жанры ([Наименованиежанра],[Описаниежанра]) VALUES (@ng, @og) ";

SqlParameter ngParameter = new SqlParameter("@ng", SqlDbType.VarChar);

SqlParameter ogParameter = new SqlParameter("@og", SqlDbType.VarChar);

SaveDocCommand.Parameters.Add(ngParameter);

SaveDocCommand.Parameters.Add(ogParameter);

ngParameter.Value = TextBox1.Text;

ogParameter.Value = TextBox2.Text;

try

{

SaveDocCommand.Connection.Open();

SaveDocCommand.ExecuteNonQuery();

Response.Write(@"<script>alert(""Выполнено"");</script>");

}

catch (Exception ex)

{

Response.Write(@"<script>alert(""Невыполнено"");</script>");

}

}

}

Страница Занятость мест:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

using System.Data.SqlClient;

namespace Целичин

{

public partial class Занятость_мест : System.Web.UI.Page

{

private SqlConnection www = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Кинотеатр.mdf;Integrated Security=True;User Instance=True");

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

if (Request.UrlReferrer == null)

{

Response.Redirect("Pass.aspx");

return;

}

}

}

protected void Button2_Click(object sender, EventArgs e)

{

SqlCommand SaveDocCommand = new SqlCommand();

SaveDocCommand.Connection = www;

SaveDocCommand.CommandText = "INSERT INTO Места ([Номерместа],[Номерряда], Занятость, [Кодсотрудника]) VALUES (@nm, @nr,@z,@ks) ";

SqlParameter nmParameter = new SqlParameter("@nm", SqlDbType.TinyInt);

SqlParameter nrParameter = new SqlParameter("@nr", SqlDbType.TinyInt);

SqlParameter zParameter = new SqlParameter("@z", SqlDbType.Bit);

SqlParameter ksParameter = new SqlParameter("@ks", SqlDbType.BigInt);

SaveDocCommand.Parameters.Add(nmParameter);

SaveDocCommand.Parameters.Add(nrParameter);

SaveDocCommand.Parameters.Add(zParameter);

SaveDocCommand.Parameters.Add(ksParameter);

nmParameter.Value = TextBox1.Text;

nrParameter.Value = TextBox2.Text;

zParameter.Value = CheckBox1.Checked;

ksParameter.Value = DropDownList1.Text;

try

{

SaveDocCommand.Connection.Open();

SaveDocCommand.ExecuteNonQuery();

Response.Write(@"<script>alert(""Выполнено"");</script>");

}

catch (Exception ex)

{

Response.Write(@"<script>alert(""Невыполнено"");</script>");

}

}

}

Страница Отдел кадров:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

namespace Целичин

{

public partial class Отдел_кадров : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

if (Request.UrlReferrer == null)

{

Response.Redirect("Pass.aspx");

return;

}

}

}

}

Страница Главная_Пользователь:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

namespace Целичин

{

public partial class Пользователь_главная : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

if (Request.UrlReferrer == null)

{

Response.Redirect("Pass.aspx");

return;

}

}

СтраницаРепертуар:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

using System.Data.SqlClient;

namespace Целичин

{

public partial class Репертуар : System.Web.UI.Page

{

private SqlConnection www = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Кинотеатр.mdf;Integrated Security=True;User Instance=True");

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

if (Request.UrlReferrer == null)

{

Response.Redirect("Pass.aspx");

return;

}

}

}

protected void Button1_Click(object sender, EventArgs e)

{

SqlCommand SaveDocCommand = new SqlCommand();

SaveDocCommand.Connection = www;

SaveDocCommand.CommandText = "INSERT INTO Репертуар (Дата,[Времяначала],[Времяокончания],[Ценабилета]) VALUES (@d, @vn,@vo,@cb) ";

SqlParameter dParameter = new SqlParameter("@d", SqlDbType.NChar);

SqlParameter vnParameter = new SqlParameter("@vn", SqlDbType.NChar);

SqlParameter voParameter = new SqlParameter("@vo", SqlDbType.NChar);

SqlParameter cbParameter = new SqlParameter("@cb", SqlDbType.NChar);

SaveDocCommand.Parameters.Add(dParameter);

SaveDocCommand.Parameters.Add(vnParameter);

SaveDocCommand.Parameters.Add(voParameter);

SaveDocCommand.Parameters.Add(cbParameter);

dParameter.Value = TextBox1.Text;

vnParameter.Value = TextBox2.Text;

voParameter.Value = TextBox3.Text;

cbParameter.Value = TextBox4.Text;

try

{

SaveDocCommand.Connection.Open();

SaveDocCommand.ExecuteNonQuery();

Response.Write(@"<script>alert(""Выполнено"");</script>");

}

catch (Exception ex)

{

Response.Write(@"<script>alert(""Невыполнено"");</script>");

}

}

}

Страница Репертуар Пользователя:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

namespace Целичин

{

public partial class репертуар_пользователь : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

if (Request.UrlReferrer == null)

{

Response.Redirect("Pass.aspx");

return;

}

}

}

}

СтраницаСотрудники:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

using System.Data.SqlClient;

namespace Целичин

{

public partial class Сотрудники : System.Web.UI.Page

{

private SqlConnection www = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Кинотеатр.mdf;Integrated Security=True;User Instance=True");

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

if (Request.UrlReferrer == null)

{

Response.Redirect("Pass.aspx");

return;

}

}

}

protected void Button2_Click(object sender, EventArgs e)

{

SqlCommand SaveDocCommand = new SqlCommand();

SaveDocCommand.Connection = www;

SaveDocCommand.CommandText = "INSERT INTO Сотрудники (ФИО, Возраст, Пол, Адрес, Телефон,[Паспортныеданные],[Коддолжности]) VALUES (@f, @v,@p,@a,@t,@pd,@kd) ";

SqlParameter fParameter = new SqlParameter("@f", SqlDbType.VarChar);

SqlParameter vParameter = new SqlParameter("@v", SqlDbType.TinyInt);

SqlParameter pParameter = new SqlParameter("@p", SqlDbType.VarChar);

SqlParameter aParameter = new SqlParameter("@a", SqlDbType.VarChar);

SqlParameter tParameter = new SqlParameter("@t", SqlDbType.VarChar);

SqlParameter pdParameter = new SqlParameter("@pd", SqlDbType.VarChar);

SqlParameter kdParameter = new SqlParameter("@kd", SqlDbType.VarChar);

SaveDocCommand.Parameters.Add(fParameter);

SaveDocCommand.Parameters.Add(vParameter);

SaveDocCommand.Parameters.Add(pParameter);

SaveDocCommand.Parameters.Add(aParameter);

SaveDocCommand.Parameters.Add(tParameter);

SaveDocCommand.Parameters.Add(pdParameter);

SaveDocCommand.Parameters.Add(kdParameter);

fParameter.Value = TextBox1.Text;

vParameter.Value = DropDownList1.Text;

pParameter.Value = DropDownList2.Text;

aParameter.Value = TextBox2.Text;

tParameter.Value = TextBox3.Text;

pdParameter.Value = TextBox4.Text;

kdParameter.Value = TextBox5.Text;

try

{

SaveDocCommand.Connection.Open();

SaveDocCommand.ExecuteNonQuery();

Response.Write(@"<script>alert(""Выполнено"");</script>");

}

catch (Exception ex)

{

Response.Write(@"<script>alert(""Невыполнено"");</script>");

}

}

}

}

Страница Список фильмов:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

namespace Целичин

{

public partial class Список_фильмов : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

if (Request.UrlReferrer == null)

{

Response.Redirect("Pass.aspx");

return;

}

}

}

}

}

СтраницаФильмы:

using System;

using System.Collections;

using System.Configuration;

using System.Data;

using System.Linq;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Xml.Linq;

using System.Data.SqlClient;

namespace Целичин

{

public partial class Фильмы : System.Web.UI.Page

{

private SqlConnection www = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Кинотеатр.mdf;Integrated Security=True;User Instance=True");

protected void Page_Load(object sender, EventArgs e)

{

if (!IsPostBack)

{

if (Request.UrlReferrer == null)

{

Response.Redirect("Pass.aspx");

return;

}

}

}

Запрос «Отдел кадров» связывает таблицы: Должности и Сотрудники по полю «Код должности».

SELECT dbo.Сотрудники.[Код сотрудника], dbo.Сотрудники.ФИО, dbo.Сотрудники.Возраст,dbo.Сотрудники.Пол,dbo.Сотрудники.Адрес, dbo.Сотрудники.Телефон,dbo.Сотрудники.[Паспортныеданные], dbo.Должности.[Наименование должности], dbo.Должности.Оклад, dbo.Должности.Обязанности,dbo.Должности.ТребованияFROMdbo.Должности INNER JOINdbo.Сотрудники ON dbo.Должности.[Код должности] = dbo.Сотрудники.[Код должности]

Запрос Свободные места связывает таблицы: Репертуар и Места по полю «Код сеанса».

SELECT dbo.Репертуар.[Код сеанса], dbo.Репертуар.[Время начала], dbo.Репертуар.[Время окончания], dbo.Места.[Номер ряда], dbo.Места.[Номер места], dbo.Репертуар.Дата, dbo.Репертуар.[Цена билета]

FROM dbo.Места INNER JOINdbo.Репертуар ON dbo.Места.[Код сеанса] = dbo.Репертуар.[Код сеанса]

WHERE (dbo.Места.Занятость = 1)

Запрос Список фильмов связывает таблицы: Фильмы и Жанры по полю «Код жанра».

SELECT dbo.Фильмы.[Код фильма], dbo.Фильмы.[Наименование фильма], dbo.Фильмы.Длительность, dbo.Фильмы.[Фирма производитель],

dbo.Фильмы.[Страна производитель],dbo.Фильмы.Актёры, dbo.Фильмы.[Возрастные ограничения], dbo.Фильмы.[Описание фильма],

dbo.Жанры.[Наименование жанра], dbo.Жанры.[Описание жанра]

FROM dbo.Жанры INNER JOINdbo.Фильмы ON dbo.Жанры.[Код жанра] = dbo.Фильмы.[Код жанра]

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.