risksofignoring-gsenin - r&e

2
Risks of ignoring best practices of software testing Grigory Senin, Luxoft Training Center What is the role of Testing Best practices? Are they absolute requirements? If not then what do they mean? Should we care or concern if not following them? In the article it is suggested to regard the best practices as mitigation of risks in testing, and ignoring of the practices as allowing for these risks in test projects which implies the need to manage the risks. Many testing organizations do not believe in, are sceptic about, or neglect the practices. To justify this, they claim it is too expensive and not worthy to follow. Is that bad or not so bad? Definitely, these practices are not absolute. What’s the problem then? Remember, regulations are often “written in blood”. Perhaps, not literally but they base on experience and events that did cost a lot. So every good testing practice was written when something went wrong during testing. In other terms, each time a risk has materialized (bad event happened) a practice mitigating this risk is going to emerge. Project environments vary. That is why a generalized practice may be not relevant in such and such context. Or, suppose we are neglecting a specific practice presently: it seems too expensive for us to implement. At the same time we suffer from some serious project ‘pains’ again and again. If we could discover the close relationship between the neglected practice and the pains, we perhaps reconsidered our attitude. To avoid the pains may cost less than to continue to suffer. Example. Good practice: “Conduct inspections/reviews of requirements and other artifacts”. A risk of neglecting: “Too many defects are detected late in the development cycle” Consider incorporating reviews in your process. Consider effects of late defects. Evaluate the cost of both. Compare. It would be more balanced, more reasonable than to stay in ignorance. At the very least you will be informed and alerted for change (praemonitus, praemunitus) In general, to verify how relevant some practice is we reveal the unhappy event caused by neglecting the practice. Then we check for whether the damage is crucial in our specific case. It may happen to be insignificant – so the informed decision would be that the practice can be ignored at no or minor risk. This article shows several examples of the approach in the field of testing, treating best practices in terms of risks. Риски нарушения лучших практик тестирования Григорий Сенин, Учебный центр, Люксофт В чём смысл так называемых «лучших практик», в данном случае применительно к тестированию ПО?

Upload: greg-senin

Post on 13-Apr-2017

55 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: RisksOfIgnoring-GSenin - R&E

Risks of ignoring best practices of software testing

Grigory Senin, Luxoft Training Center

What is the role of Testing Best practices?

Are they absolute requirements? If not then what do they mean? Should we care or concern if not

following them?

In the article it is suggested to regard the best practices as mitigation of risks in testing, and ignoring of

the practices as allowing for these risks in test projects which implies the need to manage the risks.

Many testing organizations do not believe in, are sceptic about, or neglect the practices. To justify this,

they claim it is too expensive and not worthy to follow. Is that bad or not so bad?

Definitely, these practices are not absolute. What’s the problem then?

Remember, regulations are often “written in blood”. Perhaps, not literally but they base on experience

and events that did cost a lot. So every good testing practice was written when something went wrong

during testing.

In other terms, each time a risk has materialized (bad event happened) a practice mitigating this risk is

going to emerge.

Project environments vary. That is why a generalized practice may be not relevant in such and such

context. Or, suppose we are neglecting a specific practice presently: it seems too expensive for us to

implement. At the same time we suffer from some serious project ‘pains’ again and again. If we could

discover the close relationship between the neglected practice and the pains, we perhaps reconsidered

our attitude. To avoid the pains may cost less than to continue to suffer.

Example.

Good practice: “Conduct inspections/reviews of requirements and other artifacts”.

A risk of neglecting: “Too many defects are detected late in the development cycle”

Consider incorporating reviews in your process. Consider effects of late defects. Evaluate the cost of

both. Compare. It would be more balanced, more reasonable than to stay in ignorance. At the very least

you will be informed and alerted for change (praemonitus, praemunitus)

In general, to verify how relevant some practice is we reveal the unhappy event caused by neglecting

the practice. Then we check for whether the damage is crucial in our specific case. It may happen to be

insignificant – so the informed decision would be that the practice can be ignored at no or minor risk.

This article shows several examples of the approach in the field of testing, treating best practices in

terms of risks.

Риски нарушения лучших практик тестирования

Григорий Сенин, Учебный центр, Люксофт

В чём смысл так называемых «лучших практик», в данном случае применительно к тестированию

ПО?

Page 2: RisksOfIgnoring-GSenin - R&E

Являются ли они жёсткими требованиями? А если нет, то как к ним относиться? Если мы их

нарушаем, должно ли это нас беспокоить?

В сообщении предлагается интерпретировать лучшие практики, как защиту от определённых

рисков тестирования, а нарушения практик – рассматривать как появление этих рисков в проектах,

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

Многие организации, связанные с тестированием, к тем или иным практикам относятся

скептически, слабо «верят» в них или открыто пренебрегают ими. Для оправдания они заявляют,

что следование практикам обойдётся слишком дорого, и они не могут себе этого позволить.

Может быть, в этом нет ничего плохого?

Разумеется, никакая практика не является священной заповедью. В чём же проблема?

В авиации говорят: «Всякое правило написано кровью». Не так буквально, но это относится и к

другим областям. «Правила тестирования» отражают наш печальный опыт, напоминают о

событиях, которые нам, тестировщикам когда-то дорого обошлись, и служат тому, чтобы избегать

нежелательных событий впредь.

Говоря в других терминах, материализация риска («плохое» событие) ведёт к созданию практики,

нивелирующей этот риск.

Обстоятельства, в которых протекают проекты, варьируются. Рекомендации и практики поэтому

не являются абсолютно обязательными. Любая общая рекомендация в контексте конкретного

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

применять некие «золотые правила», и она пренебрегает ими. В то же время организация

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

пренебрегаемыми правилами и испытываемыми проблемами, организация могла бы

пересмотреть своё «поведение». Избежать проблем, пусть с затратами, может оказаться дешевле,

чем продолжать страдать.

Пример хорошей практики: «Проводите рецензирование проектных требования и других

артефактов».

Риск пренебрежения: «Слишком много дефектов обнаруживается в конце цикла разработки».

Рассмотрите возможность внедрить процедуру рецензирования в процесс разработки.

Проанализируйте последствия «поздних дефектов». Оцените стоимость того и другого. Сравните.

Знать, чего стоит нам внедрение практики и чего стоит пренебрежение ею, разумнее, чем

оставаться в неведении. Как минимум, вы будете готовы к изменениям, даже если они будут

отложены на будущее.

Итак, оценивая уместность той или иной практики, мы находим риск, «вредное» последствие её

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

незначительным, и мы примем информированное решение о том, что практике можно не

следовать без особого риска.

В сообщении рассматриваются примеры описанного подхода: лучшие практики тестирования

истолковываются на языке рисков.