A process maturity model for requirements engineering


Published on

Introduces the Sommerville-Sawyer model to assess requirements engineering maturity

Published in: Technology, Business
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

A process maturity model for requirements engineering

  1. 1. A Process Maturity Model for Requirements Engineering
  2. 2. Process Maturity Models <ul><li>A process maturity model is a framework that organisations can use to assess their processes against ‘best practice’ in industry </li></ul><ul><li>Processes are ranked on an ascending scale according to the practices used and the quality assurance procedures that are in place in the organisation </li></ul><ul><li>Models serve as a basis for process improvement through moving from one level to another in the model </li></ul><ul><li>The US DoD Software Capability Maturity Model is the best known maturity model but others (Bootstrap, Spice) have also been developed </li></ul>
  3. 3. The CMM for Software Requirements management 4 managed 2 repeatable 3 defined 1 initial 5 optimising
  4. 4. The CMM and Requirements Engineering <ul><li>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 </li></ul><ul><li>It is NOT therefore concerned with requirements engineering processes except for requirements management - controlling changes to the requirements after they have been agreed </li></ul><ul><li>The REAIMS project has identified a similar model for requirements engineering processes </li></ul>
  5. 5. The REAIMS process maturity model <ul><li>3 level model. </li></ul><ul><li>No direct correspondence with CMM levels 4 and 5. </li></ul>1 initial 2 repeatable 3 defined
  6. 6. Principles of the REAIMS model <ul><li>There are known good practices in requirements engineering </li></ul><ul><li>Use of these good practices lead to fewer RE process problems, better system requirements and therefore better software systems </li></ul><ul><li>Because of the variability in RE processes, the model should not be prescriptive about the actual practices used in an organisation </li></ul><ul><li>The model should provide a framework for process assessment and incremental RE process improvement through the introduction of these good practices </li></ul>
  7. 7. Good RE practices <ul><li>Basic : Fundamental measures needed for a repeatable process </li></ul><ul><li>Intermediate : Help make process more systematic, sometimes complex to implement </li></ul><ul><li>Advanced : Require specialist expertise, support on-going improvement </li></ul><ul><li>Not all practices are appropriate to all organisations </li></ul><ul><li>Implementation of Intermediate and Advanced practices is only likely to be successful if there is a foundation of basic good practice in place </li></ul>
  8. 8. The REAIMS process maturity model <ul><li>Level 1 - Initial level. </li></ul><ul><ul><li>Limited use of the best industrial practices. </li></ul></ul><ul><li>Most organisational RE processes operate at this level </li></ul><ul><li>Typically: </li></ul><ul><ul><li>Ad hoc processes </li></ul></ul><ul><ul><li>Costs are hard to estimate and control </li></ul></ul><ul><ul><li>Unsupported by planning and review procedures or documentation standards </li></ul></ul><ul><ul><li>Depend on “heroics”. Success depends on individuals rather than the organisation </li></ul></ul>
  9. 9. The REAIMS process maturity model <ul><li>Level 2 - Repeatable level. </li></ul><ul><ul><li>Extensive use of basic good practices and limited use of intermediate and advanced practices. </li></ul></ul><ul><li>Typically: </li></ul><ul><ul><li>Defined standards for documents </li></ul></ul><ul><ul><li>Policies and procedures for requirements management </li></ul></ul><ul><ul><li>Possible use of structured methods </li></ul></ul><ul><ul><li>ISO 9000 certification if appropriate </li></ul></ul>
  10. 10. The REAIMS process maturity model <ul><li>Level 3 - Defined level </li></ul><ul><ul><li>Extensive use of basic and intermediate practices. Some use of appropriate advanced practices </li></ul></ul><ul><li>Few organisations appear to be operating at this level. However, it is probably only appropriate for developers of critical systems. </li></ul><ul><li>Typically: </li></ul><ul><ul><li>Integrated requirements and systems engineering </li></ul></ul><ul><ul><li>Active process improvement programme </li></ul></ul><ul><ul><li>Able to accurately evaluate new practices </li></ul></ul>
  11. 11. Maturity levels & practice classifications <ul><li>No rigid correspondence between maturity level and practice classes </li></ul><ul><ul><li>It is not necessary to have implemented all 36 basic practices to be a repeatable process </li></ul></ul><ul><li>Similarly... </li></ul><ul><li>No rigid correspondence between maturity level activities/products </li></ul><ul><ul><li>e.g.: requirements elicitation should be addressed to help achieve a repeatable process but not to the exclusion of other areas. </li></ul></ul>
  12. 12. Maturity assessment <ul><li>Goals of maturity assessment: </li></ul><ul><ul><li>Identify the approximate maturity level </li></ul></ul><ul><ul><ul><li>A management requirement. </li></ul></ul></ul><ul><ul><li>Identify particular areas of weakness </li></ul></ul><ul><ul><ul><li>Needed for effective targeting of resources </li></ul></ul></ul><ul><li>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 </li></ul><ul><li>We have developed a simple checklist-based assessment process based around good practice usage </li></ul>
  13. 13. Maturity assessment Resolve areas of uncertainty Calculate maturity Score process against checklist Prune guideline checklist Select people to interview
  14. 14. Prune guideline checklist <ul><li>We have developed a check-list with 36 basic good practices, 21 intermediate practices and 9 advanced practices </li></ul><ul><li>Eliminate those practices that are obviously never used </li></ul><ul><ul><li>Some of the practices recommended are domain specific (e.g. are focussed on critical systems) </li></ul></ul><ul><ul><li>Some practices are very advanced and only used in a small number of organisations (e.g. formal specification) </li></ul></ul><ul><li>Managers can very quickly identify practices that they are sure are never used in their organisation </li></ul>
  15. 15. Select people to interview <ul><li>Need to identify key people to talk to </li></ul><ul><ul><li>Practitioners </li></ul></ul><ul><ul><ul><li>what happens on the ground, level of usage, practical difficulties, etc. </li></ul></ul></ul><ul><ul><li>Managers </li></ul></ul><ul><ul><ul><li>what is supposed to happen, level of organisational commitment, etc. </li></ul></ul></ul><ul><li>Choose people from different projects/groups/departments </li></ul><ul><ul><li>Only a small number of organisations have actually standardised the techniques that they use </li></ul></ul><ul><li>Your goal is to discover the reality not what the situation is supposed to be </li></ul>
  16. 16. Score practices against checklist <ul><li>Your goal is to discover whether or not good practices are used in the organisation </li></ul><ul><li>Practices are roughly scored according to whether they are: </li></ul><ul><ul><li>Standardised - defined organisational standards have been agreed. </li></ul></ul><ul><ul><li>In normal use - used by virtually all teams but often in different ways </li></ul></ul><ul><ul><li>Used at peoples’ discretion - some teams have chosen to adopt particular practices </li></ul></ul><ul><ul><li>Never used </li></ul></ul>
  17. 17. Resolve areas of uncertainty <ul><li>The previous assessment activity will usually reveal patchy use across (e.g.) projects </li></ul><ul><li>Need to evaluate representative level of usage and their consequences for the organisation </li></ul><ul><li>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 </li></ul><ul><li>Typically, this is likely to be most time-consuming part of the assessment </li></ul>
  18. 18. Calculate process maturity <ul><li>Score 3 for standardised practice, 2 for normal practice, 1 for occasional practice and 0 for unused practice </li></ul><ul><li>Initial </li></ul><ul><ul><li>< 55 in basic practices. </li></ul></ul><ul><li>Repeatable </li></ul><ul><ul><li>>= 55 in basic practices and normally </li></ul></ul><ul><ul><li>< 40 in others </li></ul></ul><ul><li>Defined </li></ul><ul><ul><li>> 85 in basic practices and </li></ul></ul><ul><ul><li>>= 40 in others </li></ul></ul>
  19. 19. Interpreting the result <ul><li>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 </li></ul><ul><li>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 </li></ul><ul><li>Of course, the numeric result should be considered in the light of what is known about the domain and the organisation. </li></ul>
  20. 20. Benefits of assessment <ul><li>Understanding what you actually do is an essential pre-requisite for improving your practice </li></ul><ul><li>You may discover excellent practices and commonalities between projects and teams that were not previously apparent </li></ul><ul><li>You expose engineers to new ideas and provide a basis for change </li></ul><ul><li>It demonstrates an external and internal commitment to improving quality </li></ul>
  21. 21. Summary <ul><li>A process maturity model is a framework for assessing your existing processes and putting in place a programme of process improvement </li></ul><ul><li>The REAIMS requirements engineering maturity model has three levels based on the use of good RE practices </li></ul><ul><ul><li>Initial - limited use </li></ul></ul><ul><ul><li>Intermediate - extensive use of basic good practice </li></ul></ul><ul><ul><li>Advanced - use of advanced techniques </li></ul></ul><ul><li>A simple checklist-based process can be used to assess the maturity of an organisation’s RE processes </li></ul>