Диплом: Автоматизация процессов управления взаимоотношениями с клиентами в службе реализации билетов "Кинотеатр АВРОРА"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
37
Исходные данные разрабатываемой АИС представляют собой текстовую
информацию, которая будет заноситься в АИС через клавиатуру и храниться в БД.
Такими исходными данными может быть:
1. данные клиента;
2. данные о киносеансе;
3. данные о билете;
4. данные об оплате;
5. другие данные.
Выходная информация, разумеется, будет формироваться на основании
текстовой информации, которая имеется в БД и представлять собой:
1. любой вид отчета (отчет по проданным билетам, отчет по билетам за
выбранный период, отчет по остаткам билетов);
2. количество оплаченных билетов.
На рисунке 1.7 представлено схематически процесс ввода и вывода данных
АИС.
38
Рисунок 1.7Процесс ввода-вывода данных АИС
1.4.2 Обоснование проектных решений по программному обеспечению
АИС будет разработано в виде веб-приложения, чтобы любой потенциальный
клиент смог купить билет на киносеанс имея только выход в сеть Интернет.
Анализ начнется с существующих на данный момент языков и технологий
создания веб-проектов, число которых не очень большое, но каждый язык или
технология чем-то лучше другого и разработан для более узкой цели, чем другой.
Приведем существующие и наиболее часто используемые языки
программирования и технологии:
1. PHP. Расшифровывается как препроцессор гипертекста. По простому -
язык программирования, который генерирует страницы с использованием
гипертекстовой разметки. На сегодня оно является одним из самых
39
популярных направлений программирования для интернета: только
русскоязычные сайты наситывают десятки миллионов. Большая часть
хостеров по умолчанию включают для своих пользователей
интерпретатор (Интерпретатор представляет собой программу или
аппаратное средство, которое анализирует, обрабатывает и тут же
выполняет исходную программу или запрос). Речь идет о довольно
простом языке, имеющем высокую скорость выполнения, который делает
возможным подключение сторонних модулей. Пользуясь PHP и
дополнениями к нему, можно работать с такими данными, как
криптографические алгоритмы, графика, базы данных и даже различные
документы. Интерпретаторы PHP на сегодня имеются для всех ОС [6];
2. ASP.NET. – представляет собой продолжение технологии ASP. После
существенного рестайлинга перед программистами предстал пакет,
который схож с Microsoft ASP, но имеет значительно больший
функционал. В целом и общем среда превратилась в часть большого
проекта по развитию Интернета - платформа .NET Framework (.NET
Framework - программная платформа, выпущенная компанией Microsoft.
Основа платформы представлена исполняющей средой Common Language
Runtime (CLR), способной к выполнению как обычных программ, так и
серверных веб-приложений. .NET Framework поддерживает создание
программ, которые написаны на разных языках программирования) Веб-
проектам, написанным по новой технологии, присущи более быстрая
компиляция и выполнение. Для истинно качественного
программирования спроектировали новую среду разработки и отладчик,
которые отлавливают большую часть явных и неявных ошибок еще при
написания кода. К тому же, существенно переработана компиляция и
исполнение кода между операторамиt ry и catch. Возникли новые
элементы управления, что сделало существенно проще разработку
пользовательского интерфейса; [13]
3. JSP. Технология, которая представлена страницами, написанными на
языке Java, которые выполняются чаще всего непосредственно на
40
сервере. Здесь все определяется компилятором. Если воспользоваться
Jasper, то при первоначальном выполнении создается высоко
оптимизированный байтовый код, который передается Java-машине на
выполнение. Можно воспользоваться услугами Tomcat сервлет-
контейнера (контейнер сервлетов - программа, представляющая собой
сервер, который занимается системной поддержкой сервлетов и
обеспечивает их жизненный цикл в соответствии с правилами,
определёнными в спецификациях. Может работать как полноценный
самостоятельный веб-сервер, быть поставщиком страниц для другого веб-
сервера, например Apache, или интегрироваться в Java EE сервер
приложений. Обеспечивает обмен данными между сервлетом и
клиентами, берёт на себя выполнение таких функций, как создание
программной среды для функционирующего сервлета, идентификацию и
авторизацию клиентов, организацию сессии для каждого из них). Это
является довольно популярным решением для бизнеса интернет-
магазины, аукционы и т.д. Секрет состоит в том, что оптимизированный
код может исполняться на сервере или прямо в пользовательском
браузере, а язык дает возможность полноценно программировать с
классами, разделениями прав доступа к процедурам и иными
вкусностями, которые любезно предоставляет полноценная Java.
В первую очередь, следует выбрать базу, на которой будет выстраиваться
каркас. Несомненно, позиция лидера у HTML, так как пользование XML и прочими
модификациями осложнено подключением технологий объектного проектирования
для веб-проектов. Да и новый метод всегда долго оттачивается, пока все браузеры
обеспечат полноценную поддержку. На этом можно остановиться, если в проекте
не подразумеваются всесторонняя интерактивность, выплывающие картинки и
сложный функционал. [9] Для большинства частных проектов необходимо лишь
добавить несколько скриптов на JSP, которые будут обрабатываться Tomcat на
пользовательской машине. Позитив заключается в том, что конечный пользователь
всегда может отключить выполнение скриптов, если пожелает в силу каких-нибудь
причин. Следует сказать, что серьезные проекты пытаются отказаться от
41
использования скриптов. Так или иначе, правило хорошего тона выражено
использованием каскадных стилей CSS. Если не требуется сложное
форматирование, которое и в Photoshop с трудом нарисовать удалось, то
достаточно таблиц каскадных стилей CSS. Теперь необходимо определиться,
требуется ли использовать динамические страницы. С одной стороны, это весьма
красиво и эффектно, но с другой стороны, для работы такого сайта нужен канал,
имеющий большую пропускную способность. Иначе динамика превратится в
ужасные подтормаживания. Не любят использование подобных технологий и SEO-
оптимизаторы, поскольку поисковые машины практически не индексируют такие
сайты. В большей степени это затронуло AJAX. По этой причине наиболее
подходящее решение для серьезного проекта представлено использованием HTML
как основы представления, которая подкреплена AJAX и каскадными стилями.
После выбора технологий для клиентской части и для дизайна системы - осталось
определиться непосредственно с серверными страницами [2].
Чтобы обеспечить аутентификацию пользователей и работу с БД, лучше
воспользоваться или платформой dot.net (ASP, ASP.NET) или PHP. Выбор между
PHP и ASP.NET связан исключительно с возможностями хостинга или сервера и
знаниями программиста. Следует сказать, что интерпретатор для платформы .NET
чаще всего является прерогативой собственного или выделенного сервера, которая
стоит денег. На виртуальном хостинге намного проще использовать PHP, веб-
проект можно установить через веб-интерфейс, и для этого требуются
минимальные усилия. Данный язык предназначен для того, чтобы создать веб-
проекты, по нему имеется много информации в сети Internet, сам язык
программирования является не очень сложным, имеются отличные среды для
разработки на этом языке, а также возможность в процессе работы сразу видеть
результат на своем локальном компьютере, не обращаясь каждый раз к удаленному
серверу. [8]
После оценки преимуществ и недостатков указанных выше языков выбор
остановился на языках HTML для разметки страниц, CSS – для оформления
страниц, JavaScript и технологии, базирующейся на нем AJAX – для быстрой
42
работы страницы, для проверки введенных данных на корректность, PHP как
основной веб-язык.
При разработке АИС будет использоваться js-фреймворк jquery.
jQuery является библиотекой JavaScript, которая фокусируется на
взаимодействии JavaScript и HTML. Библиотека jQuery способствует легкому
получению доступа к любому элементу DOM, обращению к атрибутам и
содержимому элементов DOM, манипулированию ими. Также библиотека jQuery
дает удобный API для работы с AJAX [2].
Возможности:
1. движок кроссбраузерных CSS-селекторов Sizzle, который выделился в
отдельный проект;
2. переход по дереву DOM, включая поддержку XPath как плагина;
3. события;
4. визуальные эффекты;
5. AJAX-дополнения;
6. JavaScript-плагины.
Точно так же, как CSS отделяет визуализацию от структуры HTML, JQuery
отделяет поведение от структуры HTML. К примеру, вместо прямого указания на
обработчик события нажатия кнопки, управление передаётся JQuery, которая
идентифицирует кнопки и затем преобразует его в обработчик события клика.
Такое разделение поведения и структуры также обозначают как принцип
ненавязчивого JavaScript.
В библиотеке jQuery содержится функциональность, полезная для
максимально широкого круга задач. В то же время, разработчики библиотеки не
ставили задачу совмещать в jQuery функции, которые подошли бы всюду, так как
это привело бы к большому коду, большая часть которого не востребована.
Поэтому реализовали архитектуру компактного универсального ядра библиотеки и
плагинов. Это делает возможным собрание для ресурса именно той JavaScript-
функциональности, которая на нём была бы востребована [2].
Следует выбрать среду разработки проекта (IDE) для языка PHP. Сравнение
IDE приведено в таблице 1.5.
43
Таблица 1.5СравнениеIDE
Название
Возможности
Codelobster
PHP Edition
подсветка синтаксиса, автодополнение команд, тегов,
переменных, контекстная и динамическая помощь, встроенный
собственный PHP debugger, автоматическая проверка синтаксиса,
сворачивание кода, HTML/CSS инспектор по типу Firebug
PhpStorm
поддержка PHP 5.1 - 5.5, автодополнение кода, поддержка
PHPDoc, проверка кода на лету, поддержка редактирования
шаблонов Smarty, MVC представление для Symfony2 и Yii
фреймворков, распознавание кода, запакованного в PHAR-
архивы[1]
PHP
Development
Tools
сворачивание кода, рефракторинг, генерация кода (методы
доступа к членам класса, мастер классов и интерфейсов), анализ
и исправление кода, поддержка PHP 5, иерархическое
представление классов и методов, отладка PHP-скриптов
Перечислив возможности, которые имеют рассмотренные среды по создания
веб-проектов, следует обратить внимание на то, что для разрабатываемого веб-
проекта требуется автоматическая подстановка переменных и методов, а также
поддержки интеграции с системами контроля версий (GitHub). Поэтому, выбор пал
на среду разработки PhpStorm, которая после индексации каталога с проектами
позволяет обращаться к любому методу либо переменной, а также поддержка
аннотаций PHPDoc позволяет задавать поведение переменных и методов без
написания дополнительных строчек кода. Использование двух видов дебаггера
позволяет выявлять ошибки при разработке и локализовать их, а встроенный
визард среды позволяет генерировать таблицы БД на основании описания классов.
Так как АИС будет представлять собой веб-приложение, то при его
разработке требуется использовать веб-сервер. Наиболее часто используемые веб-
серверы - это Apache и Nginx.
44
В наше время существует несколько комплексов ПО, в основе которых
лежит необходимый набор программных средств для разработки веб-приложений
на языке PHP, а также включен и веб-сервер, СУБД. Это комплексы:
1. WAMP;
2. LAMP;
3. XAMP.
WAMP является набором (комплексом) серверного программного
обеспечения, который широко используется для разработки, предоставления веб-
сервисов. WAMP назван по первым буквам компонентов, которые входят в него:
1. Windows - операционная система;
2. Apache - веб-сервер;
3. MySQL - СУБД;
4. PHP - язык программирования.
В комплексе LAMP вместо ОС Windows представлена ОС Linux. Все прочие
составляющие набора идентичны WAMP. Хотя изначально программные
продукты, которые входят в состав этих комплексов, не разрабатывали специально
для работы друг с другом, такие связки превратились в довольно популярные среди
пользователей Windows и Linux.
В комплексе XAMP ОС представлена любая из трех ОС - Windows, MacOS,
Linix.
Рассмотрев имеющиеся комплексы ПО для разработки веб-приложений, мы
выбрали комплекс WAMP, поскольку разработка АИС будет осуществляться на ОС
Windows 8 и веб-сервером будет Apache 2.4.
Так как данные АИС будут храниться в БД, требуется выбрать СУБД.
СУБД представляет собой систему управления базами данных, совокупность
программных и лингвистических средств, имеющих общее или специальное
назначение, которые обеспечивают управление созданием и применением баз
данных.
Существующие и наиболее часто используемые в наше время СУБД:
1. Microsof Office Access – реляционная СУБД корпорации Microsoft.
Обладает широким спектром функций, в том числе связанными
45
запросами, связью с внешними таблицами и базами данных. Благодаря
встроенному языку VBA, в самом Access можно писать приложения,
которые работают с базами данных;
2. dBase - семейство широко распространённых систем управления базами
данных, а также язык программирования, который используется в них;
3. Oracle Database или Oracle RDBMS – представляет собой объектно-
реляционную систему управления базами данных компании Oracle;
4. Microsoft SQL Server - система управления реляционными базами данных,
которую разработала корпорация Microsoft. Основным используемым
языком запросов является Transact-SQL, создан совместно с Microsoft и
Sybase. Применяется для того, чтобы работать с базами данных размером
от персональных до крупных баз данных масштаба предприятия; входит в
конкурирующие отношения с другими СУБД в данном сегменте рынка;
5. PostgreSQL – представлена cвободной объектно-реляционной системой
управления базами данных;
6. MySQL - свободная система управления базами данных. Продукт
распространяют как под свободной лицензией, так и под собственной
коммерческой лицензией. В самых ранних версиях возник механизм
репликации;
7. SQLiteпредставляет собой легковесную встраиваемую реляционную
базу данных. Исходный код библиотеки передан в общественное
достояние.
Предпочтения автора были отданы СУБД MySQL по следующим причинам:
1. MySQL портирована на большое количество платформ
(Unix/MacOS/Windows);
2. MySQL имеет API для языков Delphi, C, C++, Java, Лисп, Perl, PHP,
Python, Ruby, Smalltalk, Компонентный Паскаль и Tcl, библиотеки для
языков платформы .NET, а также обеспечивает поддержку для ODBC
посредством ODBC-драйвера MyODBC;
3. MySQL распространяется бесплатно;
46
4. Гибкость MySQ Lобеспечивается поддержкой большого числа типов
таблиц: тип MyISAM, которые поддерживают полнотекстовый поиск,
таблицы InnoDB, которые поддерживают транзакции на уровне
отдельных записей;
5. MySQL является реляционной СУБД.
1.4.3 Обоснование проектных решений по техническому обеспечению
Техническое обеспечение системы должно максимально и самым
эффективным образом пользоваться имеющимися на предприятии техническими
средствами.
В состав системы следует включить следующие технические средства:
1. веб-сервер;
2. сервер СУБД;
3. ПК пользователей;
4. ПК администратора.
Веб-сервер необходимо оснастить функцией зеркалирования жестких дисков
и объединить в одну локальную сеть с клиентскими машинами, имеющую
пропускную способность не менее 100 Мбит/сек.
Требования к техническим характеристикам веб-сервера следующие:
1. процессор – Intel Corei5 3.7ГГц;
2. объем оперативной памяти – 8 Гб;
3. дисковая подсистема – 2 х 500 Гб;
4. устройство чтения компакт-дисков (DVD-ROM);
5. сетевой адаптер – 100/1000 Мбит;
6. дисковая подсистема 0,5 Тб RaidArray 5.
Выбор аппаратной составляющей для сервера СУБД во многом определяется
конкретной СУБД, предполагаемым количеством одновременно работающих
пользователей, спецификой проекта и результатами нагрузочного тестирования
прикладного проекта.
Требования к техническим характеристикам сервера СУБД:

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)