redefining defects. 2 what is software defect? any flaw or imperfection in a software any deviation...
TRANSCRIPT
2
What is Software Defect?
• Any flaw or imperfection in a software
• Any deviation from specifications
Frequently referred to as a FAULT or a BUG
3
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?
4
Continued…
• Defect is a deviation from requirements
• Remedy is to collect all the requirements, sufficient test coverage and thorough testing
5
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 fewrequirements identified at a later stage were not incorporatedin the application as the same was not communicated to theDevelopment Company.
6
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.
7
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%.
8
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.
9
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 USD4. 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 USD2. No additional costs
10
What went wrong?
In-transit stock expected to arrive in next 24 hours was notconsidered 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
11
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.
13
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.
15
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)
17
Suggested Approach
1. It’s a common practice to link test cases to business requirements. We, now need to link business requirements to Key Success Areas (KSAs)
2. Review of test cases by Key Success Coordinator3. New testing metrics - % Key Success Areas covered,
Test Cases executed, Defects detected, Defects open in Key Success Area
4. Involvement of testing team right from identification of pain areas till the business solution starts delivering.
5. Change in lookout form Test if time permits to test to ensure business enablement
6. Change in psychology from Defect Free delivery to Success Full delivery
18
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 doneif time permits.
It must be looked as a value adding activity.
19
In search of approach
CEOs are in search of ExcellenceCustomers are in search of Superior QualityDoctors are in search of PatientsProfessors are in search of StudentsPolice are in search of Criminals
And
Test Professionals should be in search of ???
24
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
25
Not a power game!
One Good software tester keeps the entire development team BUSY (fixing the defects)
26
Change in Vision
Change your vision to prove “Good” things as “Bad” with an objective to improve.
Look from Customer’s eyesBusiness user’s eyes and End customer’s eyes
27
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
28
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!
29
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;
Redefine DEFECTS;
Isn’t it?
It’s time to