- •Оглавление
- •Глава 1. Жизненный цикл программного обеспечения ……………………………………………43
- •Глава 2. Методические аспекты
- •Глава 3. Моделирование бизнес-процессов
- •Глава 4. Анализ и проектирование
- •Глава 5. Технологии создания программного
- •Глава 6. Оценка трудоемкости создания
- •Глава 7. Особенности современных проектов ........527
- •Предисловие
- •Введение
- •Глава 1 жизненный цикл программного обеспечения
- •Нормативно-методическое обеспечение создания по
- •Стандарт жизненного цикла по
- •Основные процессы жц по
- •Вспомогательные процессы жизненного цикла по
- •Организационные процессы жизненного цикла по
- •Взаимосвязь между процессами жц по
- •Модели жизненного цикла по
- •Каскадная модель жц
- •Итерационная модель жизненного цикла
- •Методика spmn
- •Пример процесса «управление требованиями»
- •Пример процесса «управление конфигурацией по»
- •Общие принципы проектирования систем
- •Визуальное моделирование
- •Структурные методы анализа и проектирования по
- •Метод функционального моделирования
- •Описание типов связей
- •Моделирования процессов idef3
- •Типы связей idef3
- •Типы соединений
- •Моделирование потоков данных
- •Количественный анализ диаграмм
- •Сравнительный анализ sadt-моделей и диаграмм потоков данных
- •Моделирование данных
- •Объектно-ориентированные методы анализа и проектирования по
- •Основные принципы построения объектной модели
- •Основные элементы объектной модели
- •Значения мощности
- •Унифицированный язык моделирования uml
- •Диаграммы вариантов использования
- •Диаграммы взаимодействия
- •Диаграммы классов
- •Диаграммы состояний
- •Диаграммы деятельности
- •Диаграммы компонентов
- •Диаграммы размещения
- •Механизмы расширения uml
- •Количественный анализ диаграмм uml
- •Основные элементы языка uml
- •Основные типы связей языка uml
- •Диапазоны оценок для диаграмм uml
- •Образцы
- •Сопоставление и взаимосвязь структурного и объектно-ориентированного подходов
- •Структурный (процессный) подход к моделированию бизнес-процессов
- •Принципы процессного подхода
- •Применение диаграмм потоков данных
- •Система моделирования aris
- •Метод ericsson-penker21
- •Пример использвания процессного подхода
- •История болезни пациента
- •Спецификация структур данных
- •Построение диаграмм потоков данных нулевого и последующих уровней
- •Объектно-ориентированный подход к моделированию бизнес-процессов
- •Методика моделирования
- •Пример использования объектно-ориентированного подхода
- •Пример спецификации требований к программному обеспечению
- •Пример структурного проектирования по
- •Построение диаграмм системных процессов и диаграмм последовательностей экранных форм
- •Объектно-ориентированный анализ
- •Архитектурный анализ
- •Анализ вариантов использования
- •Объектно-ориентированное проектирование
- •Проектирование архитектуры системы
- •Проектирование элементов системы
- •Глава 5 технологии создания программного обеспечения
- •Определение технологии
- •Общие требования, предъявляемые
- •Внедрение тс по в организации
- •Общие сведения
- •Определение потребностей в тс по
- •Оценка и выбор тс по
- •Критерии оценки и выбора тс по
- •Выполнение пилотного проекта
- •Практическое внедрение тс по
- •Примеры тс по
- •Технология rup (rational unified process)
- •Технология oracle
- •Технология borland
- •Технология computer associates
- •Глава 6 оценка трудоемкости создания программного обеспечения
- •Методы оценки и их классификация
- •Методика оценки трудоемкости разработки по на основе функциональных точек
- •Определение функциональных типов
- •Определение количества и сложности функциональных типов по данным
- •Сложность ilf и eif
- •Определение количества и сложности транзакционных функциональных типов
- •Подсчет количества функциональных точек
- •Зависимость количества fp от сложности функционального типа
- •Коммуникации данных
- •Распределенная обработка данных
- •Сложность ei
- •Сложность ео
- •Производительность
- •Эксплуатационные ограничения
- •Частота транзакций
- •Ввод данных в режиме «онлайн»
- •Эффективность работы конечных пользователей1
- •Онлайновое обновление
- •Сложная обработка31
- •Повторное использование
- •Простота установки
- •Простота эксплуатации
- •Количество возможных установок на различных платформах
- •Гибкость32
- •Оценка трудоемкости разработки
- •Размер программного обеспечения в fp и loc
- •Распределение временных затрат по стадиям для маленьких и больших проектов
- •Статистические данные
- •Статистические (регрессионные) модели
- •Группа процессов
- •Определение весовых показателей вариантов использования
- •Определение технической сложности проекта
- •Определение уровня квалификации разработчиков
- •Оценка трудоемкости проекта
- •Методы, основанные на экспертных оценках
- •Метод дельфи
- •Метод декомпозиции работ
- •Средства оценки трудоемкости
- •Планирование итерационного процесса создания по
- •Глава 7 особенности современных проектов
- •Категории «безнадежных» проектов
- •Причины, порождающие «безнадежные» проекты
- •Причины разногласий между участниками проекта
- •Переговоры в «безнадежном» проекте
- •Человеческий фактор в «безнадежных» проектах
- •Процессы в «безнадежных» проектах
- •Динамика процессов
- •Контроль над продвижением проекта
- •Технология и инструментальные средства «безнадежных» проектов
- •Дополнительная литература
- •Краткий словарь терминов
- •Список основных сокращений
Объектно-ориентированный подход к моделированию бизнес-процессов
3.3.1.
Методика моделирования
RATIONAL UNIFIED PROCESS
Объектно-ориентированный подход к моделированию бизнес-процессов с использованием языка UML реализован в технологии Rational Unified Process. Методика моделирования, являющаяся составной частью данной технологии, предусматривает построение двух моделей:
модели бизнес-процессов (Business Use Case Model);
модели бизнес-анализа (Business Analysis Model).
Модель бизнес-процессов — модель, описывающая бизнес-процессы организации в терминах ролей и их потребностей. Она представляет собой расширение модели вариантов использования UML за счет введения набора стереотипов Business Actor (стереотип действующего лица) и Business Use Case (стереотип варианта использования).
Business Actor (действующее лицо бизнес-процессов) — это некоторая роль, внешняя по отношению к бизнес-процессам организации. Потенциальными кандидатами в действующие лица, бизнес-процессов являются:
акционеры;
заказчики;
поставщики;
партнеры;
потенциальные клиенты;
местные органы власти;
сотрудники подразделений организации, деятельность которых не охвачена моделью;
внешние системы.
Список действующих лиц составляется путем ответа на следующие вопросы:
Кто извлекает пользу из существования организации?
Кто помогает организации осуществлять свою деятельность?
Кому организация передает информацию и от кого получает?
Business Use Case (вариант использования с точки зрения бизнес-процессов) определяется как описание последовательности действий (потока событий) в рамках некоторого бизнес-процесса, при носящей ощутимый результат конкретному действующему лицу.
Это определение подобно общему определению бизнес-процесса, по имеет более точный смысл. В терминах объектной модели Business Use Case представляет собой класс, объектами которою являются конкретные потоки событий в рамках описываемою бизнес-процесса.
Донная методика концентрирует внимание в первую очередь на элементарных бизнес-процессах. Такой процесс можно определить как задачу, выполняемую одним человеком в одном месте в одно время в ответ на некоторое событие, приносящую конкретный результат и переводящую данные в некоторое устойчивое состояние (например, подтверждение платежа по кредитной карточке). Выполнение такой задачи обычно включает от пяти до десяти шагов и может занимать от нескольких минут до нескольких дней, но рассматривается как один сеанс взаимодействия действующего лица с исполнителями.
Каждый Business Use Case отражает цель или потребность некоторого действующего лица. Например, если рассмотреть процесс регистрации пассажиров в аэропорту (рис. 3.1122), то его основным действующим лицом будет сам Пассажир, главная цель которого в данном процессе — пройти регистрацию. Эта цель моделируется в виде Business Use Case с наименованием «Пройти регистрацию». Другим действующим лицом является Руководитель туристической группы, регистрирующий группу пассажиров. Стереотипы связей явно показывают роль действующих лиц по отношению к вариантам использования.
Рис. 3.11. Диаграмма вариантов использования для процесса регистрации
пассажиров в аэропорту
Описание Business Use Case представляет собой спецификацию, которая, подобно обычному варианту использования, состоит из следующих пунктов:
наименование;
краткое описание;
цели и результаты (с точки зрения действующего лица);
описание сценариев (основного и альтернативных);
специальные требования (ограничения по времени выполнения или другим ресурсам);
расширения (исключительные ситуации);
связи с другими Business Use Case;
диаграммы деятельности (для наглядного описания сценариев при необходимости).
Пример спецификации Business Use Case:
Наименование — пройти регистрацию.
Краткое описание — данный Business Use Case реализует процесс регистрации пассажира на рейс.
Цели — получить посадочный талон и сдать багаж.
Основной сценарий.
Пассажир встает в очередь к стойке регистратора.
Пассажир предъявляет билет регистратору.
Регистратор подтверждает правильность билета.
Регистратор оформляет багаж.
Регистратор резервирует место для пассажира.
Регистратор печатает посадочный талон.
Регистратор выдает пассажиру посадочный талон и квитанцию на багаж.
Пассажир уходит от стойки регистратора.
Альтернативные сценарии.
За. Билет неправильно оформлен — регистратор отсылает пассажира к агенту по перевозкам.
4а. Багаж превышает установленный вес — регистратор оформляет доплату.
Специальные требования - время регистрации не должно превышать одной минуты.
Описание Business Use Case может сопровождаться целью процесса, которая, так же, как и в методе Eriksson-Penker, моделируется с помощью класса со стереотипом «goal», а дерево целей изображается в виде диаграммы классов.
Для каждого Business Use Case строится модель бизнес-анализа - объектная модель, описывающая реализацию бизнес-процесса и терминах взаимодействующих объектов (бизнес-объектов — Business Object), принадлежащих к двум классам, — Business Worker и Business Entity.
Business Worker (исполнитель) — активный класс, представляющий собой абстракцию исполнителя, выполняющего некоторые действия в рамках бизнес-процесса. Исполнители взаимодействуют между собой и манипулируют различными сущностями, участвуя в реализациях сценариев Business Use Case. На диаграмме классов UML исполнитель представляется в виде класса со стереотипом «business worker». Например, если рассмотреть Business Use Case «Пройти регистрацию», можно определить в нём двух исполнителей — Регистратора и Координатора багажа.
Business Entity (сущность) — пассивный класс, не инициализирующий никаких взаимодействий. Объект такого класса может участвовать в реализациях различных Business Use Case. Сущность является объектом различных действий со стороны исполнителей. Понятие Business Entity аналогично понятию сущности в модели ERM, за исключением того, что в ERM не определяется поведение сущности, а в объектной модели сущность может иметь набор обязанностей. На диаграмме классов UML сущность представляется в виде класса со стереотипом «business entity». Например, в Business Use Case «Пройти регистрацию» можно определить следующие сущности: Билет, Рейс, Авиалиния, Багаж, Багажная бирка.
Модель бизнес-анализа может состоять из диаграмм разных типов. В состав модели обязательно должна входить диаграмма классов, содержащая исполнителей и сущности. Пример такой диаграммы для Business Use Case «Пройти регистрацию» приведен на рис. 3.12.
Рис. 3.12. Диаграмма классов модели бизнес-анализа
Рис. 3.13. Диаграмма последовательности для основного сценария
Business Use Case «Пройти регистрацию»
На данной диаграмме ассоциации между классами-исполнителями отражают наличие взаимодействия между реальными исполин гелями (Регистратором и Координатором багажа). Ассоциации между классами-исполнителями и классами-сущностями показывают, какими именно объектами манипулируют конкретные исполнители (Регистратор имеет дело с Багажом и Багажной биркой, а Координатор багажа - только с Багажом). Ассоциации между классами-сущностями отражают различные структурные связи (к одному месту багажа прикрепляется одна багажная бирка).
Кроме диаграммы классов, модель бизнес-анализа может включать:
Диаграммы последовательности (и кооперативные диаграммы), описывающие сценарии Business Use Case в виде последовательности обмена сообщениями между объектами действующими лицами и объектами-исполнителями. Такие диаграммы помогают явно определить в модели обязанности каждого исполнителя в виде набора его операций. Пример диаграммы последовательности, описывающей основной сценарий Business Use Case «Пройти регистрацию», приведен на рис. 3.13. Модифицированная диаграмма классов модели бизнес-анализа с операциями приведена на рис. 3.14.
Диаграммы деятельности с потоками объектов и «плавательными дорожками», описывающие взаимосвязи между сценариями одного или различных Business Use Case. Пример такой диаграммы для процесса заказа товаров в торговой компании приведен на рис. 3.15.
Диаграммы состояний, описывающие поведение отдельных бизнес-объектов (например, для сущности «Багаж» можно описать переходы между состояниями «Определен вес», «Зарегистрирован», «Находится на транспортере» и т.д.).
Рис. 3.14. Модифицированная диаграмма классов модели
бизнес-анализа с операциями
Рис. 3.15. Диаграмма деятельности для процесса заказа товаров
Методика моделирования Rational Unified Process предусматривает специальное соглашение, связанное с группировкой структурных элементов и диаграмм бизнес-модели. Это соглашение включает следующие правила:
Все действующие лица, варианты использования и диаграммы вариантов использования для бизнес-процессов помещаются в пакет с именем Business Use Case Model.
Все классы и диаграммы моделей бизнес-анализа помещаются в пакет с именем Business Analysis Model.
Если моделируется деятельность более чем одного подразделения организации, то совокупность всех классов-исполнителей и классов-сущностей из моделей бизнес-анализа для различных Business Use Case разделяется на пакеты, соответствующие этим подразделениям. Этим пакетам присваиваются наименования подразделений (например, Бухгалтерия, Отдел доставки и т.п.) и стереотип «organization unit» (организационная единица).
Диаграммы модели бизнес-анализа, относящиеся к конкретному Business Use Case (диаграммы классов, последовательности, деятельности и состояний) помещаются в кооперацию (см. подразд. 2.6) с именем данного Business Use Case и стереотипом «business use-case realization» (реализация бизнес-процесса). Все кооперации помещаются в пакет с именем Business Use Case Realizations.
Пример структуры бизнес-модели для процесса регистрации пассажиров в аэропорту приведен на рис. 3.16.
Рис. 3.16. Пример структуры бизнес-модели
Методика моделирования Rational Unified Process обладает следующими достоинствами:
модель бизнес-процессов строится вокруг участников процессов (заинтересованных лиц) и их целей, помогая выявить все потребности клиентов организации. Нетрудно заметить, что такой подход в наибольшей степени применим для организаций, работающих в сфере оказания услуг (торговые организации, банки, страховые компании и т.д.);
моделирование на основе вариантов использования способствует хорошему пониманию бизнес-модели со стороны заказчиков.
Однако следует отметить, что при моделировании деятельности крупной организации, занимающейся как производством продукции, так и оказанием услуг, необходимо применять различные методики моделирования, поскольку для моделирования производственных процессов более предпочтительным является процессный подход (например, метод Eriksson-Penker).
3.3.2.
