Abstract
While the functional requirements of a system can be effectively modeled through the use case driven approach, there is no standard or de facto method for modeling non-functional requirements (NFR) of the system architecture. Often such requirements are dealt with in a reactive manner, rather than proactively. Yet increasingly a contributing factor in project difficulty and failure are the NFR imposed on the solution architecture. This paper outlines a control case approach to record and model NFR. This technique enables the control case to represent the NFR from different perspectives, most typically the various operating conditions. We also propose an extension to the “4 + 1” view model for depicting software architecture by adding the control case view. In addition, a detailed control case modeling example is illustrated to demonstrate how these techniques may be applied during development. Taken together, we suggest that the combination of both the use case and control case views thus reflects the complete requirements across the collective system life cycle views: design, process, implementation and deployment.
Similar content being viewed by others
References
Adolph S, Bramble P, Cockburn A, Pols A (2002) Patterns for effective use cases, 1st edn. Addison-Wesley, Boston
Alexander I (2002) Misuse cases help to elicit nonfunctional requirements. In: Proceedings of 8th international workshop on requirements engineering: Foundation for software quality (REFSQ’02), Essen, Germany
Armour F, Miller G (2001) Advanced use case modeling. Addison-Wesley, Boston
Brenner M (2006) Classifying ITIL processes: a taxonomy under tool support aspects. In: The first IEEE/IFIP international workshop on business-driven IT management (BDIM ‘06). Vancouver, Canada, pp 19–28
Booch G, Jacobson I, Rumbaugh J (1998) UML user guide, Addison-Wesley, Boston
Castroa J, Kolpb M, Mylopoulos J (2002) Towards requirements-driven information systems engineering: the Tropos project, vol 27. Elsevier Science, Information Systems, London, pp 365–389
Chung L, Mylopoulos J, Nixon B (1992) Representing and using non-functional requirements: a process-oriented approach. IEEE Trans Softw Eng 8(6):483–497
Chung L, Nixon BA, Yu E, Mylopoulos J (1999) Non-functional requirements in software engineering, Kluwer, Boston Hardbound
Clements PC, Northrup LM (1996) Software architecture: an executive overview, technical report no. CMU/SEI-96-TR-003, Carnegie Mellon University, Pittsburgh
Cockburn A (1998) Basic use case template, humans and technology. Technical report TR.96.03a
Davis AM, Leffingwell DA (1995) Using requirements management to speed delivery of higher quality applications, Technical report 0001, rational software
Dobson J (1991) A methodology for analysing human computer-related issues in secure systems. In: International conference on computer security and integrity in our changing world. Espoo, Finland, pp 151–170
Fowler M (2004) UML Distilled, 3rd edn. Addison-Wesley, Boston
ISO/IEC 20000-1 (2005) Information technology: service management. Part 1: Specification, ISO/IEC International Standard, Geneva, Switzerland
Jacobson I (1987) Object oriented development in an industrial environment, conference on object oriented programming systems and applications (OOPSLA ‘87): Orlando, FL, pp 183–191
Jacobson I (1992) Object-oriented software engineering: a use case driven approach, Addison-Wesley, Boston
Jacobson I (2004) Use cases: yesterday, today, and tomorrow. Softw Syst Model 3(3):210–220
Kotonya G, Sommerville I (1993) A framework for integrating functional and non-functional requirements. In: International workshop on systems engineering for real time applications, Cirencester UK, pp 148–153
Kruchten P (1995) Architectural blueprints: the ‘4 + 1’ view model of software architecture. IEEE Softw 12(6):42–50
Kruchten P (1999) The rational unified process: an introduction. Addison-Wesley, Boston
Laibinis L, Troubitsyna E (2005) Fault tolerance in use-case modeling. In: Proceedings 4th international workshop on requirements for high assurance systems (RHAS’05 ), Paris, France
Loucopoulos P, Karakostas V (1995) Systems requirements engineering. McGraw-Hill, UK
McDermott J, Fox C (1999) Using abuse case models for security requirements analysis. In: Proceedings of 15th annual computer security applications conference (ACSAC ‘99), Scottsdale USA, p 55
OMG (2002) UML profile for schedulability, performance and time, Object Management Group
Rumbaugh J, Jacobson I, Booch G (2005) The unified modelling language reference manual, 2nd edn. Addison-Wesley, Boston
Saleh K, Al-Zarouni A (2004) Capturing non-functional software requirements using the user requirements notation. The 2004 international research conference on innovations in information technology (IIT2004), Dubai, UAE
Schneider G, Winters JP (2001) Applying use cases: a practical guide, 2nd edn. Addison-Wesley, Boston
Sindre G, Opdahl A (2000) Eliciting security requirements by misuse cases. In: Proceedings of the 37th technology of object-oriented languages and systems (TOOLS–37 Pacific 2000). Sydney, Australia, pp 120–131
Smith CU, Williams LG (2001) Performance solutions: a practical guide to creating responsive, scalable software, 1st edn. Addison-Wesley, Boston
Stoneburner G, Goguen A, Feringa A (2002) Risk management guide for information technology systems, National Institute of Standards and Technology (NIST), U.S. Department of Commerce, Publication 800–300
Teeuw WB, Van den Berg H (1997) On the quality of conceptual models. In: Proceedings of 16th international conference on conceptual modeling (ER’97), Los Angeles, USA
Tran Q, Chung L (1999) Tool support for dealing with non-functional requirements. In: Proceedings of IEEE ASSET ‘99, Dallas, TX, pp 86–96
Warmer J, Kleppe A (1999) The object constraint language: precise modelling with UML. Addison-Wesley, Boston
Wieringa RJ (2003) Design methods for reactive systems: Yourdon, Statemate and the UML. Morgan Kaufmann, San Francisco
Xu L, Ziv H, Richardson D, Liu Z (2005) Towards modeling non-functional requirements in software architecture. In: Proceedings of Early Aspects 2005: Aspect-oriented requirements engineering and architecture design workshop, Chicago, IL, USA
Youngs R, Redmond-Pyle D, Spaas P, Kahan E (1999) A standard for architecture description. IBM Syst J 38(1):32–50
Zhou X, Tsai WT, Wei X, Chen Y, Xiao B (2006) Pi4SOA: A policy infrastructure for verification and control of service collaboration, IEEE international conference on e-business engineering (ICEBE ‘06), Shanghai, China, pp 307–314
Zou J, Pavlovski CJ (2006) Modeling architectural non functional requirements: from use case to control case. IEEE international conference on e-business engineering (ICEBE ‘06), Shanghai, China, pp 315–322
Acknowledgments
We would like to thank Wei-Tek Tsai for insightful discussion on applying control cases to alternative paradigms such as policy enforcement in SOA. His guidance on further work is greatly appreciated. We also thank Judy Barkal for helpful suggestions on acceptance criteria for the control case and thank the anonymous reviewers for their guidance on improvements to this paper.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Zou, J., Pavlovski, C.J. Control case approach to record and model non-functional requirements. ISeB 6, 49–67 (2008). https://doi.org/10.1007/s10257-007-0057-x
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10257-007-0057-x