01 introductory session

Post on 24-May-2015

46 views 0 download

Tags:

Transcript of 01 introductory session

Software Quality Management and Testing:

Introductory Session

G RameshGopalaswamy_Ramesh@Yahoo.Com

Introductions Course Objectives Course Logistics What you should expect Getting to business

Session 1 2

Today’s Agenda

To Familiarize you with the principles of Testing and Quality

Management Make you appreciate the aspects of managing a Testing

project Get you a view of Release Management of Software Products Discuss some simple, common-sense practices

NOT To Make you Software Testing experts Put too intimate focus on technology

Session 1 3

Course Objectives

Attitude Every activity you do that is important for a project should be

respected Basics

Quality is More than just “cool coding” Communication

This is the make-or-break for high quality, especially in Testing & Release Management

Documentation Remember, a lot of times you will be working with people with

whom you have very limited face-to-face contact! Ethics

Can’t be over-emphasized (but often under-emphasized!) Flexibility

Name of the game in quality!

Session 1 4

The Focus is on ABCDEF…

Two Weekends (this weekend and the weekend of April 19)

Totally 20 hours, with approximately 12 hours this visit and 8 hours next visit

Session 1 5

Course Logistics#1: Timing

* Conditions Apply!

Project(s) (Group) 30% One Midterm Tests (Individual)

20% Final Exam (Open Everything, especially Open Mind)

50%

Session 1 6

Course Logistics:#2: Evaluation

Primary Books: Software Testing – Principles and Practices, Srinivasan

Desikan & Gopalaswamy Ramesh, Pearson Education, 2006 (ST)

Software Maintenance -- Effective Practices for Geographically Distributed Teams, Gopalaswamy Ramesh & Ramesh Bhattiprolu, Tata McGraw Hill, 2006 (SM)

Secondary Book: Managing Global Software Projects, Gopalaswamy Ramesh, Tata McGraw Hill, 2002-2006

PPTs IEEE Standards Other reference material that may be given during the

courseSession 1 7

Course Logistics#3: Material

Participate fully in the class! Budget about 3-3.5 hours per hour of my

class Track the effort and let us know! Enjoy the course, don’t take it as drudgery!

Session 1 8

What you should expect…

No one-way communication, do participate! There are no wrong answers while participating! Don’t expect prescriptions or panaceas Use your common sense, it may be right most of

the time!

Session 1 9

Rules of the Game

Session 1 10

Introduce you to the concept of Quality (Recap from Global Software Project Management course)

Distinguish between QA and QC Explore the term “Quality Management”, striking a

balance between QA and QC Understand the role of the various SDLC Models in

Quality Management Know the role of Release Management in the

context of Quality

Session 1 11

Objectives of Session 1

ST: Chapter 1, 2 MGSP: Chapter 3, 7 SM: Chapter 1,2

Session 1 12

References For This Session

Session 1 13

The Phil Kotler Equation That Drives Project Management (And Quality)

Session 1 14

Thus,Project (Quality) Management is…

Session 1 15

Four Main Cornerstones in Project (Quality)

Management

Session 1 16

Definition of Quality

Transform as many “implied” requirements to “stated”requirements

AND meet them in a repeatable, consistent manner

Transform as many “implied” requirements to “stated”requirements

AND meet them in a repeatable, consistent manner

Customer:Does it meet my real needs?

Producer:Does it meet ““specs””?

The difference between customer and producerperception is the existence of implied requirements

Consistency / Predictability Variability / Inconsistency Quality of Conformance Grade Quality or Quality of Design

Session 1 17

Quality Terminology

Quality is Quality of Conformance

Quality is predictability and consistency

Quality is the opposite of variability

Introduce you to the concept of Quality (Recap from Global Software Project Management course)

Distinguish between QA and QC Explore the term “Quality Management”, striking a

balance between QA and QC Understand the role of the various SDLC Models in

Quality Management Know the role of Release Management in the

context of Quality

Session 1 18

Objectives of Session 1

Session 1 19

Quality Assurance

Quality Control

Methods of enhancing Methods of enhancing consistency and predictabilityconsistency and predictability

Session 1 20

Make fixes

Build Test OK?

NO

YES

Fig 7.2. Quality Control

Quality Assurance Process Oriented Prevention Oriented Proactive Everybody’s Responsibility

Quality Control Pertains to Product Detection Oriented Reactive “Tester/Reviewer’s” Responsibility

Session 1 21

Quality Assurance Vs Quality Control

Introduce you to the concept of Quality (Recap from Global Software Project Management course)

Distinguish between QA and QC Explore the term “Quality Management”, striking a

balance between QA and QC Understand the role of the various SDLC Models in

Quality Management Know the role of Release Management in the

context of Quality

Session 1 22

Objectives of Session 1

Requirements gathering Design Development Testing Deployment and maintenance

Session 1 23

Phases of software development (not

necessarily sequential!)

Session 1 24

Quality during various phases…

Eff

ecti

ven

ess

of

Tes

tin

g p

has

e

LOW

HIGH

Quality of other phases

LOW HIGH

Not sustainable!

High Rework Costs Ideal State!

Risky!

Double edged sword!

Excessive Process orientation

Lack of Testing makes defects reach the customers

Not a healthy state!

Lack of standards foster “defect breeding”

Lack of Testing makes defects reach the customers

May be resource intensive but gives better payback

Institutionalizes Quality

Makes Quality visible to customers

Last minute rushes

Higher People dependency

Testers as “heroes” and “adversaries”

Double edged sword!

Excessive Process orientation

Lack of Testing makes defects reach the customers

Not a healthy state!

Lack of standards foster “defect breeding”

Lack of Testing makes defects reach the customers

May be resource intensive but gives better payback

Institutionalizes Quality

Makes Quality visible to customers

Last minute rushes

Higher People dependency

Testers as “heroes” and “adversaries”

Low High

Low

Hig

h

Defect prevention focus

Def

ect d

etec

tion

foc

us

Session 1 25

Defect Prevention and Detection

Achieve a balance between (Defect Prevention) Quality Assurance and (Defect Detection) Quality Control

View QA and QC as supplementary and not adversary job functions

Distribute QA / QC functions throughout for early detection

Session 1 26

Quality Management:Balancing Quality Assurance and

Control

Session 1 27

Fig 7.3. Cost of Quality Components

(a) Without QC/QA (b) With QC/QA

Cost of Development (and defectinjection)

Cost of Defect (down time, goodwill loss etc)

Cost of Fixing (Appraisal, Re-work etc)

Cost of Development (and defectinjection)

Cost of Defect (down time, goodwill loss etc)

Cost of Fixing (Appraisal, Re-work etc)

QA QC Cost

Reduced

Reduced

Reduced

New

Net Savings

Introduce you to the concept of Quality (Recap from Global Software Project Management course)

Distinguish between QA and QC Explore the term “Quality Management”, striking a

balance between QA and QC Understand the role of the various SDLC Models in

Quality Management Know the role of Release Management in the

context of Quality

Session 1 28

Objectives of Session 1

Session 1 29

Waterfall Model

Requirement-3

Requirement-2

Requirement-4

Requirement-1

Requirement-5

Session 1 30

Spiral Model

Session 1 31

Different Types of Tests

Session 1 32

V Model

System complete

IT Complete

Component

Complete

Components (1,2..) complete

Unit test

Complete

Design Complete System complete

IT Complete

Component

Complete

Components (1,2..) complete

Unit test

Complete

Design Complete

Acceptance Testing

System Testing

Integration Testing

Component Testing

Unit Testing

Acceptance Testing

System Testing

Integration Testing

Component Testing

Unit Testing

Entry Criteria

Exit Criteria

Session 1 33

Modified V Model

Use Table 2.3 in page 42

Session 1 34

Comparison of Various SDLCs

Session 1 35

Extreme and Agile Methodologies

Introduce you to the concept of Quality (Recap from Global Software Project Management course)

Distinguish between QA and QC Explore the term “Quality Management”, striking a

balance between QA and QC Understand the role of the various SDLC Models in

Quality Management Know the role of Release Management in the

context of Quality

Session 1 36

Objectives of Session 1

Session 1 37

V1

V2

V3

1.1 1.2 …

2.1 2.2

Time for which BOTH V1 and V2Are to be maintained

V1 Obsolete

V2 Obsolete

TIME

How Software Evolves: Versions and Releases

Session 1 38

SimpleOLTP

DataCentric

ApplicationPlatform

WebApplicationsData

Warehouse&Hi-End

OLTP

Client/Server

OLTP

V 5.0 V 6.0 V 7.0

InternetBusinessPlatform

V 8.0 Oracle8i Oracle 9i

EarlyRelational

Client/ServerRelational

EnterpriseRelational

Object Relational

Internet Database

Session 1 39

Major Release

Time1st Patch Bundle

2nd Patch Bundle

Next Major Release

1st Patch Bundle

2nd Patch Bundle

Time

Last Patch Bundle

Next Major Release

1st Patch Bundle

Time

Last Patch Bundle

Patch Bundles& Major ReleasesTimeline

How Software Evolves: Versions and Releases

Every Major Version Should Meet A New Technology / Functional Objective

Every Minor Release Incrementally Fixes Defects or Adds Minor Enhancements to Existing Functionality

“Doing the Right Things Vs. Doing Things Right”

Session 1 40

Versions and Releases In The Context Of Quality

Session 1 41

Release Management

Making Sure The Right Features Reach…The Right Customers At…The Right Time Working …

The Right Way …Consistently and Predictably

Quality Quality Assurance, Quality Control Quality Management SDLC Release Management

Session 1 42

Integrating All These Concepts…

Ability to make meaningful commitments, meeting customer needs that we can satisfy

Ability to plan a road map to achieve the commitments

Ability to have the infrastructure and competencies to achieve the commitments

Ability to track progress towards achieving commitments

Ability to “demonsratably” achieve continuous improvement

Session 1 43

The Objective Of Quality Management Should Be To

Have

Introduce you to the concept of Quality (Recap from Global Software Project Management course)

Distinguish between QA and QC Explore the term “Quality Management”, striking a

balance between QA and QC Understand the role of the various SDLC Models in

Quality Management Know the role of Release Management in the

context of Quality

Session 1 44

Objectives of Session 1:Recap