Проектирование информационных систем уже давно не производится на бумаге, а производится с использованием автоматизированных CASE-средств (Computer Aided Software Engineering). Эти средства позволяют автоматизировать процесс проектирования информационной системы, провести ее анализ (например, финансово-стоимостной анализ), а затем уже и создать каркас рабочего приложения.
На текущий момент выделяют две основных методологии проектирования информационных систем: структурный и объектно-ориентированный. Нельзя говорить, что два средства этих двух подходов можно получить разные результаты — оба они описывают и моделируют рассматриваемую предметную область.
CASE-средства реализуют технологию проектирования. Технология проектирования включает в себя:
- последовательность процедур, определяющих последовательность операций проектирования;
- критерии и правила, используемые для оценки результатов технологических операций (соответствие стандартам, например, ГОСТу);
- нотации (графические и текстовые), используемые для описания проектируемой информационной системы.
При использовании различных подходов используются различные нотации. В структурном подходе используется нотация IDEF (Integrated DEFinition), при объектно-ориентированном подходе используется нотация UML (Unified Modelling Language).
Нотация IDEF содержит следующие диаграммы:
- IDEF0 — Process Modelling — процессное моделирование. Изучаемая система или процесс представляются в виде взаимосвязанных функций.
- IDEF1 — Information Modelling — информационное моделирование. Используется для моделирования информационных поток внутри системы.
- IDEF1x — Information Modelling Extended — тоже информационное моделирование, основанное на концепции «Сущность-связь». Как правило, используется для моделирования реляционных структур баз данных.
- IDEF2 — Simulation Model Design — динамическое моделирование систем. К сожалению, сейчас от этого типа диаграмм отказались в виду сложности моделирования динамических систем.
- IDEF3 — Process Description Capture — описание и документирование процессов информационной системы, используется для моделирования альтернатив и причинно-следственных связей.
- IDEF4 — Object-Oriented Design — моделирование объектно-ориентированных систем.
- IDEF5 — Ontology Description Capture — описание системы в виде словаря терминов, на основе которого можно делать выводы о необходимости дальнейшего развития и оптимизации системы.
- IDEF6 — Design Rationale Capture — обоснование проектных действий. Назначение IDEF6 состоит в обосновании выбора проектных решений. Остальные стандарты описывают систему, IDEF6 содержат обоснование принятых проектных решений.
- IDEF7 — Information System Auditing — аудит информационных систем. Стандарт так и не был разработан до конца.
- IDEF8 — User Interface Modelling — моделирование пользовательского интерфейса. Рассматривает взаимодействие пользователя и приложения, элементы интерфейса, сценарии взаимодействия.
- IDEF9 — Scenario-Driven Information System Design — исследование ограничений бизнес-процессов. Используется для моделирования ограничений, в рамках которых работает рассматриваемое предприятие и какие ограничения потом будут наложены на смоделированную систему.
- IDEF10 — Implementation Architecture Modelling — структура внедрения системы. Стандарт так и не был разработан до конца.
- IDEF11 — Information Artifact Modelling — моделирование нестабильностей системы. Не разработан до конца.
- IDEF12- Organization Modelling — моделирование организационной структуры предприятия. Стандарт не разработан до конца.
- IDEF13 — Three Schema Mapping Design — непрерывное преобразование данных. Не разработан до цона.
- IDEF14 — Network Design — моделирование компьютерных сетей на основе анализа требований к системе и сетевым операциям.
Для объектно-ориентированного подхода используется уже другой набор диаграмм:
- Class Diagram — диаграмма классов — статическое описание структуры систем. На диаграмме отображаются классы системы с их атрибутами, методами и связями.
- Component Diagram — диаграмма компонентов — показывает разбиение системы на компоненты — файлы, библиотеки.
- Composite Structude Diagram — диаграмма композиции. Совместно с диаграммой кооперации (Collaboration Diagram) показывает исполнителей, их роли и взаимодействие между ними.
- Deployment Diagram — диаграмма развертывания — структура аппаратных компонентов системы, на которых будет развернута информационная система.
- Object Diagram — диаграмма объектов — взаимодействие отдельных экземпляров классов — снимок системы в заданный момент времени.
- Package Diagram — диаграмма пакетов — вспомогательная диаграмма, служит для наглядного объединения объектов системы в группы.
- Activity Diagram — диаграмма активности — показывает последовательность передачи управления между исполнителями.
- State Machine Diagramm — диаграмма состояний — представляет систему в виде конечного автомата, переходы системы между стабильными состояниями.
- Use Case Diagram — диаграмма прецедентов или вариантов использования — отображает взаимодействие между исполнителями.
- Collaboration Diagram — диаграмма кооперации — показывает взаимодействие между частями системы и ролями исполнителей в ней.
- Sequence Diagram — диаграмма последовательности. То же, что и диаграмма кооперации, только упорядочено по времени.
Для реализации конкретной методологии используются специальное программное обеспечение — AllFusion ERWin Process Modeller & AllFusion Data Modeller для структурного подхода и IBM Rational Rose для объектного подхода. Это самые известные платные пакеты. Правда, существуют и бесплатные, например, Umbrella, но такие системы либо плохо документированы, либо не обладают всеми необходимыми функциями.