sprint3 r swtesting-qualit-yinre-01302013-pdf

49
Software Quality in Requirement Analysis & Engineering Faculty of Information Technology King Mongkut’s University of Technology North Bangkok Wednesday, January 30, 2013 SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖ Friday, February 1, 13

Upload: prathan-d

Post on 31-Oct-2014

627 views

Category:

Documents


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Software Quality in Requirement Analysis &

Engineering Faculty of Information Technology

King Mongkut’s University of Technology North BangkokWednesday, January 30, 2013

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 2: Sprint3 r swtesting-qualit-yinre-01302013-pdf

DisclaimerAll information in this presentation is based on

speaker’s personal knowledge + experience + reality (drama) that he lives in ...

!SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 3: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Session RulesEverybody should SPEAK

Ask QUESTION, Don’t Shy

Write QUESTION in Post-it

Set your mobile to SILENT

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 4: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Who am I?

Scrum Master + ITIL Coach @ Opendream

Outsource Project Manager @ TARAD Dot Com

IT Development Manager @ TARAD Dot Com

Assistance Services & Operation Manager @ Sanook.com

QA Specialist @ Sanook.com

Tester @ Sanook.com

System Administrator @ POPidols.net

Freelance Programmer

Prathan (Noom) DansakulcharoenkitCo-Founder/Practitioner/Coach/Transformer of Agile/ITIL/Software Testing @ SPRINT3R

IT Development Consultant @ TARAD Dot Com

Founder and Web Master @ WeLoveBug.com

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 5: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Who are you?

Your name and nickname?

Company you are working for?

Please introduce yourself following this questions

What your company does?

What you do at company?

How your company build products?

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 6: Sprint3 r swtesting-qualit-yinre-01302013-pdf

What is your PAIN POINT of current development?

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Question 1

Friday, February 1, 13

Page 7: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Software QUALITY

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 8: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Quality Triangle

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

SpecificationRequirements

Software

Gap

Friday, February 1, 13

Page 9: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Quality Triangle

Requirements Specification

Software

It’s an IDEAL!!!

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 10: Sprint3 r swtesting-qualit-yinre-01302013-pdf

How many figure of triangle can TRANSFORM?

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Question 2

SpecificationRequirements

Software

Friday, February 1, 13

Page 11: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Quality Triangle

In the real WORLDSPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Software

Requirements Specification

Friday, February 1, 13

Page 12: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Quality Triangle

In the real WORLDSPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Software

Requirements Specification

Friday, February 1, 13

Page 13: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Quality Triangle

In the real WORLDSPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Requirements

Software

Specification

Friday, February 1, 13

Page 14: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Quality Triangle

In the real WORLDSPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Software

Requirements Specification

Friday, February 1, 13

Page 15: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Where Do Bug Come?

Requirements definition

System design

Implementation

Support systems

Lack of software testing skills

Evolution

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 16: Sprint3 r swtesting-qualit-yinre-01302013-pdf

What is mainly CAUSE of bugs and why?

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Question 3

Friday, February 1, 13

Page 17: Sprint3 r swtesting-qualit-yinre-01302013-pdf

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Example

Friday, February 1, 13

Page 18: Sprint3 r swtesting-qualit-yinre-01302013-pdf

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Introduction of Bugs

Majority of bugs are introduced during Requirements and Design phase.

Source: NIST 2002 RTI Project 7007.011

Friday, February 1, 13

Page 19: Sprint3 r swtesting-qualit-yinre-01302013-pdf

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Detection of Bugs

Majority of bugs are actually detected during user acceptance testing and in production

Source: NIST 2002 RTI Project 7007.011

Friday, February 1, 13

Page 20: Sprint3 r swtesting-qualit-yinre-01302013-pdf

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Assessing Cost of Bugs

The cost of correcting defects increase dramaticallyThis industry average in used as a baseline for arriving at cost savings

Source: B. Boehm and V. Basili, ‘Software Defect Reduction Top 10 List”, IEEE Computer

Friday, February 1, 13

Page 21: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Why Requirements are so important?

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Question 6

Friday, February 1, 13

Page 22: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Take a break 15 minutesFriday, February 1, 13

Page 23: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Verificationand

Validation

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 24: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Verification

Are we building the software RIGHT?

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

The software should conform to its specification

Peer Review and Inspection

Friday, February 1, 13

Page 25: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Validation

Are we building the RIGHT software?

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

The software should do what the user really requires

Software Testing

Friday, February 1, 13

Page 26: Sprint3 r swtesting-qualit-yinre-01302013-pdf

SpecificationRequirements

Software

Verification

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Validation

Requirement Definition

Question 4

Friday, February 1, 13

Page 27: Sprint3 r swtesting-qualit-yinre-01302013-pdf

V&V in Software Develop

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

User SoftwareRequirement

Requirement Specification

High LevelDesign

DetailDesign

Coding

Unit Testing

IntegrationTesting

SystemTesting

AcceptanceTesting

Question 5Validation

Verification

Friday, February 1, 13

Page 28: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Verification

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Peer Review and Inspections

Friday, February 1, 13

Page 29: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Software TESTING

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Validation

Friday, February 1, 13

Page 30: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Some Facts of TestingALWAYS be a chance that software will have bugs

CANNOT prove software works by testing it

DOES NOT prove that software is bug-free

Testing after software has been created DOES NOT improve its quality

Cost of removing bugs rises DRAMATICALLY in the later phases of the software development process

QUALITY depends on 3 factors; People, Process and Tool

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 31: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Some Goals of TestingDetermine a product MEET business expectation

MINIMIZE the risk of error occurs

IS NOT the process to verify software work correct

Testing must be to DEMONSTRATE that software does have bug

Tester must find bug as EARLY as possible and make sure that they are fixed

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 32: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Some Testing TypesUnit testing

Integration testing

System testingUser Acceptance testing

Regression testing

Performance testing

Security testingUsability testing

Compatibility testing

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 33: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Testing Types

A

B C

DE

F G

Module

Integrate

System SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 34: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Test Case

inputs to test system and verify with expected outputs

Test Case = Test Rule + Test Data

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 35: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Test IterationsTest to Pass

Test to FailSPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 36: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Team Organization

Biz

Tester

Dev

Traditional Organization

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 37: Sprint3 r swtesting-qualit-yinre-01302013-pdf

SOMEONE

Who feel responsible for QUALITY in traditional development (Waterfall)?

Question 7

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 38: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Team OrganizationAlternative Organization

Biz Dev

Tester

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 39: Sprint3 r swtesting-qualit-yinre-01302013-pdf

WHOLE TEAM

Who feel responsible for QUALITY in alternative development (Agile)?

Question 8

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 40: Sprint3 r swtesting-qualit-yinre-01302013-pdf

How to validate requirements?

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Question 9

Friday, February 1, 13

Page 41: Sprint3 r swtesting-qualit-yinre-01302013-pdf

ถึงแม้ประเทศไทยจะยังไม่นิยมทํา Quality Assurance (QA) เท่าไรนัก ถ้าจะเสริม QA เข้าไปใน V&V มันจะอยู่ตรงไหน?

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Question 10User

Software

Requirement

High LevelDesign

DetailDesign

Coding

Unit Testing

IntegrationTesting

SystemTesting

AcceptanceTesting

Validation

Verification

Friday, February 1, 13

Page 42: Sprint3 r swtesting-qualit-yinre-01302013-pdf

มี Case มากน้อยแค่ไหน ที่ตอนทํา V&V ในช่วงเอกสาร URD and SRS แล้วเห็นพ้องต้องกันทุกฝ่ายแล้วว่าใช่อย่างที่ต้องการ พอได้ Product ออกมาแล้ว V&V ของฝั่ง Development Team แล้วผ่านทุกประการ แต่ฝั่ง User กลับไม่เห็นด้วย โดยต้องมีการแก้ไขเยอะ กรณีแบบนี้มีหรือไม่ มากน้อยแค่ไหน แล้วจะสามารถแก้ไขสถานการณ์ หรือป้องกันสถานการณ์เหล่านี้ได้อย่างไร

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Question 11

Friday, February 1, 13

Page 43: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Conclusion

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 44: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Quality in every phase, Not afterthought

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 45: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Quality Improvement by found defect EARLY

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 46: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Inspect & Adapt

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 47: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Questions & Answers

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 48: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Keep in touchemail: [email protected]

twitter: @zyracuze

facebook: https://www.facebook/WeLoveBug

training: http://bit.ly/SPRINT3REVENT

blog: www.welovebug.com

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13

Page 49: Sprint3 r swtesting-qualit-yinre-01302013-pdf

Thanks Youกราบ (-/\-)

SPRINT3R by สยามชํานาญกิจ พุทธศักราช ๒๕๕๖

Friday, February 1, 13