Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Организационно-экономическая характеристика предприятия

Содержание:

Введение

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

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

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

Темой данного курсового проекта является разработка программы реализации билетов через розничные кассы кинотеатра Для реализации данной задачи была выбрана среда разработки Delphi XE8.

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

Целью работы является разработка информационной системы кинотеатра.

Тема является актуальной для рассматриваемого предприятия, поскольку эти процессы на предприятии до сих пор не автоматизированы.

Для достижения поставленной цели необходимо решить следующие задачи:

  • Рассмотреть структуру организации;
  • Дать общее описание проектируемой системы;
  • Провести рассмотрение аналогов и обосновать необходимость разработки собственной системы;
  • Провести концептуальное проектирование системы;
  • Провести анализ бизнес-процессов на предприятии.
  • Разработать структуру базы данных и логическую схему;
  • Провести физическую реализацию базы данных;
  • Обосновать выбор средств разработки и проектирования;
  • Провести разработку программного средства и связывание его с базой данных.

1. Аналитическая часть

1.1. Организационно-экономическая характеристика предприятия

Открытое акционерное общество «Кинотеатр «АВРОРА» создано в соответствии с Федеральным законом «Об акционерных обществах», Гражданским кодексом РФ и иным действующим законодательством в результате преобразования Общества с ограниченной ответственностью «Кинотеатр «АВРОРА».

Юридический и фактический адрес предприятия:

Целями деятельности Общества являются как извлечение прибыли, так и расширение рынка кинопродукции.

Основными видами деятельности ОАО «Кинотеатр «АВРОРА» являются:

  • прокат и демонстрация кинопродукции, включая художественные и документальные ленты, а также мультипликацию;
  • торгово-закупочная деятельность;
  • организация отдыха, досуга, а также общественного питания;
  • проведение культурных мероприятий, выставок, и т.д.;
  • сдача в аренду имущества и нежилых помещений;
  • другие работы, не запрещенные законодательством РФ.

Весь комплекс деловой активности проводится согласно действующему законодательству РФ.

На данный момент кинотеатр располагает малым и большим залами, вместимостью 676 и 100 человек, соответственно. Малый зал предприятия организован в стиле кино-кафе.

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

Эффективность функционирования кинотеатра напрямую связана с его организационной структурой, подбором персонала. Кадровый состав организации имеет сложную взаимосвязанную структуру. Системный анализ позволяет рассматривать персонал как взаимосвязь структур, выделенных по различным признакам [18].

Организационная структура управления ОАО «Кинотеатр «АВРОРА» представлена на рисунке 1.

Общее собрание акционеров

Ревизионная комиссия

Совет директоров

Генеральный директор

Главный бухгалтер

Менеджер по рекламе

Заместитель директора, главный инженер

Служба охраны

Старший администратор

Старший кассир

Старший механик

Рис. 2.1. Организационная структура управления ОАО «Кинотеатр «АВРОРА»

Управление ОАО «Кинотеатр «АВРОРА» осуществляется в порядке, предусмотренном действующим законодательством Российской Федерации и Уставом.

В соответствии с Уставом органами управления ОАО «Кинотеатр «АВРОРА» являются:

  • общее собрание акционеров;
  • совет директоров;
  • единоличный исполнительный орган (генеральный директор).

Органом контроля за финансово-хозяйственной деятельностью общества является ревизионная комиссия.

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

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

1.2. Описание проектируемой системы

Опишем проектируемую систему и ее основные функции.

Основным назначением системы является бронирование билетов на сеансы в кинотеатр.

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

  • Информация о фильмах;
  • Информация о сеансах;
  • Информация о местах в зале (карта зала);
  • Информация о ценах на сеансы;
  • Информация о зонировании зала (обычные места, вип места и т.д.) и соответствующих наценках.
  • Информация о забронированных местах.

Технология работы с системой следующая.

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

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

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

Система должна обеспечивать визуальное отображение карты зала с указанием занятых и свободных мест.

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

1.3. Обзор аналогов

1.3.1 Информационная система Cinema Ticket

Основным элементом, обеспечивающим взаимодействия зритель – кинотеатр выступает касса. Именно с нее, а не с вешалки начинается контакт посетителя с заведением. Билетная касса, реализует возможность зрителю провести время в современном кинотеатре. Прочие атрибуты: трехмерное, изображение с высоким разрешением, объемный звук комфортные, удобные по высоте сидения, - также важны, но первоначальное впечатление о сервисе создает касса. Помогает ей в этом система Cinema Tiket™ by FXwds, предоставляющая простое и недорогое решение для автоматизации процессов продажи и учета билетов.

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

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

  • Централизация. Сеть кинотеатров управляется центром, единим головным сервером;
  • Уникальность. Система обеспечивает простоту управления, с минимальными требованиями: кассиру для работы достаточно иметь на компьютере обычный интернет браузер;
  • Надежность. Базовой платформой системы автоматизации билетных операций выступает одна их открытых платформ Linux/FreeBSD. Их надежность существенно превосходит другие, существующие ОС, благодаря чему исключаются программные сбои. Обслуживание отличается простотой и гибкостью.

Функционал Cinema Tiket™ включает: мониторинг залов, управление сеансами ведение ценовых схем. Система также полностью автоматизирует работу с билетами: бронирование, продажа и возврат производятся как на месте, так и онлайн. В функции комплекса входит формирование отчетности. Добиться дополнительного привлечения зрителей позволяет опция показа трейлеров к фильмам на экране посетителя. Непосредственно печать билетов осуществляется на бланках, посредством специализированного оборудования: лазерных или струйных а также специализированных термических принтерах. Они могу быть перенастроены, исходя из пожеланий клиента, чтобы обеспечить его билетами выбранного размера и формата.

Автоматизированная система решает одновременно две задачи, максимально упрощая работу сотрудников кинотеатра и обеспечивая зрителя высоким качеством обслуживания.

Что дает использование комплекса Cinema Tiket ™

Прочная основа информационной системы кинотеатра

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

Точный и достоверный учет результатов проката кинофильмов

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

Программный продукт поддерживает различные режимы работы: автономный и онлайн, в составе сети кинотеатров.

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

Проверенное временем надежное аппаратно-программное решение

Основу программного продукта составляют проверенные разработки, надежно зарекомендовавшие себя в процессе длительной эксплуатации. Среди них операционные платформы Linux, FreeBSD, системы БД MySQL и прочие, языки веб программирования и скриптов PHP, Java, а также браузер Firefox. Напротив, комплекс избегает применения громоздких программных решений, предлагаемых продуктами от Microsoft: Windows, Access и прочими, включая 1C.

Структура комплекса Cinema Tiket™

Стандарт автоматизированной системы для кинотеатра включает в себя сервер, и локальные рабочие места: администраторов, кассиров. Этот комплекс объединен локальной сетью. Каждое рабочее место оснащено компьютером и лазерным/струйным принтером. База данных кинотеатра расположена непосредственно на сервере и взаимодействует с кассирами посредством клиентских приложений. Гибкость системы заключается в отсутствии ограничений на число рабочих мест, что обеспечивает работе сети кинотеатров. В этом случае информационный обмен реализуется через глобальную сеть Интернет.

Для небольших предприятий кинопроката система Cinema Tiket™ может быть минимизирована под оптимизацию трудовых затрат, включая только единственный компьютер, одновременно исполняющий роль сервера и рабочего места кассира.

Гибкая система перестройки комплекса под размер компанииЮ снижает до минимума финансовые затраты. Кроме того установка программного продукта не требует приобретения дополнительного дорогостоящего оборудования. Система является экономически выгодной альтернативой аналогичным громоздким комплексам.

Корректное функционирование системы требует установки Интернет браузер Mozilla Firefox последней версии.

1.3.2. Система «Домино»

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

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

Система автоматизации ДОМИНО 8: Кинотеатр разработана под оптимизацию управления предприятиями кинопроката соответственно формату структуры. Она позволяет:

Перевести ведение учетной документации кинотеатра в единое информационное пространство. Это приносит ряд дивидендов в виде сокращение издержек, повышения «прозрачности» бизнеса, а также возможности гибкого менеджмента. Управление структурой не зависит от ее формата и одинаково эффективно как для одиночного кинотеатра, так и для сетевого комплекса;

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

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

Активизировать работу вспомогательных структур предприятия: баров, кафе, организовать реализацию сувенирной продукции;

Контролировать безопасность кинотеатра и действия персонала;

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

1.3.3. АИС «Супербилет-Кино»

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

Внедрение АС "Супербилет-кино" направленно в первую очередь на привлечения зрителя благодаря повышению качества обслуживания на базе использования передовых технологий. Дополнительным результатом использования автоматизированной системы является рост имиджа кинотеатра.

Аппаратно-программная архитектура пакета подразумевает наличие трех типов рабочих мест АРМ: "Директор", "Администратор" и "Касса". Поскольку система построена по сетевому принципу, то должна присутствовать централизация. Роль головного офиса исполняет рабочее место директора (в единственном экземпляре), тогда как для кассиров и администраторов допускается несколько АРМ. Благодаря сетевой реализации все рабочие места находятся в едином информационном пространстве, обеспечивая ее оперативную передачу.

Гибкая система настройки "Супербилет-кино" под конкретный размер кинотеатра, позволяет подключить/отключить необходимое количество АРМ, а также кассовых аппаратов. Система допускает установку различных ценовых схем залов, поддерживает изменение дизайна билетов. По запросу заказчиков может быть подбирана индивидуальная схема комплектации, что обеспечивает минимизацию затрат на приобретение продукта.

АРМ "Администратор"

Место реализует масштабный перечень функций:

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

АРМ "Касса"

Место производит непосредственную реализацию билетов и выполняет все функции, связанные с этим:

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

АРМ "Директор"

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

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

1.4. Выбор средств разработки

1.4.1. Средства проектирования информационных систем

AllFusion ERwin Data Modeler (ранее ERwin) — CASE-средство, применяемое для разработки проектов и документирования информационных баз, создающее, документирующее и сопровождающее информационные базы, хранилища и витрины данных. При помощи моделей данных можно визуализировать структуру данных, обеспечивать эффективный процесс организации, управления и администрирования таких аспектов деятельности компании, как уровень сложности данных, технологий баз данных и среды развертывания.
AllFusion ERwin Data Modeler (ERwin) создавался для всех предприятий, которые занимаются разработкой и использованием информационных баз, для администраторов информационных баз, системных аналитиков, проектировщиков информационных баз, разработчиков, руководителей проектов. При помощи AllFusion ERwin Data Modeler можно осуществлять управление данными в процессе корпоративных изменений, а также в условиях быстро меняющихся технологий.

Данный программный продукт дает возможность наглядного отображения сложных структур данных. Удобная в использовании Графическая среда AllFusion ERwin Data Modeler удобна в применении, что упрощает разработку информационных баз и автоматизацию множества сложных задач, снижая сроки создания высококачественных и высокопроизводительных транзакционных информационных баз и хранилищ данных. Подобное решение позволяет улучшить коммуникацию предприятия, обеспечить совместную деятельность администраторов и разработчиков информационных баз, многократное применение модели, а также наглядно представить комплексные активы данных в формате, который удобен для понимания и обслуживания.

Компания Logic Works первой разработала программу BPwin. В название входит сокращение BP (англ. business process) и суффикс win, который отражает ориентацию на графические операционные системы.
Компания Logic Works в 1998 г. вошла в состав фирмы Platinum Technology, которая, в свою очередь, уже в 1999 г. стала приобретением Computer Associates.

Большой успех на рынке имела версия программы BPwin 4.0, выпущенная в конце XX начале XXI веков. Последней версии программного продукта дали название CA ERwin Process Modeler 7.3. Ее включает объединённый пакет CA ERwin Modeling Suite. В нашей стране по мере создания каждой версии выходят издания по работе
с программой и CASE-технологиям.

1.4.2. Средства проектирования и разработки АРМ для решения поставленной задачи

Перейдем к рассмотрению основных программных средств для программирования этого приложения.

Visual Basic – высокоуровневый язык, один из первых подобных языков. Его концепция основана на событийно-управляемом программировании, чей стиль хорошо согласован с GUI (библиотека графического интерфейса пользователя). Управление событиями составляет основную идею данного подхода.

Каждому из происходящих событий: нажатию клавиши, клику или перемещению мышки, выбору команды ставится соответственно определенная ответная реакция – среди которых есть команды, программные блоки или процедуры. Результатом работы программиста являются приложения, наполненные взаимосвязанными процедурами, которые управляются с помощью действий пользователя. Недостатком этого языка является отсутствующий детальный анализ с описанием каждого шага, это добавляет сложности для применения его в современных архитектурно-сложных разработках.

Java представляет собой продукт компании Sun Microsystems. Является объектно-ориентированным языком, программные разработки в котором передаются в байт-код. Виртуальная машина Java в этом варианте, будучи специальной программой, исполняет обязанности интерпретатора и обрабатывающего байтовый код процессора.

Программные продукты, которые реализованы на языке Java, независимы от ОС или оборудования, поскольку имеется собственный интерпретатор. Устройства и платформы, поддерживающие соответствующую виртуальную машину, способны выполнять созданные в Java приложения.

Следует отметить то, что контроль над исполнением Java-приложения полностью принадлежит виртуальной машине. Всем сторонним операциям, выходящим за программно-установленные полномочия, следует ожидать незамедлительного прерывания. Это исключает несанкционированный доступ или соединение с удаленным компьютером, без подходящего программного приоритета. Данный подход обеспечивает повышение информационной безопасности системы.

Язык C# («си шарп») создан корпорацией Microsoft, после выхода платформы .NET. Именно под нее был разработан данный язык, что привело к постановке перед разработчиками софта определенного условия. Программисту, который собирается работать на платформе .NET необходимо знать C#. Однако следующий факт делает более простой это категоричное условие: язык C# вполне близок к Delphi, C++ и Java.

Рассмотрением C# ограничимся на акцентировании внимания наиболее отличительных аспектов. Первого из них – нового подхода работы событий и обратных вызовов. Внедренную концепцию ссылки на функцию – «делегат», отличает использование объектно-ориентированного и безопасного подхода относительно системы типов. Использованием данного новшества, языком C# допускается описание события компонента, с исключением возвратных интерфейсов и дополнительных усилий. На практике, программист может ограничиться применением ключевого термина «event». Индексаторами и свойствами органично дополняются события до создания компонента, которого описывает сигнатура.

Исходя из таких характеристик, как сложность конструкций возможности осуществляемые языком, C# находится по середине между Visual Basic и C++. Особенно это могут почувствовать программисты, которые привыкли работать на платформе Microsoft, находящие в продукте сходство с его известными предшественниками. Языке C# имеет много заимствований, несмотря на наличие своего «программного колорита»:

От C перенят синтаксис управляющих конструкций, описаний сигнатуры методов и блоков кода;

От Java - сборщик мусора и отсутствие множественного наследования;

От Дельфи - направленность на создание компонент.

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

Разработка C#, являющегося объектно-ориентированным языком, наследующего платформу .NET, предшествующую его выпуску, позволяет написание неуправляемого кода. Хотя, конечно, языку больше свойственно написание компонент, и целью его создания была разработка программных продуктов в управляемой среде, дополненная сборщиком мусора.

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

Delphi является кроной программного генеалогического дерева, которое уходит корнями в Паскаль, а базовый ствол: Турбо Паскаль. Первоначально Турбо Паскаль является сугубо процедурным языком, сделавшим революционный шаг. Версия 5.5 была с элементами объектно-ориентированного программирования. Object Pascal отличался динамическим типом данных, и имел возможность гибко управлять памятью в процессе выполнения программы. Это базовое отличие Object Pascal и С++. Первый случай отличается расположением объектов в динамической памяти сразу по умолчанию, и существует возможность переопределения любого класса под «выбор места в памяти на свое усмотрение». [8]

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

Lazarus – пакет содержит необходимые компоненты для компилятора Free Pascal, включая библиотеки классов и среду разработки. Для создания прикладных программ на языке object pascal предоставляется отдельная среда разработки - подобная среда разработки Lazarus-Delphi. В идеи первоначальной реализации Lazarus было положено создать продукт, аналогичный Delphi. Это отразилось тождественным интерфейсом у обоих интегрированных сред. Аналогично Delphi, среда Lazarus предоставляет несколько окон: основное, редакторы форм и программного кода, инспектор объектов, результаты компиляции. Основным достоинством Lazarus выступает современное требование кроссплатформенности. Официальный сайт разработчика предлагает инсталляционные пакеты под различные операционные системы: Windows и Linux. Следующим важным положительным моментом является является возможность кросскомпилляции Free Pascal. Программист может собрать приложение под Windows непосредственно из Linux. Исключена зависимость от конкретной библиотеки. В процессе пересборки существует возможность изменить используемую библиотеку. На данный момент доступен вариант GTK+,
идут работы для библиотеки QT.

Embarcadero Delphi XE3 ориентировано на платформы Windows и Mac OS X. Специализация продукта – разработка платформенно-ориентированных приложений с насыщенным интерфейсомю В пакете реализована поддержка Retina, Slates и Surface Pro благодаря единому исходному коду. Интегрированная среда Delphi стала своего рода инкубатором софта, сокращая временные ресурсы на разработку прикладных программ, благодаря удобному механизму создания интерфейса. Наиболее трудоемкая часть написания программы реализована в Delphi на базе широкого функционала и наглядности. Программист, фактически сразу видит результат. Это дает солидные конкурентные преимущества продукту, благодаря визуальным средствам разработки приложений под различные ОС, а также возможности эффективного взаимодействия с различными базами данных и облачными сервисами. [9]

Delphi XE3 отдельная ветка продукта, акцентированная на переход пользовательского интерфейса к стилю Windows 8. Использование концепции Metropolis позволяет разрабатывать софт с полной адаптацией под «восьмерку». Прикладные приложения, созданные на Delphi XE3 обеспечивают поддержку технологии LiveTile, TouchScreen, содержат компоненты взаимодействия с датчиками. Этот комплекс гарантирует эффективную работу в операционной среде Windows 8 на настольных компьютерах и планшетных устройствах. Среда поддерживает также предыдущие версии Windows вплоть до XP. Delphi XE3 легко адаптирует текущие приложения FireMonkey и VCL относительно стиля Windows 8. Даже с использованием технологии Metropolis можно продолжить компиляцию проектов в приложениях под Mac OS X с поддержкой последних версий Mountain Lion и Retina. [10]

Целесообразность использования Delphi XE3 заключается в следующих причинах:

Отсутствует необходимость использования сторонних библиотек для взаимодействий с базой данных. Поэтому отсутствует необходимость в установке дополнительных библиотек при установке готовых приложений на компьютере. А именно, использование языка программирования Java, привело бы к инсталляции сторонних библиотек для взаимодействия с MS SQL Server, и это не сделало бы создание программы более простым процессом;

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

Объектно-ориентированность парадигмы языка, которая позволяет повторное использование одного и того же описанного объекта множество раз. А именно, удобство использования этой функции для программирования функции импорта. Одна единожды описанная функция, будет использована много раз разными формами приложения;

Приложение легко переносить между разными версиями среды разработки. Это позволяет оперативную доработку программы в будущем;

Доступные дополнительные бесплатные компоненты для среды программирования. Это позволяет расширять функциональность программы.

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

Рассмотрим некоторые основные СУБД, которые представлены на рынке ПО.

Таблица 3.1. Характеристики основных СУБД

Название

Преимущества

Область применения

MS SQL Server

Масштабируема и надежна.

Присутствие возможности работы нескольких пользователей с данными одновременно

Доступна работа с большими объёмами данных

Обеспечивает защиту данных на случай сбоя

Возможна аналитическая обработка хранимой информации

Базы данных, размер которых колеблется от персональных баз до крупных баз данных в масштабах предприятия.

MySQL

Скорость работы.

Безопасна;

Пользование бесплатной лицензией;

Открытый код;

Надежность;

Переносимость (наличие версий для популярных ОС).

Подходит для работы с малыми и средними приложениями.

CMS — система управления контентом, и веб-программирование

Microsoft Access

Легок в освоении;

Скорость и легкость создания баз данных (есть конструктор, нет необходимости использовать запросы в создании БД).

Мощность средств подготовки отчетов.

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

Нетребовательна к ресурсам оборудования.

Можно создавать отчеты произвольной формы, основываясь на различных данных; разрабатывать некоммерческие приложения.

Oracle Database

Поддержка множества платформ;

Легкость управления;

Скорость работы;

Масштабируемость.

Защита данных на высоком уровне (аппаратные сбои и атаки извне).

Возможность управления огромным объемом информации.

Создание баз данных с большими объемами информации.

Informix

Надежная.

Гибкая

Удобна в использовании.

Низкая стоимость владения.

Онлайновая обработка транзакций (OLTP), а также интегрированные решения.

Очевидно, что при использовании Oracle Database потребуется больше аппаратных ресурсов для ее функционирования. Помимо этого, эта СУБД в основном для использования в крупных высоконагруженных проектах, поэтому использование данной системы выглядит нецелесообразным.

MySQL распространяется как свободное программное обеспечение, поэтому при использовании этой СУБД не потребуется дополнительных расходов. Однако в то же время при использовании этой СУБД потребуется установка дополнительного программного обеспечения на клиентских компьютерах, и усложнится разработка программы в связи с тем, что Delphi при поставке по умолчанию не предназначен для поддержки MySQL как удаленной базы данных. Помимо этого, MySQL не может похвасться хорошей работой с большим объемом данных. Поэтому такой вариант тоже непригоден.

При использовании Informix также потребуется установка дополнительного программного обеспечения.

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

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

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

Таким образом, в качестве СУБД будет использоваться Microsoft SQL Server Express 2012.

1.5. Формализованное описание в виде набора основных диаграмм

Говорить об UML только как языке программирования не совсем верно. Исходя из аббревиатуры, это, прежде всего, язык моделирования, то есть построения определенных систем из уже разработанных программных блоков. UML – своеобразный конструктор, позволяющий по блочно возводить архитектуру проекта реализуемого практически в любой из областей деятельности человека:

  • торговые приложения;
  • информационные системы;
  • банковский и финансовый сектора;
  • точные науки, включая медицинское электронное оборудование;
  • системы транспорта и телекоммуникации;
  • Web объекты.

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

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

  • системные требования;
  • архитектуру построения системы;
  • прототипы, версии и прочие проектные планы;
  • тестовые конфигурации;
  • исходный код.

Сущности в UML это объектно-ориентированные блоки следующих типов:

  • структурные;
  • поведенческие;
  • группирующие;
  • аннотационные. [4]

К структурным сущностям относятся следующие элементы:

  • Класс - совокупность объектов с общими атрибутами и отношениями;
  • Интерфейс - набор операций, предоставляемых классом;
  • Кооперация - определяет взаимодействие, поведенческие модели, формирующие систему;
  • Прецедент 0 формирует последовательность выполняемых действий, приводящих к заданному результату.

Оставшиеся структурные сущности: активные классы, компоненты и узлы – сходны с непосредственно классами. Они содержат совокупности объектов наделенных общими характеристиками: атрибутами, операциями, отношениями или семантикой. [22]

Модель UML строится на рассмотренных выше структурных сущностях, среди которых существуют определенные разновидности.

Это виды:

  • Классов - актеры, сигналы, утилиты;
  • Активных классов - процессы и нити;
  • Компонентов - приложения, документы, файлы, библиотеки, страницы и таблицы.

Диаграмма Use Case для рассматриваемого процесса выглядит следующим образом:

Рисунок 2.1. Диаграмма Use Case

Диаграмма последовательности выглядит следующим образом:

Рисунок 2.2. Диаграмма последовательности

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

Рисунок 2.3. Контекстная диаграммы

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

Рисунок 2.4. Декомпозиция контекстной диаграммы

2. Проектирование базы данных информационной системы

2.1. Концептуальное проектирование базы данных

Проведем концептуальное проектирование базы данных.

Для этого опишем сущности, которые должны присутствовать в базе данных, и связи между ними.

Посетители кинотеатра покупают билеты. Каждый билет имеет определенную стоимость.

В кинотеатре демонстрируются фильмы. Фильмы показываются в залах. Фильмы демонстрируются на сеансах. Каждый фильм имеет определенную страну-производителя.

В залах присутствуют места, каждое из которых относится к определенному типу.

Таким образом, нами определены следующие сущности в базе данных:

  • Страны-производители;
  • Фильмы:
  • Билеты;
  • Типы билетов;
  • Залы;
  • Сеансы;
  • Цены на билеты.

2.2. Логическое проектирование базы данных

7

2.3. Физическое проектирование базы данных

2.4. Состав таблиц

Опишем назначение и состав каждой из таблиц базы данных.

Таблица «Страны» (countries) содержит информацию о странах – производителях фильмов.

Таблица содержит следующие поля:

Таблица 2.1. Состав полей таблицы «Страны»

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

Описание поля

Тип данных

Ключ

Id_country

Идентификатор страны

Integer

Первичный

Таблица «Билеты» (tickets) содержит информацию о проданных билетах.

Таблица содержит следующие поля:

Таблица 2.2. Состав полей таблицы «Билеты»

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

Описание поля

Тип данных

Ключ

Id_ticket

Идентификатор билета

Integer

Первичный

Id_seans

Идентификатор сеанса

Integer

Внешний

Number_mesto

Номер места

Integer

Id_type

Идентификатор типа места

Integer

Внешний

Price

Цена билета

money

Таблица «Сеансы» (seans) содержит информацию о сеансах на фильмы.

Таблица содержит следующие поля.

Таблица 2.3. Состав полей таблицы «Сеансы»

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

Описание поля

Тип данных

Ключ

Id_seans

Идентификатор сеанса

Integer

Первичный

Id_film

Идентификатор фильма

Integer

Внешний

Id_zal

Идентификатор зала

Integer

Внешний

Time

Время начала сеанса

Datetime

Таблица «Фильмы» (films) содержит информацию о фильмах.

Таблица содержит следующие поля.

Таблица 2.4. Состав полей таблицы «Фильмы»

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

Описание поля

Тип данных

Ключ

Id_film

Идентификатор фильма

Integer

Первичный

Name

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

Varchar(20)

Id_country

Идентификатор страны

Integer

Внешинй

Director

ФИО режиссера фильма

Varchar(20)

Length

Длина фильма в минутах

Integer

Description

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

Varchar (200)

Таблица «Залы» (zaly) содержит информацию о залах.

Таблица содержит следующие поля.

Таблица 2.5. Состав полей таблицы «Залы»

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

Описание поля

Тип данных

Ключ

Id_zal

Идентификатор зала

Integer

Первичный

Name

Название зала

Varchar(20)

Mest

Количество мест

Integer

Ryadov

Количество рядов

Integer

Таблица «Типы мест» (type_mesta) содержит информацию о типах мест в залах.

Таблица содержит следующие поля.

Таблица 2.6. Состав полей таблицы «Типы мест»

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

Описание поля

Тип данных

Ключ

Id_type

Идентификатор типа

Integer

Первичный

Name

Название типа

Varchar(20)

Таблица «Цены на билеты» (ticket prices) предназначена для сохранения цен на билеты.

Таблица содержит следующие поля.

Таблица 2.7. Состав полей таблицы «Цены на билеты»

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

Описание поля

Тип данных

Ключ

Id_price

Идентификатор цены

Integer

Первичный

Id_seans

Идентификатор сеанса

Integer

Внешний

Id_type

Идентификатор типа

Integer

Внешний

Price

Цена на билет

Money

Далее с помощью инструменты среды ErWin Data Modeler под названием Forward Engineer был сгенерирован сценарий создания базы данных.

3. Программная реализация

3.1. Архитектура приложения

Проект имеет модульную структуру. Каждой форме проекта соответствует определенный файл модуля.

Приведем список модулей проекта с указанием назначения каждого из них.

Таблица 3.1

Список модулей проекта

Название модуля

Назначение модуля

Umain.pas

Главный модуль проекта. Содержит все главные процедуры

UFilmy.pas

Модуль справочника фильмов

UDataModule.pas

Файл модуля данных, связывающий все компоненты, ответственные за доступ к базе данных

UCenyBilety.pas

Модуль справочника цен на билеты

USeansy.pas

Модуль справочника сеансов

UStrany.pas

Модуль справочника стран

UTipyMest.pas

Модуль справочника типов мест

UZaly.pas

Модуль справочника залов

UZalyRyady.pas

Модуль справочника рядов в залах

UProdajaZaly.pas

Модуля отчета «Продажа по залам»

UProdajaFilmy.pas

Модуль отчета «Продажа по фильмам»

UProdajaTipy.pas

Модуль отчета «Продажа по типам билетов»

3.2. Связывание базы данных с программой Delphi

После того, как база данных создана, необходимо организовать её связь с программой в Delphi. Наша задача состоит в том, чтобы организовать такое взаимодействие без использования дополнительных SQL-запросов и представлений.

Итак, создаем проект Delphi. Для того, чтобы таблицы обрабатывались централизованно (что в дальнейшем значительно облегчит работу с ними) мы будем использовать компонент типа Data Module. Data Module – это разновидность формы Delphi, на которой не может быть представлено никаких визуальных компонентов, кроме компонентов, предназначенных для работы с базами данных.

Создаем такой модуль, выбрав в главном меню File – New – Data Module. Сохраним программную часть этого компонента под названием UDataModule.

Разместим в данном модуле компонент ADOConnection для связи с базой данных. Для того, чтобы иметь доступ к БД, необходимо указать в свойстве ConnectionString данного компонента строку подключения к базе данных.

Для этого нажимаем на кнопку с тремя точками рядом с этим свойством. На экран выводится следующее окно.

C:\..\..\..\DOCUME~1\TOVMAC~1\Documents and Settings\Alexey\Local Settings\Temp\SNAGHTMLa935fd.PNG

Рисунок 3.1 – Свойства подключения

Далее нажимаем кнопку Build и настраиваем соединение с базой данных, указывая наименование сервера и базы данных.

Рисунок 3.2 – Настройка подключения к базе данных

Для проверки соединения можно нажать на кнопку «Проверить подключение». Если выведется сообщение о том, что подключение успешно, то данные правильны. После нажатия на кнопку «ОК» строка соединения будет сформирована.

Разместим на полученном модуле несколько компонентов типа ADOTable и несколько компонентов типа DataSource, дав им соответствующие имена.

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

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

Теперь создадим подстановочные поля. Для этого нажимаем правой кнопкой в окне редактора, и выбираем «New Field».

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

Рисунок 3.3 – Создание Lookup поля

Поясним эти параметры.

В поле Name указывается название поля. Можно указать любое не дублирующееся с имеющимся название.

В поле Type указывается тип данных в поле. Для корректной работы необходимо выбрать значение Variant.

Поле Field Type указывает на тип поля. Необходимо указать тип Lookup.

Поле Key Fields указывает поле в исходной таблице для подстановки ключевого значения.

Поле Dataset указывает на таблицу, из которой будут браться значения для автоподстановки в таблицу.

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

Поле Result Fields указывает поля с названиями ключевых полей.

Нажимаем на кнопку OK. Таким образом мы добавили поле типа Lookup в таблицу TFilmy.

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

3.3. Разработка программного средства

Файл UMain.pas имеет несколько ключевых процедур.

Основной процедурой является процедура отрисовки зала.

Приведем код данной процедуры с подробными комментариями.

procedure TMain.Otrisovka;

//Одна из основных процедур в программе - процедура отрисовки зала

var s,fn:string;

Color:TColor;

begin

if DBLookupComboBox1.KeyValue<>null then

begin

//Сначала проверяем, все ли нужные таблицы активны. Если какая то не активна - выходим из процедуры

if DataModule1.TZaly.Active<>true or DataModule1.TZaly_ryady.Active<>true or DataModule1.TBilety.Active<>true then exit;

//Устанавливаем цвет заливки в цвет формы

Canvas.Brush.Color:=ClBtnFace;

//Заливаем форму этим цветом (необходимо для очистки формы от предыдущего рисунка зала)

Canvas.FillRect(Canvas.ClipRect);

//Запоминаем идентификатор выбранного зала

id:=DBLookupComboBox1.KeyValue;

//Переходим в таблице "Залы" к этому залу

DataModule1.TZaly.Locate('id_zal',id, []);

//Запоминаем количество рядов в зале

ryadov:=DataModule1.TZaly.FieldByName('ryadov').AsInteger;

//Запоминаем количество мест в зале

mest:=DataModule1.TZaly.FieldByName('mest').AsInteger;

//Узнаем путь к схеме зала

fn:=ExtractFilePath(Application.ExeName)+'Залы\'+DataModule1.TZaly.FieldByName('File_schema').AsString;

//Связываем текстовую переменную с файлом

assignfile(textf, fn);

//Вычисляем шаг (размер ячейки места) по горизонтали

dx:=((Main.Width-40) div mest)-3;

//Вычисляем шаг (высоту ячейки места) по вертикали

dy:=((Main.Height-180) div ryadov)-3;

//Узнаем центральную точку ячейки по горизонтали

centerx:=dx div 2;

//Узнаем центральную точку ячейки по вертикали

centery:=dy div 2;

//Допуск

dop:=(main.Width-((dx+3)*mest)) div 2;

//Устанавливаем курсор на первую строку файла зала

reset(textf);

//Фильтруем таблицу "Залы ряды" по идентификатору зала (оставляем только записи для текущего зала)

DataModule1.TZaly_ryady.Filter:='id_zal = '+IntToStr(id);

DataModule1.TZaly_ryady.Filtered:=true;

//Начираем последовательно перебирать ряды

for I := 0 to ryadov-1 do

begin

//Считываем строку из файла схемы (она соответствует ряду)

readln(textf, s);

//Устанавливаем курсор на первую запись отфильтрованной таблицы

DataModule1.TZaly_ryady.First;

//Узнаем цвет текущего ряда, для этого

//Последовательно перебираем записи в табилце

for m := 1 to DataModule1.TZaly_ryady.RecordCount do

begin

//Если номер ряда входит в диапазон в таблице (соответствует типу места этого диапазона)

if (i+1>=DataModule1.TZaly_ryady.FieldByName('ryad_ot').AsInteger) and (i+1<=DataModule1.TZaly_ryady.FieldByName('ryad_do').AsInteger) then

begin

//Узнаем цвет этого типа места

//Для этого устанавливаем курсор на первую строку таблицы "Типы мест"

DataModule1.TTipyMest.First;

//Находим строку в таблице соответстующую этому типу

DataModule1.TTipyMest.Locate('id_type', DataModule1.TZaly_ryady.FieldByName('id_type').AsInteger, []);

//Запоминаем цвет этого типа ряда

Color:=ConvertHtmlHexToTColor(DataModule1.TTipyMest.FieldByName('Color').AsString);

//Указываем этот цвет для цвета заливки

Main.Canvas.Brush.Color:=Color;

end;

//Продолжаем перебирать таблицу "Залы ряды"

DataModule1.TZaly_ryady.Next;

end;

//Рисуем номер ряда

Main.Canvas.TextOut(5, 80+i*(dy+3)+centery-5, IntToStr(i+1));

//Рисуем зал, для этого

//Последовательно перебираем места (символы в выбранной ранее строке схемы зала)

for k:= 0 to mest-1 do

//Если в считанной ранее из файла схемы строке в текущем символе находится единица, т.е. на этом месте есть кресло

if s[k+1]='1' then

begin

//Рисуем квадрат на форме. Это наше место. Причем отрисуется запомненным ранне цветом.

Main.Canvas.Rectangle(dop+k*(dx+3), 80+i*(dy+3), dop+(k*(dx+3))+dx, 80+i*(dy+3)+dy);

//И рисуем номер этого места

Main.Canvas.TextOut(dop+k*(dx+3)+centerx-5, 80+i*(dy+3)+centery-5, IntToStr(k+1));

end;

end;

//Теперь необходимо отрисовать занятые на сеанс места

//Для этого запоминаем номер сеанса

id_seans:=DBLookupComboBox3.KeyValue;

DataModule1.TBilety.Active:=False;

DataModule1.TBilety.Active:=True;

//Фильтруем таблицу "Билеты", оставляя в ней только билеты, купленные на данный сеанс

DataModule1.TBilety.Filter:='id_seans ='+IntToStr(id_seans);

DataModule1.TBilety.Filtered:=False;

DataModule1.TBilety.Filtered:=True;

//Переходим к первой записи таблицы

DataModule1.TBilety.First;

//Повторяем с первой до последней записи в отфильтрованной таблице

for m := 1 to DataModule1.TBilety.RecordCount do

begin

//Запоминаем номер места из таблицы

k:=DataModule1.TBilety.FieldByName('number_mesto').AsInteger-1;

//Запоминаем номер ряда из таблицы

i:=DataModule1.TBilety.FieldByName('number_ryad').AsInteger-1;

//Устанавливаем цвет заливки в красный

Main.Canvas.Brush.Color:=clRed;

//Рисуем квадрат в соответствующем месте

Main.Canvas.Rectangle(dop+k*(dx+3), 80+i*(dy+3), dop+(k*(dx+3))+dx, 80+i*(dy+3)+dy);

//Рисуем номер места

Main.Canvas.TextOut(dop+k*(dx+3)+centerx-5, 80+i*(dy+3)+centery-5, IntToStr(k+1));

//Переходим к следующей записи

DataModule1.TBilety.Next;

end;

end;

end;

3.4. Руководство администратора

Для установки программы необходимо скачать программное средство Microsoft SQL Server 2012 Express и среду разработки для него MS SQL Server 2012 Management Studio с сайта компании Microsoft.

Их необходимо установить с параметрами по умолчанию.

После этого необходимо запусти MS SQL Server Management Studio, войти с параметрами по умолчанию и нажав правой кнопкой на заголовке «Базы данных» выбрать «Присоединить». Указать файл базы данных, поставляемый с программой.

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

После этого программа будет готова к работе.

3.5. Руководство пользователя

3.5.1. Требования к программным и аппаратным средствам

Для корректного функционирования программы требуется сервер со следующими параметрами.

  • Процессор не ниже Pentium 4 1300 МГЦ.
  • Оперативная память не менее Гбайт.
  • Винчестер от 320 Гбайт.

Требования к клиентскому оборудованию аналогичные.

Для функционирования программы требуется ОС Windows XP/7/8/10.

3.5.2. Главная форма программы

Главная форма программы является основной рабочей формой программы.

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

Главная форма выглядит следующим образом:

Рисунок 3.5. Главная форма программы

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

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

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

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

Рисунок 3.5. Выпадающее меню

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

Сведения о дате и стоимости билета заносятся в базу данных автоматически, на основании данных из справочников.

3.5.3. Навигация по формам

Компонент-навигатор, расположенный на каждой из форм справочника, имеет следующий вид.

6

7

8

9

5

4

3

2

1

10

В компоненте имеются следующие кнопки:

1 – перейти на первую запись таблицы.

2 – перейти к предыдущей записи.

3 – перейти к следующей записи.

4 – перейти к последней записи таблицы.

5 – добавить запись

6 – удалить запись.

7 – начать редактирование

8 – подтвердить изменения.

9 – отменить изменения.

10 – вернуть ввод.

3.5.4. Справочник стран

Справочник стран предназначен для внесения возможных стран, в которых произведены фильмы.

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

Рисунок 3.7. Справочник стран

Данные вносятся непосредственно в компонент на форме.

3.5.5. Справочник фильмов

В справочник фильмов заносятся идущие в кинотеатре фильмы.

Рисунок 3.8. Справочник фильмов

3.5.6. Справочник сеансаов

В справочник сеансов заносится соответствие залов, фильмов и времени этих ссеансов.

Рисунок 3.9. Справочник сеансов

3.5.7. Справочник цен на билеты

В данный справочник заносятся соотношения сеансов, типов мест и цен для данных типов.

Доступен выбор из выпадающих списков значений из справочников.

Рисунок 3.10. Справочник цен на билеты

3.5.8. Справочник типов мест

В данный справочник заносятся названия типов мест и соответствующие им цвета в восьмеричном формате.

Рисунок 3.11. Справочник типов мест

3.5.9. Справочник залов

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

Рисунок 3.12. Справочник залов

3.5.10. Справочник рядов в залах

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

Рисунок 3.13. Справочник рядов

3.5.11. Отчет «Продажи билетов по типам»

В данном отчете выводится общая сумма продаж билетов за указанный пользователем период в разрезе типов билетов.

Рисунок 3.14. Отчет «Продажи билетов по типам»

3.5.12. Отчет «Продажи билетов по залам»

В данном отчете выводится общая сумма продаж билетов за указанный пользователем период в разрезе залов кинотеатра.

Рисунок 3.15. Отчет «Продажи билетов по залам»

Заключение

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

Конечно, разработанная система не обладает подобными излишествами, но в целом позволяет автоматизировать работу кинотеатра.

В первой главе было рассмотрено предприятие и проведено формализованное описание системы.

Во второй главе было проведено проектирование и физическая реализация базы данных.

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

Список использованных источников

  1. Бен-Ган Ицик. Microsoft SQL Server 2012. Высокопроизводительный код T-SQL.М.: Русская редакция, 2013. – 256 с.
  2. Бен-Ган Ицик, Сарка Диджан. Microsoft SQL Server 2012. Создание запросов. Учебный курс Mirosoft. М.: Русская редакция, 2012. – 1000 с.
  3. Бондарь А. Microsoft SQL Server 2012. СПб.: БХВ, 2013. – 608 с.
  4. Буч Г., Рамбо Д., Якобсон А. Введение в UML от создателей языка. М.: ДМК Пресс, 2015. – 496 с.
  5. Программирование на языке Object Pascal: Учеб. пос. / Т.И.Немцова и др; Под ред. Л.Г.Гагариной. - М.: ИД ФОРУМ: НИЦ ИНФРА-М, 2013. - 496 с
  6. Введение в специальность программиста: Учебник / В.А. Гвоздева. - 2-e изд., испр. и доп. - М.: ИД ФОРУМ: НИЦ Инфра-М, 2013. - 208 с.
  7. Возневич Э. Освой самостоятельно Delphi: Полное руководство для самостоятельного обучения. /Под ред. В. Тимофеева. – М.: Бином, 2006. – 563 с.
  8. Гофман В. Э., Хомоненко А. Д. Delphi. Быстрый старт. – СПб.: БХВ-Петербург, 2012. – 288 с.
  9. Дарахвелидзе П. Г. Марков Е.П. Delphi – средства визуального программирования. – СПБ.: BHV – С-Петербург, 2006. – 765 с.
  10. Конопка Р. Создание оригинальных компонент в среде Delphi: Пер. с англ. – Киев: DiaSoftLtd, 2014. – 675 с.
  11. Культин Н. Основы программирования в Delphi XE. СПб.: БХВ, 2011. – 416 с.
  12. Леоненков А. Самоучитель UML 2. СПб.: БХВ, 2007. – 576 с.
  13. Мельников С. Delphi и Turbo Pascal на занимательных примерах. СПб.: БХВ, 2013. – 356 с.
  14. Осипов Д. Базы данных и Delphi. Теория и практика. СПб.: БХВ, 2012. = 671 с.
  15. Петкович Д. Microsoft SQL Server 2012. Руководство для начинающих. СПб.: БХВ, 2013. – 431 с.
  16. Рубанцев С. Самоучитель Delphi в примерах, играх и программах. М.: Наука и техника, 2011. – 521 с.
  17. Санников Е.В. Курс практического программировния в Delphi. М.: Солон-Пресс, 2015. – 188 с.
  18. Сарка Диджан, Лах Мария. Microsoft SQL Server 2012. Реализация хранилищ данных. М.: Русская редакция, 2012. – 816 с.
  19. Станек Уильям Р. Microsoft SQL Server 2012. Справочник администратора. СПб.: БХВ, 2012. – 576 с.
  20. Фленов М. Библия Delphi. СПб.: БХВ, 2014. – 426 с.
  21. Языки программирования: Учебное пособие / О.Л. Голицына, Т.Л. Партыка, И.И. Попов. - 3-e изд., перераб. и доп. - М.: Форум: ИНФРА-М, 2015. - 400 с
  22. Якобсон А., Рамбо Д., Буч Г. Язык UML. Руководство пользователя. М.: Книга по требованию, 2007. – 494 с.