Диплом: Автоматизация приема заявок на ремонт и модернизацию ПК и ИП "Platinum"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
56
1) Классификатор сотрудников
Структурная схема классификатора сотрудников представлена на рис. 2.2..
K
1
= [XXXXX]
код сотрудников
Рисунок 1.9 Структурная схема классификатора сотрудников
Классификатор клиентов имеет порядковую систему кодирования
Объект кодирования: сотрудник
Исходная мощность множества: М = 100000
Длина кода: L = lg100000 = 5
2) Классификатор заявок
Структурная схема классификатора представлена на рис. 2.3.
.
K
1
= [XXXXX]
Код заявки
Рисунок 1.10 Структурная схема классификатора заявки
Объект кодирования: заявка
Исходная мощность множества: М = 100000
3) Классификатор нарядов
Структурная схема классификатора представлена на рис. 2.4.
.
K
1
= [XXXXX]
Код наряда
Рисунок 1.11 Структурная схема классификатора заявки
Объект кодирования: наряд
Исходная мощность множества: М = 100000
1.4.2 Обоснование проектных решений по программному обеспечению
Программное обеспечение (ПО) — совокупность программ для реализации
целей и задач автоматизированной системы. [2]
57
ПО делится на два вида: общее (операционные системы, операционные
оболочки, компиляторы, интерпретаторы, программные среды для разработки
прикладных программ, СУБД, сетевые программы и т.д.) и специальное
(совокупность прикладных программ, разработанных для конкретных задач в рамках
функциональных подсистем, и контрольные примеры). [3]
Для функционирования и использования программы необходима
операционная система. Операционные системы осуществляют управление работой
персональных компьютеров, их ресурсами, запускают на выполнение различные
прикладные программы, выполняют всевозможные вспомогательные действия по
запросу пользователя. ОС подразделяются на однопользовательские,
многопользовательские, и сетевые. К факторам, влияющим на выбор конкретной ОС,
относятся [2]:
необходимое число поддерживаемых программных продуктов,
требования к аппаратным средствам,
требование поддержки сетевой технологии,
наличие справочной службы для пользователя,
быстродействие,
наличие дружественного интерфейса и простота использования.
На компьютерах, входящих в состав АРМов сотрудников на данный момент
установлена ОС MS Windows 10, это является оптимальным выбором, т.к. ОС
семейства Windows наиболее распространённые на сегодняшний день, поэтому с
приходом нового сотрудника не придётся его переобучать.
Для разработки информационной наиболее целесообразно использовать
клиент-серверную архитектуру и разрабатывать веб-приложение [3].
Для этого необходимо выбрать язык программирования и СУБД.
Для выбора языка программирования необходимо определить требования к
среде программирования. В процессе анализа требований и классификации
проектируемого АРМ были определенны следующие требования к среде
проектирования [6]:
кроссплатформенность, необходимая для интеграции с другими
подсистемами;
58
гибкость, позволяющая без дополнительных затрат изменять,
дорабатывать информационную систему;
безопасность;
язык программирования должен предоставлять широкие возможности по
работе с современными СУБД;
обеспечивать универсальность клиентских приложений;
открытость исходного кода, которая позволить динамическое
совершествования ИС и исправление ошибок.
Для выбора языка программирования необходимо провести анализ
существующих решений. Для этого выберем наиболее часто используемые языки и
проведем сравнение [7].
Perl (Practical Extraction and Reporting Language) - является одним из наиболее
мощных и популярных языков программирования.
Perl – полнофункциональный сложный язык. Он привлекателен тем, что
заполняет разрыв между методами программирования командного процессора Unix и
С-приложениями, обладая простотой первых и функциональностью последних [10].
Perl - это интерпретируемый язык, оптимизированный для сканирования
произвольных текстовых файлов, извлечения информации из этих файлов и печати
отчетов на основе этой информации. С его помощью также можно решать многие
задачи системного управления. При разработке этого языка целью была не столько
красота (небольшой объем, элегантность и оптимальность), сколько практичность
(простота в использовании, эффективность и полнота). Синтаксис выражений Perl
находится в полном соответствие с синтаксисом выражений языка С. Perl не
ограничивает произвольно объем ваших данных. Рекурсия может быть
неограниченной глубины, а, кроме того, язык применяет методы сопоставления с
образцом для быстрого сканирования больших объемов данных [11].
Язык Perl, использующий простые синтаксис, типы данных и структуры,
довольно прост в изучении; хорошо написанные Perl-программы легки для чтения и
понимания. Однако за этой простотой скрывается относительно богатый набор
функций Perl, который включает в себя встроенный символьный отладчик и
поддержку объектно-ориентированного программирования. С помощью сложного
механизма трассировки потока данных Perl может определить, поступают ли данные
59
из небезопасного источника, и вовремя предотвратить потенциально опасные
операции.
Perl легко переносим, он работает на всех основных и многих менее значимых
платформах, может получать доступ к соединениям TCP/IP и интегрироваться с
языком С. Он обладает также многими специализированными расширениями для
доступа к базам данных и каталогам Х.500. Однако главным его достоинством
является большое количество новостей и Web-узлов, что обеспечивает
программистам на Perl поддержку и ресурсы. Накладываемые ограничения
немногочисленны, он исключительно гибок и обладает широкими возможностями
поддержки [12].
Сценарии или программы на языке Perl представляют собой чисто текстовые
файлы, преобразуемые на этапе выполнения в байт-кодовые версии, что позволяет
выявлять ошибки и выполнять трассировку потоков данных. Перед исполнением
интерпретатор Perl конвертирует байт-кодовые представления в машинные коды [15].
PHP представляет собой скриптовый язык программирования, который
применяется в основном в сфере различных Интернет-приложений. Синтаксис
основных конструкций PHP похож на язык программирования C++. PHP – это
достаточно молодой язык, пришедший на замену Perl, он в большей степени
ориентирован на web-программирование, не сложен в изучении, имеет большое
количество разнообразных подключаемых модулей, расширяющие его практическое
применение. Главной целью применения PHP является создание динамического
HTML, позволяющего отображать различный контекст в приложении, в зависимости
от действий пользователя [14].
Такие свойства PHP как расширяемость ядра с помощью модулей, открытость
исходного кода, способность взаимодействия с базами данных, поддержка различных
протоколов и объектно-ориентированного программирования привели к резкому
росту популярности PHP среди создателей веб-сайтов.
Преимуществами PHP по сравнению с популярным языком Perl, является
простой синтаксис, что делает его легче в изучении, и более четкий и менее раздутый
исходный код, что делает его легче при разработке модулей [16].
Кроме того, PHP работает как часть веб-сервера, что существенно экономит
ресурсы хостинга: PHP, в отличие от сценариев CGI, не приводит к порождению
60
нового процесса в операционной системе. Особенно это преимущество становится
заметным, когда посещаемый сайт состоит из множества страниц, на которых
выполняются относительно небольшие куски кода PHP. Аналогичный вариант с
кодом на Perl порождал бы огромное число новых процессов [18].
В качестве недостатка PHP 3 выделяют его низкую по сравнению с Perl
производительность на сложных приложениях при обработке больших скриптов, то
есть в тех случаях, когда сайт состоит из нескольких страниц, но с длинным кодом. В
таких ситуациях выгодней использовать CGI. Поэтому при выпуске новой версии
PHP 4 основное внимание было уделено повышению быстроты работы. Также были
затронуты вопросы безопасности и была внедрена поддержка сессий. Новая версия
PHP содержала в себе ядро Zend Engine, которое позволило добиться увеличения
производительности и стабильности за счет более качественной поддержки модулей.
В дальнейшем проводились работы по улучшению технологии Zend в части
поддержки модели объектно-ориентированного программирования, что вылилось в
создание PHP версии 5. Это версия включает в себя ядро Zend Engine 2, поддержку
языка разметки XML, в PHP появились такие понятия объектно-ориентированной
модели как деструкторы, интерфейсы, клонирование объектов [19].
Rails — это полноценный, многоуровневый фреймворк для построения веб-
приложений, использующих базы данных, который основан на архитектуре Модель-
Представление-Контроллер (Model-View-Controller, MVC).
Rails предоставляет однородную среду разработки на Ruby для динамичных
AJAX-интерфейсов: обработки запросов и выдачи данных в контроллерах. Для
работы необходима только — это база данных и веб-сервер.
Rails — это, прежде всего, инфраструктура, поэтому среда подходит для
любого типа веб-приложений.
Rails работает со многими веб-серверами и СУБД. В качестве веб-сервера
рекомендуется использовать Apache или lighttpd как с FastCGI, так и с SCGI.
В качестве СУБД можно использовать MySQL, PostgreSQL, SQLite, Oracle, SQL
Server, DB2 или Firebird. Использовать Rails можно на практически любой
операционной системе, однако для развертывания рекомендуются системы семейства
Unix.
61
ASP.NETэто часть технологии .NET, используемая для написания мощных
клиент-серверных интернет приложений. Она позволяет создавать динамические
страницы HTML. ASP.NET возникла в результате объединения более старой
технологии ASP (активные серверные страницы) и .NET Framework. Она содержит
множество готовых элементов управления, используя которые можно быстро
создавать интерактивные web-сайты. Также есть возможность использовать сервисы,
предоставляемые другими сайтами, прозрачно для пользователей собственной
разработки.
ASP.NET - это унифицированная среда разработки Web-приложений,
обеспечивающая разработчиков сервисами, необходимыми для построения
приложений уровня предприятия. ASP.NET имеет возможность работы с
протоколами. ASP.NET обеспечивает новую модель разработки и инфраструктуру,
которые позволяют создавать функциональные приложения нового типа.
ASP.NET является составной частью операционной системы. Использование
компилированного кода приводит к автоматическому росту производительности. В
результате страницы ASP.NET стали намного более похожими на традиционные
приложения.
ASP.NET имеет много программных усовершенствований, например,
кэширование, компиляцию кода, а также большую степень простоты и безопасности
и обеспечение надежности, которая может сохраняться даже во время аварий на
серверах
ASP.NET обеспечивает встроенную поддержку сеансов, которая является
переносимой с одной Web-формы на другую. ASP.NET запоминает информацию по
состоянию пользователя или запрашивает входные переменные.
Благодаря этим и другим усовершенствованиям ASP.NET намного
увеличивает возможности разработчиков – за счет чего она популярна и очень быстро
развивается.
На основании проведенного анализа выбран язык PHP. Были выделены
достоинства и недостатки наиболее часто используемых программных средств.
Проведем сравнение PHP и ASP.NET
Active Server Pages (ASP) - это технология Microsoft, позволяющая создавать
динамические web страницы. ASP поддерживает несколько языков
62
программирования, наиболее распространенным является VBScript (разработка
Microsoft). Соответственно, ASP - это технология для Windows систем.
PHP - аналог ASP, который может работать как в среде UNIX так и в
Windows. PHP - это система разработки скриптов, включающая в себя CGI -
интерфейс, интерпретатор языка и набор функций для доступа к базам данных и
различным объектам WWW.
PHP выигрывает у ASP, как в плане технических (функциональных)
возможностей, так и по критерию популярности/общедоступности.
ASP никогда не станет быстрее PHP. ASP технология основана на модели
COM (COM - Component Object Model), т.е. работа с объектами и компонентами.
Проверка скорости работы с MS SQL 7.0.
PHP: используя интерфейс ODBC ( Open Database Connectivity) доступ к базе
данных - 9.54 сек.
ASP: Используя COM интерфейс для работы с ODBC - 17.28 сек (т.е. на 80%
дольше).
Открытость кода PHP, а значит свободный доступ всех желающих к
разработке и тестированию движка PHP - все это позволило создать более
совершенную технологию, нежели ту, которая разрабатывалась в недрах Microsoft.
Проведем сравнение PHP и Perl
Преимуществами PHP по сравнению с популярным языком Perl, является
простой синтаксис, что делает его легче в изучении, и более четкий и менее раздутый
исходный код, что делает его легче при разработке модулей. PHP в большей степени
ориентирован на web-программирование и не сложен в изучении. Недостатком PHP 3
является его низкая по сравнению с Perl производительность на сложных
приложениях при обработке больших скриптов. Но в версиях PHP 4 и 5 эта проблема
решена. PHP доступен для большинства операционных систем современных web-
серверов.
В качестве языка программирования интерфейсов разрабатываемой системы
наиболее подходящим представляется PHP. Основными факторами, послужившими
в пользу выбора PHP, являются:
1. PHP «технически» выигрывает среди рассматриваемых языков
программирования.
63
2. PHP имеет огромную популярность.
3. PHP имеет возможность функционирования с элементами систем: HTTP-
протоколом, языком HTML и встроенной поддержки СУБД.
4. Для PHP характерна доступность, благодаря его невысокой стоимости.
В рамках данного проекта к СУБД предъявляется ряд специфических
требований:
поддержка транзакций,
поддержка внешних ключей,
корректная работа с русским языком,
наличие инструмента администрирования с графическим интерфейсом,
возможности доступа к данным посредства языка запросов SQL,
возможности резервного копирования базы данных.
Проектируемая БД должна использоваться для накопления, хранения и
обработки данных. Узким местом при разработке базы данных для информационно-
аналитических систем является хранение большого количества элементов - вариантов
решений. Решение задачи оптимизации при глобальном поиске в информационно-
аналитических системах, а так наличие малого количества запросов от самих
пользователей информационно-аналитической системы позволяют не устанавливать
жесткие требования к производительности СУБД.
На сегодняшний день разработаны десятки различных СУБД. Современные
СУБД должны обладать надежными средствами защиты от несанкционированного
доступа и обеспечивать высокую скорость выполнения запросов SQL. Кроме того,
для них должны быть разработаны мощные интерфейсы, позволяющие обращаться к
СУБД из программ, написанных практически на любых языках программирования, а
также они должны иметь удобный инструментарий администратора СУБД,
предназначенный для создания и сопровождения баз данных.
На рынке серверов баз данных представлено очень много качественных
решений При первоначальном отборе системы для использования в написании
проекта использовались следующие критерии:
1. Распространённость и популярность продукта. В этом критерии
рассматривались локализованность, т.к возможность использования национальных
языков не во всех системах реализована полностью; качество и полнота
64
документации, т.к. отсутствие ее затрудняет создание и отладку приложений, а также
администрирование будущей системы; распространенность СУБД.
2. Простота использования, администрирования.
3. Надёжность и устойчивость сервера. Снижает затраты на поддержание
работоспособности Системы.
4. Надёжность данных при их хранении и обработке. Требуется меньше
резервных операций обработки данных.
5. Совместимость с выбранной программной платформой. СУБД должна
надёжно и устойчиво работать под выбранной операционной системой
6. Совместимость с распространёнными серверами приложений. Имеет
место быть скорее обратный критерий – совместимость распространённых серверов
приложений с выбираемым сервером баз данных. Отчасти перекликается с первым
критерием – практически все распространённые СУБД поддерживаются наиболее
популярными серверами приложений.
Рассмотрим следующие СУБД:
MySQL разработал Михаэль Видениус (Michael Widenius). MySQL является
относительно небольшой и быстрой реляционной СУБД, основанной на традициях
Hughes Technologies Mini SQL (mSQL). Программное обеспечение MySQL - это ПО с
открытым кодом. ПО с открытым кодом означает, что применять и модифицировать
его может любой желающий. MySQL является очень быстрым, надежным и легким в
использовании. MySQL обладает также рядом удобных возможностей,
разработанных в тесном контакте с пользователями. MySQL является системой
клиент-сервер, которая содержит многопоточный SQL-сервер, обеспечивающий
поддержку различных вычислительных машин баз данных, а также несколько
различных клиентских программ и библиотек, средства администрирования и
широкий спектр программных интерфейсов (API). MySQL доступен на более чем
двадцати различных платформах, включая основные направления Mac OS X, UNIX и
Microsoft Windows.
MySQL можно назвать хорошим решением для небольших и средних
приложений. Часто MySQL применяют как сервер, к которому адресованы сетевые
или удалённые клиенты, но в комплект поставки включена библиотека внутреннего
сервера, которая помогает включать MySQL в автономные сервисы. Если нужно
65
реализовать web - приложение, MySQL то, что нужно, при этом качественно
работающее на серверах локального типа.
MySQL популярна благодаря простоте, малому порогу вхождения и
повсеместному применению.
MySQL является наиболее популярной СУБД, имеющей личный сервер,
хороший функционал и много прикладных инструментов [1].
Плюсы MySQL:
• Простота использования;
• Поддержка базовых функций SQL;
• Грамотная защитная система;
• Работа с огромными объемами данных;
• Быстрота работы.
Благодаря этим плюсам для проекта выбрана СУБД MySQL.
Также важно корректно выбрать язык программирования, при помощи
которого будет создано ПО для работы с БД.
PostgreSQL - это объектно-реляционная СУБД, основанная на продукте
POSTGRES версии 4.2, который был разработан в Калифорнийском университете, в
компьютерном департаменте Беркли. POSTGRES был пионером во многих
концепциях, которые намного позднее стали доступными в некоторых коммерческих
СУБД.
PostgreSQL ведёт своё происхождение от оригинального кода Беркли и
является продуктом с открытыми исходными текстами. PostgreSQL поддерживает
стандарты SQL92 и SQL99,
И поскольку PostgreSQL распространяется под либеральной лицензией,
любой может свободно использовать, изменять и распространять PostgreSQL в
любых целях: личных, коммерческих или академических.
В качестве СУБД будет использоваться СУБД Mysql, поскольку она
обеспечивает поддержку всех необходимых для разрабатываемого АРМ функций.
Для функционирования создаваемого АРМ необходим веб-сервер.
В настоящее время существует множество веб – серверов, которые можно
использовать в данном проекте. Наибольшую известность и распространенность

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

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