From Goals to High-Variability Software Design

Software requirements consist of functionalities and qualities to be accommodated during design. Through goal-oriented requirements engineering, stakeholder goals are refined into a space of alternative functionalities. We adopt this framework and propose a decision-making process to generate a generic software design that can accommodate the full space of alternatives each of which can fulfill stakeholder goals. Specifically, we present a process for generating complementary design views from a goal model with high variability in configurations, behavioral specifications, architectures and business processes.

[1]  Donald E. Knuth,et al.  Literate Programming , 1984, Comput. J..

[2]  Jane Huffman Hayes,et al.  Advancing candidate link generation for requirements tracing: the study of methods , 2006, IEEE Transactions on Software Engineering.

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

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

[5]  Amnon Naamad,et al.  The STATEMATE semantics of statecharts , 1996, TSEM.

[6]  Philippe Krutchen,et al.  Architectural blueprints--the '4+1' view model of software architecture , 1995 .

[7]  Krzysztof Czarnecki,et al.  Generative programming - methods, tools and applications , 2000 .

[8]  Yijun Yu,et al.  An automated approach to monitoring and diagnosing requirements , 2007, ASE.

[9]  John Mylopoulos,et al.  Non-Functional Requirements in Software Engineering , 2000, International Series in Software Engineering.

[10]  Jeff Magee,et al.  Dynamic structure in software architectures , 1996, SIGSOFT '96.

[11]  Axel van Lamsweerde,et al.  From System Goals to Software Architecture , 2003, SFM.

[12]  Yijun Yu,et al.  Reverse engineering goal models from legacy code , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[13]  Klaus Pohl,et al.  Communicating the variability of a software-product family to customers , 2003, Software and Systems Modeling.

[14]  John Mylopoulos Goal-Oriented Requirements Engineering , 2008, CIbSE.

[15]  Klaus Pohl,et al.  Modelling requirements variability across product lines , 2005, 13th IEEE International Conference on Requirements Engineering (RE'05).

[16]  Eric S. K. Yu,et al.  Towards modelling and reasoning support for early-phase requirements engineering , 1997, Proceedings of ISRE '97: 3rd IEEE International Symposium on Requirements Engineering.

[17]  Stefano Spaccapietra,et al.  Conceptual Modeling — ER 2002 , 2002, Lecture Notes in Computer Science.

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

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

[20]  Philippe Kruchten,et al.  The 4+1 View Model of Architecture , 1995, IEEE Softw..

[21]  Dewayne E. Perry,et al.  Transforming Goal Oriented requirements specifications into Architectural Prescriptions , 2001 .

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

[23]  Richard N. Taylor,et al.  A framework for classifying and comparing architecture description languages , 1997, ESEC '97/FSE-5.

[24]  Yijun Yu,et al.  Requirements-Driven Design and Configuration Management of Business Processes , 2007, BPM.

[25]  Julio Cesar Sampaio do Prado Leite,et al.  Nonfunctional requirements: from elicitation to conceptual models , 2004, IEEE Transactions on Software Engineering.

[26]  Jeff Magee,et al.  The Koala Component Model for Consumer Electronics Software , 2000, Computer.

[27]  Paul Clements,et al.  Software product lines - practices and patterns , 2001, SEI series in software engineering.

[28]  Paola Inverardi,et al.  Formal Methods for Software Architectures , 2003 .

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

[30]  Jaejoon Lee,et al.  Feature-Oriented Engineering of PBX Software for Adaptability and Reuseability , 1999, Softw. Pract. Exp..

[31]  Yijun Yu,et al.  Configuring features with stakeholder goals , 2008, SAC '08.

[32]  Yijun Yu,et al.  From goals to aspects: discovering aspects from requirements goal models , 2004, Proceedings. 12th IEEE International Requirements Engineering Conference, 2004..

[33]  Fausto Giunchiglia,et al.  Tropos: An Agent-Oriented Software Development Methodology , 2004, Autonomous Agents and Multi-Agent Systems.

[34]  Kyo Chul Kang,et al.  Feature‐oriented engineering of PBX software for adaptability and reuseability , 1999 .

[35]  Axel van Lamsweerde,et al.  Inferring Declarative Requirements Specifications from Operational Scenarios , 1998, IEEE Trans. Software Eng..

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

[37]  A. van Lamsweerde Goal-oriented requirements engineering: from system objectives to UML models to precise software specifications , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

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

[39]  Bran Selic,et al.  The Pragmatics of Model-Driven Development , 2003, IEEE Softw..