F-STREAM: A Flexible Process for Deriving Architectures from Requirements Models

Some quality attributes are known to have an impact on the overall architecture of a system, requiring to be properly handled from the early stages of the software development. This led to the creation of different and unrelated approaches to handle specific attributes, such as security, performance, adaptability, etc. The challenge is to propose a flexible approach that could be configured to address multiple attributes of interest, promoting the reuse of best practices and reduction of development costs. We advocate the use of Software Product Line (SPL) principles to manage and customize variability in software processes targeted for the generation of architectural models from requirements models. Hence, in this paper we propose F-STREAM, a flexible and systematic process to derive architecture models from requirements. We define a common core process, its variation and extension points. The definition of this process was performed based on a survey of the existing approaches. As example, we instantiate a process for adaptive systems.

[1]  John Mylopoulos,et al.  An Architecture for Requirements-Driven Self-reconfiguration , 2009, CAiSE.

[2]  Juan Sánchez,et al.  Configuring the Variability of Business Process Models Using Non-Functional Requirements , 2010, BMMDS/EMMSAD.

[3]  Márcia Lucena,et al.  Towards a unified metamodel for i* , 2008, 2008 Second International Conference on Research Challenges in Information Science.

[4]  Patrick Donohoe,et al.  Proceedings of the TC2 First Working IFIP Conference on Software Architecture (WICSA1) , 1999 .

[5]  Alberto H. F. Laender Conceptual Modeling - ER 2009, 28th International Conference on Conceptual Modeling, Gramado, Brazil, November 9-12, 2009. Proceedings , 2009, ER.

[6]  Frank Puhlmann,et al.  Variability Mechanisms in E-Business Process Families , 2006, BIS.

[7]  Paolo Giorgini,et al.  Goal-oriented requirement analysis for data warehouse design , 2005, DOLAP '05.

[8]  João Pimentel,et al.  A Model Transformation Approach to Derive Architectural Models from Goal-Oriented Requirements Models , 2009, OTM Workshops.

[9]  Jaelson Brelaz de Castro,et al.  From requirements to multi-agent architecture using organisational concepts , 2005, ACM SIGSOFT Softw. Eng. Notes.

[10]  David Garlan,et al.  Acme: an architecture description interchange language , 2010, CASCON.

[11]  João Araújo,et al.  Integration of Aspects with i* Models , 2006, AOIS.

[12]  Xavier Franch,et al.  On the Adequacy of i* Models for Representing and Analyzing Software Architectures , 2007, ER Workshops.

[13]  Márcia Lucena,et al.  Applying Transformation Rules to Improve i* Models , 2009, SEKE.

[14]  Manuel Kolp,et al.  Agent-Oriented Information Systems IV, 8th International Bi-Conference Workshop, AOIS 2006, Hakodate, Japan, May 9, 2006 and Luxembourg, Luxembourg, June 6, 2006, Revised Selected Papers , 2008, AOIS.

[15]  Jaelson Brelaz de Castro,et al.  A Goal Oriented Approach to Identify and Configure Feature Models for Software Product Lines , 2011, WER.

[16]  John Mylopoulos,et al.  Modeling Organizational Architectural Styles in UML , 2003, CAiSE.

[17]  Daniel Gross,et al.  Architectural Design to Meet Stakeholder Requirements , 1999, WICSA.

[18]  Jean-Luc Hainaut Advances in Conceptual Modeling - Foundations and Applications, ER 2007 Workshops CMLSA, FP-UML, ONISW, QoIS, RIGiM,SeCoGIS, Auckland, New Zealand, November 5-9, 2007, Proceedings , 2007, ER Workshops.

[19]  Xavier Franch,et al.  Dealing with Non-Functional Requirements in Model-Driven Development , 2010, 2010 18th IEEE International Requirements Engineering Conference.

[20]  Eric Yu,et al.  Modeling Strategic Relationships for Process Reengineering , 1995, Social Modeling for Requirements Engineering.

[21]  John Mylopoulos,et al.  Monitoring and Diagnosing Malicious Attacks with Autonomic Software , 2009, ER.

[22]  Oscar Pastor,et al.  From i* Requirements Models to Conceptual Models of a Model Driven Development Process , 2009, PoEM.