26
Реинжиниринг требований в проекте по миграции корпоративной информационной системы Стоит ли аналитику бежать впереди паровоза? Горленко Роман, Жданова Виктория, Русакова Наталья, Сафиулин Олег, Сиксимов Александр, Смирнов Алексей, Столяров Дмитрий, Шахов Алексей

Реверс-инжиниринг требований в проекте по миграции КИС. Алексей Смирнов

Embed Size (px)

Citation preview

Page 1: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Реинжиниринг требований в проекте по миграции

корпоративной информационной системы

Стоит ли аналитику бежать впереди паровоза?

Горленко Роман,Жданова Виктория, Русакова Наталья,Сафиулин Олег, Сиксимов Александр, Смирнов Алексей, Столяров Дмитрий, Шахов Алексей

Page 2: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Миграционный проект

Старая система,

AS IS (Power Builder)

Новая система, TO BE

(web, Java)

Новая система, TO BE

(web, Java)

База данныхБаза данных

2

Page 3: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Работа аналитикав миграционном проекте

Исходный код

Спецификация

3

Page 4: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Проблемы

Трудоемкий процесс анализа кода

Доработки до новых версий старой системы

Нет полного представления о системе

Нет понимания бизнес-процессов

Потеря специфических требований заказчика

Неструктурированность массива требований

Растущий объем кода новой системы

4

Page 5: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Решения

Перенос связей между модулями в модель

Автоматическое сравнение версий

Восстановление классов анализа старой системы

Модель реализации бизнес-процессов в Системе

Управление требованиями в модели

Структурированное хранение всей информация в модели

Группировка Java-кода по компонентам с помощью модели

Трудоемкий процесс анализа кода

Доработки до новых версий старой системы

Нет полного представления о системе

Нет понимания бизнес-процессов

Потеря специфических требований заказчика

Неструктурированность массива требований

Растущий объем кода новой системы

5

Page 6: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Инструмент для создания модели: SPARX Enterprise Architect

6

Page 7: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Анализ существующей системы и построение модели AS IS

Исходная система постоянно дорабатывается. Заказчик хочет, чтобы и мы актуализировали уже сданный функционал.

Как делать это эффективно?

7

Page 8: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

От исходников к модели AS IS

8

Page 9: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Слова проходят, а нужные связи остаются

9

Page 10: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Модель Системы AS IS

10

Page 11: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Слова проходят, а нужные связи остаются

11

Page 12: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Модель Системы AS IS

12

Page 13: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Модель Системы AS IS

13

Page 14: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Модель Системы AS IS

14

Page 15: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Модель Системы AS IS

Помогает в процессе анализа кода

Использование модели позволяет избегать повторного анализа

Частично решает проблему поиска данных

Упрощает оценку трудоемкости планируемых разработок

Дает понимание бизнеса заказчика и места в нем нашей системы

15

Page 16: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

От Системы AS IS к Системе TO BE

16

Page 17: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

TO BE, or not TO BE…

17

Page 18: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

TO BE, or not TO BE…

18

Page 19: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

ИТОГИ

19

Page 20: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Основные принципы

Выделение взаимосвязанных моделей для структурирования информации по уровням ее детализации и потребителям

Широкое применение пакетов для раскладывания элементов моделей и диаграмм

Обобщающие диаграммы облегчают навигацию между пакетами

Диаграммы отслеживания (traceability) визуализируют связи между элементами модели различных уровней (слоев) моделей

На диаграмме должна быть только однородная информация, что позволяет не смешивать различные «срезы» данных

20

Page 21: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Что же все это дало проекту?

Экономия времени в случае необходимости повторного анализа функций Системы AS IS, благодаря сохранению и последующему уточнению всей информации, полученной в ходе первичного анализа

Облегчение коммуникации внутри команды (и потенциально с заказчиком), т.к. существует единое место хранения информации о Системе TO BE и доступны ее «срезы» с различным уровнем детализации

Сформированный массив знаний позволил существенно снизить расходы на реализацию нового функционала, отсутствовавшего в Системе AS IS

…и все это благодаря первоначальным усилиям аналитиков проекта!

21

Page 22: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Чем быстрее Вы начнете, тем больший эффект это принесет проекту

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

Даже если проект заявляется как чисто миграционный, то все равно не следует «расслабляться». Рано или поздно с большой вероятностью может понадобится понимание Системы в целом и видение ее под различными углами.

Не бывает «неважной» или «ненужной» информации – все данные, полученные в ходе анализа должны быть зафиксированы. Со временем часть информации может быть отфильтрована и/или заархивирована.

22

Page 23: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Чем быстрее Вы начнете, тем больший эффект это принесет проекту

Page 24: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов
Page 25: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Так, стоит ли «бежать впереди паровоза»?..

А как считаете ВЫ?

Page 26: Реверс-инжиниринг требований в проекте по миграции КИС.  Алексей Смирнов

Летний Аналитический

Фестиваль

г. Иваново23-24 июня 2012

conf.uml2.ru

All you need is …