cif301 project quality unit 6

25
University of Sunderland CIF301 Unit 6 CIF301 CIF301 Project Quality Project Quality Unit 6 Unit 6

Upload: hedia

Post on 23-Jan-2016

37 views

Category:

Documents


0 download

DESCRIPTION

CIF301 Project Quality Unit 6. Project Quality. Introduction “Quality” is generally agreed to be a good thing Often the use of procedures that will help ensure a systems quality will be lacking Quality systems must be defined Metrics should be used to check quality systems. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

CIF301CIF301

Project Quality Project Quality

Unit 6Unit 6

Page 2: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

Project QualityProject Quality

• Introduction– “Quality” is generally agreed to be a good thing– Often the use of procedures that will help ensure

a systems quality will be lacking– Quality systems must be defined– Metrics should be used to check quality systems

Page 3: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

The importance of The importance of software qualitysoftware quality

• Increasing criticality of software

• The intangibility of software

• Accumulating errors during software development

Page 4: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

Defining software Defining software qualityquality

• Should be three specification for software quality– a functional specification describing what the

system does– a quality specification concerned with how the

system operates– a resources specification concerned with how

much will be spent on the system

Page 5: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

ISO 9126ISO 9126

• Published in 1991

• Provides a definition for software quality

• Is seen as the base on which more detailed standards can be built

Page 6: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

ISO 9126ISO 9126

• ISO 9126 defines six software quality characteristics– Functionality

• which covers the functions that a software product provides to satisfy a user needs

– Reliability• which relates to the capability of the software to

maintain its level of performance

Page 7: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

ISO 9126ISO 9126

– Usability• which relates to the effort needed to use the software

– Efficiency• which relates to the physical resources used when the

software is executed

– Maintainability• which relates to the effort needed to make changes to

the software

– Portability• which relates to the ability of the software to be

transferred to a different environment

Page 8: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

Software quality Software quality measuresmeasures

• Reliability– Could measure

• availability• mean time between failures• failure at time of operation• number of faults dealt with

Page 9: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

Software quality Software quality measuresmeasures

• Maintainability– Closely related flexibility

• Extendibility– Ease with which new features can be added to

the software

Page 10: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

Product versus process Product versus process quality managementquality management

• What is the difference?

• Why is this important?

• Often one or the other is looked at

• Both should always be considered

Page 11: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

BS EN ISO 9001BS EN ISO 9001

• This is the standard for quality management systems

• Current standard BS EN ISO 9001:2000

• This is a family of standards.

• 2000 series superseded 1994 series

• Standard grew out of DEF STAN 05-21 and BS5750

• There are other related quality standards

Page 12: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

BS EN ISO 9001BS EN ISO 9001

• BS EN ISO 9000 is a group of standards:– 9000, fundamentals and vocabulary

9001, Quality Management Systems requirements

– 9004, guidelines for performance improvement

• 9001 is the standard that applicants are assessed against.

• It is a general standard that can be applied to any business or organisation

Page 13: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

TickITTickIT

• The BS EN ISO 9000 series of standards refers to quality management systems in general

• In the UK, the Department of Trade and Industry (DTI) have formulated the TickIT standards.

• The TickIT standards give an interpretation of the BS EN ISO 9001 standard as it specifically applies to software development.

Page 14: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

TickITTickIT

• The main requirements of Tick IT are:– A detailed development plan is required before

development is embarked upon.– Change control procedures should be used at all

stages of development– Design reviews must take place– The suitability of the design methodology must

be reviewed

Page 15: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

TickITTickIT

• main requirements of Tick IT (cont.)– Progress must be reviewed on a systematic

basis– It must be possible to trace back the features of

software design to specifications and requirements

– Designs must be properly documented

Page 16: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

TickITTickIT

• main requirements of Tick IT (cont.)– Suitable test plans, specifications and records

must be produced– A code of practice must be in place that governs

the way the software is developed

Page 17: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

TickITTickIT

• The code of practice must include the following:– The design must be broken down into levels,

each with identifiable inputs and outputs.– Software must be organised into modules.– A module must normally perform a single

function or a set of related functions.– A plain language description must exist for each

module.

Page 18: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

TickITTickIT

• A TickIT auditor will certify that a particular organisation conforms to the standard

• The process is referred to as certification

• The TickIT scheme is now administered by a division of the British Standards Institute on behalf of the DTI

Page 19: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

Capability Maturity Capability Maturity ModelModel

• Developed in US by The Software Engineering Institute, Carnegie Mellon University.

• The Capability Maturity Model attempts to place an organisation producing software at one of five levels.

Page 20: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

Capability Maturity Capability Maturity ModelModel

• Level 1: Initial

• Level 2: Repeatable

• Level 3: Defined

• Level 4: Managed

• Level 5: Optimizing

Page 21: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

Capability Maturity Capability Maturity ModelModel

• Level 1: Initial– The procedures followed tend to be haphazard.– Some projects will be successful, but this tends

to be because of the skills of particular individuals including project managers.

– There is no level 0 and so any organization would be at this level by default.

Page 22: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

Capability Maturity Capability Maturity ModelModel

• Level 2: Repeatable– Organizations at this level will have basic project

management procedures in place.– The way an individual task is carried out will

depend largely on the person doing it

• Level 3: Defined– The organization has defined the way in which

each task in the software development cycle is to be done.

Page 23: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

Capability Maturity Capability Maturity ModelModel

• Level 4: Managed– The products and processes involved in software

development are subject to measurement and control.

• Level 5: Optimizing– Improvement in procedures are designed and

implemented using the data gathered from the measurement process

Page 24: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

Ways to help enhance Ways to help enhance software qualitysoftware quality

• Increasing visibility– checking each others code– proposed by Weinberg in 1971in what he termed

“egoless programming”

• Procedural Structure

• Checking intermediate stages

Page 25: CIF301  Project Quality Unit 6

University of Sunderland CIF301 Unit 6

ConclusionConclusion

• IT Project Quality– Quality definitions– ISO 9126 – BS EN ISO 9001– TickIT– The capability maturity model– Enhancing software quality