пятница, 26 августа 2011 г.

Рецензия на книгу "Metrics and Models in Software Quality Engineering, Second Edition" by Stephen H. Kan.

Несмотря на то, что развитие технологий и процессов разработки ПО в целом, и управления качеством в частности, идет весьма быстрыми темпами, базовые принципы остаются теми же, что и 10-20 лет назад. В очередной раз я в этом убедился, прочитав книгу "Metrics and Models in Software Quality Engineering, Second Edition" by Stephen H. Kan. Первая редакция книги была опубликована еще в 1995м году, однако положения, изложенные в ней, более чем актуальны и сегодня.


Об авторе

На момент публикации второй редакции, доктор Stepehen H. Kan. работал в компании IBM в должности Technical Manager in Programming. К началу работы в IBM он имел за плечами десятилетний опыт участия в разработке ПО в качестве статистика и программиста. Начав работать в IBM разработчиком, благодаря своим знания в области статистики и аналитики он достаточно быстро стал ответственным за улучшение процессов разработки и контроля качества. Первая редакция данной книги, а также многочисленные статьи в различных изданиях сделали его одним из ведущих и наиболее признанных специалистов в области управления качеством программного обеспечения. Так же, с 1998 года в Университете Миннесоты он преподает курс Master of Science in Software Engineering (MSSE).


Содержание книги

В головах многих IT инженеров и менеджеров прочно засел стереотип, что качество — это некое субъективное понятие, и количественно измерить его невозможно. Я бы сказал, что разрушение данного стереотипа - основная идея книги. Вообще, если вы хоть раз задавались вопросами типа "как наглядно продемонстрировать заказчику уровень качества текущей версии?" или "готов ли наш проект к релизу?", то эта книга — то, что вам нужно. В ней рассмотрены различные способы сбора, анализа и представления данных об уровне качества проектов, процессов и решений.

Условно книгу можно разделить на три части:

  1. Краткий взгляд на вопрос определения качества, методологии разработки и основы теории измерений
  2. Разбор основных инструментов и метрик качества
  3. Подробное описание моделей оценки надежности, качества разработки, тестирования и пр.

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

Книга охватывает достаточно большой спектр метрик, методик и инструментов. От знакомых каждому тестировщику понятий типа "Checklist" (правда, в данной книге его определение несколько отличается от общераспространенного) и "Defect density", до более редко используемых метрик типа "Phase-based defect removal pattern". Давая определения и описывая различные инструменты, автор не старается уложиться в минимальное количество строк, поэтому все понятия описаны более чем подробно. Книга в изобилии содержит разнообразные графики, формулы и таблицы. Без них было бы сложно (а то и вовсе невозможно) получить понятие о практичности и жизнеспособности приведенных автором метрик.


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

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

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


Резюмируя вышесказанное

Безусловные плюсы книги:

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

Минусы:

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

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

Комментариев нет:

Отправить комментарий