Transcript Document

Redefining DEFECTS
What is Software Defect?
•
Any flaw or imperfection in a software
•
Any deviation from specifications
Frequently referred to as a FAULT or a BUG
2
Isn’t it our regular experience?
ABC Software Development Company developed software for its
customer PQR.
Customer was glad to have on time delivery, but that happiness
soon got converted into disappointment as it was noticed that
some of the requirements specified were not met.
What went wrong?
3
Continued…
• Defect is a deviation from requirements
• Remedy is to collect all the requirements, sufficient test
coverage and thorough testing
4
Does this also happen sometimes?
ABC Software Development Company developed software for its
customer PQR.
All the specified requirements were met, but still the customer was
not happy.
The users were not happy with the application as few
requirements identified at a later stage were not incorporated
in the application as the same was not communicated to the
Development Company.
5
Continued…
• Defect is anything that makes customer unhappy
• Remedy is just collecting requirements is not enough;
understand it.
Involvement of Development Company’s representative/Test
Lead in understanding the actual usage of application would
yield better results.
6
Business complexity might lead to this
PQR is a well-known organization dealing with consumer goods
through internet ordering.
ABC Software Development Company gave a proposal on
redesigning the ordering module and bagged the order for the
same. The task was completed in time as per the specifications.
The new site was appreciated by customers and the
number of hits per day increased by 20% while sales increased by
12%.
7
Continued…
PQR Company was the nearest competitor for XYZ. Both XYZ and
PQR were trying to get a competitive age over each other as they
were working in a Zero-Sum situation i.e. PQR’s gain was XYZ’s
loss.
It was surprising to see PQR loosing some of its orders to XYZ due
to unavailability of stocks. PQR started ordering higher volumes,
but it could not help them much. It was surprising for XYZ too that
they were getting advantage without doing anything.
8
Continued…
PQR’s cost accountant prepared a report showing –
1.
Overall increase in inventory cost – 25%
2.
Loss of business due to unavailability of stock (recent error
inducted) – 20%
3.
Impact on bottom line – 5000 K USD
4. Software redesign charges to ABC Software Development
Company 200 K USD
XYZ’s cost accountant was happy to report –
1.
Sales increase of 3000 K USD
2.
No additional costs
9
What went wrong?
In-transit stock expected to arrive in next 24 hours was not
considered while accepting the customer orders.
• This was not specified as a requirement
• It was built in the earlier version
• It helped(?) our customer to perform BAD
10
Continued…
• Defect is something which makes customer suffer or makes
customer unsuccessful
• Remedy
is
involvement
of
Development
Company’s
representative/Test Lead in requirements development.
Understanding specified requirements only is not enough, but
helping customer in developing requirements would yield better
results.
11
How long will satisfied customer give us more
business?
So long as he is in business!
12
Continued…
Customer’s failure to sustain in competitive world is failure for us
not only to get additional business, but also to retain current pie.
Successful customer can give more and more business making us
successful.
This is possible if our software acts as a Business Enabler for the
customer helping the customer to bring success.
If customer’s success is our success then we must get involved
not only in understanding the requirements, but in identifying and
developing the requirements i.e. involvement of Testing Team prior
to project initiation phase i.e. project conceptualization phase.
13
What have we seen so far?
Redefinition of the term –
DEFECTS
14
What it means?
• Significant changes in entire Testing process
• Understand what our customer is eyeing for
• Understand how our relationship / assignment / project can
contribute towards the customer’s Key Success Areas (KSAs)
15
What it means?
16
Suggested Approach
1.
2.
3.
4.
5.
6.
It’s a common practice to link test cases to business
requirements. We, now need to link business requirements to
Key Success Areas (KSAs)
Review of test cases by Key Success Coordinator
New testing metrics - % Key Success Areas covered, Test Cases
executed, Defects detected, Defects open in Key Success Area
Involvement of testing team right from identification of pain
areas till the business solution starts delivering.
Change in lookout form Test if time permits to test to ensure
business enablement
Change in psychology from Defect Free delivery to Success Full
delivery
17
Shift in approach: Defectives to Detectives
It’s quite a common practice to transfer “not good” programmers
to Testing and forcing the Test Manager to deliver defect-free
software using the defectives in the organization. We need to
change this. We have to use the testing experts (detectives)
for testing and detecting even a minor problem / defect.
Testing should not be considered as an activity to be done
if time permits.
It must be looked as a value adding activity.
18
In search of approach
CEOs
Customers
Doctors
Professors
Police
are in search of
are in search of
are in search of
are in search of
are in search of
Excellence
Superior Quality
Patients
Students
Criminals
And
Test Professionals should be in search of ???
19
Continued…
Test Professionals should be in search of DEFECTS!
20
What is this picture about?
21
The most common answers are
1. Young / Beautiful lady
22
And …
2. Old / Tired lady
23
Continued…
• Try to be more creative and visualize from various angles
• Do not settle on the most obvious alternative
• Try to unfold things which otherwise would go unnoticed
24
Not a power game!
One Good software tester keeps the entire development team
BUSY (fixing the defects)
25
Change in Vision
Change your vision to prove “Good” things as “Bad” with an
objective to improve.
Look from
Customer’s eyes
Business user’s eyes and
End customer’s eyes
26
Change in Focus
1.
Testing is needed as customer wants it. Understand expressed
as well as implied needs, critical to customer – CTCs
2.
Instead of spending time and energy on proving that you have
taken into account all the expectations and used experienced
resources for testing; spend your time in delivering something
which would help customer to be successful and give you
repeat business
3.
Ensure in delivering a solution which would be business
enabler for the customer
27
Change in Attitude
• We eat bugs during breakfast
• A bug every hour
• Defects as a LOVE Letter to Developer… More the number more
we enjoy!
• Our job is to tell you… your baby is ugly!
• YOUR bugs pay for MY kid’s degrees!
28
Conclusion
It’s the law of nature that “Time brings changes.” It’s happening to
the customer expectations, business challenges and so also to the
definition of Defects.
We must accept it;
It’s time to Redefine DEFECTS;
Isn’t it?
29
THANK YOU
Tested your patience; NO DEFECT found.
30