a process maturity model for requirements engineering

21
© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 1 A Process Maturity A Process Maturity Model for Requirements Model for Requirements Engineering Engineering

Upload: ian-sommerville

Post on 13-Jan-2015

2.358 views

Category:

Technology


4 download

DESCRIPTION

Introduces the Sommerville-Sawyer model to assess requirements engineering maturity

TRANSCRIPT

Page 1: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 1

A Process Maturity Model for A Process Maturity Model for Requirements EngineeringRequirements Engineering

Page 2: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 2

Process Maturity ModelsProcess Maturity Models

A process maturity model is a framework that organisations can use to assess their processes against ‘best practice’ in industry

Processes are ranked on an ascending scale according to the practices used and the quality assurance procedures that are in place in the organisation

Models serve as a basis for process improvement through moving from one level to another in the model

The US DoD Software Capability Maturity Model is the best known maturity model but others (Bootstrap, Spice) have also been developed

Page 3: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 3

The CMM for SoftwareThe CMM for SoftwareThe CMM for SoftwareThe CMM for Software

Requirementsmanagement

Requirementsmanagement 4 managed4 managed

2 repeatable2 repeatable

3 defined3 defined

1 initial1 initial

5 optimising5 optimising

Page 4: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 4

The CMM and Requirements EngineeringThe CMM and Requirements Engineering

The Capability Maturity Model has been designed for military system development where the requirements are the input to the software development process and are developed as part of the system procurement process

It is NOT therefore concerned with requirements engineering processes except for requirements management - controlling changes to the requirements after they have been agreed

The REAIMS project has identified a similar model for requirements engineering processes

Page 5: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 5

The REAIMS process maturity modelThe REAIMS process maturity modelThe REAIMS process maturity modelThe REAIMS process maturity model

3 level model. No direct correspondence

with CMM levels 4 and 5.

1 initial1 initial

2 repeatable2 repeatable

3 defined3 defined

Page 6: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 6

Principles of the REAIMS modelPrinciples of the REAIMS model

There are known good practices in requirements engineering

Use of these good practices lead to fewer RE process problems, better system requirements and therefore better software systems

Because of the variability in RE processes, the model should not be prescriptive about the actual practices used in an organisation

The model should provide a framework for process assessment and incremental RE process improvement through the introduction of these good practices

Page 7: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 7

Good RE practicesGood RE practices

Basic: Fundamental measures needed for a repeatable process

Intermediate: Help make process more systematic, sometimes complex to implement

Advanced: Require specialist expertise, support on-going improvement

Not all practices are appropriate to all organisations Implementation of Intermediate and Advanced practices

is only likely to be successful if there is a foundation of basic good practice in place

Page 8: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 8

The REAIMS process maturity modelThe REAIMS process maturity model

Level 1 - Initial level. • Limited use of the best industrial practices.

Most organisational RE processes operate at this level Typically:

• Ad hoc processes

• Costs are hard to estimate and control

• Unsupported by planning and review procedures or documentation standards

• Depend on “heroics”. Success depends on individuals rather than the organisation

Page 9: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 9

The REAIMS process maturity modelThe REAIMS process maturity modelThe REAIMS process maturity modelThe REAIMS process maturity model

Level 2 - Repeatable level. • Extensive use of basic good practices and limited use of

intermediate and advanced practices.

Typically:• Defined standards for documents

• Policies and procedures for requirements management

• Possible use of structured methods

• ISO 9000 certification if appropriate

Page 10: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 10

The REAIMS process maturity modelThe REAIMS process maturity modelThe REAIMS process maturity modelThe REAIMS process maturity model

Level 3 - Defined level• Extensive use of basic and intermediate practices. Some use of

appropriate advanced practices

Few organisations appear to be operating at this level. However, it is probably only appropriate for developers of critical systems.

Typically:• Integrated requirements and systems engineering

• Active process improvement programme

• Able to accurately evaluate new practices

Page 11: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 11

Maturity levels & practice classificationsMaturity levels & practice classificationsMaturity levels & practice classificationsMaturity levels & practice classifications

No rigid correspondence between maturity level and practice classes• It is not necessary to have implemented all 36 basic practices to

be a repeatable process

Similarly... No rigid correspondence between maturity level

activities/products• e.g.: requirements elicitation should be addressed to help

achieve a repeatable process but not to the exclusion of other areas.

Page 12: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 12

Maturity assessmentMaturity assessmentMaturity assessmentMaturity assessment

Goals of maturity assessment:• Identify the approximate maturity level

» A management requirement.

• Identify particular areas of weakness» Needed for effective targeting of resources

We felt that the assessment process used in the CMM was too complex and expensive. Therefore, a requirement for the maturity assessment process was that it should be fairly easy to use

We have developed a simple checklist-based assessment process based around good practice usage

Page 13: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 13

Maturity assessmentMaturity assessmentMaturity assessmentMaturity assessment

Resolve areasof uncertainty

Resolve areasof uncertainty

Calculate maturity

Calculate maturity

Score processagainst checklist

Score processagainst checklist

Prune guidelinechecklist

Prune guidelinechecklist

Select peopleto interview

Select peopleto interview

Page 14: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 14

Prune guideline checklistPrune guideline checklist

We have developed a check-list with 36 basic good practices, 21 intermediate practices and 9 advanced practices

Eliminate those practices that are obviously never used• Some of the practices recommended are domain specific (e.g.

are focussed on critical systems)

• Some practices are very advanced and only used in a small number of organisations (e.g. formal specification)

Managers can very quickly identify practices that they are sure are never used in their organisation

Page 15: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 15

Select people to interviewSelect people to interview

Need to identify key people to talk to• Practitioners

» what happens on the ground, level of usage, practical difficulties, etc.

• Managers» what is supposed to happen, level of organisational commitment, etc.

Choose people from different projects/groups/departments• Only a small number of organisations have actually standardised the

techniques that they use

Your goal is to discover the reality not what the situation is supposed to be

Page 16: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 16

Score practices against checklistScore practices against checklist

Your goal is to discover whether or not good practices are used in the organisation

Practices are roughly scored according to whether they are:• Standardised - defined organisational standards have been

agreed.

• In normal use - used by virtually all teams but often in different ways

• Used at peoples’ discretion - some teams have chosen to adopt particular practices

• Never used

Page 17: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 17

Resolve areas of uncertaintyResolve areas of uncertainty

The previous assessment activity will usually reveal patchy use across (e.g.) projects

Need to evaluate representative level of usage and their consequences for the organisation

This is an opportunity to find out what you do well and what you could do better. You may be surprised at the skills in your organisation

Typically, this is likely to be most time-consuming part of the assessment

Page 18: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 18

Calculate process maturityCalculate process maturity

Score 3 for standardised practice, 2 for normal practice, 1 for occasional practice and 0 for unused practice

Initial• < 55 in basic practices.

Repeatable• >= 55 in basic practices and normally

• < 40 in others

Defined• > 85 in basic practices and

• >= 40 in others

Page 19: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 19

Interpreting the resultInterpreting the resultInterpreting the resultInterpreting the result

As it is practically impossible to draw clear divisions between the levels, we believe that the assessment used is accurate enough as a basis for process improvement

Other, more accurate but more costly assessment schemes could be devised. But (unlike the CMM) the classification is simply an internal guide and not used by external organisations

Of course, the numeric result should be considered in the light of what is known about the domain and the organisation.

Page 20: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 20

Benefits of assessmentBenefits of assessment

Understanding what you actually do is an essential pre-requisite for improving your practice

You may discover excellent practices and commonalities between projects and teams that were not previously apparent

You expose engineers to new ideas and provide a basis for change

It demonstrates an external and internal commitment to improving quality

Page 21: A process maturity model for requirements engineering

© I. Sommerville 2000 Requirements Engineering SI-SE 2000 Slide 21

SummarySummary

A process maturity model is a framework for assessing your existing processes and putting in place a programme of process improvement

The REAIMS requirements engineering maturity model has three levels based on the use of good RE practices• Initial - limited use

• Intermediate - extensive use of basic good practice

• Advanced - use of advanced techniques

A simple checklist-based process can be used to assess the maturity of an organisation’s RE processes