- •Проектирование информационных систем
- •Для студентов пятого курса специальности 071900 – Информационные системы в технике и технологиях
- •1Введение
- •1.1Классификация методов проектирования
- •1.2Виды информационных систем
- •1.2.1Системы обработки данных
- •1.2.2Системы управления
- •1.2.3Офисные системы
- •1.2.4Системы поддержки принятия решений
- •1.2.5Экспертные системы
- •1.3Структура информационной системы
- •1.4Архитектура системы
- •1.4.1Общее понятие системной архитектуры
- •1.4.2Архитектурные уровни
- •2Проектирование информационных систем на основе объектно-ориентированного подхода
- •2.1Представления системы
- •2.2Uml-модель информационной системы
- •2.3Представления системы в rational rose
- •2.4Проектирование в rational rose
- •2.5Моделирование предметной области
- •2.5.1Моделирование организационной структуры
- •2.5.2Моделирование бизнес-процессов
- •2.5.3Моделирование бизнес-функций
- •2.5.4Моделирование документов и бизнес-сущностей
- •2.6Использование бизнес-модели на этапах разработки
- •2.7Диаграмма вариантов использования – use case diagram
- •2.7.1Обозначения в диаграмме вариантов использования
- •2.7.2Идентификация актёров и вариантов использования
- •2.7.3Категории вариантов использования
- •2.7.4Абстрактные варианты использования
- •2.7.5Конкретные варианты использования
- •2.7.6Запись актёров и вариантов использования
- •2.7.7.4Альтернативные потоки событий
- •2.7.7.5Постусловия варианта использования
- •2.8Диаграммы взаимодействия – interaction diagrams
- •2.8.1Идентификация объектов
- •2.8.2Использование диаграмм взаимодействия
- •2.8.3Диаграмма последовательности – Sequence diagram
- •2.8.4Подход к разработке диаграммы последовательности
- •2.8.5Диаграмма кооперации – Collaboration Diagram
- •2.9Диаграммы классов – class diagrams
- •2.9.1Классы
- •2.9.1.1Параметризованный класс – parameterized class
- •2.9.1.2Класс-наполнитель – instantiated class
- •2.9.1.3Утилита - utility
- •2.9.1.4Метакласс – metaclass
- •2.9.1.5Абстрактный класс – abstract class
- •2.9.2Стереотип класса
- •2.9.2.1Пограничные классы – boundary classes
- •2.9.2.2Управляющие классы – control classes
- •2.9.2.3Классы-сущности – entity classes
- •2.9.3Видимость класса – Visibility
- •2.9.4Пакеты – packages
- •2.9.5Диаграммы классов
- •2.9.6Создание диаграммы классов
- •2.9.6.1Идентификация программных классов
- •2.9.6.2Идентификация атрибутов
- •2.9.6.3Идентификация операций
- •2.9.6.4Идентификация ассоциаций
- •2.10Диаграммы состояний – statechart diagrams
- •2.10.1Основные сведения о диаграмме состояний
- •2.10.2События
- •2.10.2.1Сигнал
- •2.10.2.2С обытие вызова
- •2.10.2.3События времени и изменения
- •2.10.3Правила построения диаграммы состояний
- •2.10.4Диаграммы состояний для вариантов использования
- •2.10.5Классы и типы для диаграммы состояний
- •2.11Диаграммы компонентов – component diagrams
- •2.11.1Компоненты
- •2.11.2Основные виды компонентов
- •2.11.3Основные стереотипы компонентов
- •2.11.4Диаграмма компонентов
- •2.11.5Правила построения диаграммы компонентов
- •2.12Диаграмма развёртывания – deployment diagram
- •2.12.1Узлы - Nodes
- •2.12.2Соединения
- •2.12.3Диаграмма развёртывания
- •2.12.4Использование диаграмм развёртывания
- •2.12.4.1Встроенные системы
- •2.12.4.2Клиент-серверные системы
- •2.12.4.3Распределённые системы
- •3Системное проектирование сложных систем
- •3.1Цель и задачи системного проектирования
- •3.1.1Цель системного проектирования
- •3.1.2Задачи системного проектирования
- •3.2Структура и содержание документов системного проекта
- •3.2.1Техническое задание
- •3.2.2Описание архитектуры программного и информационного обеспечения системы
- •3.2.3Описание жизненного цикла, технологии и инструментария проектирования программного средства и базы данных
- •3.2.4Планы управления рабочими проектами
- •3.2.5Техническое задание на рабочее проектирование
- •3.2.6Системный проект
- •3.2.7Акт завершения работ и утверждения системного проекта
- •3.2.8Основные компоненты договора на детальное проектирование
- •3.3Работы и нормативные документы по системному проектированию информационной системы
- •3.4Стандарты в жизенном цикле информационных систем
- •3.4.1Нормативно-методическое обеспечение
- •3.4.2Рекомендуемые стандарты
- •4Проектирование систем как часть жизненного цикла
- •4.1Стадии и этапы жизненного цикла
- •4.1.1Исследование
- •4.1.2Проработка
- •4.1.3Создание
- •4.1.4Переходный период
- •4.2Процесс проектирования
- •4.2.1Концептуальное проектирование
- •4.2.2Логическое проектирование
- •4.2.3Физическое проектирование
2.5.3Моделирование бизнес-функций
Моделирование бизнес-функций предметной области так же, как и моделирование структуры организации, основано на структурной методологии. Для каждого подразделения определяются действующие лица производственного процесса и их функции, которые должны быть автоматизированы. Модель бизнес-функций используется собственно для определения границ системы и требований к ней.
Целями моделирования бизнес-функций предметной области являются:
Понимание структуры и динамики поведения автоматизируемой организации заказчиками, конечными пользователями и разработчиками системы.
Определение требований к автоматизированной системе, поддерживающей работу организации.
Модель бизнес-функций (business use case model) определяется как иерархия диаграмм. После моделирования организационной структуры должны существовать верхние уровни иерархии. Первый уровень иерархии включает одну или несколько организационных единиц (organization unit). Последующие уровни иерархии включают так же одну или несколько организационных единиц. Нижний уровень иерархии включает действующих лиц производственного процесса (business actor). Для каждого участника определяются производственные функции (business use case), отношения (relationships) между действующими лицами и их функциями и между функциями.
Отдельные бизнес-функции также могут быть декомпозированы моделями бизнес-задач, включающими исключительно действующих лиц производственного процесса (business actor), их задачи, отношения между действующими лицами и их задачами и между задачами. Организационные единицы в моделях, декомпозирующих функции, отражаться не должны.
М одель бизнес-функций строится с использованием диаграммы функций (use case diagram).
Рекомендации для определения бизнес-функций
Определить бизнес-функции гораздо легче после моделирования бизнес-процессов, то есть после построения диаграмм деятельностей (Activity diagrams), в которых описываются автоматизируемые производственные процессы.
Если диаграммы деятельностей не создавались, то после определения назначения системы необходимо выделить характерные функции системы. Рекомендуется включить в модель функции, которые можно классифицировать по следующим видам:
Регистрация важной информации. Например, учёт и/или регистрация.
Ведение дела. Например, контроль и оценка состояния чего-либо на основе значений его атрибутов, поддержка необходимых в процессе трудовой деятельности действий, различные вычисления, сортировка и поиск.
Анализ результатов бизнеса. Например, подсчёт экономических показателей деятельности, оценка производительности труда.
Взаимодействие с другой системой. Например, приём и отправка сообщений системе более высокого уровня.
Функции проектируются с учётом приоритета. Приоритет определяется следующими критериями:
Почему важна эта функция?
Какова она?
Для кого она предназначена?
Начинают моделирование всегда с наиболее важных бизнес-функций.
Можно выделить следующие категории функций:
Очевидные. Выполнение этих функций очевидно для пользователя. Например, запись информации о текущем заказе; вычисление общей стоимости заказа; отображение цены и описания выбранного товара; авторизация покупателя с использованием другой системы. Такие функции называют конкретными вариантами использования.
Скрытые. Должны выполняться незаметно для пользователя. В основном, это касается функций, связанных с сохранением информации на постоянных носителях. Например, регистрация покупки внутри системы; уменьшение количества товара после покупки; поддержка базы данных; обеспечение взаимодействия между подсистемами или системами. Такие функции называют абстрактными вариантами использования.
Дополнительные. Необязательные функции, добавление которых не повлияет на выполнение остальных функций. Например, показ внешнего вида товара. Эти функции могут быть как конкретными, так и абстрактными вариантами использования.
Приведённая классификация – всего лишь рекомендация. Каждый может самостоятельно выбрать для себя способ определения функций системы.