Методы и технологии реинжиниринга ИС

Автор: Пользователь скрыл имя, 23 Января 2012 в 22:36, реферат

Описание работы

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

Работа содержит 1 файл

Методы и технологии реинжиниринга ИС.doc

— 183.00 Кб (Скачать)

Методы  и технологии реинжиниринга  ИС

1. Введение.

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

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

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

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

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

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

Сегодня в мире существует большое количество подходов, методов и технологических решений, напрямую или косвенно соотносимых  с деятельностью по реинжинирингу  ИС. Однако они не интегрированы  на уровне методологий (процессов разработки). Как результат, можно наблюдать наличие огромного количества методологий, где основной акцент сделан на разработку ИС «с нуля», и практическое отсутствие «стройных» методологий, целью создания которых являлось бы комплексное, целостное решение задач реинжиниринга ИС.

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

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

2. Понятие «реинжиниринга  ИС», его содержание  и место в ЖЦ  ИС.

Существует ряд  работ [1, 2, 5, 9, 10, 13, 15, 16, 20, 34-36], в которых  в различной степени определяется соотносимая с реинжинирингом ИС деятельность, выявляется и исследуется место реинжиниринга в ЖЦ ИС.

2.1. Понятие «реинжиниринга  ИС».

Сразу следует  признать, что в настоящий момент понятие «реинжиниринг ИС» не является повсеместно устоявшимся. Как следствие довольно часто  возникает определенная терминологическая путаница. Авторами исследуются одни и те же проблемы, подходы, методы и технологии их решения, однако в качестве базовых понятий, наряду с «реинжинирингом ИС» [1, 9, 16, 20] употребляются «эволюция ИС» [10, 13], «миграция ИС» [15], «модернизация ИС» [2], «реструктуризация ИС» [5].

Нельзя отрицать, что деятельность по миграции ИС имеет  определенную специфику (окраску) по отношению  к деятельности по модернизации ИС. Однако, принимая во внимание определение  реинжиниринга ИС, приводимое в [1]:

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

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

Такой взгляд на реинжиниринг ИС согласуется с таксономией, вводимой в ряде работ [34, 36, 38-40]. В  этих работах авторами делается попытка выстроить систему понятий, соотносимых с данным видом деятельности. Так, в [38] реинжиниринг ИС определяется как «исследование (изучение, обследование) и перестройка исходной системы с целью ее воссоздания в новой форме с последующей реализацией этой новой формы[1]. Далее, в контексте деятельности по реинжинирингу вводятся и определяются такие важные понятия, как

  • прямой инжиниринг (Forward engineering);
  • редокументирование (Redocumentation);
  • рефакторинг (Refactoring);
  • реструктуризация (Restructuring);
  • переориентация (Retargeting);
  • обратный инжиниринг (обратное проектирование) (Reverse engineering);
  • сопровождение программных продуктов (Software maintenance);
  • трансляция исходного кода (Source Code Translation);
  • и т.д.

Перечисленные понятия раскрывают понятие «реинжиниринг  ИС», а соотносимая с ними деятельность рассматривается либо как одна из форм реинжиниринга ИС, либо как  подпроцесс процесса реинжиниринга. Определения  этих и других понятий приводятся в приложении к данной статье в глоссарии понятий и терминов. При этом в тех случаях, когда проявлялись отличия в определении того или иного понятия, в глоссарий включались альтернативные варианты определения, а при необходимости, и поясняющие определение комментарии.

2.2. Основное содержание  реинжиниринга ИС  и его место  в ЖЦ ИС.

Следующим шагом  на пути исследования подходов, методов  и технологий реинжиниринга ИС следует  считать определение основного  содержания деятельности по реинжинирингу  ИС, места реинжиниринга в ЖЦ ИС.

Так, в [1] авторы придерживаются следующей позиции  при определении границ деятельности по реинжинирингу, и, как следствие, места реинжиниринга в ЖЦ ИС.

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

В отличие от [1], работа [2] посвящена вопросам модернизации унаследованных информационных систем. В ней делается обзор различных методик модернизации унаследованных систем, определяется роль модернизации систем в процессе управлениях их эволюцией. Утверждается, что коммерческий рынок предлагает разнообразные решения проблемы модернизации унаследованных систем, которая становится все более актуальной. В сложившейся ситуации понимание преимуществ и слабых мест каждой такой методики является чрезвычайно важным, поскольку обуславливает выбор правильного решения, и как следствие успех деятельности по модернизации системы.

В контексте  исследований, связанных с эволюцией  ИС, авторами выделяются деятельности по сопровождению, модернизации и замещению  ИС.

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

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

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

Определяя место  этих видов деятельности в контексте  ЖЦ ИС, авторы рассматривают следующую последовательность их выполнения (см Рис. 1).

 
Рис. 1 Жизненный цикл ИС.

Первоначально, осуществляется разработка (построение) ИС. Далее выполняется деятельность по ее сопровождению. В процессе сопровождения  возникает необходимость в реструктуризации системы и как следствие выполняется деятельность по ее модернизации. После этого снова осуществляется деятельность по сопровождению системы. В тот момент, когда ИС перестает удовлетворять заказчика, осуществляется ее замещение на новую систему и последовательность выполняемых видов деятельности повторяется. Безусловно, в реальной жизни может возникать и другая последовательность, когда, сразу, не прибегая к модернизации, осуществляется замещение одной ИС другой. Однако общий подход к последовательности выполнения сопровождения, модернизации и замещения останется неизменным.

Приводимые в [2] виды деятельности основаны на таксономии, вводимой в [16]. В отличие от предыдущей работы, в [16] в качестве базового понятия  используется именно «реинжиниринг», а вводимая таксономия рассматривается как множество видов деятельности, соотносимых с реинжинирингом ИС. При этом применительно к унаследованным ИС выделяются соответственно деятельности по их оценке, сопровождению, трансформации, замещению, а так же смешанные стратегии, предусматривающие совместное выполнение перечисленных ранее видов деятельности.

Обеспечивая концептуальное понимание процесса реинжиниринга  ИС, в ряде работ [1, 9] определяются основные виды деятельности (фазы) соотносимые  с этим процессом.

Так, в [1] рассматриваются  следующие основные фазы:

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

Другой подход к определению деятельности по реинжинирингу базируется на так называемой модели «подковы» [9, 21].

В основу данной модели положены следующие процессы (виды деятельности), соотносимые с  реинжинирингом ИС:

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

Эти три основных процесса соединяются в модели в  виде «подковы» (см Рис. 2).

 
Рис.2 Модель «подковы».

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

Второй процесс (Architecture Transformation) заключается в трансформации (реинжиниринге) восстановленной архитектуры  к желаемой новой архитектуре. Полученная в результате трансформации новая архитектура оценивается с позиции ее качества с учетом накладываемых на нее организационных и экономических ограничений.

И, наконец, третий процесс (Architecture-based Development) включает деятельность по разработке системы, соответствующей  новой архитектуре. Здесь решаются вопросы декомпозиции элементов системы по пакетам, осуществляется выбор стратегий взаимодействия элементов/компонентов системы. В рамках данного процесса так же обеспечивается интеграция в новую систему артефактов унаследованной системы, например, посредством переписывания части унаследованного кода и/или применения технологии построения оболочек для компонентов унаследованной системы.

Информация о работе Методы и технологии реинжиниринга ИС