?

Log in

No account? Create an account
 
 
26 February 2009 @ 10:08 am
CMMI® for Services!  
Очень жаль, что как-то с SEI не совпал "по фазе". А то эту новость можно было бы включить во вчерашнюю публикацию. Но как-бы то ни было... Буду краток.
В общем, на месяц раньше обещанного срока опубликована модель CMMI-SVC® (CMMI® for Services) - третья модель из семейства CMMI®. Традиционно, модель доступна для скачивания с сайта SEI (в форматах pdf и doc). Рекомендуется (настоятельно) для изучения сервисным организациям и подразделениям - много полезного.
Tags: ,
 
 
 
cartmendum on March 3rd, 2009 03:52 pm (UTC)
Не про пост, зато про CMMI
Зашел спор с коллегами по поводу практики "Create or Release Baselines" из процессной области "CONFIGURATION MANAGEMENT". Есть там подпрактика:
"Obtain authorization from the configuration control board (CCB) before creating or releasing baselines of configuration items"

Мое утверждение своидится к тому, что в качестве CCB не обязательно должен выступать живой человек. Так ли это?

Например в некотором сферическом проекте по разработке ПО в вакууме существует автоматизированный тест, который конфигурационному индексу продукта однозначным образом ставит в соответствие значение Pass или Fail.
Тест запускается средой непрерывной интеграции при каждом изменении конфигурационного индекса системы.
Можно ли в данном случае считать, что в качестве ССВ выступает тест и среда непрерывной интеграции?
russian_sla on March 3rd, 2009 04:06 pm (UTC)
Re: Не про пост, зато про CMMI
Так и не совсем.
В данном случае CCB упоминается в котексте того кто (или пожалуйста - "что") решает: создавать baseline или нет. Кто или что имеет какие-то свои причины (правила), которые скажут: да, пора создавать baseline. Но речь идет именно о создании baseline, а не об интеграции. О готовности к интеграции - см. соответствующую практику Product Integration. В контексте CM замечательный тест должен сказать (например): "Момент настал (по каким-то признакам) - делаем baseline". Не более того. Возможно, это связано с интеграцией (если configuration item'ом для включения в baseline является именно нечто интегрированное). Baseline состоит минимум из одного configuration item'а. Что у вас в данном случае item?

А реально все проще: моменты создания baseline просто планируют (первые стабильные требования, первый code drop и т.п.). Такой одобренный план, собственно, и есть одобрение на создание baseline.
cartmendum on March 3rd, 2009 04:29 pm (UTC)
Re: Не про пост, зато про CMMI
Видимо, в попытке применить умные слова я вас запутал :)

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

Baseline состоит из требования-тестов (требования низкого уровня и функциональные тесты объедененные в единую сущность) и кода, который должен работать так, как это сказано в требования-тестах.

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

А вот планировать baseline - это уже сложно (там человек нужен :-) ). Первый code drop мало полезен, да и четкого критерия стабильности требований в общем случае у нас нет. Мало того, появляется фраза "одобренный". Наверняка найдется умник, уверенный, что "одобренный" - это когда есть документ на 50 страниц подписанный кровью менеджера :-)

russian_sla on March 3rd, 2009 04:39 pm (UTC)
Re: Не про пост, зато про CMMI
С точки зрения модели, baseline - это нечто очень важное, создаваемое действительно в важный момент проекта (работы). Именно к нему осуществляется возврат если что. Изменений версий - это нечто текущее, "повседневное". А вот baseline... Это да! :) Именно поэтому-то в модели и всплывают решения CCB и т.п.
С другой стороны - порядок создания и методы создания baseline'ов (конкретно) определяете уже вы сами для себя, исходя из ваших возможностей и потребностей. Главное, чтобы были определенные принципы создания basleine'ов (когда, кем) и методы (ручками, тулзовиной и т.п.). И еще один важный момент: должна быть информация о том, что должно входить в baseline и прочие аттрибуты (например, чтобы понимать - к какому baseline откатиться).
Hope this helps.
cartmendum on March 3rd, 2009 05:21 pm (UTC)
Re: Не про пост, зато про CMMI
Основную идею понял. Спасибо. Главное, ССВ может быть и машина.

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