redefining defects. 2 what is software defect? any flaw or imperfection in a software any deviation...

30
Redefining DEFECTS

Upload: randell-lewis

Post on 30-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Redefining DEFECTS

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.

12

How long will satisfied customer give us more business?

So long as he is in business!

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.

14

What have we seen so far?

Redefinition of the term –

DEFECTS

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)

16

What it means?

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 ???

20

Continued…

Test Professionals should be in search of

DEFECTS!

21

What is this picture about?

22

The most common answers are

1. Young / Beautiful lady

23

And …

2. Old / Tired lady

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

30

THANK YOU

Tested your patience; NO DEFECT found.