Abstract
Discovering and documenting potential abnormal situations and irregular user behavior that can interrupt normal system interaction is of tremendous importance in the context of dependable systems development. Exceptions that are not identified during requirements elicitation might eventually lead to an incomplete system specification during analysis, and ultimately to an implementation that lacks certain functionality, or even behaves in an unreliable way. This paper presents a requirements engineering process, DREP, that systematically guides the developer to consider reliability and safety concerns of reactive systems. After the discovery of normal system behavior by means of use cases, the developer is lead to explore exceptional situations arising in the environment that change the context in which the system operates and service-related exceptional situations that threaten to fail user goals. The process requires the developer to specify means that detect such situations, and to define the recovery measures that attempt to put the system in a reliable and safe state. The process is iterative, and refinements are carried out, if necessary, to achieve desired quality levels. To conclude the requirements phase, an extended use case diagram summarizes the normal interactions, exceptions, handlers and their relationships. The proposed process is demonstrated with the 407 Express Toll Route System case study.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Goodenough, J.B.: Exception handling: Issues and a proposed notation. Communications of the ACM 18(12), 683–696 (1975)
de Lemos, R., Romanovsky, A.: Exception handling in the software lifecycle. IJCSSE 16(2), 167–181 (2001)
Shui, A., Mustafiz, S., Kienzle, J.: Exceptional use cases. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 568–583. Springer, Heidelberg (2005)
Shui, A., Mustafiz, S., Kienzle, J.: Exception-Aware Requirements Elicitation with Use Cases. In: Dony, C., Knudsen, J.L., Romanovsky, A., Tripathi, A.R. (eds.) Advanced Topics in Exception Handling Techniques. LNCS, vol. 4119, pp. 221–242. Springer, Heidelberg (2006)
Mustafiz, S., Sun, X., Kienzle, J., Vangheluwe, H.: Model-Driven Assessment of Use Cases for Dependable Systems. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 558–573. Springer, Heidelberg (2006)
Zia, M., Mustafiz, S., Vangheluwe, H., Kienzle, J.: A Modelling and Simulation Based Process for Dependable Systems Design. In: Software and Systems Modeling, pp. 437–451 (April 2007)
Larman, C.: Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process, 2nd edn. Prentice Hall, Englewood Cliffs (2002)
Laprie, J.C., Avizienis, A., Kopetz, H. (eds.): Dependability: Basic Concepts and Terminology. Springer, New York (1992)
Geffroy, J.C., Motet, G.: Design of Dependable Computing Systems. Kluwer Academic Publishers, Dordrecht (2002)
Avizienis, A., Laprie, J., Randell, B.: Fundamental concepts of dependability (2001)
Knudsen, J.L.: Better exception-handling in block-structured systems. IEEE Software 4(3), 40–49 (1987)
Dony, C.: Exception handling and object-oriented programming: Towards a synthesis. In: Meyrowitz, N. (ed.) 4th ECOOP 1990. ACM SIGPLAN Notices, vol. 25, pp. 322–330. ACM Press, New York (1990)
Cockburn, A.: Writing Effective Use Cases. Addison-Wesley, Reading (2000)
Mustafiz, S., Kienzle, J., Berlizev, A.: Addressing degraded service outcomes and exceptional modes of operation in behavioural models. In: Proceedings of the International Workshop on Software Engineering for Resilient Systems (SERENE 2008). ACM, New York (2008)
Sendall, S., Strohmeier, A.: UML-based fusion analysis. In: France, R.B., Rumpe, B. (eds.) UML 1999. LNCS, vol. 1723, pp. 278–291. Springer, Heidelberg (1999)
Mustafiz, S., Sun, X., Kienzle, J., Vangheluwe, H.: Model-driven assessment of use cases for dependable systems. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 558–573. Springer, Heidelberg (2006)
de Lara, J., Vangheluwe, H.: AToM3: A tool for multi-formalism and meta-modelling. In: Kutsche, R.-D., Weber, H. (eds.) FASE 2002. LNCS, vol. 2306, pp. 174–188. Springer, Heidelberg (2002)
Mustafiz, S., Sun, X., Kienzle, J., Vangheluwe, H.: Model-driven assessment of system dependability. In: Software and Systems Modeling (SoSym) (March 2007)
Shui, A., Mustafiz, S., Kienzle, J., Dony, C.: Exceptional use cases. In: Briand, L.C., Williams, C. (eds.) MoDELS 2005. LNCS, vol. 3713, pp. 568–583. Springer, Heidelberg (2005)
Mukerji, J., Miller, J.: Mda guide v1.0.1 (2003)
Jacobson, I., Rumbaugh, J., Booch, G.: The Unified Software Development Process. Object Technology Series. Addison–Wesley, Reading (1999)
Warmer, J., Kleppe, A.: The Object Constraint Language, 2nd edn. Object Technology Series. Addison–Wesley, Reading (2003)
Abrial, J.R.: The B Book - Assigning Programs to Meanings. Cambridge University Press, Cambridge (1996)
Mustafiz, S., Kienzle, J.: A survey of software development approaches addressing dependability. In: Guelfi, N., Reggio, G., Romanovsky, A. (eds.) FIDJI 2004. LNCS, vol. 3409, pp. 78–90. Springer, Heidelberg (2005)
Alexander, I.F.: Misuse cases: Use cases with hostile intent. IEEE Software 20(1), 58–66 (2003)
Sindre, G., Opdahl, A.L.: Eliciting security requirements with misuse cases. Requir. Eng. 10(1), 34–44 (2005)
Ebnenasir, A., Cheng, B.H.C., Konrad, S.: Use case-based modeling and analysis of failsafe fault-tolerance. In: RE, pp. 336–337. IEEE Computer Society, Los Alamitos (2006)
van Lamsweerde, A.: Goal-oriented requirements engineering: A guided tour. In: RE, p. 249. IEEE Computer Society, Los Alamitos (2001)
van Lamsweerde, A., Letier, E.: Handling obstacles in goal-oriented requirements engineering. IEEE Trans. Software Eng. 26(10), 978–1005 (2000)
Laibinis, L., Troubitsyna, E.: Fault tolerance in use-case modeling. In: Proceedings of RHAS 2005 (September 2005)
Rubira, C.M.F., de Lemos, R., Ferreira, G.R.M., Fliho, F.C.: Exception handling in the development of dependable component-based systems. Software – Practice & Experience 35(3), 195–236 (2004)
Whittle, J., Araújo, J.: Scenario modelling with aspects. IEE Proceedings - Software 151(4), 157–172 (2004)
Leveson, N.G.: SAFEWARE: System Safety and Computers. Addison-Wesley Publishing Company, Reading (1995)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this chapter
Cite this chapter
Mustafiz, S., Kienzle, J. (2009). DREP: A Requirements Engineering Process for Dependable Reactive Systems. In: Butler, M., Jones, C., Romanovsky, A., Troubitsyna, E. (eds) Methods, Models and Tools for Fault Tolerance. Lecture Notes in Computer Science, vol 5454. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-00867-2_11
Download citation
DOI: https://doi.org/10.1007/978-3-642-00867-2_11
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-00866-5
Online ISBN: 978-3-642-00867-2
eBook Packages: Computer ScienceComputer Science (R0)