Novel lightweight engineering artifacts for modeling non-functional requirements in agile processes

Agile software development methodologies, such as Scrum, have gained tremendous popularity and proven successful in quickly delivering quality Functional Requirements (FRs). However, agile methodologies have not adequately modeled Non-Functional Requirements (NFRs) and their potential solutions (operationalizations) with FRs in early development phases. This research proposes three fundamental agile artifacts to model FRs, NFRs, and their potential solutions in a visual environment. First, FRs are modeled through Agile Use Cases (AUCs). Second, NFRs are modeled through Agile Loose Cases (ALCs). Third, NFRs potential solutions are modeled through Agile Choose Cases (ACCs). AUCs are newly proposed hybrid of use cases and agile user stories. ALCs are proposed loosely-defined agile NFRs. ACCs are proposed potential solutions (operationalizations) for ALCs. The three artifacts are combined in a visual framework to promote agile modeling of NFRs (primarily) and how they are linked to FRs. The artifacts are the building blocks of a more comprehensive framework for modeling NFRs in agile software development processes.

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

[2]  Greg Goth Agile Tool Market Growing with the Philosophy , 2009, IEEE Software.

[3]  Frank Maurer,et al.  Requirements engineering and agile software development , 2003, WET ICE 2003. Proceedings. Twelfth IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises, 2003..

[4]  Suzanne Robertson,et al.  Mastering the Requirements Process , 1999 .

[5]  Dorina C. Petriu,et al.  The Future of Software Performance Engineering , 2007, Future of Software Engineering (FOSE '07).

[6]  Alan M. Christie,et al.  Simulation in support of CMM-based process improvement , 1999, J. Syst. Softw..

[7]  João Araújo,et al.  Towards an aspect-oriented agile requirements approach , 2005, Eighth International Workshop on Principles of Software Evolution (IWPSE'05).

[8]  Abdelwahab Hamou-Lhadj,et al.  Comparing Agile Software Processes Based on the Software Development Project Requirements , 2008, 2008 International Conference on Computational Intelligence for Modelling Control & Automation.

[9]  Nancy R. Mead,et al.  Incorporating Security Requirements Engineering into the Dynamic Systems Development Method , 2008, 2008 32nd Annual IEEE International Computer Software and Applications Conference.

[10]  Armin Eberlein Agile Requirements Definition: A View from Requirements Engineering , 2002 .

[11]  Felipe Santana Furtado Soares,et al.  Mapping CMMI Project Management Process Areas to SCRUM Practices , 2007 .

[12]  Paul Rayson,et al.  Mining Aspects in Requirements , 2005 .

[13]  Ken Schwaber,et al.  Agile Project Management with Scrum , 1980 .

[14]  Laurie A. Williams,et al.  On agile performance requirements specification and testing , 2006, AGILE 2006 (AGILE'06).

[15]  Julio Cesar Sampaio do Prado Leite,et al.  On Non-Functional Requirements in Software Engineering , 2009, Conceptual Modeling: Foundations and Applications.

[16]  João Araújo,et al.  An Aspectual Use-Case Driven Approach , 2003, JISBD.