Добавлен: 25.04.2023
Просмотров: 761
Скачиваний: 3
Учитывая вышесказанное, для реализации описанного приложения выбираем архитектуру клиент-сервер.
Для обеспечения доступа к информации, хранящейся в базе данных, а также для управления ею, применяют систему управления базами данных (СУБД). СУБД – это комплекс языковых и программных средств, предназначенный для создания, ведения и совместного использования БД многими пользователями. Обычно СУБД различают по используемой модели данных. Так, СУБД, базирующиеся на использовании реляционной модели данных, называют реляционными СУБД. Системы управления базами данных помогают отсортировать информацию, а также связать базы данных между собой, при этом предоставив отчет об изменениях и зарегистрированных событиях.
Несмотря на то, что все системы управления базами данных выполняют одну и ту же основную задачу (т.е дают возможность пользователям создавать, редактировать и получать доступ к информации, хранящейся в базах данных), сам процесс выполнения этой задачи варьируется в широких пределах. Кроме того, функции и возможности каждой СУБД могут существенно отличаться. Различные СУБД документированы по-разному: более или менее тщательно. По-разному предоставляется и техническая поддержка.
При сравнении различных популярных баз данных, следует учитывать, удобна ли для пользователя и масштабируема ли данная конкретная СУБД, а также убедиться, что она будет хорошо интегрироваться с другими продуктами, которые уже используются. Кроме того, во время выбора следует принять во внимание стоимость системы и поддержки, предоставляемой разработчиком.
Если речь идёт о выборе СУБД для предприятия, то следует принять во внимание возможность СУБД «расти» вместе с развитием организации.
Существует несколько популярных СУБД, как платных, так и бесплатных, которые можно рекомендовать для применения в организации.
Их существует множество, но наиболее популярные, используемые как в небольших, так и в очень масштабных проектах, только три:
- MySQL;
- SQLite;
- PostgreSQL.
MySQL – самая популярная СУБД в мире
MySQL является самой популярной СУБД. Она обладает широким функционалом, способна хранить гигантские объемы информации и сравнительно быстро записывает и извлекает данные из таблиц. Чаще всего ее применяют в веб-проектах. Подавляющее большинство сайтов, присутствующих в Интернете, используют именно MySQL для хранения данных.
C MySQL сравнительно легко работать, и взаимодействию с этой СУБД можно научиться за короткое время. В виду ее популярности, в Сети присутствует множество материалов на различных языках и книг, которые обучают работе с MySQL. Кроме того, в виду ее широкого распространения, для этой СУБД написано множество плагинов, расширяющих функционал.
Есть у этой системы и недостатки. Один из них – трудность использования в очень масштабных проектах, так как у нее есть проблемы с мультипоточностью.
SQLite – СУБД для приложений
SQLite – СУБД, которую многие разработчики используют в своих приложениях. В отличие от многих других систем, в этой данные хранятся в отдельных файлах, и обращение к ним происходит напрямую, а не посредством сокетов и портов. Из-за этого на чтение она работает очень быстро.
У SQLite отсутствует система пользователей, поэтому ее невозможно использовать в многопользовательских приложениях. Кроме того, она сравнительно медленно работает на запись. В виду этого ее практически невозможно нормально использовать в веб-проектах. Однако, например, для хранения данных однопользовательских игр она подходит очень хорошо. Эта СУБД сейчас активно применяется, например, в играх для Android.
PostgreSQL – профессиональное решение
СУБД PostgreSQL позиционируется в качестве профессионального решения. В отличие от многих других аналогичных современных систем, эта максимально полно поддерживает синтаксис SQL. Она имеет множество функций, которые необходимы приложениям, предъявляющим очень высокие требования к надежности и безопасности.
Эта СУБД сравнительно медленная, но надежная. Из-за этого ее используют, например, банки, которым нужно максимально сократить риски потери данных или их несанкционированного изменения.[15]
Можно также отметить другие СУБД:
1. Oracle 12c. СУБД от Оракул является крайне надёжной,однако стоимость Oracle может оказаться непомерно высокой, особенно для небольших организаций. Система может потребовать значительных ресурсов уже сразу после установки, поэтому возможно потребуется модернизировать оборудование для внедрения Oracle.
Идеально подходит для крупных организаций, которые работают с огромными базами данных и разнообразными функциями.
- Microsoft SQL сервер
Ещё одной из популярных СУБД является программный продукт Microsoft SQL-сервер. Вскоре после выпуска Microsoft SQL сервер 2016, Microsoft адаптировала продукт для операционной системы Linux, а на Windows-платформе он работал изначально.
Одной из уникальных особенностей версии 2016 года является temporal data support (временная поддержка данных), которая позволяет отслеживать изменения данных с течением времени. Последняя версия Microsoft SQL-сервер поддерживает dynamic data masking (динамическую маскировку данных), которая гарантирует, что только авторизованные пользователи будут видеть конфиденциальные данные.
Идеально подходит для: крупных организаций, которые уже используют ряд продуктов Microsoft.
3. MongoDB
Бесплатная база данных, которая имеет коммерческую версию – MongoDB, она предназначена для приложений, которые используют как структурированные, так и неструктурированные данные. Ядро является очень гибким и работает при подключении базы данных к приложениям через драйверы MongoDB. Существует широкий выбор доступных драйверов, поэтому легко найти драйвер, который будет работать с требуемым языком программирования.
Подходит для организаций, работающих с разнородными данными, которые тяжело поддаются классификации. Для внедрения потребуются высококлассные специалисты.
4. MariaDB
Эта СУБД является бесплатной, но как и многие другие бесплатные приложения, предлагает платные версии. Есть множество доступных плагинов расширений, пожалуй, это самая быстро-развивающаяся СУБД на данный момент.
MariaDB фактически – это ответвление от СУБД MySQL, разрабатываемое сообществом под лицензией GNU GPL. Идеальна как альтернатива MySQL, если MySQL не устраивает по каким-то причинам.
5. DB2
Созданная компанией IBM, DB2 представляет собой СУБД, которая имеет возможности NoSQL, и может читать JSON и XML-файлы. Ввиду того, что система разрабатывалась для серверов компании IBM модельного ряда iSeries, логично, что система работает на Windows, Linux и Unix.
DB2 является единственной реляционной СУБД общего назначения, имеющей реализации на аппаратно-программном уровне (система IBM i; также в оборудовании мэйнфреймов IBM System z реализуются средства поддержки DB2).
Современные версии DB2 обеспечивают расширенную поддержку использования данных в формате XML, в том числе операции с отдельными элементами документов XML.
Подходит для: крупных организаций, которые планируют выжимать максимум из имеющихся ресурсов и обрабатывают большие БД.
6. SAP HANA
Разработанная компанией SAP SE, SAP HANA – это СУБД, с движком ориентированным на работу со столбцами, работающая с родными данными SAP и чужими данными. Ядро предназначена для сохранения и извлечения данных из приложений и других источников на нескольких уровнях хранения. Может быть размещен на физических серверах, и в облаке.
Идеально подходит для: организаций, которые захватывают данные из приложений и при этом неограниченны в бюджете.
7. ЛИНТЕР
«Линтер» — российская СУБД, реализующая стандарт SQL:2003 (за исключением нескалярных типов данных и объектно-ориентированных возможностей) и поддерживающая большинство операционных систем, в том числе семейство Windows, различные версии UNIX, ОС реального времени (включая QNX).
Идеально подходит для: отечественных организаций, которые работают с конфиденциальными и персональными данными.
8. РЕД База Данных
«РЕД База Данных» - российская СУБД, работает на всех основных платформах и ОС (Windows, Linux, BSD Unix, IBM AIX, HP-UX, Sun Solaris и т.д.). Система модульная. Имеет открытый исходный код.
Возможность «горячего» резервного копирования и инкрементного резервного копирования. Сертифицирована ФСТЭК России. Соответствует отечественным требованиям по защите информации.
Идеально подходит для: отечественных организаций (включая оборонные), которые работают с конфиденциальными и персональными данными.
Как мы можем увидеть, каждая СУБД имеет свои достоинства и недостатки. Поэтому нужно выбирать ту систему, которая лучше подходит под особенности разрабатываемого проекта. Сравнительный анализ параметров СУБД приведен в Приложении К.
Стоит отметить, что на сегодняшний день системы корпоративного обучения (corporate learning systems, CLS), которая по сути является объектом данного проекта, уже выделяются в отдельный сегмент рынка HRM систем. Вендоры CLS предлагают пакеты технологий, включая системы управления обучением (learning management systems, LMS), системы управления образовательным контентом (learning content management system, LCMS), виртуальные «классные комнаты» и средства доставки образовательных программ.
По данным Gartner[16], на мировом рынке систем корпоративного обучения лидируют компании Cornerstone OnDemand (Корнерстоун), Plateau Systems, Saba Software и SumTotal. Эти компании лидировали на рынке в период с 2008 года и далее. В целом же в сегменте CLS присутствуют около 150 софтверных компаний, перспективы сегмента довольно значительны.
Применительно к российской действительности, обучение сотрудников следует делать отдельной частью HRM-стратегии в компаниях со значительным количеством операционного персонала. Большое количество персонала, высокая текучесть кадров и высокие требования к воспроизводимости – три фактора, которые определяют необходимость обучения. В этих компаниях необходимо обеспечить полный цикл и непрерывное обучение.
Обучение сотрудников необходимо всем компаниям, где интенсивно меняется информация, и владение ей оказывает сильное влияние на успешность основной деятельности.
На российском рынке присутствуют средства автоматизации корпоративного обучения самых разных вендоров, однако, явных лидеров пока не намечается. Здесь представлены и предложения мега-вендоров HRM типа Oracle и SAP, и решения специализированных разработчиков (SuccessFactors, Moodle,WebSoft (ВебСофт Девелопмент), «Гиперметод»), и портальные решения на базе, например, Microsoft SharePoint, в том числе разработанные для нужд конкретной компании.
Исходя из данных сравнительной таблицы, а также с учётом указанных российских реалий и показателей успешности проектов можно сделать следующие выводы:
Из всех представленных в таблице вариантов только Ред База Данных и ЛИНТЕР включены в «Единый реестр российских программ для электронных вычислительных машин и баз данных» (реестр российского программного обеспечения).
2 июня 2015 года Министерство связи и массовых коммуникаций Российской Федерации издало «Протокол экспертной оценки проектов по импортозамещению инфраструктурного программного обеспечения», в котором проект «СУБД PostgreSQL и связанные с ним решения» занимает 1-е место по направлению «Системы управления базами данных» протокола экспертной оценки.
Исходя из таблицы можно сделать вывод, что при планирования веб-сервера следует в первую очередь обратить внимание на MySQL, которые остается востребованным в течение уже более десяти лет. Альтернативами будут Maria DB и PostgreSQL. Примечательно, что все перечисленные решения бесплатны.
Если же речь заходит о внедрении БД на предприятие и осуществлении документооборота, то начать выбор следовало бы с Oracle Database, функционал и производительность которого действительно впечатляют. Уникальной в данном сегменте является MongoDB, её также можно уверенно рекомендовать для рассмотрения. При ограниченном финансировании следует рассмотреть вариант использования PostgreSQL для документооборота.
Таким образом, в качестве СУБД для реализации процесса «A2.3.2 Обучение персонала» стоит рассмотреть вариант использования PostgreSQL.
2. Проектная часть
2.1. Информационная модель и её описание
Для описания информационной модели процесса использована нотация EPC. Данная нотация используется для представления алгоритма выполнения процесса (нотация класса workflow). Диаграмма, описанная в нотации EPC (событийная цепочка процессов), представляет собой упорядоченную комбинацию событий и функций. Для каждой функции могут быть определены начальные и конечные события, участники, исполнители, материальные и документальные потоки, сопровождающие её. В нотации EPC ветвление стрелок осуществляется с использованием операторов.
Нотация EPC поддерживает декомпозицию на более низкие уровни. Диаграмма декомпозируемой функции EPC может быть описана только в нотациях EPC или BPMN 2.0.