Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...
История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...
Топ:
Особенности труда и отдыха в условиях низких температур: К работам при низких температурах на открытом воздухе и в не отапливаемых помещениях допускаются лица не моложе 18 лет, прошедшие...
Техника безопасности при работе на пароконвектомате: К обслуживанию пароконвектомата допускаются лица, прошедшие технический минимум по эксплуатации оборудования...
Когда производится ограждение поезда, остановившегося на перегоне: Во всех случаях немедленно должно быть ограждено место препятствия для движения поездов на смежном пути двухпутного...
Интересное:
Аура как энергетическое поле: многослойную ауру человека можно представить себе подобным...
Инженерная защита территорий, зданий и сооружений от опасных геологических процессов: Изучение оползневых явлений, оценка устойчивости склонов и проектирование противооползневых сооружений — актуальнейшие задачи, стоящие перед отечественными...
Финансовый рынок и его значение в управлении денежными потоками на современном этапе: любому предприятию для расширения производства и увеличения прибыли нужны...
Дисциплины:
2017-06-25 | 251 |
5.00
из
|
Заказать работу |
ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
Объект исследования: архитектуры информационных систем.
Результаты, полученные лично автором: спроектирована архитектура на базе сервисной шины предприятия, разработано ядро системы, ответственное за хранение информации о контингенте кафедры.
На кафедре «Информатика и программное обеспечение» («ИиПО») возникла потребность в автоматизации большинства бизнес-процессов, с целью оптимизации трудовых и временных затрат. Министерство образования не предоставляет программных средств, способных помочь преподавательскому и руководящему составу кафедры сократить объёмы человеко-часов на выполнение рутинных задач, а сторонние готовые решения либо обладают высокой стоимостью, либо не учитывают всех особенности конкретного структурного подразделения ВУЗа. Поэтому было принято решение разработать собственную информационную систему силами преподавателей и студентов кафедры «ИиПО». Особенностью данного решения является то, что подсистемы, решающие бизнес-задачи, будут разрабатываться самими студентами в рамках курсовых и дипломных работ.
Первым шагом в разработке информационной системы является разработка её ядра. Именно эту задачу, выполнение которой находится на финальном этапе, поставило руководство кафедры. Разработанное ядро следует принципам сервис-ориентированной архитектуры. Оно включает в себя сервисы, решающие строго отведённый круг системных или прикладных задач, а также средство коммуникации между службами – промежуточное программное обеспечение. Ядро включает следующие службы:
а) сервис аутентификации по паре логин/пароль (генерирует JWT токен);
б) сервис авторизации на базе ABAC подхода;
в) сервис учёта контингента (хранилище информации о преподавателях, студентах и учебных группах).
Сервисы не общаются на прямую, а используют, как было отмечено выше, промежуточное программное обеспечение – сервисную шину предприятия
«Enterprise Service Bus» от компании «WSO2». Шина предоставляет широкий спектр функций, которые в будущем могут пригодиться, но на данный момент используются только функции проксирования запросов и широковещательная рассылка сообщений с гарантией доставки до адресата. Подробнее архитектура ядра изображена на рис.
В качестве основного хранилища данных о людях используется сервер «OpenLDAP», который уже предоставляет средства по управлению аккаунтами, хранению информации о пользователях в заранее заготовленных разработчиками схемах данных по принципу «один ключ – несколько значений». Это уже позволяет хранить адреса, домашние телефоны, должности и другие данные, а также осуществлять регистронезависимый поиск по ним. К сожалению, «OpenLDAP» не является реляционным хранилищем. Для сохранения реляционных данных, а также данных, которые не поддерживают схемы «OpenLDAP», используется СУБД «PostgreSQL».
Рис.1. Ядро программного комплекса
Сервис авторизации предоставляет всего лишь одну услугу для сторонних служб: отвечает на вопрос «можно ли субъекту X выполнить действие Y над ресурсом Z», используя заложенные в него политики безопасности. Агрегация политик безопасности в одной службе мотивировано тем, что системой в таком случае будет проще управлять, а так же снизит сложность конечных служб. Сами политики безопасности могут быть произвольной сложности.
Отдельно необходимо отметить, почему была выбрана именно программная платформа «Node.js». С её помощью можно прототипировать небольшие сервисы с меньшими трудозатратами, чем на «C#» или «Java», тем самым быстрее тестировать глобальные архитектурные решения.
В настоящий момент ядро программного комплекса находится в стадии опытной эксплуатации. На его основе разрабатываются несколько выпускных квалификационных работ (как бакалавров так и магистров).
Использование разработанного ядра позволяет, привлекать к разработке подсистем и сервисов студентов без понижения безопасности и отказоустойчивости всего программного комплекса в целом, гибко распределять нагрузку и оперативно реагировать сервисам на изменения в данных и других сервисах.
Материал поступил в редколлегию 20.04.2017
УДК 004.7:004.891
А.А. Вершинин, Е.А. Козлов
Научный руководитель: заведующий кафедрой «Информатика и программное обеспечение», к.т.н., доцент А.Г. Подвесовский
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...
Эмиссия газов от очистных сооружений канализации: В последние годы внимание мирового сообщества сосредоточено на экологических проблемах...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!