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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Stokes DA (1990) Requirements analysis. In: McDermid J (ed) Software engineer’s reference book. Butterworth-Heinemann, Oxford
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
Bosch J (2000) Design and use of software architectures. Addison-Wesley, Reading
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
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
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
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
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
Weiss DM, Lai CTR (1999) Software product-line engineering: a family-based development process. Addison-Wesley, Reading
Czarnecki K, Eisenecker C (2000) Generative programming. Addison-Wesley, Massachusetts
Kruchten P (2004) A taxonomy of architectural design decisions in software-intensive systems. In: Proceedings of the second Groningen workshop on software variability management
Parnas DL (1979) Designing software for ease of extension and contraction. IEEE Trans Software Eng 5(2):128–138
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
Saarinen T, Vepsäläinen (1993) Managing the risks of information systems implementation. Eur J Inform Syst 2(4):283–295
Aldaijy AY (2004) An empirical assessment of the impact of requirements uncertainty on development quality performance. In: Command and control research and technology symposium
Berry DM, Kamsties E, Krieger MM (2003) From contract drafting to software specification: linguistic sources of ambiguity. Technical Report, University of Waterloo, Canada
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
Gervasi V, Nuseibeh B (2002) Lightweight validation of natural language requirements: a case study. Softw Pract Exper 32(3):113–133
Chantree F, Nuseibeh B, de Roeck A et al (2006) Identifying nocuous ambiguities in natural language requirements. IEEE Computer Society Press, Los Alamitos
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
Nuseibeh B, Easterbrook S, Russo A (2001) Making inconsistency respectable in software development. J Syst Softw 58(20):171–180
Moynihan T (2000) Coping with ‘requirements-uncertainty’: the theories-of-action of experiences IS/software project managers. J Syst Softw 53(2):99–109
Bush D, Finkelstein A (2003) Requirements stability assessment using scenarios. In: RE2003: proceedings of the 11th IEEE international conference on requirements engineering
Stephenson Z (2005) Uncertainty analysis guidebook. Technical Report YCS-2005-387, University of York, Department of Computer Science
Thimbleby H (1988) Delaying Commitment. IEEE Softw 5(3):78–86
Poppendieck M, Poppendieck T (2003) Lean software development: an agile toolkit. Addison-Wesley, Reading
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
Stephenson Z (2002) Change management in families of safety-critical embedded systems. PhD Thesis YCST-2003-03, Department of Computer Science, University of York
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
Gonzalez-Perez C, Henderson-Sellers B (2008) Metamodelling for software engineering. Wiley, Hoboken
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
Corresponding author
Editor information
Editors and Affiliations
Rights 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)