Управление конфигурацией ПО.Документирование, управление проектом

Управление конфигурацией ПО является одним из наиболее важных вспомогательных процессов жизненного цикла ПО. Цель управления конфигурацией — обеспечить управляемость и контролируемость процессов разработки и сопровождения ПО. Для этого необходима точная и достоверная информация о состоянии ПО и его компонентов в каждый момент времени, а также обо всех предполагаемых и выполненных изменениях. Предполагаемые изменения разделяются на следующие группы:

• срочные изменения, которые должны не только быть внесены в очередную версию ПО, но и сообщены пользователям для оперативной корректировки программ до внедрения официальной версии;

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

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

• изменения, которые не оправдывают затрат на разработку и выполнение корректировок или практически не влияют на качество и эффективность ПО и поэтому не подлежат реализации.

Все проанализированные изменения регистрируются. Для принятых к внедрению изменений разрабатывается план доработок программ и определяется ответственный за каждую корректировку программы.

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

Аналитические исследования InternationalDataCorporation (IDC) свидетельствуют о быстром росте мирового рынка средств управления конфигурацией (SCM — SoftwareConfigurationManagement). Если в 1995 г. мировой объем продаж средств SCM составил 239 млн дол., то в 1996 г. — 350, в 1997 г. - 477, в 1998 г. — 595 млн дол. Оценка продаж SCM в 1999 г. составляет 750 млн дол. Лидером по объему продаж является корпорация RationalSoftware со своим продуктом управления конфигурацией ClearCase.

RationalClearCase - средство, предназначенное для управления .конфигурацией ПО сложных информационных систем. ClearCase позволяет хранить в репозитории полные хронологии версий каждого объекта, созданного или измененного в процессе разработки системы. К ним относятся: исходный программный код, библиотеки, исполняемые программы, документация, web-страницы и каталоги.

RationalClearCase работает с такими инструментальными средствами разработки приложений, как VisualBasic, Visual C++, VisualJava++, PowerBuilder и OracleDeveloper.

Семейство продуктов ClearCase включает в себя следующие продукты:

• собственно ClearCase — средство управления версиями и конфигурацией создаваемой системы;

• ClearCaseMultiSite - средство поддержки географически удаленных групп разработчиков;

• ClearQuest — средство контроля изменений в модулях и подсистемах проекта.

Другим распространенным средством управления конфигурацией является средство PVCS фирмы Merant, включающее интегрированный набор продуктов PVCSProfessional (PVCSVersionManager, PVCSTracker и PVCSConfigurationBuilder) и PVCSNotify.

PVCSVersionManager предназначен для управления всеми компонентами проекта и ведения планомерной многоверсионной имногоплатформенной разработки силами команды разработчиков в условиях одной (или нескольких) локальной сети. Понятие “проект” трактуется как совокупность файлов. В процессе работы над проектом промежуточное состояние файлов периодически сохраняется в архиве проекта, ведутся записи о времени сохранения, соответствии друг другу нескольких вариантов разных файлов проекта. Кроме того, фиксируются имена разработчиков, ответственных за тот или иной файл, состав файлов промежуточных версий проекта и др. Это по­зволяет вернуться при необходимости к какому-либо из предыдущих состояний файла (например, при обнаружении ошибки, которую в данный момент трудно исправить).

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

Доступ к архивам PVCSVersionManager возможен не только через сам VersionManager, но и из более чем 50 инструментальных средств. Сюдавходят PowerBuilder, Delphi, JBuilder, ERwin, Visual C++, Visual Basic, Oracle Developer идр.

Результатом работы PVCSVersionManager является созданный средствами файловой системы ОС репозиторий, хранящий в компактной форме все рабочие версии программного продукта вместе с необходимыми комментариями и метками.

PVCS Version Manager функционируетвсреде Windows 95/98/NT, Solaris, HP-UX, AIX и SCO UNIX.

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

Коллектив, работающий с PVCSTracker, делится на пять групп в зависимости от их обязанностей: пользователи, разработчики, группа тестирования и контроля качества, группа технической поддержки и сопровождения, управленческий персонал. Этим пяти группам соответствуют пять предопределенных групп PVCSTracker:

• пользователи (Submitters) - имеют ограниченные права на внесение замечаний и сообщений об ошибках в базу данных PVCSTracker;

• разработчики (DevelopmentEngineers) — имеют право производить основные операции с требованиями и замечаниями в базе данных PVCSTracker. Если разработчики делятся на подгруппы, то для каждой подгруппы могут быть заданы отдельные списки прав доступа;

• тестировщики (QualityEngineers) — имеют право производить основные операции с требованиями и замечаниями;

• специалисты службы сопровождения (SupportEngineers ) — имеют право вносить любые замечания, требования и рекомендации в базу данных, но не имеют прав по распределению работ и изменению их приоритетности и сроков исполнения;

• руководители (Managers) - имеют право распределять работы между исполнителями и принимать решение об их надлежащем исполнении. Руководителям разных групп могут быть заданы различные права доступа к базе данных PVCSTracker.

В дополнение к этим пяти предопределенным группам существует группа администратора базы данных и 11 дополнительных групп, которые могут быть настроены в соответствии со специфическими должностными обязанностями сотрудников, использующих PVCSTracker.

Требование или замечание, поступающее в PVCSTracker, проходит четыре этапа обработки:

• регистрация - внесение замечания в базу данных;

• распределение — назначение ответственного исполнителя и сроков исполнения;

• исполнение - устранение замечания, которое, в свою очередь, может вызвать дополнительные замечания или требования на дополнительные работы;

• приемка - приемка работ и снятие их с контроля или направление на доработку.

Требования и замечания, поступающие в базу данных PVCS Tracker, оформляются в виде специальной формы, которая может содержать до 18 полей выбора стандартных значений и до 12 произвольных текстовых строк. При разработке формы следует определить оптимальный набор информации, характерный для всех записей в базе данных.

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

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

Тренды содержат информацию об изменениях того или иного показателя во времени и характеризуют стабильность и непрерывность процесса разработки. Они позволяют ответить на вопросы:

• успевает ли группа разработчиков справляться с поступающими замечаниями;

• улучшается ли качество программного продукта и какова динамика этого процесса;

• как повлияло то или иное решение (увеличение числа разработчиков, введение скользящего графика, внедрение нового метода тестирования) на работу группы и т.п.

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

PVCSTracker предназначен для использования в рабочих группах, объединенных в общую сеть. В этом случае центральная база или проект PVCSTracker находится на общедоступном сервере сети, доступ к которому реализуется посредством ODBC-драйверов, входящих в состав PVCSTracker. Главной особенностью PVCSTracker по сравнению с обычным приложением СУБД является способность автоматически уведомлять пользователя о поступлении интересующей его или относящейся к его компетенции информации и гибкая система распределения полномочий внутри рабочей группы. При необходимости PVCSTracker может использовать для уведомления удаленных членов группы электронную почту.

PVCSTracker поддерживает групповую работу в локальных сетях и взаимодействует с СУБД Oracle, MSSQLServer и Sybase посредством ODBC.

PVCSConfigurationBuilder предназначен для сборки окончательного продукта из компонентов проекта. Он позволяет описывать процесс сборки как на стандартном языке МАКЕ, так и на собственном внутреннем языке, имеющем существенно большие возможности. PVCSConfigurationBuilder выполняет сборку программного продукта на основании файлов, хранящихся в репозитории PVCSVersionManager.

Обычная процедура сборки программного продукта с помощью PVCS Configuration Builder состоитизтрехшагов:

• строится файл зависимостей между исходными модулями;

• в полученный файл вносятся изменения в целях его настройки и

оптимизации;

• выполняется сборка программного продукта из исходных модулей.

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

Для создания документов в процессе разработки ПО используются разнообразные средства формирования отчетов, а также компоненты издательских систем. Обычно средства документиро­вания встроены в конкретные CASE-средства. Исключением являются некоторые пакеты, предоставляющие дополнительный сервис при документировании. Из них наиболее активно исполь­зуется SoDA (SoftwareDocumentAutomation — автоматизированное документирование ПО).

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

SoDA не зависит от применяемых инструментальных средств. Связь с приложениями осуществляется через стандартный программный интерфейс API. Переход на новые инструментальные средства не влечет за собой дополнительных затрат по документированию проекта.

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

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

SoDA реализована на базе издательской системы FrameBuilder и предоставляет полный набор средств по редактированию и верстке выпускаемой документации. Разные версии документации могут быть для наглядности отмечены своими отличительными признаками. В системе создаются таблицы требований к проекту, по которым можно проследить, как реализуются эти требования. Разные виды документации, сопровождающие различные этапы ЖЦ, связаны между собой, и можно проследить состояние проекта от первоначальных требований до анализа, проектирования, кодирования и тестирования программного продукта.

Итоговым результатом работы системы SoDA является готовый документ (или книга). Документ может храниться в файле формата SoDA (FrameBuilder), который получается в результате генерации документа. Вывод на печать этого документа (или его части) возможен из системы SoDA.Среда функционирования SoDA — ОС UNIX на рабочих станциях SunSPARCstation, IBMRISCSystem/6000 или HewlettPackardHP 9000.

Управление проектом

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

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

Основные преимущества использования системы управления проектами включают:

• централизованное хранение информации по графику работ, ресурсам и стоимости;

• возможности быстрого анализа влияния изменений в графике, ресурсном обеспечении и финансировании на план проекта;

• возможность распределенной поддержки и обновления данных в сетевом режиме;

• возможности автоматизированной генерации отчетов и графических диаграмм, разработки документации по проекту.

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

• средства визуального проектирования структуры работ проекта;

• средства планирования по методу критического пути;

• средства ресурсного планирования (описание, назначение и оптимизация загрузки ресурсов);

• возможности стоимостного анализа;

• средства контроля за ходом исполнения проекта;

• средства создания отчетов и графических диаграмм;

• средства организации групповой работы.

Программное обеспечение для управления проектами традиционно разделяется на профессиональные системы и системы для массового пользователя.

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

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

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

Microsoft Project и Time Line — недорогие системы управления проектами, просты в использовании, доступны для новичков и непрофессионалов. Они содержат базовые возможности, позволяющие осуществлять достаточно гибкое планирование и управление людскими ресурсами, поддерживают несложное многопроектное планирование и контроль.

MicrosoftProject 98 - один из лидеров по возможностям объединения участников проекта средствами электронной почты или Интранет. При описании ресурса для каждого исполнителя может быть указан адрес его электронной почты. Информация о работах проекта может сохраняться в формате HTML и публиковаться на внутреннем Wеb-сервере. Кроме стандартных форматов файлов MicrosoftProject (МРР и МРХ) пользователь может сохранять информацию о проекте в форматах ODBC, Excel и Access. Формат MPD (MicrosoftProjectDatabase) позволяет хранить все данные о проекте в структуре, доступной как из MicrosoftProject 98, так и из Access.

Что касается TimeLine, то система позволяет хранить все данные, касающиеся проектов организации, в единой базе данных. Отдельный модуль импорта/экспорта позволяет обмениваться данными с другими системами (MicrosoftProject, TimeLine 1.0 forWindows), базами данных (dbf) и электронными таблицами. Система TimeLine 6.5 поддерживает стандарты ODBC, OLE 2.0, DDE и макроязык SymantecBasic.

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

OpenPlanProfessional (WelcomSoftware) - представитель класса профессиональных систем. Одним из основных отличий системы являются мощные средства ресурсного и стоимостного планирования, которые позволяют значительно облегчить задачу нахождения наиболее эффективного распределения ресурсов и составления их рабочего расписания. Кроме того, пользователями интегрированной системы управления проектами организации являются как профессиональные менеджеры, осуществляющие согласование и оптимизацию планов проектов, анализ рисков, прогнозирование и т.д., так и участники проектов, выполняющие сбор, уточнение и актуализацию данных, готовящие отчеты. Если для профессионалов важны мощность и гибкость предоставляемых системой функций планирования и анализа состояния проектов, то для остальных пользователей важнее простота и прозрачность системы. Open Plan обеспечивает как полную интеграцию между профессиональной и настольной версиями системы, так и открытость для обмена данными с внешними приложениями.

Open Plan поставляется в двух вариантах (Professional и Desktop), каждый из которых отвечает различным потребностям исполнителей, менеджеров и других участников проекта. Обе версии работают с одной базой данных. Совместное использование профессиональной и “облегченной” версий системы управления проектами дает возможность не только учесть потребности всех групп пользователей, но и значительно снизить стоимость решения.

Open Plan обладает прямым доступом к базам данных. Пользователь может выбрать, в каком формате хранить данные по проектам (в собственном формате Open Plan, в форматах Oracle, SQL Server, Sybase, xBase).

Open Plan обеспечивает ограничение доступа к данным проекта, предоставляя различные права на доступ к определенным данным, делая их доступными ограниченному кругу лиц и регулируя их совместное использование. Средство “Директор управления проектами”, встроенное в Open Plan, позволяет упорядочить применение стандартных элементов проектов и процедур. В Open Plan предлагается 65 моделей, построенных на базе руководств PMI (Project Management Institute - Институт проектного менеджмента, США), которые можно настроить для создания документов, отвечающих требованиям стандартов ISO.


Наши рекомендации