Диплом: Автоматизация документооборота в АО "Нива"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
49
разрабатывающие приложения, конечные пользователи, различные комбинации
перечисленных категорий);
3. удобство и простота использования (понятные процедуры установки
программных продуктов, удобный и унифицированный интерфейс конечного
пользователя, простота выполнения обычных операций: создания БД, навигации,
модификации, подготовки данных, выполнения запросов и отчетов и ряда других;
наличие интеллектуальных подсистем подсказок, помощи в процессе работы и
обучения, включая примеры);
4. модель представления данных. Наиболее распространенной является
реляционная модель данных. Перспективными являются модели с объектной
ориентацией, поскольку они обладают большими возможностями отражения
семантики предметной области;
5. качество средств разработки. При оценке качества средств разработки
учитывается следующее: возможности создания пользовательских интерфейсов,
мощность языка создания программ, автоматизация разработки различных
объектов: экранных форм, отчетов, запросов. Предпочтение отдается системам,
имеющим полнофункциональные генераторы и обеспечивающим удобство
работы пользователя;
6. качество средств защиты и контроля корректности базы данных. Доступ
к функциям защиты должен предусматриваться на уровне средств разработки
программ и на уровне пользователя. К важнейшим функциям контроля
корректности относятся: обеспечение уникальности записей БД по первичному
ключу, автоматический контроль целостности связей между таблицами во время
выполнения операций обновления, вставки и удаления записей, проверка
корректности значений в БД;
7. качество коммуникационных средств. При оценке качества
коммуникационных средств обращают внимание на следующие свойства
программных продуктов:
8. поддержку сетевых протоколов,
9. поддержку стандартных интерфейсов с БД,
10. наличие средств групповой работы с информацией БД,
50
11. способность использовать и модифицировать БД других форматов без
импортирования или преобразования;
12. фирмаразработчик. Солидность фирмы-разработчика пакета, как
правило, дает следующие преимущества:
13. высокое качество продукта,
14. наличие документации и методических материалов
15. наличие «горячей линии» для консультаций по возникающим
проблемам
На данный момент существует большой выбор среди систем управлений
базами данных, каждая из которых по-своему уникальна. Наиболее
распространенными СУБД являются MySQL и Microsoft SQL Server.
MySQL – свободная реляционная система управления базами данных.
Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов
таблиц: пользователи могут выбрать как таблицы типа MyISAM,
поддерживающие полнотекстовый поиск, так и таблицы InnoDB,
поддерживающие транзакции на уровне отдельных записей. Более того, СУБД
MySQL поставляется со специальным типом таблиц EXAMPLE,
демонстрирующим принципы создания новых типов таблиц. Благодаря открытой
архитектуре и GPL-лицензированию, в СУБД MySQL постоянно появляются
новые типы таблиц. MySQL характеризуется большой скоростью, устойчивостью
и лёгкостью в использовании, является решением для малых и средних
приложений. Наряду с Oracle Database это одна из самых быстрых СУБД на
сегодняшний день. Входит в LAMP (Linux, Apache, MySQL, PHP, Perl или Python)
[11].
Microsoft SQL Server – система управления реляционными базами данных
(СУБД). Основной используемый язык запросов Transact-SQL. Transact-SQL
является реализацией стандарта ANSI/ISO по структурированному языку
запросов (SQL) с расширениями. Используется для небольших и средних по
размеру баз данных, и в последние 5 лет – для крупных баз данных масштаба
предприятия, конкурирует с другими СУБД в этом сегменте рынка.
Рассмотрим некоторые преимущества MySQL перед Microsoft SQL Server:
MySQL поддерживают большинство известных операционных систем;
51
в MySQL реализован кэш запросов. Он позволяет во много раз
увеличить скорость обработки запросов для сайтов, на которых преобладают
неоднократно повторяющиеся запросы на чтение;
MySQL наиболее популярен среди разработчиков в отличие от MS SQL
Server, поэтому ошибки находятся и исправляются быстрее;
MySQL входит в дистрибутив большинства unix-подобных систем,
которые устанавливаются на многих хостинг-серверах;
в MySQL имеется возможность работы с несколькими базами через
одно соединение;
в MySQL используется протокол связи между клиентом и сервером со
сжатием данных, что увеличивает производительность системы в условиях
низкоскоростных каналов связи;
вышло большое количество книг и документации о MySQL, что
позволяет разобраться с этой СУБД даже начинающему пользователю;
Все типы таблиц в MySQL (кроме InnoDB) реализованы в виде файлов
(по одной таблице в файле), что значительно облегчает создание резервных копий,
перенос, удаление и даже создание символьных ссылок между базами данных и
таблицами, даже если сервер находится в нерабочем состоянии;
При модернизации MySQL нет нужды в копировании/восстановлении
данных.
Как уже было упомянуто MySQL входит в LAMP. LAMP – это набор
серверного программного обеспечения, широко используемый во Всемирной
паутине. LAMP назван по первым буквам входящих в его состав компонентов:
Linux операционная система (более корректно называемая GNU/Linux);
Apacheвеб-сервер;
MySQL – СУБД;
PHP, Perl или Python – языки программирования, используемые для
создания Web-приложений.
Несмотря на то, что перечисленные выше программные средства не
разрабатывались для совместной работы, связка этих программных продуктов
получила наибольшее распространение в первую очередь, за счет низкой
стоимости, также набор LAMP входит в состав большинства дистрибутивов. Но с
52
MySQL можно работать не только в unix-подобных системах, а также в ОС
Windows, потому что для этой операционной системы также существуют
собственные сборки. Наиболее распространенные: Денвер, XAMPP и Vertigo
Serv, в то время как MS SQL Server возможно использовать только на
операционных системах Windows [11].
Исходя из достоинств и недостатков вышерассмотренных СУБД, а также
учитывая требования задания для автоматизации проекта, была выбрана системы
управления базой данных MySQL. На сегодняшний день MySQL является самой
популярной и распространённой и полностью бесплатной СУБД.
На сегодняшний день у разработчика есть множество вариантов и
возможностей для разработки в веб-среде. Наиболее популярными языками
программирования являются ASP.NET и PHP. Для выбора языка
программирования были рассмотрены достоинства и недостатки WEB-
приложений ASP.NET и РНР.
Технология создания приложений ASP.NET. ASP.NET технология
создания веб-приложений и веб-сервисов от компании Microsoft. Она является
составной частью платформы Microsoft.NET и развитием более старой
технологии Microsoft ASP. На данный момент последней версией этой технологии
является ASP.NET 5. ASP.NET интегрирован в новую технологию NET компании
Microsoft. Особенностью этого языка является возможность использовать любой
язык программирования среды исполнения NET(VisualBasic.NET, C#, J#). В
рамках одного приложения может быть использовано несколько языков, что
позволяет объединить в одном проекте программистов, владеющих разными
языками программирования.
Данная среда также предоставляет возможности для настоящего объектно-
ориентированного программирования (ООП), поддерживает наследование в
полном объеме этого термина, полиморфизм и инкапсуляцию. Библиотека
классов .NET организована в наследуемых классах, базирующихся на частных
задачах, таких как, например, работа с XML или работа с изображениями. Кроме
языка программирования и методологии, интересна также работа с базами
данных. При программировании в ASP.NET, интеграция с базами данных может
53
быть достигнута через ODBC, которая предоставляет совместимый набор
функций для доступа к базе данных.
Сильные стороны ASP.NET заключаются в основном в его простом
проектировании и выполнении. Это объектно-ориентированная мечта
программиста с языковой гибкостью и поддержкой утонченных объектно-
ориентированных возможностей. В этом смысле среда полностью способна
взаимодействовать с высокими программистскими способностями.
Другой плюс ASP.NET – разработка окружения. Например, разработчики
могут использовать Web Matrix, Visual Studio .NET или разнообразные средства
Borland такие как Delphi, C++ Builder. Visual Studio, например, позволяет
устанавливать breakpoint (точки остановки), трассировать отдельные секции кода
и просматривать стек вызовов. В общем, это утонченная среда, позволяющая
удобно проводить отладку.
Но те же факторы, что положительно сказываются на скорости написания
и трудоемкости проекта, отрицательно влияют на его эффективность. ASP.NET
достаточно дорог в том, что касается использования памяти и времени
выполнения, что связано в достаточно большой степени с более длинным кодом.
Для Web-приложений эти ограничения могут быть серьезной проблемой,
поскольку в Интернете приложение должно быть способно масштабироваться до
нескольких тысяч пользователей в секунду. Использование памяти также может
стать проблемой на Web-сервере.
Язык программирования PHP 4. PHP – скриптовый язык общего
назначения, активно применяемый для разработки веб-приложений. В настоящее
время поддерживается большинством хостинг-провайдеров и является одним из
лидеров среди языков, применяющихся для создания динамических веб-сайтов.
Язык и его интерпретатор разрабатываются группой энтузиастов в рамках проект
с открытым кодом. Проект распространяется под собственной лицензией,
несовместимой с GNUGPL [10].
У PHP остаются некоторые недочеты, включая отсутствие некоторых
исключений, обработка ошибок, основанная на событиях, прерывающая иногда
нормальное выполнение программы, направляя код в специальную секцию
обработки ошибок. Java также предоставляет исключения для обработки ошибок,
54
в то время как C++ предоставляет обработку исключений через конструкции try,
catch и throw. В принципе можно управлять ошибками в PHP, но структура не
стандартизована, так что программисты предоставлены сами себе в
осуществлении обработки ошибок, что приводит к меньшей устойчивости и, как
минимум, необходимости изобретать колесо.
Другой минус заключается в том, что имена функций в PHP 5
чувствительны к регистру. Некоторые программисты могут посчитать эту
особенность раздражающей, хотя это и не является существенным недостатком.
Кроме того, есть некоторые опасения относительно объектной модели PHP.
PHP не был разработан как объектно-ориентированный язык. Некоторые из таких
особенностей были добавлены позднее несмотря на то, что уделялось достаточно
большое внимание реализации обратной совместимости с PHP 3, так что почти
предоставлены обе модели. В действительности многие эти слабости адресованы
PHP 5 [13].
Несмотря на то, что обе технологии направлены на разработку веб-
приложений, у них имеются достоинства и недостатки, указанные в таблице 1.6.
Таблица 1.6
Достоинства и недостатки языков программирования
PHP
ASP.NET
Цена
бесплатный
бесплатный
Цена платформы
бесплатный
платный
Скорость
высокая
низкая
Эффективность
высокая
низкая
Безопасность
высокая
высокая
Платформа
любая
Win32 (только IIS)
Открытый код
да
нет
Исключения
да
да
ООП
хорошо
хорошо
55
Несмотря на достоинства и недостатки как PHP, так и ASP.NET пользуются
большой популярностью среди программистов, и очень часто ими
обнаруживаются ошибки в обеих системах. В случае с коммерческими
продуктами, такими как ASP.NET эти ошибки должны пройти через
бюрократическую систему, чтобы быть изученными, исправленными уже в более
новых версиях продукта, а на это иногда уходят месяца. В случае PHP и подобных
ему продуктов с открытым исходным кодом эти ошибки исправляются очень
быстро, и обновления могут выходить практически ежедневно.
ASP.NET хорошо подходит для более серьезных корпоративных
разработок, которые, в основном предназначены для работы в локальных сетях,
так как для ASP.NET необходим хостинг с системой Microsoft Windows, аренда
которых обходится в очень не малую сумму. В отличие от ASP.NET, PHP
поддерживается на всех системах, в том числе и UNIX-подобными, он дешев в
разработке и сопровождении. Так как хостинг с UNIX-платформа обойдется
дешевле, чем хостинг с операционной системой Windows, а так же в целях
безопасности будет выбран RedHat, Debian, Libux или FreeBSD, а также веб-
сервер Apache.
Различия проявляются в стоимости и трудоёмкости разработки и
эксплуатации проекта. В этих показателях, по моему убеждению, PHP
значительно выгодней ASP.NET. Поэтому в качестве языка программирования
был выбран язык веб-программирования PHP.
56
ГЛАВА 2. ПРОЕКТНАЯ ЧАСТЬ
2.1 Разработка проекта автоматизации
2.1.1 Этапы жизненного цикла проекта автоматизации
Жизненный цикл информационных систем (ЖЦ ИС) – это период их
создания и использования, охватывающий различные состояния, начиная с
момента возникновения необходимости в такой системе и заканчивая моментом
ее полного выхода из употребления у пользователей [18].
Модель жизненного цикластруктура, состоящая из процессов, работ и
задач, включающих в себя разработку, эксплуатацию и сопровождение
программного продукта, охватывающая жизнь системы от установления
требований к ней до прекращения ее использования [ГОСТ Р ИСО/МЭК 12207-99
Информационная технология. Процессы жизненного цикла программных
средств].
Существующие модели ЖЦ определяют порядок исполнения этапов в ходе
разработки, а также критерии перехода от этапа к этапу. В соответствии с этим
наибольшее распространение получили три следующие модели ЖЦ [18]:
1. Каскадная модель.
Данная модель предлагает переход на следующие этапы после полного
осуществления работ по предыдущему этапу. Модель демонстрирует
классический подход в любых прикладных областях. На рисунке 2.1 представлена
каскадная модель.
Рис 2.1 Каскадная модель
57
2. Модель с промежуточным контролем.
Ведется итерациями с циклами обратной связи между этапами.
Межэтапные корректировки позволяют учитывать реально существующее
взаимовлияние результатов разработки на различных этапах; время жизни
каждого из этапов растягивается на весь период разработки. На рисунке 2.2
представлена модель с промежуточным контролем
Рис 2.2 Модель с промежуточным контролем
3. Спиральная модель.
Данная модель делает упор на начальные этапы анализа и проектирования.
Эта модель представляет собой итерационный процесс разработки, где каждая
итерация (цикл), представляет собой законченный цикл разработки, приводящий
к выпуску версии изделия (версии проекта ИС), который совершенствуется от
итерации к итерации, чтобы стать значимой информационной системой. При этом
каждый виток спирали соответствует поэтапной модели создания
информационной системы. Таким образом углубляется и последовательно
конкретизируется обоснованный вариант ИС, который и доводится впоследствии
до реализации.
Основная проблема спирального цикла определение момента перехода на
следующий этап. Для ее решения необходимо ввести временные ограничения на
каждый из этапов жизненного цикла. Иначе процесс разработки может
превратиться в бесконечное совершенствование уже сделанного. На рисунке 2.3
представлена спиральная модель.
58
Рис 2.3 Спиральная модель
В качестве разработки системы документооборота выбрана каскадная
модель, которая предусматривает последовательное выполнение всех этапов
проекта в строго фиксированном порядке. Таким образом, на каждом этапе
формируется законченный набор проектной документации, отвечающий
критериям полноты и согласованности.
Рассмотрим стандарты, описывающие жизненный цикл информационной
системы:
ГОСТ 34.601-90 комплекс стандартов на автоматизированные
системы. Автоматизированные системы. Стадии создания – распространяется
на автоматизированные системы и устанавливает стадии и этапы их создания.
Кроме того, в стандарте содержится описание содержания работ на каждом этапе.
Стадии и этапы работы, закрепленные в стандарте, в большей степени
соответствуют каскадной модели жизненного цикла [6].
ISO/IEC 12207 стандарт на процессы и организацию жизненного цикла.
Распространяется на все виды заказного ПО. Стандарт не содержит описания фаз,
стадий и этапов.
ISO/IEC 15288 стандарт применим для широкого класса систем, но его
основное предназначениеподдержка создания компьютеризированных систем.
Rational Unified Process (RUP) предлагает итеративную модель
разработки, включающую четыре фазы: начало, исследование, построение и

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

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