Диплом: Автоматизированная система учета ремонта компьютерного оборудования в компании ЗАО Милта ПКП ГИТ

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
46
и т.д. В результате этапа реализации появляется рабочая версия продукта.
Тестирование. Тестирование тесно связано с такими этапами разработки
системы как проектирование и реализация. В систему встраиваются
специальные механизмы, которые дают возможность производить тестирование
системы на соответствие требований к ней, проверку оформления и наличие
необходимого пакета документации. Результатом тестирования является
устранение всех недостатков системы и заключение о его качестве.
Так как АИС будет представлять собой веб-систему, следует определиться
с используемой архитектурой системы.
На основе анализа используемых архитектур для построения АИС, была
выбрана архитектура «клиент-сервер». Средой передачи информации в БД и
назад является сеть Internet либо локальная сеть, в случае размещения БД
удалено (на сервере БД), либо программный поток, если БД расположена на
локальном компьютере. Очевидно, что во втором случае обмен будет
происходить в несколько раз быстрее, так как передаваемая информация не
теряет время на прохождение по сетевым кабелям. На рисунке 1.6 приведена
классическая схема взаимодействия клиентов с удаленной БД по схеме «клиент-
сервер».
Рисунок 1.6 – Схема «клиент-сервер»
Помимо общего случая, необходимо выделять аппаратный тонкий клиент
(к ним можно отнести, Windows- и Linux-терминалы – представляющие собой
47
определенное устройство, которое может быть принципиально отличным от ПК.
У аппаратного тонкого клиента отсутствует жёсткий диск, при этом
используется специализированная локальная ОС (существенно значимая задачи
при этом основана на организации сессию с терминальным сервером для
выполняемой работы пользователя), не имея при этом в своём составе
различных подвижных деталей, осуществляется выполнение при помощи
осуществления деятельности в специализированных корпусах с полностью
пассивным охлаждением.
При процессе расширения общей функциональности тонкого клиента
имеется возможность прибегать к его «утолщению», например, при этом можно
добавить определенные возможности осуществления комплексной автономной
работы, при это необходимо сохранять основное отличие – осуществление
работы в сессии с использованием терминального сервера.
В ситуации, при которой в клиенте могут появляться достаточно
подвижные детали (жёсткие диски), могут также появиться определенные
возможности для осуществления комплексной автономной работы, в данном
случае он перестаёт являться тонким клиентом в чистом виде, постепенно
становясь универсальным клиентом.
Тонкий клиент достаточно часто имеет минимальную аппаратную
конфигурацию, в данном случае вместо жёсткого диска для осуществления
загрузки локальной специализированной ОС можно использовать DOM
(DiskOnModule) (это модуль, который имеет разъем IDE, флэш-память и
микросхему, которая реализует логику обычного жёсткого диска - в BIOS
должен быть определен как обычный жёсткий диск, при этом только размер
данного диска чаще всего в 2-3 раза меньше_.
В ряде различных конфигураций системы тонкий клиент может загрузить
операционную систему по сети с определенного сервера, посредством
использования протоколов PXE, BOOTP, DHCP, TFTP и Remote Installation
Services (RIS).
Основными производителями тонких клиентов являются DEPO
Computers, Аквариус, OPTION, TOHK, AK Systems и Norma TS.
Толстый или Rich-клиент
- это приложение, обеспечивающее
48
противовес тонкому клиенту) расширенную функциональность независимо от
центрального сервера. Часто сервер в этом случае является лишь хранилищем
данных, а вся работа по обработке и представлению этих данных переносится на
машину клиента.
Достоинства:
толстый клиент обладает широким функционалом в отличие от тонкого;
режим многопользовательской работы;
предоставляет возможность работы даже при обрывах связи с сервером;
высокое быстродействие (зависит от аппаратных средств клиента).
Недостатки:
большой размер дистрибутива;
многое в работе клиента зависит от того, для какой платформы он
разрабатывался;
при работе с ним возникают проблемы с удаленным доступом к данным;
довольно сложный процесс установки и настройки;
сложность обновления и связанная с ней неактуальность данных;
наличие бизнес-логики. [14]
В разрабатываемой системе будет использовать «толстый» клиент, то есть
хранение данных будет осуществляться на удаленном сервере СУБД, а
обработка и представление этих данных будет осуществляться на машине
клиента.
На рисунке 1.7 показана схема взаимодействия веб-приложения с
удаленной БД. Данная схема и будет использоваться при разработке АИС.
49
Рисунок 1.7 – Схема взаимодействия веб-приложения с удаленной БД
При этом выполняются следующие действия: на действия пользователя
происходит обращение браузера к PHP-скрипту (1), его исполнение на веб-
сервере и формирование SQL запроса (2), передача запроса SQL серверу (3),
получение выборки данных (4), формирование и передача результата в браузер
(5). [11]
1.3.3. Выбор и обоснование способа приобретения ИС для
автоматизации задачи
Имеется два способа приобретения ИС для автоматизации задачи:
приобретение у сторонних разработчиков - дорогой вариант;
разработка собственными силами - дешевый вариант.
На основании рассмотренных программных аналогов было принято
решение автором дипломной работы о разработке собственной системы, которая
будет подходить под задачи предприятия, иметь требуемый функционал и иметь
меньшую стоимость приобретения и эксплуатации, в чем и заинтересовано
руководство данного предприятия.
50
1.4. Обоснование проектных решений по видам обеспечения:
1.4.1 Обоснование проектных решений по программному обеспечению
АИС будет разработано в виде веб-приложения, чтобы любой
пользователь мог войти на сайт и оставить заявку на ремонт.
Анализ начнется с существующих на данный момент языков и технологий
создания веб-проектов, число которых не очень большое, но каждый язык или
технология чем-то лучше другого и разработан для более узкой цели, чем
другой. Приведем существующие и наиболее часто используемые языки
программирования и технологии:
PHP. Расшифровывается как препроцессор гипертекста. По простому -
язык программирования, который генерирует страницы с использованием
гипертекстовой разметки. На сегодня оно является одним из самых популярных
направлений программирования для интернета: только русскоязычные сайты
наситывают десятки миллионов. Большая часть хостеров по умолчанию
включают для своих пользователей интерпретатор (Интерпретатор представляет
собой программу или аппаратное средство, которое анализирует, обрабатывает и
тут же выполняет исходную программу или запрос). Речь идет о довольно
простом языке, имеющем высокую скорость выполнения, который делает
возможным подключение сторонних модулей. Пользуясь PHP и дополнениями к
нему, можно работать с такими данными, как криптографические алгоритмы,
графика, базы данных и даже различные документы. Интерпретаторы PHP на
сегодня имеются для всех ОС [2];
ASP.NET. представляет собой продолжение технологии ASP. После
существенного рестайлинга перед программистами предстал пакет, который
схож с MicrosoftASP, но имеет значительно больший функционал. В целом и
общем среда превратилась в часть большого проекта по развитию Интернета -
платформа .NETFramework (.NETFramework - программная платформа,
выпущенная компаниейMicrosoft. Основа платформы представлена
исполняющей средой CommonLanguageRuntime (CLR), способной к выполнению
как обычных программ, так и серверных веб-приложений. .NETFramework
51
поддерживает создание программ, которые написаны на разных языках
программирования) Веб-проектам, написанным по новой технологии, присущи
более быстрая компиляция и выполнение. Для истинно качественного
программирования спроектировали новую среду разработки и отладчик, которые
отлавливают большую часть явных и неявных ошибок еще при написания кода.
К тому же, существенно переработана компиляция и исполнение кода между
операторамиt ry и catch. Возникли новые элементы управления, что сделало
существенно проще разработку пользовательского интерфейса; [3]
JSP. Технология, которая представлена страницами, написанными на
языке Java, которые выполняются чаще всего непосредственно на сервере. Здесь
все определяется компилятором. Если воспользоваться Jasper, то при
первоначальном выполнении создается высоко оптимизированный байтовый
код, который передается Java-машине на выполнение. Можно воспользоваться
услугами Tomcat сервлет-контейнера (контейнер сервлетов - программа,
представляющая собой сервер, который занимается системной поддержкой
сервлетов и обеспечивает их жизненный цикл в соответствии с правилами,
определёнными в спецификациях. Может работать как полноценный
самостоятельный веб-сервер, быть поставщиком страниц для другого веб-
сервера, напримерApache, или интегрироваться в JavaEEсервер приложений.
Обеспечивает обмен данными между сервлетом и клиентами, берёт на себя
выполнение таких функций, как создание программной среды для
функционирующего сервлета, идентификацию и авторизацию клиентов,
организацию сессии для каждого из них). Это является довольно популярным
решением для бизнеса – интернет-магазины, аукционы и т.д. Секрет состоит в
том, что оптимизированный код может исполняться на сервере или прямо в
пользовательском браузере, а язык дает возможность полноценно
программировать с классами, разделениями прав доступа к процедурам и иными
вкусностями, которые любезно предоставляет полноценная Java. [5]
В первую очередь, следует выбрать базу, на которой будет выстраиваться
каркас. Несомненно, позиция лидера у HTML, так как пользование XML и
прочими модификациями осложнено подключением технологий объектного
проектирования для веб-проектов. Да и новый метод всегда долго оттачивается,
52
пока все браузеры обеспечат полноценную поддержку. На этом можно
остановиться, если в проекте не подразумеваются всесторонняя
интерактивность, выплывающие картинки и сложный функционал. Для
большинства частных проектов необходимо лишь добавить несколько скриптов
на JSP, которые будут обрабатываться Tomcat на пользовательской машине.
Позитив заключается в том, что конечный пользователь всегда может отключить
выполнение скриптов, если пожелает в силу каких-нибудь причин. Следует
сказать, что серьезные проекты пытаются отказаться от использования скриптов.
Так или иначе, правило хорошего тона выражено использованием каскадных
стилей CSS. Если не требуется сложное форматирование, которое и в Photoshop
с трудом нарисовать удалось, то достаточно таблиц каскадных стилей CSS.
Теперь необходимо определиться, требуется ли использовать динамические
страницы. С одной стороны, это весьма красиво и эффектно, но с другой
стороны, для работы такого сайта нужен канал, имеющий большую пропускную
способность. Иначе динамика превратится в ужасные подтормаживания. Не
любят использование подобных технологий и SEO-оптимизаторы, поскольку
поисковые машины практически не индексируют такие сайты. В большей
степени это затронуло AJAX. По этой причине наиболее подходящее решение
для серьезного проекта представлено использованием HTML как основы
представления, которая подкреплена AJAX и каскадными стилями. После
выбора технологий для клиентской части и для дизайна системы - осталось
определиться непосредственно с серверными страницами [7].
Чтобы обеспечить аутентификацию пользователей и работу с БД, лучше
воспользоваться или платформой dot.net (ASP, ASP.NET) или PHP. Выбор между
PHP и ASP.NET связан исключительно с возможностями хостинга или сервера и
знаниями программиста. Следует сказать, что интерпретатор для платформы
.NET чаще всего является прерогативой собственного или выделенного сервера,
которая стоит денег. На виртуальном хостинге намного проще использовать
PHP, веб-проект можно установить через веб-интерфейс, и для этого требуются
минимальные усилия. Данный язык предназначен для того, чтобы создать веб-
проекты, по нему имеется много информации в сети Internet, сам язык
программирования является не очень сложным, имеются отличные среды для
53
разработки на этом языке, а также возможность в процессе работы сразу видеть
результат на своем локальном компьютере, не обращаясь каждый раз к
удаленному серверу.
После оценки преимуществ и недостатков указанных выше языков выбор
остановился на языках HTML – для разметки страниц, CSS – для оформления
страниц, JavaScript и технологии, базирующейся на нем AJAX – для быстрой
работы страницы, для проверки введенных данных на корректность, PHP – как
основной веб-язык. [8]
При разработке АИС будет использоватьсяjs-фреймворк jquery.
jQuery является библиотекой JavaScript, которая фокусируется на
взаимодействии JavaScript и HTML. Библиотека jQuery способствует легкому
получению доступа к любому элементу DOM, обращению к атрибутам и
содержимому элементов DOM, манипулированию ими. Также библиотека jQuery
дает удобный API для работы с AJAX [7].
Возможности:
движок кроссбраузерных CSS-селекторов Sizzle, который выделился в
отдельный проект;
переход по дереву DOM, включая поддержкуXPath как плагина;
события;
визуальные эффекты;
AJAX-дополнения;
JavaScript-плагины.
Точно так же, как CSS отделяет визуализацию от структуры HTML,
JQuery отделяет поведение от структуры HTML. К примеру, вместо прямого
указания на обработчик события нажатия кнопки, управление передаётся JQuery,
которая идентифицирует кнопки и затем преобразует его в обработчик события
клика. Такое разделение поведения и структуры также обозначают как принцип
ненавязчивого JavaScript. [12]
В библиотеке jQuery содержится функциональность, полезная для
максимально широкого круга задач. В то же время, разработчики библиотеки не
ставили задачу совмещать в jQuery функции, которые подошли бы всюду, так
как это привело бы к большому коду, большая часть которого не востребована.
54
Поэтому реализовали архитектуру компактного универсального ядра
библиотеки и плагинов. Это делает возможным собрание для ресурса именно
той JavaScript-функциональности, которая на нём была бы востребована [7].
Следует выбрать среду разработки проекта (IDE) для языка PHP.
Сравнение IDEприведено в таблице 1.5.
Таблица 1.5СравнениеIDE
Название
Возможности
Codelobster
PHP Edition
подсветка синтаксиса, автодополнение команд, тегов,
переменных, контекстная и динамическая помощь, встроенный
собственный PHP debugger, автоматическая проверка
синтаксиса, сворачивание кода, HTML/CSS инспектор по типу
Firebug
PhpStorm
поддержка PHP 5.1 - 5.5, автодополнение кода, поддержка
PHPDoc, проверка кода на лету, поддержка редактирования
шаблонов Smarty, MVC представление для Symfony2 и Yii
фреймворков, распознавание кода, запакованного в PHAR-
архивы[3]
PHP
Development
Tools
сворачивание кода, рефракторинг, генерация кода (методы
доступа к членам класса, мастер классов и интерфейсов),
анализ и исправление кода, поддержка PHP 5, иерархическое
представление классов и методов, отладка PHP-скриптов
Перечислив возможности, которые имеют рассмотренные среды по
создания веб-проектов, следует обратить внимание на то, что для
разрабатываемого веб-проекта требуется автоматическая подстановка
переменных и методов, а также поддержки интеграции с системами контроля
версий (GitHub). Поэтому, выбор пал на среду разработки PhpStorm, которая
после индексации каталога с проектами позволяет обращаться к любому методу
либо переменной, а также поддержка аннотаций PHPDocпозволяет задавать
поведение переменных и методов без написания дополнительных строчек кода.
Использование двух видов отладчика выявлять ошибки при разработке и
локализовать их, а встроенный мастер среды позволяет генерировать таблицы
БД на основании описания классов. [15]
Так как АИС будет представлять собой веб-приложение, то при его
разработке требуется использовать веб-сервер. Наиболее часто используемые
веб-серверы - это Apache и Nginx.
В наше время существует несколько комплексов ПО, в основе которых
55
лежит необходимый набор программных средств для разработки веб-
приложений на языке PHP, а также включен и веб-сервер, СУБД. Это
комплексы:
WAMP;
LAMP;
XAMP.
WAMP является набором (комплексом) серверного программного
обеспечения, который широко используется для разработки, предоставления
веб-сервисов. WAMP назван по первым буквам компонентов, которые входят в
него:
Windows - операционная система;
Apache - веб-сервер;
MySQL - СУБД;
PHP - язык программирования.
В комплексе LAMP вместо ОС Windows представлена ОС Linux. Все
прочие составляющие набора идентичны WAMP. Хотя изначально программные
продукты, которые входят в состав этих комплексов, не разрабатывали
специально для работы друг с другом, такие связки превратились в довольно
популярные среди пользователей Windows и Linux. [16]
В комплексе XAMP ОС представлена любая из трех ОС - Windows,
MacOS, Linix.
Рассмотрев имеющиеся комплексы ПО для разработки веб-приложений,
мы выбрали комплекс WAMP, поскольку разработка АИС будет осуществляться
на ОС Windows 8 и веб-сервером будет Apache 2.4. [9]
Так как данные АИС будут храниться в БД, требуется выбрать СУБД.
СУБД представляет собой систему управления базами данных,
совокупность программных и лингвистических средств, имеющих общее или
специальное назначение, которые обеспечивают управление созданием и
применением баз данных. [13]
Существующие и наиболее часто используемые в наше время СУБД:
Microsoft Office Access – реляционная СУБД корпорации Microsoft.
Обладает широким спектром функций, в том числе связанными запросами,

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

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