Перейти к содержимому

Информационная система и уровни архитектуры

Перед построением модели нужно определить, что именно моделируется. В контексте разработки ПО удобно считать, что модель описывает информационную систему.

Формально понятие информационной системы шире, чем понятие программного обеспечения.

Информационная система — это вся инфраструктура предприятия, задействованная в процессе управления всеми информационно-документальными потоками, включающая в себя следующие обязательные элементы:

  • Информационная модель, представляющая собой совокупность правил и алгоритмов функционирования ИС.
  • Регламент развития информационной модели и правила внесения в неё изменений.
  • Кадровые ресурсы (департамент развития, привлекаемые консультанты), отвечающие за формирование и развитие информационной модели.
  • Программное обеспечение, конфигурация которого соответствует требованиям информационной модели (программное обеспечение является основным движителем и, одновременно, механизмом управления ИС).
  • Кадровые ресурсы, отвечающие за настройку и адаптацию программного обеспечения, и его соответствие утвержденной информационной модели.
  • Регламент внесения изменений в настраиваемые структуры (специфические настройки, структуры баз данных и т.д.) и конфигурацию программного обеспечения и состав его функциональных модулей.
  • Аппаратно-техническая база, соответствующая требованиям по эксплуатации программного обеспечения.
  • Правила использования программного обеспечения и пользовательские инструкции, регламент обучения и сертификацию пользователей.

Нас во всей этой истории интересуют пункты про информационную модель (не путать с моделью ИС), программное обеспечение, кадровые ресурсы и аппаратно-техническую базу: как раз это является частью модели самой системы и может быть отражено с помощью UML.

Информацонную систему можно рассматривать на различных уровнях архитектуры, которые хорошо соотносятся с разными представлениями UML: функциональная, информационная, системная, программная, данных.

Функциональная архитектура описывает ИС с точки зрения функциональных подсистем и их взаимодействия между собой. Этот уровень архитектуры полезно выделять, поскольку именно на таком уровне решение показывается стейкхолдерам и пользователям. Также удобно показывать ИС с точки зрения взаимозаменяемых функциональных модулей, образующих конфигурацию.

Информационная архитектура описывает ИС с точки зрения информационных объектов, с которыми она может работать. Информационный объект — это сформированные по определённым правилам данные, трактуемые ИС (и пользователями) как единое целое. Совокупность таких объектов образует наполнение ИС.

Системная архитектура описывает взаимодействие программных и аппаратных компонентов системы и её пользователей, реализующие информационные процессы (сбор, хранение, передача, обработка и представление информации).

Программная архитектура описывает структурные элементы программного ИС и взаимодействие между ними. На этом уровне архитектуры необязательно применяется объектно-ориентированная парадигма, можно использовать модульную организацию кода, например.

Архитектура данных описывает формат хранения данных с точки зрения СУБД. Отличается от информационной архитектуры погружением в техническую организацию хранения и сериализации данных. В рамках курса мы не будем рассматривать этот уровень архитектуры, но его всегда удобно представить в виде ER-диаграммы.