Диплом: Автоматизация приема и обработки заявок отделом техподдержки ООО "Металл Профиль"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
59
1.4.2 Обоснование проектных решений по программному
обеспечению
Программное обеспечение (ПО) включает совокупность программ,
реализующих функции и задачи ИС и обеспечивающих устойчивую работу
комплексов технических средств. В состав программного обеспечения входят
общесистемные и специальные программы, а так-же инструктивно-
методические материалы по применению средств программного обеспечения и
персонал, занимающийся его разработкой и сопровождением на весь период
жизненного цикла ИТ [2].
В настоящее время наиболее распространены следующие ОС:
Windows 10,
Windows 7,
Linux Ubuntu
Apple Mac OS X.
Сравнение ОС наиболее логично проводить по следующим критериям:
Интерфейс
Безопасность
Программное обеспечение
Цена и производительность
Установленная на компьютерах пользователей операционная система
Windows7 является уже устаревшей, а WindowsVista отличается от нее только в
худшую сторону.
Сильной стороной Мас OS является практическое отсутствие вирусов для
Мacintosh. Минус – это то, что MacOS устанавливается только на компьютеры
Мacintosh производства фирмы Apple.
Большинство дистрибутивов Linux являются бесплатными, их можно
свободно и бесплатно использовать. На основе программного кода как самой
Linux, так и входящих в неё программ и на их основе создавать свои продукты.
Поставляется со стандартным набором прикладного ПО. В Linux пользователь
60
может выбрать тот дистрибутив, который больше подходит для решения его
задач, а затем ещё и оптимизировать систему «под себя». Существование
графического интерфейса освобождает от необходимости править
конфигурационные файлы в неудобном виде. Положение дел с безопасностью в
Linux в общем очень похоже на Mac OS X. Она находятся на очень высоком
уровне в обеих системах и значительно опережают Windows.
Результатом политики GPL явилось то,что сейчас имеется более тысячи
разных дистрибутивов Linux. Не все из них достойны внимания, пользователю
трудно разобраться в таком множестве версий и выбрать то, что нужно. Кроме
того, бесплатность подразумевает практически полное отсутствие технической
поддержки пользователей. Другой минус – не такая уж и бесплатная получается
система, ведь нужно либо купить с ней диск, что тоже деньги, либо скачивать
[10].
Основная особенность Windows - ее массовое распространение. Связано
это с тем, что это операционная система, созданная для пользователей, она не
заставляет пользователя подстраиваться под систему, она подстраивается под
его потребности. Это самая распространенная в мире операционная система,
несмотря на то, что по общественному мнению она самая нестабильная и
ненадежная.
Наиболее правильным в данной ситуации является выбор операционной
системы Windows 7 по следующим причинам:
Знакомый пользователям интерфейс;
Отсутствие необходимости переобучения;
Легкость администрирования;
Меньшая стоимость, чем у ОС компании Apple;
Наличие всех необходимых функций.
Программное обеспечение – совокупность математических методов,
моделей, алгоритмов и программ для реализации целей и задач информационной
системы, а так-же нормального функционирования комплекса технических
средств.
61
В состав программного обеспечения входят общесистемные и
специальные программные продукты, а так-же техническая документация.
При выборе программного обеспечения для разработки будем
рассматривать следующие характеристики: надёжность; эффективность;
стоимость; понятность пользователю; простота настройки; простота оформления
экранных и печатных форм.
Для выбора языка программирования необходимо определить требования
к среде программирования. В процессе анализа требований и классификации
самой проектируемой системы были определенны следующие требования к
среде проектирования [9]:
кроссплатформенность, необходимая для интеграции с другими
подсистемами;
гибкость, позволяющая без дополнительных затрат изменять,
дорабатывать информационную систему;
безопасность;
язык программирования должен предоставлять широкие
возможности по работе с современными СУБД;
открытость исходного кода,которая позволит динамическое
совершенствования ИС и исправление ошибок.
В настоящее время наиболее распространены следующие скриптовые
языки веб-программирования.
Visual Basic Scripting Edition;
Jscript;
Python;
Ruby;
PHP;
Perl.
Проведем сравнительный анализ (таблица 1.6) перечисленных языков
программирования по 6 критериям.
62
Таблица 1.5 Сравнительный анализ языков программирования
Критерий
Perl
РНР
ASP.NET
JSP
Ruby
Кроссплатформенность
+
+
+
+
+
Гибкость
+
+
+
+
-
Безопасность
-
+
+
+
+
Поддержка
современных СУБД
+
+
+
+
+
Универсальность
-
+
-
-
-
Открытость исходного
кода
+
+
-
-
-
Проведем анализ актуальных на настоящий момент средств разработки.
Анализ начнется с имеющихся на данный момент языков и технологий
создания веб-проектов, количество которых не очень большое, но каждый язык
или технология в чем-то лучше другого и разработан для более узкой цели, чем
другой. Приведем существующие языки программирования и технологии и
опишем их [10]:
1. PHP можно расшифровать как гипертекстовый препроцессор. Если
готовить простым языком, то это язык программирования, который используется
для генерации страниц сайта, ориентирующихся на гипертекстовую разметку.
2. ASP – технология, представляющая собой некоторые страницы на
сервере, которые при вызове выполняют некоторый программный код. Как
поведет себя пользователь, так и отреагирует страницы. Данная технология
позволяет создавать страницы сайтов в виде небольших приложений, очень
похожими на обычные программы.
3. Perl раньше позиционировался для создания отчетов на основе
собранных из хранилища данных, поэтому использовался он в основном для
работы с большими базами данных, из которых было нужно изымать отдельные
материалы и представлять в более читабельном виде.
4. Python являются языками высокого уровня. Создатели потрудились
на славу, чтобы любому программисту было очень удобно работать с готовыми
кодами, а ПО под управлением Python имело высокую скорость выполнения.
Таким образом, определив плюсы и минусы рассмотренных выше языков,
выбор был таков: HTML – для разметки страниц сайта, CSS – для оформления
63
стиля страницы, JavaScript и базирующийся на нем AJAX – для быстрой работы
сайта и проверки переданных данных на корректность, PHP как основного
языка проекта, поскольку он предназначен для создания подобных разработок, а
так-же по нему всегда можно найти большое количество информации в
интернете, сам язык нельзя назвать сложным, существует много сред для
разработки на нем, результат работы можно видеть в режиме реального времени
на своем ПК без обращения к удаленному серверу.
Для разработки проекта будем использовать html-редактор notepad++.
Для реализации поставленных задач можно использовать любую
современную СУБД. Для удобного взаимодействия пользователя с системой
необходимо будет тщательно продумать интерфейс системы - чтобы он был
простой и в то же время функциональный.
Базы данных могут быть [8]:
Пространственная (англ. spatial database): БД, в которой
поддерживаются пространственные свойства сущностей предметной области.
Такие БД широко используются в геоинформационных системах.
Временная, или темпоральная (англ. temporal database): БД, в
которой поддерживается какой-либо аспект времени, не считая времени,
определяемого пользователем.
Пространственно-временная (англ. spatial-temporal database) БД: БД,
в которой одновременно поддерживается одно или более измерений в аспектах
как пространства, так и времени.
Спиральная (англ. round-robin database): БД, объём хранимых данных
которой не меняется со временем, поскольку в процессе сохранения новых
данных они заменяют более старые данные. Одни и те же ячейки для данных
используются циклически.
В данном проекте необходимо использовать пространственно-временную
базу данных.
Базовые идеи современных IT базируются на концепции, согласно которой
данные должны быть помещены в БД с целью отображения верного измерения
64
реального мира и удовлетворения потребностей потребителей в информации.
Базы данных разрабатываются и работают под управлением специальных
программных средств, которые принято называть СУБД.
Любая СУБД дает возможность выполнять 4 базовые операции с данными:
• Добавление в таблицу одной и более записей;
• Удаление из таблицы одной и более записей;
• Обновление значения некоторых полей в одной и более записях;
• Нахождение одной или нескольких записей, удовлетворяющих
заданному условию.
Для реализации этих операций используется механизм запросов. Итогом
выполнения запросов становится либо отобранное по нескольким критериям
множество, либо корректировка в таблицах.
Любая современная СУБД имеет следующие компоненты:
• Ядро, отвечающее за управление информацией во внешней памяти и
ОЗУ, а так-же фиксирование изменений;
• Процессор языка БД, позволяющий оптимизировать запросы на
извлечение и изменение данных, а так-же применение машинно-независимого
исполняемого внутреннего кода;
• Компонент поддержки времени исполнения, преобразующую
программы манипуляции данными, которые реализуют взаимодействие
пользователя с СУБД;
• Внешние сервисные утилиты, поддерживающие ряд
дополнительных возможностей по обслуживанию ИС.
СУБД различают по нескольким моделям:
• Объектно-ориентированные;
• Объектно-реляционные;
• Реляционные
• Иерархические;
• Сетевые.
Опишем применяемые и существующие сегодня СУБД:
65
• Microsoft Office Access является реляционной СУБД от компании
Microsoft. Включает в себя широкий спектр функций - связанные запросы,
взаимодействие с внешними таблицами и БД. Благодаря встроенному языку
VBA, Access сам поддерживает создание приложений, работающих с БД;
• dBase относится к семейству часто применяемых СУБД, и так-же
считается языком программирования, который в этих СУБД используется;
Firebird (FirebirdSQL) можно назвать компактной,
кроссплатформенной и свободной СУБД, работающей на Linux, Microsoft
Windows и различных Unix платформах;
• PostgreSQL является свободной объектно-реляционной СУБД;
• SQLite позиционируется как компактная встраиваемая реляционная
БД. Исходный код библиотеки является открытым.
Существует большое количество СУБД, написанных для различных ОС и
платформ, к ним можно отнести Oracle, MySQL, mSQL, PostgreSQL, IBM DB2,
SQL Server, Teradata, Interbase, Universe, GNU SQL Server, Sybase, Ingres,
Informix, Empress, LEAP RDBMS, FirstBase, Typhoon, SQL/DS, Daffodil DB,
Cloudscape, Compad Non-Stop SQL MX и SQL/MP, Ocelot, Progress, Linter
RDBMS SQL [5].
Использование той или иной СУБД часто становится субъективным и
зависит от различных параметров, одним из которых так или иначе становится
стоимость. Язык описания данных (ЯОД) характеризуется средствами описания
данных в БД и их связями друг с другом.При помощи средств языка определяется
структура БД, пароли, форматы записей, защищающие данные. Язык
манипулирования данными (ЯМД) является языком реализации операций над
данными, который так-же дает возможность изменять их строение.
Для разных СУБД создание этих уровней языков может быть различно. В
одних случаях ЯОД и ЯМД необходимо реализация пользователем программы
только “вручную”, в других (что характерно на сегодняшний день) в СУБД есть
инструменты полностью наглядной разработки программ. Для этого в
современных СУБД есть редакторы экранных форм, отчетов. Механизмами
66
(инструментами) таких редакторов становятся различные поля (ввода, вывода и
т.д.), процедуры обработки разных типов (запросы, таблицы, отчеты, формы).
Опираясь на созданные пользователем объекты программы генераторы создают
программный код на языке отдельной машины или на промежуточном языке.
Для примера возьмем три СУБД, среди которых имеются и бесплатные, и
платные: MS SQL Server, MySQL, Oracle. Опишем кратко каждую из трех систем.
MS SQL Server. Исходный код MS SQL Server (до версии 7.0) базировался
на коде Sybase SQL Server, что дало возможность Microsoft выйти на рынок БД
для бизнеса, где конкурировали Oracle, IBM, и затем Sybase. Microsoft, Sybase и
Ashton-Tate сначала совместно создали и выпустили на рынок первую версию
программы, названной SQL Server 1.0 для OS/2 (около 1989 года), которая стала
почти аналогом Sybase SQL Server 3.0 для Unix, VMS и др. Microsoft SQL Server
4.2 был полностю готов в 1992 году и входил в состав ОС Microsoft OS/2 версии
1.3. Официально Microsoft SQL Server версии 4.21 для ОС Windows NT
представили одновременно с релизом самой Windows NT (версии 3.1). Microsoft
SQL Server 6.0 стал первой версией SQL Server, разработанной только для
архитектуры NT и без помощи в разработке самой Sybase.
Сервер БД Microsoft SQL Server использует в качестве языка запросов
версию языка SQL, названную Transact-SQL (сокращённо T-SQL).Язык
поддерживал дополнительный синтаксис для хранимых процедур и реализует
поддержку транзакций (непосредственное взаимодействие БД с управляющим
ПО).
В момент взаимодействия с сетью Microsoft SQL Server и Sybase ASE
применяется протокол уровня приложения, названный Tabular Data Stream (TDS,
протокол передачи табличных данных). Протокол TDS так-же был создан в
проекте FreeTDS для обеспечения некоторым приложениям стабильного
взаимодействия с БД Microsoft SQL Server и Sybase.
Для доступа к данным Microsoft SQL Server имеет поддержку Open
Database Connectivity (ODBC) – это интерфейс для работы предложения с СУБД.
Версия SQL Server 2005 позволяет подключаться пользователям через веб-
67
сервисы, которые работают на протоколе SOAP. Это дало возможность
клиентским программам, выпущенным не для использования в среде Windows,
без проблем соединяться с SQL Server. Microsoft так-же создала и опубликовала
сертифицированный драйвер JDBC, дающий возможность приложениям под
управлением Java (например, BEA и IBM WebSphere) без проблем
взаимодействовать с Microsoft SQL Server 2000 и 2005.
SQL Server так-же имеет возможность зеркалирования и кластеризации
БД. Кластер сервера SQL является некоторой совокупностью одинаково
составленных серверов; эта схема упрощает распределение рабочей нагрузки
между двумя и более серверами. Все сервера содержат одно виртуальное имя, и
данные отправляются по IP-адресам машин кластера во время рабочего цикла. В
случае отказа или сбоя на одном из серверов кластера имеется автоматический
перенос всего потока данных на рабочий сервер.
SQL Server поддерживает избыточное дублирование данных, описанное в
3 сценариях:
• Снимок: делается «снимок» БД, который сервер пересылает
получателям;
• Журнал изменений: все изменения БД всегда передаются
пользователям;
• Синхронизация с другими серверами: БД двух и более серверов
синхронизируются между собой. Изменения всех БД протекают независимо друг
от друга на всех серверах, в момент синхронизации идет сверка данных. Такой
тип дублирования поддерживает возможность разрешения противоречий между
БД;
В SQL Server 2005 имеет встроенную поддержку .NET Framework, что
позволяет написать хранимые процедуры БД на любом языке платформы.NET,
применяя весь набор библиотек, доступных для.NET Framework вместе с
Common Type System (система обращения с типами данных в Microsoft.NET
Framework). Но в отличии от других процессов, .NET Framework, выступающий
как базисная системой SQL Server 2005, требует дополнительную память и
68
выстраивает механизмы управления SQL Server и не использует встроенные
средства Windows. Такой подход дает дополнительную производительность в
сравнении с общими алгоритмами Windows, поскольку алгоритмы
распределения ресурсов точно настроены для использования в структурах SQL
Server.
MYSQL. MySQL появилась в виде попыткы применить mSQL к
собственным разработкам компании: таблицам, для которых применялись ISAM
- подпрограммы низкого уровня. В итоге был создан новый SQL-интерфейс, но
API-интерфейс остался прежний от mSQL.
MySQL стал решением для малых и средних приложений. Вошел в состав
серверов WAMP, LAMP и в компактные сборки серверов Денвер, XAMPP.
Зачастую MySQL применяется в качестве сервера, к которому имеют доступ
удаленные или локальные пользователи, но в дистрибутиве находится
библиотека внутреннего сервера, что дает возможность включать MySQL в
автономные программы.
Гибкость СУБД MySQL реализуется поддержкой огромного количества
типов таблиц: пользователи выбирают как таблицы типа MyISAM, имеющие
полнотекстовый поиск, так и таблицы InnoDB, имеющие транзакции на уровне
отдельных записей. Так-же СУБД MySQL уже включает специальный тип
таблиц EXAMPLE, которые показывают принципы разработки новых типов
таблиц. А открытая архитектура и GPL-лицензирование позволяют добавлять в
СУБД MySQL новые типы таблиц.
В 2008 году Sun Microsystems купила MySQL AB за 1 миллиард $.
В 2010 году Oracle Corporation купил Sun Microsystems и поставил MySQL
в собственную линейку СУБД.
Группой разработчиков MySQL реализованы разные ответвления кода,
такие как Drizzle, OurDelta, Percona Server, и MariaDB. Все они уже существовали
уже в тот момент, когда компании Sun и MySQL AB были куплены Oracle.
Нынешние версии MYSQL включают в себя следующие возможности:

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

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