Диплом: Автоматизация документооборота на примере военно-промышленной корпорации

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
36
В таблице 1.12. представлен классификатор «Клиенты»
Таблица 1.4.1.4
Классификатор «Клиенты»
Клиенты
Код
Клиенты
1001-9900
Клиент 1
1001
………
Клиент N
100N
………………………
На основании данных классификаторов производится взаимодействие
между таблицами базы данных.
1.4.2. Обоснование проектных решений по программному обеспечению
Одним из важнейших факторов при приятии решения по программному
обеспечению является выбор операционной системы.
Наиболее распространенными ОС являются Windows, Unix, Solaris, а
также Mac OS X.
Очевидно, что по степени распространенности, количеству пользователей,
обладающих навыками работы, впереди всех операционные системы от
Microsoft. Однако, на наш взгляд, последняя операционная система этого
семейства не в полной мере отвечает требованиям корпоративного сектора,
поэтому решено оснастить АРМ сотрудников предприятия ОС Windows 10.
Далее выберем систему управления базами данных. В таблице 1.13
представлены сравнительные характеристики СУБД. Приведены основные
достоинства и недостатки наиболее распространенных СУБД, результаты оценки
производительности, средняя стоимость лицензии, действующая на момент
написания проекта.
Таблица 1.13
Сравнительные характеристики СУБД
СУБД
Характеристики
Производи-
тельность
Преимущества
Ограничения
Недостатки
Цена,
руб.
MySql [4]
tpmC=220807
бесплатный;
кросс-платформенный
сервер;
низкие аппаратные
требования
независимые механизмы
хранения таблиц
(MyIsam,InНетDB)
Размер таблицы до
4Гб
низкие возможности по сравнению
с Oracle и MSSQLServer
сжатые данные используются
только для чтения
только SQL-аутентификация
0
Microsoft
SQL
Server [8]
tpmC=440879
кросс-платформенный
сервер;
высокие показатели
быстродействия
Размер таблицы до
4Гб
очень высокая стоимость; сервера и
технической поддержки;
не все версии предлагают средство
администрирования СУБД;
высокая сложность
администрирования
необходимо наличие
квалифицированного персонала;
95 000
Oracle
Database
[18]
tpmC=505302
самые высокие показатели
производительности;
высокая
распространенность;
приемлемая стоимость;
простое
администрирование;
большое количество
сторонних средств
администрирования;
высокие темпы развития;
прозрачное сжатие данных
˗ 1 процессор
˗ Максимально
е использование
ОЗУ 1Гб
˗ Максимальны
й объем БД 4ГБ
применима только для платформы
Windows.
36 000
38
Проанализировав собранную информацию о рассматриваемых СУБД:
показаниях производительности, удобства администрирования, ценовой
политике было принято решение выбрать в качестве СУБД MySQL.
MySQL – наиболее часто используемая СУБД в интернете. MySQL не
предопределена для работы с большими размерами данных, но ее возможности
безупречно подходят при разработке онлайн вебсайтов, как незначительных, так
и довольно крупных. СУБД – программное обеспечение с открытым кодом.
Использовать его и видоизменять может любой желающий. Важным моментом
считается ее бесплатное использование. MySQL содержит API для языков
программирования PHP, Java, C, C++, Python и многих других [10, с.29].
MySQL основывается на двух составных частях: серверной и клиентской.
Сервер MySQL все время осуществляет свою работу на компьютере. Через
устройства сокетов (при поддержке сетевых средств), клиентские программы
(например, скрипты PHP) отправляют серверу СУБД SQL-запросы, которые
сервер обрабатывает, запоминает результаты, и затем отправляем ответ клиенту.
MySQL использует трехуровневую структуру: база данных – таблицы –
записи. Базы данных и таблицы MySQL на физическом уровне представляются
файлами с расширениями frm, MYD, MYI. Логически – таблица – совокупность
записей. Записи – совокупность полей разного типа. Имя базы данных MySQL
уникально в границах системы, а таблицы – в границах базы данных, а поля – в
границах таблицы. Один сервер MySQL имеет возможность одновременной
поддержки нескольких баз данных.
Данная СУБД была выбрана для разрабатываемого приложения по
причине эффективности, свободного доступа, высокой производительности,
надежности и гибкости [12].
Традиционно для создания web страниц использовались языки
программирования PHP и JavaScript. Изначально их использовали вместе,
каждый из них занимал свою сферу и оба были обязательными для нормальной
работы сайтов. PHP выполнялся на стороне сервера, JavaScript – на стороне
клиента. Но с появлением технологии Node.js язык JavaScript смог стать не
самостоятельным языком и его стало можно запускать на сервере. В связи с чем
JavaScript взял на себя функции PHP. Теперь их можно сравнивать как
39
отдельные самостоятельные языки.
Node или Node.js — программная платформа, основанная на движке V8
(транслирующем JavaScript в машинный код), превращающая JavaScript из
узкоспециализированного языка в язык общего назначения. Node.js добавляет
возможность JavaScript взаимодействовать с устройствами ввода-вывода через
свой API (написанный на C++), подключать другие внешние библиотеки,
написанные на разных языках, обеспечивая вызовы к ним из JavaScript-кода.
Node.js применяется преимущественно на сервере, выполняя роль веб-сервера,
но есть возможность разрабатывать на Node.js и десктопные оконные
приложения (при помощи NW.js, AppJS или Electron для Linux, Windows и Mac
OS) и даже программировать микроконтроллеры (например, tessel и espruino). В
основе Node.js лежит событийно-ориентированное и асинхронное (или
реактивное) программирование с неблокирующим вводом/выводом.
PHP (Hypertext Preprocessor - препроцессор гипертекста»; первоначально
Personal Home Page Tools — «Инструменты для создания персональных веб-
страниц») — скриптовый язык общего назначения, интенсивно применяемый
для разработки веб-приложений. В настоящее время поддерживается
подавляющим большинством хостинг-провайдеров и является одним из лидеров
среди языков, применяющихся для создания динамических веб-сайтов. Язык и
его интерпретатор (Zend Engine) разрабатываются группой энтузиастов в рамках
проекта с открытым кодом. Проект распространяется под собственной
лицензией, несовместимой с GNU GPL[6].
Сравним PHP и JavaScript (Node js) по нескольким критериям:
1) Смешивание кода с содержимым. Под смешиванием кода
понимаются смешивание логики работы и внешнего вида. Это является не очень
хорошей практикой, усложняющей код и читаемость программы. Концепция
разделения логического слоя от внешнего вида называется MVC (модель-вид-
контроллер). Node.js основывается на принципах MVC. При использовании PHP
программисту нужно самостоятельно задумываться о разделении. По этому
критерию Node js выигрывает у PHP.
2) Количество готовых решений. Под этим критерием
подразумеваются платформы, созданные на рассматриваемых языках. На PHP
40
созданы такие популярные платформы, как WordPress, Drupal, Joomla. Кроме
того, они имеют открытый исходный код, как и большинство плагинов для них.
Можно их свободно загружать модифицировать и использовать по своему
усмотрению. Если выбирать Node.js или PHP по данному критерию то
выигрывает PHP, потому что кода и библиотек для работы с различными
сервисами в разы больше.
3) Простота использования. PHP как язык по своей сути очень прост.
Здесь есть несколько переменных и основные функции для управления текстом,
числами и файлами. Функции реализуют почти все, необходимые функции. Но
это функции, предназначенные для передачи данных в базу данных и обратно.
Сложные задачи по сортировке и выборке данных перекладываются на базу
данных и использовании инструкций на языке SQL.
Таким образом, при выборе Node js или PHP JavaScript может показаться
очень сложным, на первый взгляд. Однако для упрощения написания кода
можно пользовать такие библиотеки, как JQuery. Можно использовать
возможности всех подобных объектов. И те, кто использует JavaScript считает,
что этот язык кажется сложным до определенного момента вхождения в него,
затем все становится простым и доступным. Однако, по этому критерию
побеждает PHP.
4) Помощь и поддержка. По этому критерию PHP выигрывает, так как
он имеет много документации и большую поддержку.
У Node.js есть хорошая документация, но технология довольно молода, поэтому
и ответов на форумах, будет значительно меньше.
5) Хранение данных. PHP оптимизирован и отлично работает с базой
данных MySQL, кроме того поддерживаются СУБД MariaDB, Postgresql. Код на
PHP может работать со всеми базами независимо от используемых движков. У
Node.js есть библиотеки для работы с SQL, но также есть поддержка
специального формата работы с данными. Это JSON. С помощью данной
технологии можно взаимодействовать с новыми типами баз данных NoSQL.
Работать с БД в PHP проще. Node.js поддерживает новые форматы данных.
6) Скорость работы и разработки. Написать PHP код очень просто и
быстро. Не нужны различные компиляторы. Можно написать код в блокноте и
41
сразу выполнять его. Если нужно сделать проект очень быстро, то PHP будет
отличным инструментом. Но производительность Node.js, как правило, лучше.
Node.js имеет несколько преимуществ:
Меньше зависимостей. Все запросы к приложению PHP должны быть
направлены на веб-сервер, который запускает интерпретатор PHP,
который обрабатывает код и отдает его. Node.js не нужно так много
зависимостей, и, хотя все почти наверняка используют фреймворк на
сервере, такой как express, он совсем легкий и управляет частью
приложения.
Быстрый интерпретатор. Node.js меньше и проворнее, чем РНР. Это
связано с наследием Google, который сделал огромный вклад в
производительность JavaScript движка — V8.
Приложения работают постоянно. РНР выполняет обычную клиент-
серверную модель. Каждый запрос страницы инициирует приложение,
загрузка параметров подключения к базе данных, извлечение информации
и отображения HTML-кода. В Node.js приложение постоянно работает и
его нужно инициализировать только один раз. Например, можно создать
один объект подключения к базе данных, которая используется повторно
при новом запросе. Правда, есть способы, реализации такого поведения и
на PHP с использованием специальных систем, таких как memcached, но
это не стандартная функция языка.
7) Хостинг и развертывание. Количество хостингов для PHP в разы
больше, чем для Node.js, что объясняется особенностью работы последнего.
Итак, Node js и PHP - отличные платформы для разработки сайтов и веб-
приложений. На каждом из них можно создать необходимое приложение, но у
обоих есть свои плюсы и минусы. PHP более простой и удобный, однако Node js
более современный и дает больше возможностей.
1.4.3. Обоснование проектных решений по техническому обеспечению
42
Информационная сеть компании имеет развитую и современную
структуру и не требует каких-либо модификаций. Минимальные требования для
разработки и работы информационной системы:
Процессор: от 1,5Ггц.
Память: от 1 Гб.
Жёсткие диски: 200 Гб.
Существующая информационная сеть имеет следующие технические
показатели:
Процессор: 3Ггц.
Память: 2Гб.
Жёсткие диски: 250Гб.
Следовательно, необходимости в обновлении технического обеспечения
нет. Это позволит значительно снизить расходы на разработку и внедрение
новой информационной системы.
43
II Проектная часть
2.1. Разработка проекта автоматизации
2.1.1. Этапы жизненного цикла проекта автоматизации
Жизненный цикл информационной системы - период времени, который
начинается с момента принятия решения о необходимости создания
информационной системы и заканчивается в момент ее полного изъятия из
эксплуатации [1].
Для разработки был выбран стандарт ISO/IEC 12207-2010. Согласно
ISO/IEC 12207-2010 основные процессы жизненного цикла построения системы
[1]:
процесс заказа программного средства;
процесс поставки ПО;
процесс разработки программного решения;
процесс эксплуатации программного решения;
Процесс заказа состоит из работ и задач, выполняемых заказчиком. В
данной разработке заказчиком является само предприятие [1].
Основная цель данного этапа выявление требований проекта, разработка
технического задания:
требования к информационной системе;
описание области применения системы;
список программных продуктов;
сроки и условия реализации заказа;
технические ограничения (например, по условиям эксплуатации).
Процесс поставки ПО заключается в определении состава проекта для
поставки.
Процесс разработки включает в себя определение состава программного
продукта, а именно информационной базы, ее физическая реализация.
Разработка программных модулей. Процесс эксплуатации заключается в
установке и интеграции программного продукта на рабочем месте и
использование его сотрудниками предприятия [1].
Рассмотрим модель жизненного цикла разрабатываемого программного
44
обеспечения для автоматизации учета заявок АО «ВПК «НПО
машиностроения». Наиболее походящей для реализации функций
разрабатываемой системы является каскадная модель. Это обусловлено
следующими ее преимуществами:
на каждом этапе формируется законченный набор проектной
документации, отвечающий критериям полноты и согласованности;
выполняемые в логичной последовательности этапы работ позволяют
планировать сроки завершения всех работ и соответствующие затраты.
Представим модель жизненного цикла разрабатываемой системы в виде
ряда последовательно выполняемых этапов. Среди этих этапов обычно
выделяются следующие:
определение потребностей;
исследование и описание основных концепций;
проектирование и разработка;
испытания системы;
создание и производство;
внедрение;
распространение и продажа;
эксплуатация;
сопровождение и мониторинг;
снятие с эксплуатации (утилизация).
Проведенный анализ характеристик предприятия и основных бизнес-
процессов однозначно определяет потребность в такой автоматизированной
системе.
Каскадная модель жизненного цикла более всего подходит к конкретной
разработке, потому что все процессы по проектированию информационной
системы будут выполняться последовательно, после завершения предыдущего
этапа проектирования. Поскольку результат этапа проектирования будет
основой для последующих работ.
Как известно, на сегодняшний день существуют следующие основные
стратегии внедрения системы [7].
1. Параллельная стратегия. При этой стратегии одновременно работают
45
старая (ручная) и новая система, и их выходные документы сравниваются. Если
они согласуются длительное время, осуществляется переход на новую систему.
2. «Скачок». При такой стратегии происходит моментальный переход на
работу с новой системой. Эта стратегия привлекательна, но не рекомендуется.
3. «Пилотный проект». Это наиболее часто используемая стратегия.
«Пилотный проект» - это тактика «скачка», но применяемая к ограниченному
числу процессов. Область применения стратегии - небольшой участок
деятельности. Такой подход снижает риск и наиболее надежен. Практически все
предприятия применяют эту тактику сегодня [7].
4. «Узкое место». «Узкое место» - это малая часть производственного
процесса. При использовании подхода «узкое место» план внедрения
выполняется только для «узкого места» и для людей, работающих в нем.
Точность данных повышается только для изделий в этом «узком месте»;
переподготовка - только для людей, работающих в нем, анализ эффект - затрат
делается только для него и т. д. [7].
В качестве стратегии внедрения ИС был выбран пилотный проект. Данная
стратегия внедрения информационной системы была выбрана, так как при ней
автоматизируется ограниченное число процессов и поэтому риски сведены к
минимуму.
2.1.2. Ожидаемые риски на этапах жизненного цикла и их описание
При всей формальности и изученности процесса проектирования и
разработки информационных систем, в нем всегда присутствуют неожиданные и
непредвиденные ситуации. Любой проект по созданию информационной
системы предприятия всегда включает множество задач, связанных с общим
управлением проектом, разработкой программного обеспечения,
проектированием компонентов и модулей информационной системы,
внедрением программного продукта в информационное пространство
предприятия. Каждая задача сама по себе является проектом с присущими ему

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

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