+ All Categories
Home > Education > CM Management ()

CM Management ()

Date post: 24-Jun-2015
Category:
Upload: alex-novichkov
View: 479 times
Download: 0 times
Share this document with a friend
Description:
www.cmcons.com
Popular Tags:
53
Практика и технология внедрения процесса Практика и технология внедрения процесса конфигурационного управления и конфигурационного управления и управления изменениями с применением управления изменениями с применением IBM Rational ClearCase IBM Rational ClearCase и и ClearQuest ClearQuest Шамрай Александр Шамрай Александр Новичков Александр Новичков Александр www.cmcons.com
Transcript
Page 1: CM Management ()

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

конфигурационного управления и конфигурационного управления и

управления изменениями с применением управления изменениями с применением

IBM Rational ClearCase IBM Rational ClearCase и и ClearQuestClearQuest

Шамрай АлександрШамрай Александр

Новичков АлександрНовичков Александр

www.cmcons.com

Page 2: CM Management ()

www.cmcons.com

ВведениеВведение

Управление конфигурацией и изменениями является основополагающей дисциплиной в определении того,

каким образом управляются и контролируются рабочие материалы проекта,

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

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

Page 3: CM Management ()

www.cmcons.com

Основные функции УКИОсновные функции УКИ

Управление запросами на изменение (Задачи, Запросы, Поручения и Дефекты)

Измерения. Метрики и отчеты, аналитические срезы

Управление конфигурациями и версиями

Page 4: CM Management ()

www.cmcons.com

Основные виды деятельности (из жизни)Основные виды деятельности (из жизни)

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

Page 5: CM Management ()

www.cmcons.com

Rational Unified ProcessRational Unified ProcessПроцессы и стадии жизненного циклаПроцессы и стадии жизненного цикла

Моделирование деятельности организации

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

Анализ и проектирование

Реализация

Тестирование

Ввод в действие

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

Поддержка среды разработки

ПРОЦЕССЫ

СТАДИИ

Обследование Технический проект Рабочий проектПередача в

эксплуатацию

№ 0 № 1 № 2 № n № n+2№ n+1 № m № m+1

Итерации

Конфигурационное управлениеи управление изменениями

Page 6: CM Management ()

www.cmcons.com

УК в УК в RUPRUP

Установка плана управления конфигурацией

Создание проекта и среды

Изменение и продвижение конфигурационных элементов

Управление базовыми линиями и релизами

Составление отчетов по конфигурационному пространству

Управление запросами на изменение

Page 7: CM Management ()

www.cmcons.com

Задачи по ролямЗадачи по ролям

Page 8: CM Management ()

www.cmcons.com

Артефакты по ролямАртефакты по ролям

Page 9: CM Management ()

www.cmcons.com

Дисциплина или процесс внедрены хорошо, если:Дисциплина или процесс внедрены хорошо, если:

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

Page 10: CM Management ()

www.cmcons.com

ОтчетностьОтчетность

Разделим отчеты на 3 типа:Аналитические ролевые отчеты

Оперативные отчеты

Отчеты по исходным текстам (метрики кода)

Держим в голове, что принимать решения по отчетам одного типа нельзя (!)

Page 11: CM Management ()

www.cmcons.com

Типовые аналитические ролевые отчетыТиповые аналитические ролевые отчеты

Руководитель управления (дирекции, департамента)

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

Менеджер проекта количество запланированных работколичество выполненных работколичество внеплановых работотношение выполненных работ к невыполненнымколичество найденных ошибок тестировщикамиколичество исправленных ошибок тестировщикамиотношение найденных ошибок к исправленнымзанятость разработчиков (по часам или по задачам)

Page 12: CM Management ()

www.cmcons.com

Основные виды аналитических ролевых отчетовОсновные виды аналитических ролевых отчетов

Аналитик сколько задач выполнено

сколько задач нужно решить

текущие поручения

Разработчик сколько задач выполнено

сколько задач нужно решить

текущие поручения

ошибки к исправлению

Тестировщик количество обнаруженных ошибок\дефектов

количество исправленных ошибок\дефектов

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

Page 13: CM Management ()

www.cmcons.com

Метрики кодаМетрики кода

Метрики сложности программ принято разделять на три основные группы:

метрики размера, стилистикиLOC, SLOC…

метрики сложности потока управления, метрики сложности потока данных

Объектно-ориентированные

Холстеда

Мак-Кейба

Чепина

предварительная оценка

Page 14: CM Management ()

www.cmcons.com

Что в принципе измеряем? Метрики кода на Что в принципе измеряем? Метрики кода на

практикепрактике

Усилия разработчика при реализации

Длина и объем программы

Анализ цикломатической сложности

Количество строк на реализацию требования

Процент комментариев на единицу кода

Прочие количественные метрики (число функций, классов, файлов)

Плотность дефектов на единицу кода

Page 15: CM Management ()

www.cmcons.com

IBM Rational ClearCase

Page 16: CM Management ()

www.cmcons.com

Надежная база данных хранения релизов

Настраиваемая среда разработки

Возможность параллельной разработки

Набор средств для сборки и аудита

Событийно-ориентированный интерфейс

IBM Rational ClearCaseIBM Rational ClearCase - это: - это:

Page 17: CM Management ()

www.cmcons.com

Versioned Object Base. РепозиторийVersioned Object Base. Репозиторий

Содержит полную историю всех файлов проекта:

Исходных текстовИсходных текстовБинарных файловБинарных файловСкриптов тестированияСкриптов тестированияГрафических файловГрафических файловHtmlHtml--файлов и cgiфайлов и cgi--скриптовскриптов******

Запоминает состав директорий и отслеживает их версионность

Page 18: CM Management ()

www.cmcons.com

Пример каталогов проектаПример каталогов проекта

Page 19: CM Management ()

www.cmcons.com

Versioned Object Base. РепозиторийVersioned Object Base. Репозиторий

Делает невозможными неконтролируемые (несанкционированные) изменения

ClearCase невозможно ClearCase невозможно обойтиобойтиClearCaseClearCase имеет мощные имеет мощные средства установки средства установки локальной политики на локальной политики на уровне элементауровне элемента

Поддерживает дробление структуры между несколькими VOB

Page 20: CM Management ()

www.cmcons.com

Гибкая настройка средыГибкая настройка среды

ViewView-Представление-Представление::Ограничивает область Ограничивает область контроля посредством контроля посредством индивидуальных видовых индивидуальных видовых профилей, которые профилей, которые возможно создать для возможно создать для каждого участника проектакаждого участника проекта

ViewView-Представление-Представление::Ограничивает область Ограничивает область контроля посредством контроля посредством индивидуальных видовых индивидуальных видовых профилей, которые профилей, которые возможно создать для возможно создать для каждого участника проектакаждого участника проекта

ClearCaseClearCaseVOBVOB

Прозрачная файловая Прозрачная файловая система: система: позволяет обращаться не позволяет обращаться не только к отдельному только к отдельному файлу, но и к его файлу, но и к его конкретной версииконкретной версии

Прозрачная файловая Прозрачная файловая система: система: позволяет обращаться не позволяет обращаться не только к отдельному только к отдельному файлу, но и к его файлу, но и к его конкретной версииконкретной версии

Page 21: CM Management ()

www.cmcons.com

Rel. 2.5 ViewRel. 2.5 ViewRel. 2.5 ViewRel. 2.5 View

Development ViewDevelopment ViewDevelopment ViewDevelopment View 2.5 Bug Fix View2.5 Bug Fix View

ClearCase ViewsClearCase Views

print.c print.h main.c

Page 22: CM Management ()

www.cmcons.com

ClearCase ViewsClearCase Views

Dynamic Views - используют подключение real-time, позволяя всем участникам проекта работать с VOB по сети

Мгновенное обновлениеМгновенное обновление

Быстрый дБыстрый доступ к оступ к истории элемента истории элемента

Контролируемая Контролируемая и и конфигурируемая конфигурируемая сборкасборка

Создание копий и Создание копий и экземпляров элементовэкземпляров элементов

Работает Работает только только под NT, под NT, 2000, XP, Unix2000, XP, Unix

Page 23: CM Management ()

www.cmcons.com

ClearCase ViewsClearCase Views

Snapshot Views разрешает работу с проектом вне сети

Сохранение проектных Сохранение проектных файлов локальнофайлов локально

Ручное обновлениеРучное обновление

Локальная сборкаЛокальная сборка

ССинхронизация версий с инхронизация версий с главной базойглавной базой

Page 24: CM Management ()

www.cmcons.com

3

00

Доработка

5

4

1

Ревизии

0

2

3

2

1

0

Новая разработка

1

2

Параллельная разработка и возможность автоматического слияния

Определение всех несогласованных изменений

“Тривиальное” слияние происходит автоматически

Поддержка разрешения конфликтов при слиянии изменений

Версионность в IBM Rational ClearCaseВерсионность в IBM Rational ClearCase

Page 25: CM Management ()

www.cmcons.com

Что получаем?Что получаем?

33

00

rel1_bugfixrel1_bugfix

Rel2Rel2 66

55

44

11

\main\main

00

22Rel1Rel1

33

22

11

00

rel2_integrationrel2_integrationdb_updatedb_update

00

00

win98_portwin98_port22

11

33

22

11

33

11

22Rel1.1Rel1.1

Page 26: CM Management ()

www.cmcons.com

Реальная модельРеальная модель

Page 27: CM Management ()

www.cmcons.com

Дерево… с метрикамиДерево… с метриками

Page 28: CM Management ()

www.cmcons.com

Классическая трехуровневая модель, учитывающая нескольких заказчиков, Классическая трехуровневая модель, учитывающая нескольких заказчиков,

основной поток разработки и личные потоки разработчиков основной поток разработки и личные потоки разработчиков

Проект (основная интеграционная

ветвь для проекта)

1

2

3

4

Rel2.0

Rel1.0

Rel3.0Development

(ветвь перспективных разработок)

Rel1.0BugFix(отладочная ветвь)

Zakazchik1(основная интеграционная

ветвь для заказчика)

Zakazchik2(основная интеграционная

ветвь для заказчика)

1

2

3Z1Rel2.0

Z1Rel1.0

1

2

3Z2Rel2.0

Z2Rel1.0

1

2

31

2

3

4Разработчик1

1

2

3Разработчик2

1

2

Разработчик1

1

2

3

Page 29: CM Management ()

www.cmcons.com

Управление Управление конфигурациейконфигурацией в ClearCase в ClearCase

Сопровождение каждой версии элемента Сопровождение каждой версии элемента набором свойств:набором свойств:

Типом элементаТипом элемента

АтрибутамиАтрибутами

МеткамиМетками

ГиперссылкамиГиперссылками

ТриггерамиТриггерами

БренчамиБренчами

Page 30: CM Management ()

www.cmcons.com

Окно сравнения двух версийОкно сравнения двух версий

Page 31: CM Management ()

www.cmcons.com

Окно сравнения трех версийОкно сравнения трех версий

Page 32: CM Management ()

www.cmcons.com

Окно слияния двух версийОкно слияния двух версий

Page 33: CM Management ()

www.cmcons.com

Сравнение и слияние версийСравнение и слияние версий..

Связь версий с запросами на изменениеСвязь версий с запросами на изменение

Сравнение версийСравнение версийСлияние версийСлияние версий

Запросы на изменениеЗапросы на изменение

Версия элементаВерсия элемента

Page 34: CM Management ()

www.cmcons.com

Интегрированная поддержка ClearCaseВыполнение всех операций из среды

Версионный контроль высокого уровня класс, компонент, роль, объект, прецедент, пакет

Интеграция со средствами разработкиИнтеграция со средствами разработки

Page 35: CM Management ()

www.cmcons.com

Пример интеграции с Пример интеграции с JDeveloperJDeveloper

Page 36: CM Management ()

www.cmcons.com

Интеграция на уровне ОСИнтеграция на уровне ОС

Page 37: CM Management ()

www.cmcons.com

Поддерживаемые ОСПоддерживаемые ОС

Windows Windows 2003, 2003, 2000, NT, 2000, NT, XPXPWindows 95/98 (клиенты)Windows 95/98 (клиенты)Compaq Tru64 UNIXCompaq Tru64 UNIXHewlett-Packard HP-UXHewlett-Packard HP-UXIBM IBM zOSzOS, AIX, NCR MP-RAS, AIX, NCR MP-RASRed Hat LinuxRed Hat Linux SCO UnixWareSCO UnixWareSiemens Reliant UNIXSiemens Reliant UNIXSilicon Graphics IRIXSilicon Graphics IRIXSun Solaris SPARCSun Solaris SPARCSun Sun Solaris Intel Solaris Intel

Page 38: CM Management ()

www.cmcons.com

Интеграция со средствами разработкиИнтеграция со средствами разработки

Borland JBuilder Borland JBuilder

IBM WebSphere Studio product family IBM WebSphere Studio product family

IBM WebSphere Server IBM WebSphere Server

IBM VisualAge for Java IBM VisualAge for Java

Microsoft Visual Studio .NET: VB, C#, C++, ASP.NET Microsoft Visual Studio .NET: VB, C#, C++, ASP.NET

Microsoft Visual Studio: VB, C++, J++ Microsoft Visual Studio: VB, C++, J++

InterDev Sun ONE Studio and Forte for Java InterDev Sun ONE Studio and Forte for Java

Sybase PowerBuilder Sybase PowerBuilder

Microsoft FrontPage and Microsoft Office Microsoft FrontPage and Microsoft Office

All SCC-compliant tools All SCC-compliant tools

Page 39: CM Management ()

www.cmcons.com

IBM Rational ClearQuest

Page 40: CM Management ()

www.cmcons.com

• Учет состояния проекта с точностью до любого компонента ПО

• Получение отчетности о ходе проекта

• Выдача заданий

• Контроль исполнения заданий

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

• Ведение истории изменений

• Ведение реальной статистики занятости разработчиков

Цели управления изменениямиЦели управления изменениями

Page 41: CM Management ()

www.cmcons.com

Распределение ответственности между участниками процесса

Контроль доступа Многопользовательский режим работы Возможность доступа в систему с удаленных рабочих

мест, на различных платформах, через Интернет

При этом обеспечивается:

Сбор запросов Хранение запросов в базе данных Анализ запросов Принятие решения Исполнение запросов Контроль выполнения Закрытие

Процесс управления запросами на Процесс управления запросами на изменения изменения

Процесс управления запросами на Процесс управления запросами на изменения изменения

Page 42: CM Management ()

www.cmcons.com

Типы запросов на измененияТипы запросов на изменения

Основное понятие ClearQuest – запрос на изменение (ЗИ). Все ЗИ следуют формально утвержденной процедуре при прохождении. Каждый ЗИ имеет набор атрибутов, размещенных на экранной форме

ЗадачаДефектПоручениеЗапрос на расширениеПроект***

Page 43: CM Management ()

www.cmcons.com

Хорошие запросы должны иметь иерархиюХорошие запросы должны иметь иерархию

ПРОЕКТ

ПРОЕКТЗадачи и подзадачи

Поручения

Паспорт проекта

Дефекты/Запросы

Риски

Поручения

РискиМетоды снижения рисков

Вид деятельности

Документы

Пользователи

ПРОЕКТЗадачи и подзадачи Поручения

Сборка Дефекты/Запросы

Page 44: CM Management ()

www.cmcons.com

Жизненный цикл Сущностей описывается двумя Жизненный цикл Сущностей описывается двумя

типами диаграмм: типами диаграмм: State Chart State Chart и и Activity ChartActivity Chart

Page 45: CM Management ()

www.cmcons.com

У каждой сущности есть набор экранных формУ каждой сущности есть набор экранных форм

Page 46: CM Management ()

www.cmcons.com

Статистика по запросам на изменениеСтатистика по запросам на изменение

Page 47: CM Management ()

www.cmcons.com

Статистика по запросам на изменениеСтатистика по запросам на изменение

Page 48: CM Management ()

www.cmcons.com

Консолидированный отчет по Дефектам и Консолидированный отчет по Дефектам и

Задачам Задачам

Page 49: CM Management ()

www.cmcons.com

Отчетность в Отчетность в ClearQuestClearQuest

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

Page 50: CM Management ()

www.cmcons.com

Отличительные характеристики Отличительные характеристики IBM Rational ClearQuestIBM Rational ClearQuest

Встроенные возможности расширения и доработки (гибкая настройка и адаптация)

Мультиплатформенность

Независимость от используемой СУБД

Возможность сопряжения с любыми средствами управления (имеющимися Системами)

Удаленный доступ для работы и контроля

Невысокая стоимость поддержки

Мгновенный перевод всех Клиентских мест на новую версию Системы

Page 51: CM Management ()

www.cmcons.com

ClearCase+ClearQuestClearCase+ClearQuestClearCase+ClearQuestClearCase+ClearQuest

Участники проекта:Участники проекта:заказчикизаказчики,,

интеграторыинтеграторы, , разработчикиразработчики

Участники проекта:Участники проекта:заказчикизаказчики,,

интеграторыинтеграторы, , разработчикиразработчики

РезультатыРезультаты((Версионный контрольВерсионный контроль))

РезультатыРезультаты((Версионный контрольВерсионный контроль))

Управление заданиямиУправление заданиями((Change Request ManagementChange Request Management))

Управление заданиямиУправление заданиями((Change Request ManagementChange Request Management))

Результаты выполнения задания

Задания Изменения (версии)

Clear QuestClear CaseПредставления

(View)

Page 52: CM Management ()

www.cmcons.com IBM Rational ClearCase + ClearQuest

IBM Rational ClearCase MultiSite

IBM Rational ClearCase

ВыводыВыводы

Поддержка параллельной разработки

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

Точное определение исходных данных для собранного исполняемого файла

Обеспечение синхронизации данных географически удаленных рабочих групп

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

Учет изменений, реализованных в версиях и релизах ИС

Привязка сделанных изменений к заданиям

Page 53: CM Management ()

www.cmcons.com

Спасибо за внимание !

WWW.CMCONS.COM

[email protected]


Recommended