14
AW8 Concurrent Session 11/7/2012 2:15 PM "Orthogonal Defect Classification: An Agile Test/QA Primer" Presented by: Ram Chillarege Chillarege, Inc. Brought to you by: 340 Corporate Way, Suite 300, Orange Park, FL 32073 8882688770 9042780524 [email protected] www.sqe.com

Orthogonal Defect Classification: An Agile Test/QA Primer

Embed Size (px)

DESCRIPTION

Can defect root cause analysis be made agile? Can we transform a multi-hour task from the classical world of software engineering into one that takes minutes and yields greater insights? Learn how Orthogonal Defect Classification (ODC) extracts semantics from defects and turns them into insights on the development process using analytics. After a quick overview of ODC, Ram Chillarege presents a case study to illustrate the method using real-world data on an agile project. They used ODC Triggers to measure test effectiveness at the end of every sprint to evaluate the effectiveness of testing compared to earlier sprints. This ODC process takes just minutes and brings its insight into the realm of the agile development practices. Put a powerful analytical technique in your agile toolbox to increase the velocity of your agile project and find new ways to reduce defects while measuring the quality of testing.

Citation preview

Page 1: Orthogonal Defect Classification: An Agile Test/QA Primer

 

    

AW8 Concurrent Session 11/7/2012 2:15 PM 

       

"Orthogonal Defect Classification: An Agile Test/QA Primer"

   

Presented by:

Ram Chillarege Chillarege, Inc.

        

Brought to you by:  

  

340 Corporate Way, Suite 300, Orange Park, FL 32073 888‐268‐8770 ∙ 904‐278‐0524 ∙ [email protected] ∙ www.sqe.com

Page 2: Orthogonal Defect Classification: An Agile Test/QA Primer

 

 

Ram Chillarege Chillarege, Inc.

Ram Chillarege is president of Chillarege Inc., a consulting firm focused on software engineering optimization using Orthogonal Defect Classification (ODC). In 2004, he received the IEEE technical achievement award for the invention of ODC. Ram founded and led the Center for Software Engineering at IBM for almost a decade, and helped conceive and lead the corporate-wide Testing and Process initiatives in the 90s. Ram is chair of the IEEE Steering committee for Software Reliability, has published around fifty peer-reviewed articles, and is an IEEE fellow. Ram chaired the ISSRE 2009 conference and co-guest edited the September/October 2010 issue of the Security and Privacy magazine.

 

Page 3: Orthogonal Defect Classification: An Agile Test/QA Primer

�� ������� ������ � ���������������� ������ � ���������

��������� ��� ��������� ��������������� ��� ��������� ������

�� ���� ���������������� ���� ��������������

��� ���������� �������

�� ��� �

������������������������������

����

������� ������ � ���������������� ������ � ����������

������ ������� �

���������� � ���������������������� �� ���������� ����

���� � ������ � ����������� � ����������� � ����! ���

�� " ���# ��������������$���� ��%�������� �������#������

����#� � ���� ������������ ������% � ����� � ��� � ����� � �

��������" & �����# ���������� � ���������������'���(� )�����

� ������������� � ��������������� ���������������������

� * �+� ���+��� ���������� ��������� �� ,���%��* �*� #���

������� ���� � �+� � ������� ����� ���������� ��� �� �����

������� $#�������������� �+��- ������ �� ����� ����� �� ���

� ��� �� ��� �� ���* � ������� ����� * � ��+�������� *�� ���

�� ���* � ������� ���������+� ����� �� ���+���������������

+��� ����% ��-��������� � ���!����� ������������������� �� �������

�� �� * �+� ���+����� ������� +�# ����� ����� ����,� ���

������ ����!�)�������� � �� * ���� ���� ��� �� �+��- ������

������ # # ������ ��� � � ��� #�� �� ��������� ,��� ���

� �����

Page 4: Orthogonal Defect Classification: An Agile Test/QA Primer

������� ������ � ���������������� ������ � ���������.

�� �� ������ ����� ��!� � �������"���� ����#����������������� �� ������ ����� ��!� � �������"���� ����#���������������

���������������� �������� ���������������������� �������� ������

��� �������������������� ��������� �������������������� ������

������� ����� �������� ����� ��������� ����� �������� ����� ��

!�� "����#���$ ������ �%��� ���&�����!�� "����#���$ ������ �%��� ���&�����

'����(����������)����� �� ����'����(����������)����� �� ����

*�� ����#�+����,����(��� �-������*�� ����#�+����,����(��� �-������

������ ������ ����(����������������������� ������ ����(�����������������

�������������� �-����������������������� �-���������

./����#� ����01�����/������ ��1./����#� ����01�����/������ ��1

������������� �� �222 3�������������������� �� �222 3�������

$������������� ��� ����$������������� ��� ����

������� ������ � ���������������� ������ � ���������/

$�� %������ &$�� %������ &

'������ �� ��������'������ �� ����������� �����/(�������� �����/(����������������������������� ��������������� �����������������������

� ��������������������

� ����������

� ������������

� �01�01

� 1�������1�������

� +$'$+$'$

� +����+����

� 3�������3�������

3�� ����/���/�3�� ����/���/��������� ������������������ �������������� ������������������ ��������������

4������- ��- ����4������- ��- ��������/ ��� �/�� ������������/ ��� �/�� ����������� ��� ��� ������ ��� ��� ���(������ ��- �� �����(������ ��- �� �������,�� �������� �����,�� �������� ����/���/��-� ����/���/���/��-� ����/�����- ����� 56���7�89���- ����� 56���7�89�������������� -��������������� -�����)�� (����� ��������)�� (����� ����������������������������

Page 5: Orthogonal Defect Classification: An Agile Test/QA Primer

������� ������ � ���������������� ������ � ���������2

��� �����#�� %�'���� ��(������#���������'�%���#����) ����'���� �����#�� %�'���� ��(������#���������'�%���#����) ����'�

��! �������� ��� �����! �������� ��� ���

Page 6: Orthogonal Defect Classification: An Agile Test/QA Primer

������� ������ � ���������������� ������ � ���������3

������(� ��'���%�����������* #������ ����%�� ���+!� ������� ��������(� ��'���%�����������* #������ ����%�� ���+!� ������� ��

!��� ���*(����%� ����!��� ���*(����%� ����

������� ������ � ���������������� ������ � ���������4

��,-�.�.� �� �%�!� �%��+���� ������������(���,-�.�.� �� �%�!� �%��+���� ������������(�

����

�������

����

� ���� �� ������ ����

������������

�� ������ ����

� �� �

����������

� � ���� � ���

� �� �

Page 7: Orthogonal Defect Classification: An Agile Test/QA Primer

�� ������� ������ � ���������������� ������ � ���������

�����.�%!*�����.�%!*

�/����� ��/�� ������/����� ��/�� �����

*�������� � 4��� :���;�*�������� � 4��� :���;�

4�-;�4�-;�

4��� ��;�4��� ��;�

4�- ���;4�- ���;

������� ������ � ���������������� ������ � ���������56

�%������ ����&��%������ ����&�

�� ��(� ��+/ -��%����� ����0�.�'����* +/ ������� ��(� ��+/ -��%����� ����0�.�'����* +/ �����

������������

����������

��������������

����� ���

!��������������

"� �� �����

#����������

$��������

����������

:����#:����# ����(����- ��� ������- ������(����- ��� ������- ��

�/����� ���-�/����� ���-

$��/��#$��/��# ����(����- ������������(����- ��������

����</������</��# 2������� �/��������# 2������� �/��������

���� ���������� ������

� �����������

���� ����

��/���/� 2����2����

*��(����-#*��(����-# 2�� ��� ����������������� ��2�� ��� ����������������� ��

/�/�

����(����-#����(����-# :����� �����/� ����/�:����� �����/� ����/�

:��������#:��������# '��� ������ ���� �����'��� ������ ���� �����

��� ��������� ������

1��������(����-#1��������(����-# *������ ��"�� ���������*������ ��"�� ���������

�� ������� �����

������-#������-# ��������� �� ���� ��� ������������� �� ���� ��� ����

��������(����-#��������(����-# :���� ��� ���� ������� ��:���� ��� ���� ������� ��

�/������/��/������/�

����(����-#����(����-# :����� �/�������� �</�����:����� �/�������� �</�����

�� �������������� ������������

$ ����(����$ ����(���� � �� ��� � �� �� ��� � �

Page 8: Orthogonal Defect Classification: An Agile Test/QA Primer

������� ������ � ���������������� ������ � ���������55

��� %����� ����! ������� %����� ����! ����

�� ������� ��! ��(� ��������%������ ������� ��! ��(� ��������%����

���� ���

%� �� � � ������� �����

���� ������

#� � ����������

#����� � �&�������

��'�������

���� �������

������ "���

����� � � ������� �����

��� ��� #���� �

(� ������

)� *���� �� ���

�����������

������������

����������

����� ���

!��������������

"� �� �����

#����������

$��������

����������

��/�#�3���������� 2����#���/�#�3���������� 2����#�

������ ������������ ������� �!��� ���+������� �� �!��� ���+������� �

'�������� �( ���#��� �'�������� �( ���#��� �

���� �+������������ ����������� ����� �+������������ ����������� �

�++�������� �� )��� ����������� �������++�������� �� )��� ����������� ������

+��*�� ���� ������������ �� � �� � �� ��$+��*�� ���� ������������ �� � �� � �� ��$

��������� �������+ ������� ����,� ����������� �������+ ������� ����,� ��

������� ���������� ���

7�������8 9��+ ���� 89 ,� �����7�������8 9��+ ���� 89 ,� �����

8��� �������8 ��* �� �:�/6; ��8��� �������8 ��* �� �:�/6; ��

� �!��� ���+��� �!��� ���+��

������� ������ � ���������������� ������ � ���������5�

1� � ��! �� �� 21� � ��! �� �� 2

�������� ����������� �� � (���� %�� ��(� ���������� ����������� �� � (���� %�� ��(� ��

���� ���

%� �� � � ������� �����

���� ������

#� � ����������

#����� � �&�������

��'�������

���� �������

������ "���

����� � � ������� �����

��� ��� #���� �

(� ������

)� *���� �� ���

�����������

������������

����������

����� ���

!��������������

"� �� �����

#����������

$��������

����������

���� ���

%� �� � � ������� �����

���� ������

#� � ����������

#����� � �&�������

��'�������

���� �������

������ "���

����� � � ������� �����

��� ��� #���� �

(� ������

)� *���� �� ���

�����������

������������

����������

����� ���

!��������������

"� �� �����

#����������

$��������

����������

� �!��� ��+������� �� �!��� ��+������� �

'�������� �( ���# �� �'�������� �( ���# �� �

���� �+������������ ����������� ����� �+������������ ����������� �

�++�������� �� )��� ����������� �������++�������� �� )��� ����������� ������

+��*�� ���� ������������ �� � �� � �� ��$+��*�� ���� ������������ �� � �� � �� ��$

��������� �������+ ������� ����,� ����������� �������+ ������� ����,� ��

������� ���������� ���

7�������8 9��+ ���� 89 ,� �����7�������8 9��+ ���� 89 ,� �����

8��� �������8 ��* �� �:�/6; ��8��� �������8 ��* �� �:�/6; ��

� �!��� ���+��� �!��� ���+��

9�� ���� �������� ��#����� ����� �9�� ���� �������� ��#����� ����� �

�� ������������� �� �!��� ����� ���� ������������� �� �!��� ����� ��

��/�#�3���������� 2����#���/�#�3���������� 2����#�

������ ������������ ������

Page 9: Orthogonal Defect Classification: An Agile Test/QA Primer

������� ������ � ���������������� ������ � ���������5.

1� � ��! �� �� 21� � ��! �� �� 2

�������� ����������� �� � (���� %�� ��(� ���������� ����������� �� � (���� %�� ��(� ��

���� ���

%� �� � � ������� �����

���� ������

#� � ����������

#����� � �&�������

��'�������

���� �������

������ "���

����� � � ������� �����

��� ��� #���� �

(� ������

)� *���� �� ���

�����������

������������

����������

����� ���

!��������������

"� �� �����

#����������

$��������

����������

���� ���

%� �� � � ������� �����

���� ������

#� � ����������

#����� � �&�������

��'�������

���� �������

������ "���

����� � � ������� �����

��� ��� #���� �

(� ������

)� *���� �� ���

�����������

������������

����������

����� ���

!��������������

"� �� �����

#����������

$��������

����������

� �!��� ��+������� �� �!��� ��+������� �

'�������� �( ���# �� �'�������� �( ���# �� �

���� �+������������ ����������� ����� �+������������ ����������� �

�++�������� �� )��� ����������� �������++�������� �� )��� ����������� ������

+��*�� ���� ������������ �� � �� � �� ��$+��*�� ���� ������������ �� � �� � �� ��$

��������� �������+ ������� ����,� ����������� �������+ ������� ����,� ��

������� ���������� ���

7�������8 9��+ ���� 89 ,� �����7�������8 9��+ ���� 89 ,� �����

8��� �������8 ��* �� �:�/6; ��8��� �������8 ��* �� �:�/6; ��

� �!��� ���+��� �!��� ���+��

9�� ���� �������� ��#����� ����� �9�� ���� �������� ��#����� ����� �

�� ������������� �� �!��� ����� ���� ������������� �� �!��� ����� ��

��/�#�3���������� 2����#���/�#�3���������� 2����#�

������ ������������ ������

������� ������ � ���������������� ������ � ���������5/

��%�����%�����++�� 3��� �����*���4 ����1��� $�*�3��� �����*���4 ����1��� $�*�

� �����������

���� ����

��/���/� 2����2����

$���-)�� ���� ��/� ��$���-)�� ���� ��/� ��

2����2����

$���-)�� 2�������$���-)�� 2�������

��/���/�

Page 10: Orthogonal Defect Classification: An Agile Test/QA Primer

������� ������ � ���������������� ������ � ���������50

3)��(���$������ �� � ���� ���� ���� ��� �%��3)��(���$������ �� � ���� ���� ���� ��� �%��

5�������� 3��� � 6 ��������*5�������� 3��� � 6 ��������*

���� ����

����������

����*���

�������������

���� ����

+�����

��������

���� ���

%� �� � � ������� �����

���� ������

#� � ����������

#����� � �&�������

��'�������

���� �������

������ "���

����� � � ������� �����

��� ��� #���� �

(� ������

)� *���� �� ���

�����������

������������

����������

����� ���

!��������������

"� �� �����

#����������

$��������

����������

� ���!����������� � ���� + ����������� �� ���!����������� � ���� + ����������� �

�� �� �!��� ���+������ ����������� ��� �� �!��� ���+������ ����������� �

� �������� �� �� �� �%��� 1 )�+ �� �������� �� �� �� �%��� 1 )�+ �

������ ���+���� ����!����� ��� �%�<������ ���+���� ����!����� ��� �%�<

$������#$������#

���������� = ������� ����������������� = ������� �������

(��� �� �� �������� �-�(��� �� �� �������� �-�

����������

:������� = ���� ( /��� ����:������� = ���� ( /��� ����

�� ,����� ����/������ ���� ,����� ����/������ ��

�� ���� (��� �� ����� ���� (��� �� ���

������������������������������

=>�� ���������� �����?=>�� ���������� �����?=��� � � + �:�� * �+� ��������� � :�� ��?=��� � � + �:�� * �+� ��������� � :�� ��?

������� ������ � ���������������� ������ � ���������52

3)��(���$������ ���#��! ���� �%����� ���� ��3)��(���$������ ���#��! ���� �%����� ���� ��

5�������� ��%���6 ��������5�������� ��%���6 ��������

���� ����

����������

����*���

�������������

���� ����

+�����

��������

���� ���

%� �� � � ������� �����

���� ������

#� � ����������

#����� � �&�������

��'�������

���� �������

������ "���

����� � � ������� �����

��� ��� #���� �

(� ������

)� *���� �� ���

�����������

������������

����������

����� ���

!��������������

"� �� �����

#����������

$��������

����������

�&@ ���* ����� ���� �������� ��&@ ���* ����� ���� �������� �

������ �� ���+���� ���+���������� �� ���+���� ���+����

=>�� ���������� � ���?=>�� ���������� � ���?=��� � � + �:�� * �+� ��������� � :�� ��?=��� � � + �:�� * �+� ��������� � :�� ��?

Page 11: Orthogonal Defect Classification: An Agile Test/QA Primer

���� ������� ������ � ���������������� ������ � ���������

789�::789�::

���� ��%������ ��%��

���*������*���

Page 12: Orthogonal Defect Classification: An Agile Test/QA Primer

������� ������ � ���������������� ������ � ���������5A

�� �((� ����� 2 �������%������*���� ���"�� �((� ����� 2 �������%������*���� ���"

��+��� *��!� � 78) �'�� ��� ���� � �������%������*�����+��� *��!� � 78) �'�� ��� ���� � �������%������*���

������� ������ � ���������������� ������ � ����������6

�%����� ������ �������%������*����+��%����� ������ �������%������*����+�

�������'���� �����*��! (�*�� ��������'���� �����*��! (�*�� �

����� ���� �� #�� ��������� ,-�

�� �� ��� ��./ ������� #�� #��

%�� � %�� �

#��0������ 12/ /

,-��������������� / 3

,-��������� 1.

+�������� 12/ 14

���� ��/� $���-��� ��� ����� (������ ���� ,���� ������� ��/� $���-��� ��� ����� (������ ���� ,���� ���

���(����� ���� .����� 3���������� ��$ ����� ����� ������(����� ���� .����� 3���������� ��$ ����� ����� ���

��������� ��, �� �����(������������� ��, �� �����(����

��� ������� ���/ ������� �� �� �/���� ���� �� ��$��� ������� ���/ ������� �� �� �/���� ���� �� ��$

Page 13: Orthogonal Defect Classification: An Agile Test/QA Primer

���� ������� ������ � ���������������� ������ � ���������

����

�(�*�����(�*����

3���/(��������� ������������3���/(��������� ������������

>>������ ��:*??��� �������/�������� ����-���@������ ��:*??��� �������/�������� ����-���@

������� ������ � ���������������� ������ � �����������

�� � ����� ���� ��� ���� ��� ���� ��� �� !���"

������- # #

1��,�'��� # #

:���/�� # # # #

���� # # # # # #

:��A�� # # # # # #

3�� # # # #

�������/�� # #

�� �((� ����� �����!� �� ���� �((� ����� �����!� �� ��

�������! � �����!����������*��� �� ��(� ��������! � �����!����������*��� �� ��(� �

Page 14: Orthogonal Defect Classification: An Agile Test/QA Primer

������� ������ � ���������������� ������ � ����������.

$$$:�5�==��3,3:���$$$:�5�==��3,3:���