Top Banner
06/06/22 1 Software Project Management (SPM) Lecture 9 Software Quality Management Dr. Daniel Keret
18

Software Project Management

Nov 18, 2014

Download

Documents

Gaja Gajendra

Software Project Management (SPM)-lecture-9
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Software Project Management

04/08/23 1

Software Project Management (SPM)

Lecture 9 Software Quality Management

Dr. Daniel Keret

Page 2: Software Project Management

Reading Assignment

04/08/23 2

Software Project Management, Bob Hughes and Mike Cotterell, McGraw-Hill, 3rd Edition.•Chapter 12

A Guide to the Project Management Body of Knowledge, PMI Publications, 3rd Edition, 2004•Chapter 8

Page 3: Software Project Management

04/08/23 3

Quality Management Software Quality Standards

– ISO– CMM

Quality Planning– Cost Benefit Analysis– Benchmarking– Cost Of Quality– Quality Management Plan

Quality Assurance– Metrics Measurements– Corrective Actions– Preventive Actions

Quality Control– Audits, Analysis– Checklist

Page 4: Software Project Management

04/08/23 4

Software Project Quality Management The Activities that Determine Quality POLICIES,

OBJECTIVES, RESPONSIBILITIES. It includes the PLANNING, ASSURANCE and

CONTROL of the POLICIES, PROCEDURES and PROCESSES

Forecast the End Result Quality during the Development Stages

Special Characteristic of Software:– Increasing Criticality and Importance of Software– Intangibility of software is a source for Unpredicted Errors– Software Errors are accumulating through the project life

cycle

Page 5: Software Project Management

04/08/23 5

Software Product Quality Factors Product Operation:

– Correctness (follow specifications), – Reliability (number of errors, fault tolerance, simplicity), – Efficient (optimize resources usage: storage, memory, CPU) – Integrity (access control & audit to processes and data)– Usability (ease of use/training, operation)

Product Revision (changes, enhancements)– Testing (effort required, regression tests)– Flexibility (effort required to modify the functionality)– Maintenance (effort required to locate and fix a bug:

modularity, no duplication of code, documentation) Product Flexibility (Transition)

– Portability (change h/w, operating system, compiler, etc)– Interoperability (integrate with other systems, flexible data and

interface structures)– Reusability (can be used as part of another application as a

whole or parts – platform free, modular design)

Page 6: Software Project Management

04/08/23 6

Software Quality Standards ISO 9001 (International Organization for Standardization)

– Defines the needs from a monitor & control system to check quality

– Certification of the Design, Development, Production, Installation an Service Processes

– Describes the fundamental features of Quality Management System (QMS)

– Useful in selecting a sub-contractor with “best practices” quality processes.

– Deals with quality of the development process, not with the quality of the product

Page 7: Software Project Management

04/08/23 7

ISO 9001 Principles– Determine the NEEDS and Expectations of the customer– Establish Quality Policy and imply the actual quality objectives– Design the project activities to include the quality objectives– Assign responsible parties to all the quality objectives– Allocate enough and knowledgeable resources– Implement methods to measure the quality objectives in each

process– Collect & Analyze the Measurements and Identify discrepancies– Define action items to eliminate the cause of the discrepancies– Documentation (follows quality manual) of the actual (updated)

operation of an activity that includes objectives, plans, procedures and records

– The QMS is well managed and knowledgeable resources are assigned to the Quality Management Process.

– Demonstrate that the Production Process is well defined, designed, recorded, communicated and measured.

– Sub-Contractors and Purchasing are managed in the same manners.

Page 8: Software Project Management

04/08/23 8

CMM – Capability Maturity Model Software Development Methods and Tools which are Likely to

produce Quality Software Software Companies are assigned a level ( 1 to 5 ) of Process

Maturity that indicates the quality of their software production practices

Level 1: Initial Level– Default level, no defined quality process throughout the

organization. Some projects may adopt some measures. Level 2: Repeatable Level

– Basic Project Management in place, not in the activities level Level 3: Defined Level

– Project Management Plan is well defined at all levels Level 4: Managed Level

– Products & Processes are Measured and Controlled Level 5: Optimizing Level

– Process Improvement is introduced based on documented data gathered from previous projects, processes.

Page 9: Software Project Management

04/08/23 9

Quality Planning Identify the Project Quality Standards Determine how to Satisfy the Standards Inputs:

– Enterprise Factors (law, regulations, standards)– Organizational Factors ( QA policies)– Scope Statement (objectives, thresholds, acceptance criteria,

performance criteria, etc.)– Project Management Plan

Tools & Techniques– Cost Benefit Analysis

• Cost Of Quality: Expenses associated with the Project Quality Management

• Benefit: Less Rework, higher productivity, lower cost, higher stakeholder satisfaction

– Benchmarking Compare the project process practices to other projects to get ideas for improvements

– Others: Brainstorming, Flowcharts

Page 10: Software Project Management

04/08/23 10

Quality Planning - Output Quality Management Plan

– How the project management will implement the quality policy– Quality Control Plan– Quality Assurance Plan– Continuous Improvement Plan

Quality Metrics– Detailed Plan of what will be measured, actual values

Quality Checklist– Structured tool. Process, Activity based. Templates can be

available from prior projects or QA organizations. Quality Baseline

– The quality OBJECTIVES of the project– The basis for measuring and reporting

Process Improvement Plan– Identification of WASTE and NON-VALUE ADDED activities– Set TARGETS for Improved performance

Page 11: Software Project Management

04/08/23 11

Quality Assurance - QA A QA Department in the Organization Observe that the project will employ all processes

needed to meet Quality Targets QA support & Knowledge Base Provides Umbrella for Continuous Process

Improvement Recommend Corrective Actions and Updates to the

Project Plan Update Organizational Process Assets

Page 12: Software Project Management

04/08/23 12

Software Metrics“You Can Not Control What You Can Not Measure”

Retain Records (historical data) – Used to evaluate future projects (sizing,schedule, cost, effort)

Problem Reporting – Supply Information about problem fixing (cycle, time, amount, frequency, etc.)

Quality Assurance Plan – Define Quality Thresholds (What is the definition of “Low System Complexity”)

Corporate Quality Goals – Measure progress toward the Goals

Types of Software Metrics– Directly Observed: Number of Test Cases, Project Cost– Predicted: Project Baseline Cost, Estimate To Complete– Calculated: Productivity=KLOC/Staff-Months

Page 13: Software Project Management

04/08/23 13

Useful Metrics

Precise or Defined with Clear Tolerance, Well Defined Methods of Data Collection Helps to Measure the Organization/Project Quality

Goals Simple & Easy to understand Inexpensive to Use Robust Consistent and Used Over Time Easy To Collect Easy to Access (online)

Page 14: Software Project Management

04/08/23 14

Software Metrics – Examples of Direct Observations

Control Chart - Upper/Lower Control Limit ( Usually the Corporate or Project Quality Targets)– Actual Measures per Module/Activity VS Corporate Goals.

The Average Project Measurement implies the overall project compliance. Deviation from the control limits indicate problem in a specific Module/Activity

– Typical Metric: Design Review Hours Invested per Module. Total Hours to investigate and resolve problem per

predefined problem types (interface, documentation, input data, computational, etc.)

Defects Discovered and Defect Fixed Over Time Mean Age of: Open Problems at the end of the Month

Closed Problems at Month End

Page 15: Software Project Management

04/08/23 15

Continuous Process Improvement Main Goals:

– Continuous Improvement in Resource Planning (increase the probability to deliver accurate estimates)

– Continuous Reduction in Waste/Non-Productive Project Activities.

– Continuous Improvement in Other Corporate Quality Goals Values in Software Activities

– Value Added: Design, Code, Test, Install, Etc. – Non Value Added but Essential: Acceptance Testing, Setup,

Training, Etc.– Non Value Added and Nonessential: Retest, Rework,

Management, Installing Software Tools, Delays, Etc. Value Metrics: Value/Total, Non-Value Essential/Non-

essential, Value+Essential/Total

Page 16: Software Project Management

04/08/23 16

Quality Control - QC Monitor SPECIFIC project results to determine its

compliance with the Quality Standards Identify ways to eliminate CAUSES of unsatisfactory

results Continuous Process Uses Sampling and Probability analysis Analysis Types

– Prevention & Inspection– Sampling (check conformance (Yes/No) to standards, goals,

Etc)– Variables Sampling – Level Of Conformance with

Standards/Goals– Special Causes/Unusual Events – Tolerance (results fall within/outside the control limits)

Page 17: Software Project Management

04/08/23 17

QC – Tools & Techniques Cause & Effect Diagram

– Per Major Defect (E.G: Users Interface Issues)– Cause: Guidelines not Followed

• Reasons: Did not read the guidelines(no time), Can not find the guidelines (No central Location)

– Cause: Lack of users feedback• Reasons: Lack of users resources, Prototype not clear

enough, No process to get early feedbacks Control Charts Flowcharting (activities, decision points, sequencing) – Can

point potential quality issues Histogram – Number of Defects per Problem Type Pareto Chart – 80/20 rule. Order Defects by Number of Defect

and focus on those that causes the majority

Page 18: Software Project Management

04/08/23 18

QC – Tools & Techniques (Cont.) Run Charts/Scatter Diagram (indicate trends over time)

Examples:– Failure rate (defect found per test hour) over Cumulative test

time– New Defects/Resolved defect per week over weeks

Statistical Sampling Inspection Defect Repair Reviews