Skip to main content

Product-Line Models to Address Requirements Uncertainty, Volatility and Risk

  • Chapter
  • First Online:
Book cover Relating Software Requirements and Architectures

Abstract

Requirements uncertainty refers to changes that occur to requirements during the development of software. In complex projects, this leads to task uncertainty, with engineers either under- or over-engineering the design. We present a proposed commitment uncertainty approach in which linguistic and domain-specific indicators are used to prompt for the documentation of perceived uncertainty. We provide structure and advice on the development process so that engineers have a clear concept of progress that can be made at reduced technical risk. Our contribution is in the evaluation of a proposed technique of this form in the engine control domain, showing that the technique is able to suggest design approaches and that the suggested flexibility does accommodate subsequent changes to the requirements. The aim is not to replace the process of creating a suitable architecture, but instead to provide a framework that emphasises constructive design action.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Stokes DA (1990) Requirements analysis. In: McDermid J (ed) Software engineer’s reference book. Butterworth-Heinemann, Oxford

    Google Scholar 

  2. Schmid K, Gacek C (2000) Implementation issues in product line scoping. In: Frakes WB (ed) ICSR6: software reuse: advances in software reusability. Proceedings of the 6th international conference on software reusability. (Lecture notes in computer science), vol 1844. Springer, Heidelberg, pp 170–189

    Google Scholar 

  3. Bosch J (2000) Design and use of software architectures. Addison-Wesley, Reading

    Google Scholar 

  4. Weiss D, Ardiss M (1997) Defining families: the commonality analysis. In: ICSE’97: proceedings of the 19th international conference on software engineering, Boston, May 1997. ACM Press, New York

    Google Scholar 

  5. Kang K, Cohen S, Hess J et al (1990) Feature-Oriented Domain Analysis (FODA) feasibility study. Technical Report CMU/SEI-90-TR-21, Carnegie-Mellon University Software Engineering Institute

    Google Scholar 

  6. Czarnecki K, Kim CH P, Kalleberg KT (2006) Feature models are views on ontologies. In: SPLC2006: proceedings of the 10th international conference on software product lines. Baltimore, Maryland, USA. IEEE Computer Society Press, Los Alamitos, California, USA

    Google Scholar 

  7. Czarnecki K, Helsen S, Eisenecker U (2004) Staged configuration using feature models. In: Nord R L (ed) SPLC 2004: proceedings of the 9th international conference on software product lines, Boston. (Lecture notes in computer science), vol 3154. Springer, Heidelberg

    Google Scholar 

  8. Bontemps Y, Heymans P, Schobbens PY et al (2004) Semantics of FODA feature diagrams. In: Proceedings of the international workshop on software variability management for product derivation

    Google Scholar 

  9. Weiss DM, Lai CTR (1999) Software product-line engineering: a family-based development process. Addison-Wesley, Reading

    Google Scholar 

  10. Czarnecki K, Eisenecker C (2000) Generative programming. Addison-Wesley, Massachusetts

    MATH  Google Scholar 

  11. Kruchten P (2004) A taxonomy of architectural design decisions in software-intensive systems. In: Proceedings of the second Groningen workshop on software variability management

    Google Scholar 

  12. Parnas DL (1979) Designing software for ease of extension and contraction. IEEE Trans Software Eng 5(2):128–138

    Article  Google Scholar 

  13. Ebert C, de Man J (2005) Requirements uncertainty: influencing factors and concrete improvements. In: ICSE’05: proceedings of the 27th international conference on software engineering, St Louis, Missouri, USA. ACM Press, New York

    Google Scholar 

  14. Saarinen T, Vepsäläinen (1993) Managing the risks of information systems implementation. Eur J Inform Syst 2(4):283–295

    Article  Google Scholar 

  15. Aldaijy AY (2004) An empirical assessment of the impact of requirements uncertainty on development quality performance. In: Command and control research and technology symposium

    Google Scholar 

  16. Berry DM, Kamsties E, Krieger MM (2003) From contract drafting to software specification: linguistic sources of ambiguity. Technical Report, University of Waterloo, Canada

    Google Scholar 

  17. Kamsties E, Paech B (2000) Taming ambiguity in natural language requirements. In: Proceedings of the international conference on system and software engineering and their applications

    Google Scholar 

  18. Gervasi V, Nuseibeh B (2002) Lightweight validation of natural language requirements: a case study. Softw Pract Exper 32(3):113–133

    Article  Google Scholar 

  19. Chantree F, Nuseibeh B, de Roeck A et al (2006) Identifying nocuous ambiguities in natural language requirements. IEEE Computer Society Press, Los Alamitos

    Chapter  Google Scholar 

  20. Maynard-Zhang P, Kiper JD, Feather MS (2005) Modeling uncertainty in requirements engineering decision support. In: REDECS’05: proceedings of the workshop on requirements engineering decision support of the 13th IEEE international requirements engineering conference

    Google Scholar 

  21. Nuseibeh B, Easterbrook S, Russo A (2001) Making inconsistency respectable in software development. J Syst Softw 58(20):171–180

    Article  Google Scholar 

  22. Moynihan T (2000) Coping with ‘requirements-uncertainty’: the theories-of-action of experiences IS/software project managers. J Syst Softw 53(2):99–109

    Article  Google Scholar 

  23. Bush D, Finkelstein A (2003) Requirements stability assessment using scenarios. In: RE2003: proceedings of the 11th IEEE international conference on requirements engineering

    Google Scholar 

  24. Stephenson Z (2005) Uncertainty analysis guidebook. Technical Report YCS-2005-387, University of York, Department of Computer Science

    Google Scholar 

  25. Thimbleby H (1988) Delaying Commitment. IEEE Softw 5(3):78–86

    Article  Google Scholar 

  26. Poppendieck M, Poppendieck T (2003) Lean software development: an agile toolkit. Addison-Wesley, Reading

    Google Scholar 

  27. van der Linden F, Bosch J, Kansties E, Känsälä K, Obbink H (2004) Software product family evaluation. In: Nord R L (ed) SPLC 2004: proceedings of the 9th international conference on software product lines, Boston. (Lecture notes in computer science), vol 3154. Springer, Heidelberg

    Google Scholar 

  28. Stephenson Z (2002) Change management in families of safety-critical embedded systems. PhD Thesis YCST-2003-03, Department of Computer Science, University of York

    Google Scholar 

  29. van der Ven JS, Jansen AJG, Nijhuis JAG, Bosch J (2006) Design decisions: the bridge between rationale and architecture. In: Dutoit A H, McCall R, Mistrik I, Paech B (eds) Rationale management in software engineering

    Google Scholar 

  30. Gonzalez-Perez C, Henderson-Sellers B (2008) Metamodelling for software engineering. Wiley, Hoboken

    Google Scholar 

Download references

Acknowledgment

The research presented in this chapter was conducted at the Rolls-Royce University Technology Centre in Systems and Software Engineering, based at the University of York Department of Computer Science. We are grateful to Rolls-Royce plc. for supporting this research.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Zoë Stephenson .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Stephenson, Z., Attwood, K., McDermid, J. (2011). Product-Line Models to Address Requirements Uncertainty, Volatility and Risk. In: Avgeriou, P., Grundy, J., Hall, J.G., Lago, P., Mistrík, I. (eds) Relating Software Requirements and Architectures. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-21001-3_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-21001-3_8

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-21000-6

  • Online ISBN: 978-3-642-21001-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics