Requirements-driven design of autonomic application software

Autonomic computing systems reduce software maintenance costs and management complexity by taking on the responsibility for their configuration, optimization, healing, and protection. These tasks are accomplished by switching at runtime to a different system behaviour - the one that is more efficient, more secure, more stable, etc. - while still fulfilling the main purpose of the system. Thus, identifying the objectives of the system, analyzing alternative ways of how these objectives can be met, and designing a system that supports all or some of these alternative behaviours is a promising way to develop autonomic systems. This paper proposes the use of requirements goal models as a foundation for such software development process and demonstrates this on an example.

[1]  Alexei Lapouchnian,et al.  Modeling Mental States in Agent-Oriented Requirements Engineering , 2006, CAiSE.

[2]  Matthias Klusch,et al.  Dynamic service matchmaking among agents in open information environments , 1999, SGMD.

[3]  Eric S. K. Yu,et al.  Modeling organizations for information systems requirements engineering , 1993, [1993] Proceedings of the IEEE International Symposium on Requirements Engineering.

[4]  Yijun Yu,et al.  On Goal-based Variability Acquisition and Analysis , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[5]  LuJianguo,et al.  Dynamic service matchmaking among agents in open information environments , 1999 .

[6]  John Mylopoulos,et al.  Representing and Using Nonfunctional Requirements: A Process-Oriented Approach , 1992, IEEE Trans. Software Eng..

[7]  John Mylopoulos,et al.  Simple and Minimum-Cost Satisfiability for Goal Models , 2004, CAiSE.

[8]  Richard Murch,et al.  Autonomic Computing , 2004 .

[9]  John Mylopoulos,et al.  Requirements-driven configuration of software systems , 2005 .

[10]  Yijun Yu,et al.  From Stakeholder Goals to High-Variability Software Design , 2005 .

[11]  Axel van Lamsweerde,et al.  Requirements engineering in the year 00: a research perspective , 2000, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[12]  Thomas Bäck,et al.  An Overview of Evolutionary Computation , 1993, ECML.

[13]  M.S. Feather,et al.  Reconciling system requirements and runtime behavior , 1998, Proceedings Ninth International Workshop on Software Specification and Design.

[14]  Kyo Chul Kang,et al.  Feature-Oriented Domain Analysis (FODA) Feasibility Study , 1990 .

[15]  Jeffrey O. Kephart,et al.  The Vision of Autonomic Computing , 2003, Computer.

[16]  Stephen Fickas,et al.  Goal-Directed Requirements Acquisition , 1993, Sci. Comput. Program..

[17]  Yijun Yu,et al.  Configuring common personal software: a requirements-driven approach , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[18]  Yijun Yu,et al.  Towards requirements-driven autonomic systems design , 2005, ACM SIGSOFT Softw. Eng. Notes.

[19]  Yijun Yu,et al.  RETR: Reverse Engineering to Requirements , 2005, 12th Working Conference on Reverse Engineering (WCRE'05).

[20]  John Mylopoulos,et al.  Reasoning with Goal Models , 2002, ER.

[21]  John Mylopoulos,et al.  Requirements analysis for customizable software: a goals-skills-preferences framework , 2003, Proceedings. 11th IEEE International Requirements Engineering Conference, 2003..