An Approach for Agile SOA Development using Agile Principals

In dynamic and turbulent business environment, the need for success and survival of any organization is the ability of adapting to changes efficiently and cost-effectively. So, for developing software applications, one of the methods is Service Oriented Architecture (SOA) methodology and other is Agile Methodology. Since embracing changes is the indispensable concept of SOA development as well as Agile Development, using an appropriate SOA methodology able to adapt changes even during system development with the preservation of software quality is necessary. In this paper, a new approach consisted of five steps is presented to add agility to SOA methodologies. This approach, before any SOA-based development, helps architect(s) to determine Core Business Processes (CBPs) by using agile principals for establishing Core Architecture. The most important advantage of this approach according to the results of case study is possibility of embracing changes with the preservation of software quality in SOA developments.

[1]  O. Zimmermann Elements of Service-Oriented Analysis and Design , 2011 .

[2]  Paul Clements,et al.  Software Architecture in Practice: Addison-Wesley , 1998 .

[3]  Leonard J. Bass,et al.  Eliciting and Capturing Business Goals to Inform a Product Line's Business Case and Architecture , 2010, SPLC.

[4]  Guillermo A Callahan Suitability of Extreme Programming and RUP Software Development Methodologies for SOA Applications , 2007 .

[5]  Scott W. Ambler,et al.  Agile modeling: effective practices for extreme programming and the unified process , 2002 .

[6]  Zhong Chen,et al.  A Service-Oriented Analysis and Modeling Using Use Case Approach , 2009, 2009 International Conference on Computational Intelligence and Software Engineering.

[7]  Åsa G. Dahlstedt,et al.  Requirements Interdependencies-Moulding the State of Research into a Research Agenda , 2003 .

[8]  Leonard J. Bass,et al.  Business goals as architectural knowledge , 2010, SHARK '10.

[9]  Paul Clements,et al.  Software architecture in practice , 1999, SEI series in software engineering.

[10]  Ian Gorton,et al.  Essential software architecture , 2006 .

[11]  Leonard J. Bass,et al.  Using Business Goals to Inform a Software Architecture , 2010, 2010 18th IEEE International Requirements Engineering Conference.

[12]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[13]  Philippe Kruchten,et al.  The Rational Unified Process Made Easy - A Practitioner's Guide to the RUP , 2003, Addison Wesley object technology series.

[14]  Paul Clements,et al.  Relating Business Goals to Architecturally Significant Requirements for Software Systems , 2010 .

[15]  A. Simons,et al.  A Survey of Service Oriented Development Methodologies , 2007 .

[16]  Leonard J. Bass,et al.  The Business Goals Viewpoint , 2010, IEEE Software.

[17]  Donald Firesmith,et al.  Prioritizing Requirements , 2004, J. Object Technol..

[18]  Paul Clements,et al.  ATAM: Method for Architecture Evaluation , 2000 .

[19]  Hengnian Qi,et al.  A Service-Oriented Analysis and Design Approach Based On Data Flow Diagram , 2009, 2009 International Conference on Computational Intelligence and Software Engineering.

[20]  Christoph Steindl,et al.  Service-oriented agility: an initial analysis for the use of agile methods for SOA development , 2005, 2005 IEEE International Conference on Services Computing (SCC'05) Vol-1.

[21]  Ali Arsanjani,et al.  SOMA: A method for developing service-oriented solutions , 2008, IBM Syst. J..

[22]  Abdelkarim Erradi,et al.  SOAF: An Architectural Framework for Service Definition and Realization , 2006, 2006 IEEE International Conference on Services Computing (SCC'06).

[23]  Flavio Oquendo,et al.  Software Architecture , 2004, Lecture Notes in Computer Science.

[24]  Thomas Erl,et al.  Service-Oriented Architecture: Concepts, Technology, and Design , 2005 .

[25]  Maurizio Marchese,et al.  Towards a Service-Oriented Development Methodology , 2005, Trans. SDPS.

[26]  AAQIB IQBAL,et al.  A CRITICAL ANALYSIS OF TECHNIQUES FOR REQUIREMENT PRIORITIZATION AND OPEN RESEARCH ISSUES , 2010 .

[27]  Barry Boehm,et al.  Balancing Agility and Dis-cipline: A Guide for the Perplexed , 2003 .

[28]  William C. Wake,et al.  Extreme Programming Explored , 2001 .