Средства Rational / Telelogic для оптимизации процессов разработкиИсточник: bytemag
Обзор пакета программных средств компании IBM Rational / Telelogic, реализующих концепцию управления жизненным циклом предприятия - ELM. Еще несколько лет назад в проблематике управления предприятиями один из главных вопросов состоял в том, как убедить заказчиков в необходимости процессно-ориентированного подхода, то сейчас спектр задач в этой области явно смещается в сторону оптимизации бизнес-процессов. Шведская компания IBM Rational / Telelogic известна как ведущий поставщик интегрированных программных решений для управления жизненным циклом предприятия (Enterprise Lifecycle Management, ELM). Под ELM понимается круг задач, связанных с определением целей бизнеса и приведением бизнес-процессов в соответствие с этими целями. Компания выделяет здесь три основных направления: оптимизация бизнес-процессов (Business Process Optimization, BPO), управление жизненным циклом приложений (Application Lifecycle Management, ALM) и разработка на основе моделей (Model-Driven Development, MDD). "Конек" IBM Rational / Telelogic - задачи управления проектами создания продуктов на основе заданных требований (Requirement-Driven Development, RDD). Такой подход, позволяя достичь поставленных бизнес-целей, обеспечивает устойчивость и полноту системы требований на всех этапах процесса разработки - от планирования продукта до его внедрения или вывода на рынок. Набор инструментов RDD образует платформу разработки, оптимизирующую производительность команды в целом и обеспечивающую соответствие продукта и процесса его создания нормативным актам, внутренним регламентам предприятия и требованиям аудита. Решения IBM Rational / Telelogic подходят для создания самого широкого спектра продукции, но в последние годы компания активно развивает свои инструменты применительно к разработке ПО и сейчас, по уверениям представителей компании, даже опережает в сфере управления софтверными проектами признанных лидеров рынка инструментальных средств. Концепция ELM подразумевает, что компании должны четко сформулировать и обозначить свои бизнес-цели, идентифицировать и ранжировать потребности своих клиентов, привести в соответствие и оптимизировать бизнес-процессы и процессы разработки, чтобы выйти на рынок с продуктом, максимально удовлетворяющим нужды клиентов, с минимальными затратами на его реализацию в рамках планируемого бюджета и сроков. Контролируемое управление жизненным циклом предприятия поможет компании не просто создавать правильные продукты, чтобы увеличить свои доходы, но и создавать их правильно, минимизируя затраты и повышая качество. Именно на решение этих задач нацелен пакет программных средств IBM Rational / Telelogic (рис. 1), в который входит три группы продуктов: для управления архитектурой предприятия, для управления продуктами и для разработки инженерных систем и ПО. Управление архитектурой предприятияЭта группа продуктов представлена ПО IBM Rational System Architect / Telelogic - инструментом для моделирования архитектуры предприятия. Он поддерживает большинство общепринятых нотаций и сред (frameworks), способствующих быстрому и качественному моделированию архитектуры предприятия. На тот случай, что компании потребуется использовать собственные нотации, System Architect поддерживает разработку и применение собственных подходов и методологий. Основные возможности System Architect - это бизнес-моделирование, моделирование приложений, моделирование данных, структурный анализ, выполнение декомпозиции моделей, построение матриц отношений. Вся информация о предприятии накапливается и хранится в едином репозитории System Architect (энциклопедии), что дает возможность предоставить доступ к обновляемой информации практически неограниченному количеству специалистов, поддерживать общекорпоративную терминологию, обсуждать проблемы в рамках единого корпоративного подхода. В качестве хранилища данных можно использовать Microsoft SQL Server, Microsoft Server Desktop Engine, Oracle. Для интеграции системы с другими приложениями предусмотрен обширный набор средств импорта данных. Предопределенные роли пользователей наряду с широкими возможностями настройки прав доступа к базе данных повышают уровень защиты и сохранности данных. А гибкие настройки пользовательского интерфейса с возможностью создания индивидуальных настроек - как общих для всей энциклопедии, так и для каждого пользователя отдельно - обеспечивают высокую производительность и эффективность работы с System Architect. Для расширения базовой функциональности и возможностей инструмента (например, настройки для автоматизации часто повторяющихся операций) служит встроенный язык программирования VBA. Для пользователей, которые выполняют ограниченный набор операций, можно создавать итерационные Web-ориентированные инструкции-учебники, в которых будет описана последовательность шагов и предоставлена возможность их исполнения. System Architect поддерживает имитационное моделирование (возможность запуска модели на исполнение) в нотациях BPMN и IDEF3 (рис. 2), что позволяет увидеть реальное движение данных в модели, проанализировать наличие очередей, найти и устранить узкие места, оптимизировать процессы. С помощью системы создания отчетов можно готовить отчеты любой сложности и детализации, а также автоматически публиковать их на Web-сайте для общего доступа (System Architect/Publisher). Управление продуктамиIBM Rational Focal Point / Telelogic - это инструмент, обеспечивающий поддержку принятия решений при управлении требованиями, портфелем проектов и производством продукции. В число его возможностей для улучшения процесса принятия решений входят следующие:
С помощью данного решения менеджеры по продукту могут собрать из разных источников и сконцентрировать в едином репозитории все те сведения, которые необходимо учитывать для принятия объективного и взвешенного решения о дальнейшем развитии продукта. Встроенный механизм определения приоритетов характеристик (функционала, параметров, критериев и т. д.) продукта позволяет выделить наиболее значимые из них. Кроме того, с помощью Focal Point можно создать план выпуска релизов, выделить и распределить необходимые ресурсы. Соединяя возможности анализа сценариев "что, если" и методику визуализации, приложение Focal Point повышает эффективность производства и позволяет избежать наиболее часто встречающихся проблем, связанных с неправильной постановкой процесса принятия решения в рамках управления продукцией. Так, средства визуализации информации (например, диаграммы Ганта) упрощают процесс принятия решения, помогая понять, какие из требований стоит реализовать в первую очередь, учитывая, что их значимость высока, а стоимость разработки и риски невелики. А функции анализа сценария "что, если" позволяют определить, реализация каких характеристик продукта и в каком релизе будет наиболее эффективной для компании. Инструментальные средстваПосле того как бизнес-процессы компании настроены и оптимизированы с помощью System Architect, а с помощью Focal Point определен приоритетный список требований, которые предполагается воплотить в новом продукте, можно воспользоваться решением IBM Rational / Telelogic для ALM. Замкнутый цикл производства инженерных систем или программных приложений можно представить в виде последовательности этапов, которые реализуются с помощью инструментов IBM Rational / Telelogic (рис. 3). Управление требованиямиВ семейство инструментов для управления требованиями IBM Rational DOORS / Telelogic входят продукты DOORS, DOORS/Analyst и DOORS Fastrak. Инструмент DOORS открывает эту линейку ПО IBM Rational / Telelogic, отвечая как за первоначальный этап сбора и формулирования требований по проекту, так и за весь жизненный цикл реализации проекта. Первоначально DOORS разрабатывался только как средство для управления требованиями в процессе разработки ПО. Однако заложенные в инструменте идеи оказались настолько привлекательными, что в настоящее время DOORS широко используется в компаниях, которые не имеют никакого отношения к разработке софта, но вынуждены - в соответствии с профилем своей работы - контролировать огромные объемы взаимосвязанной информации, например, при разработке инженерных систем. Основное предназначение и функционал DOORS легко себе представить, если задуматься над тем, какие гигантские ресурсы затрачиваются, чтобы внести в проект необходимые изменения; отследить документы, в которые они вносятся; проверить вносимые дополнения на непротиворечивость друг другу, а также на соответствие различным нормативным документам (корпоративные правила, стандарты, законы); известить об этих изменениях всех вовлеченных в процесс; "заставить" их рыться в многостраничных документах, выискивая последние изменения, корректировать и приводить в соответствие имеющиеся планы и "утрясать" новые; согласовывать сроки этапов и проектов, терять время на многочисленных совещаниях, а для разных департаментов компании - тратить время и дополнительные усилия еще и на согласование и взаимоувязку совместных действий. Тут полезно будет заметить, что, по данным аналитиков независимой компании The Standish Group, в 22% реализуемых проектов не все вносимые изменения принимаются во внимание; как следствие, 70% проектов не реализует всех поставленных задач. От 30 до 50% рабочего времени специалиста тратится на работу, никак не связанную с непосредственным решением его задачи: это время уходит на работу с документами, поиск требуемой информации, отслеживание последних редакций изменений и т. п. Из-за неправильной работы с требованиями опоздание для среднего проекта достигает 220%, и, в конце концов, 30-40% всех проектов просто "умирает" до завершения. DOORS решает все эти проблемы, поскольку в него заложены определенные виды анализа (Impact analyze, Traceability analyze, Coverage analyze, Change Proposal System), позволяющие управлять и контролировать процесс реализации требований, внесение и отработку изменений на всем протяжении жизненного цикла проекта. В любой момент времени DOORS может показать:
Кроме того, DOORS воплощает в одном документе все многообразие информации: текст, таблицы, диаграммы, рисунки, аудио- и видеоинформацию. Многие компании, работающие с требованиями, стараются представить их не только в виде текста, но и графически. Такой подход, с одной стороны, позволяет на самых ранних стадиях избежать двусмысленности или неточности толкования требований, а с другой - более наглядно отображает их суть. Для этих случаев предназначен DOORS/Analyst - расширенный вариант DOORS, в который встроена возможность моделировать требования, используя нотацию языка UML 2.0. Такой подход позволяет впоследствии "собирать" разные диаграммы в единое целое, используя более мощное средство моделирования IBM Rational Tau / Telelogic (или ПО третьих фирм) для проверки и отработки функционала создаваемой системы, для симуляции поведения приложения или автогенерации кода. Для поддержки работы над проектами создания ПО с короткими сроками поставки продукта IBM Rational / Telelogic предлагает Web-решение DOORS Fastrak, которое реализует концепцию eXtreme Requirements Management. "Короткие" проекты разработки ПО отличаются тем, что исполнители, выполняя запросы заказчика, вынуждены постоянно балансировать между необходимостью делать быстро и требованием делать качественно. Будучи объединяющей средой, DOORS Fastrak устраняет тот хаос, который обычно образуется при попытках управления требованиями посредством Microsoft Word, Excel или электронной почты (а такой подход зачастую все еще используется во многих компаниях). DOORS Fastrak доступен для работы либо как приложение, устанавливаемое на рабочем месте пользователя, либо как сервис по модели SaaS (Software as a Service); в последнем случае задействуется сервер компании IBM Rational / Telelogic. DOORS Fastrak не требует клиентского ПО - для работы достаточно лишь Web-браузера. В отличие от DOORS/Analyst, который выполнен на базе DOORS, решение DOORS Fastrak строится на базе IBM Rational Focal Point / Telelogic. Системные и программные разработкиИнструмент IBM Rational Tau / Telelogic базируется на новом стандарте UML 2.0. Продукт поставляется в трех редакциях, самая полная из которых (Developer) позволяет решать следующие задачи:
Средство IBM Rational Modeler / Telelogic - бесплатно распространяемая среда проектирования встраиваемых систем и ПО на основе языка UML 2.1. Она включает возможности представления концептуальных моделей средствами графического языка, автоматического документирования, использования базы знаний и форумов, доступных через Web. Вариант Corporate Edition обеспечивает интеграцию с распространенными инструментами управления конфигурациями, в том числе с IBM Rational Synergy / Telelogic. Инструмент IBM Rational SDL Suite / Telelogic построен на базе международного стандартного языка SDL (Specification and Description Language), официально признан ITU-ETSI, используется и рекомендован этими организациями для дизайна систем и приложений для сферы телекоммуникаций, систем реального времени, встраиваемого ПО. Большинство телекоммуникационных протоколов помимо текстового описания уже специфицировано ITU-ETSI с помощью SDL-диаграмм, для построения которых эти организации также используют IBM Rational Tau SDL / Telelogic. SDL Suite включает следующие основные опции:
Инструмент IBM Rational TTCN Suite / Telelogic построен на базе международного языка TTCN-2 (Tree and Tabular Combined Notation) и рекомендован ITU для тестирования систем и приложений, используемых в сфере телекоммуникаций, в системах реального времени, встраиваемом ПО. Этот продукт позволяет заменить различные стенды и оборудование для тестирования одним компьютером, на котором моделируется все многообразие внешних воздействий. IBM Rational TTCN / Telelogic имеет сертификат ISO и может служить для тестирования "черных ящиков". При этом, как и в случае SDL, основные телекоммуникационные тесты уже специфированы ITU и написаны на языке TTCN с использованием TTCN Suite. Хотя и SDL Suite, и TTCN Suite могут работать независимо, неоспоримое преимущество этих инструментов - наличие SDL-to-TTCN-link, которая обеспечивает связь между ними. За счет этого появляется возможность проверки самих создаваемых test case на правильность: Tau TTCN подключается к Tau SDL Simulator, после чего пошаговое исполнение теста отслеживается на MCS-диаграммах. Кроме того, еще на стадии дизайна SDL Suite транслирует необходимую информацию в TTCN Suite с тем, чтобы наполнить данными специальные "словари", из которых пользователь, создающий test case, мог бы выбирать нужные для данного теста сигналы, сообщения, параметры, интерфейсы и т. д. (таким образом, система не дает пользователю ошибиться). TTCN Suite можно интегрировать с DOORS, и тогда информация о Verdict будет автоматически попадать в поле атрибута соответствующего требования, сообщая пользователю о том, пройден тест или нет. Данный набор широко используется компаниями - производителями оборудования. В частности, многие производители тестового и измерительного оборудования (Tektronix, Schlumberger и т. д.) используют этот инструмент для проверки работоспособности своей продукции. Управление изменениями и конфигурациямиЗдесь компания предлагает два инструмента - IBM Rational Change / Telelogic и IBM Rational Synergy / Telelogic. Каждый из них можно использовать независимо друг от друга, но их совместное применение дает дополнительный эффект (рис. 4). Оба приложения работают с единой базой данных, которая включает все необходимые средства резервного копирования и защиты от сбоев. IBM Rational / Telelogic применяет в конфигурационном управлении технологию task-based. Здесь надо пояснить, что согласно другим подходам во главу угла обычно ставится файл, вокруг которого все и "вертится": этот файл контролируется, над ним проводятся операции check-in/check-out, по изменениям в нем судят о проделанной работе. В продуктах IBM Rational / Telelogic базовым элементом, с которым оперирует инструмент, служит task - конкретное задание разработчику, сформулированное простым и понятным языком. Разумеется, для решения возложенной на него задачи пользователю придется, как и раньше, вносить изменения в файлы (или создавать новые), но теперь за всеми манипуляциями с файлами следят программные инструменты. Цель разработчика - четко выполнить возложенную на него задачу, проверить работоспособность сделанного, отчитаться о выполнении. Последовательность действий при этом выглядит следующим образом:
Программный инструмент автоматически выполнит операции check-in/check-out, проконтролирует (запретит или разрешит) параллельные разработки, "привяжет" задействованные в решении файлы к конкретному заданию. Управление изменениями, основанное на задачах, дает ощутимые преимущества в тех случаях, когда:
IBM Rational Change / Telelogic - это система управления изменениями, использующая Web-технологии. Ее преимущество - возможность настройки под требуемый жизненный цикл работы с изменениями, принятый в компании. Основные стадии прохождения запроса на изменение (Change Request) можно изменять и настраивать под конкретные нужды разработчика с помощью специального встроенного редактора. Процесс адаптации настолько гибок, что Telelogic Change можно настраивать не только на процесс, принятый в компании в качестве корпоративного стандарта, но и под каждый конкретный проект заказчика или даже на конкретные случаи, которые могут считаться форс-мажорными. И все эти процессы будут поддерживаться IBM Rational Change / Telelogic одновременно. Назначение IBM Rational Synergy / Telelogic - управление версиями ПО. Это означает, что для каждой версии Synergy будет сохранять и контролировать исходные тексты программ и исполнимые коды, комплекты документации, тестовые данные и результаты тестирования, списки обнаруженных ошибок (bug tracking) и файлы с исправлениями (patch) и многое-многое другое, обеспечивая синхронизацию общей базы данных с рабочим местом пользователя. В состав Synergy входят серверные компоненты, СУБД и клиентская часть, которая для удобства отдельных групп пользователей представлена тремя разными интерфейсами, описанными ниже. Кроме того, все операции в Synergy можно выполнять из интерфейса командной строки CLI (Common Line Interface), что удобно при написании собственных скриптов (или bat-файлов) для автоматизации процессов управления. Продукт включает три варианта клиентского интерфейса. Клиент для разработчиков представляет собой наиболее удобный интерфейс для работы с проектами, задачами и файлами. Обычно он используется разработчиками и менеджерами проектов. Классический клиент Synergy предназначен для наиболее полного контроля над конфигурациями и чаще всего используется инженерами по сборке (build manager) или администраторами. Этот вариант позволяет организовать управление релизами, шаблонами, проектами, задачами, а также контролировать работу с распределенными базами данных (Distributed CM). Клиент, интегрированный в оболочку Wi ndows (Active CM), - наиболее прозрачный интерфейс Synergy, работающий в среде Microsoft Windows и предназначенный для тех групп пользователей, которым не требуется глубоко вникать в особенности работы с Synergy. ТестированиеИнструмент IBM Rational Tester / Telelogic построен на базе стандарта TTCN-3 (Testing and Test Control Notation), принятого в 2001 г. как дальнейшее развитие и усовершенствование стандарта TTCN-2, на котором основан пакет TTCN Suite. IBM Rational Logiscope / Telelogic предназначен для качественной оценки уже созданных кодов и поиска тех мест, где наиболее вероятно появление ошибок. После анализа кода и сравнения его с моделью качества (она уже заложена по умолчанию, но может корректироваться в соответствии с внутренними правилами компании) Logiscope формирует полный отчет, включая набор разнообразной метрической информации о коде, о его положительных и отрицательных сторонах. Инструмент поддерживает функцию обратного проектирования, c помощью которой можно восстановить структуру программы по объектному коду, что полезно для понимания логики ее работы и характера используемых данных. Это особенно важно, если система эксплуатируется уже давно, в нее множество раз вносили изменения, часть разработчиков уволилась, некоторые детали забыты и т. д. В Logiscope имеются три основные опции. Опция Audit, анализируя исходный код и сравнивая его с моделью качества, строит граф системы и на основе его анализа информирует пользователя о разрывах, замкнутых петлях, указывает перегруженные или вовсе не используемые блоки, дает качественную оценку кода по признанным критериям, которые можно корректировать с учетом принятого в компании подхода. RuleChecker применяется для формирования единого подхода к написанию кода. Используя заранее встроенные шаблоны качества (которые при необходимости пользователь может корректировать), он подгоняет индивидуальную манеру написания кода любого пользователя под единый стиль, принятый в компании (рис. 5). TestChecker позволяет выяснить, насколько полно применяемые разработчиком тесты проверяют работоспособность создаваемой им системы. Этот компонент наблюдает за поведением тестируемой программы в ходе ее исполнения и строит деревья вызовов, профили выполнения, отмечает невызываемые функции и неисполняемые процедуры. ДокументированиеСредство IBM Rational DocExpress / Telelogic используется для автоматической генерации отчетов и документации. Он освобождает пользователя от рутинной работы по составлению огромного числа отчетов и сопроводительной документации, выполняя эту работу в автоматическом режиме и формируя отчеты по заранее заложенным шаблонам. Имеется возможность настроить шаблоны под любые требования и ГОСТы. DocExpress позволяет импортировать массу информации из разных приложений и в разных форматах - текст, таблицы, рисунки, схемы, диаграммы и т. д. По материалам компании IBM Rational / Telelogic. |