Domain Engineering of Software Product Lines with Service-Oriented Architecture

Software product lines (SPL) have been established as one of the best ways to promote reuse of both requirements and software architecture, even with a high cost when compared to the development of single systems. Service-oriented architecture (SOA) can further facilitate the development of SPL, since several features of the SPL can be implemented by services available on a network. This paper presents SoProL-WS, which is a deve-lopment approach for SPL using SOA. The focus of this article is in the domain engineering phase, where the SPL architecture is developed based on services. From this architecture, one can derive products in the subsequent application engineering phase. The goal of SoProL-WS is to reduce SPL development costs and time, facilitating its maintenance, evolution and derivation of its members. Additionally, this paper presents a case study where SoProl-WS is applied to develop a product line for Web auctions.

[1]  Dirk Krafzig,et al.  Enterprise SOA: Service-Oriented Architecture Best Practices (The Coad Series) , 2004 .

[2]  Paulo Gabriel Gadelha Queiroz Uma abordagem de desenvolvimento de linha de produtos com uma arquitetura orientada a serviços , 2009 .

[3]  S.M.M. Joosten,et al.  An Algorithm to Derive Use Case Diagrams from Business Process Models , 2002 .

[4]  Craig Larman,et al.  Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development (3rd Edition) , 1997 .

[5]  Klaus Pohl,et al.  Software product line testing , 2006, CACM.

[6]  Hassan Gomaa,et al.  Software product line engineering for Web services and UML , 2005, The 3rd ACS/IEEE International Conference onComputer Systems and Applications, 2005..

[7]  Hassan Gomaa,et al.  Software product line engineering based on web services , 2005 .

[8]  Frank Buschmann,et al.  Pattern-Oriented Software Architecture, a Pattern Language for Distributed Computing , 2007 .

[9]  David M. Weiss,et al.  Software Product-Line Engineering: A Family-Based Software Development Process , 1999 .

[10]  Jaejoon Lee,et al.  An Approach for Developing Service Oriented Product Lines , 2008, 2008 12th International Software Product Line Conference.

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

[12]  Gerardo Canfora User-Side Testing of Web Services , 2005, CSMR.

[13]  Douglas C. Schmidt,et al.  A pattern language for distributed computing , 2007 .

[14]  Philip S. Yu,et al.  Online Auctions: There Can Be Only One , 2009, 2009 IEEE Conference on Commerce and Enterprise Computing.

[15]  Ibm Redbooks,et al.  Patterns: Service Oriented Architecture And Web Services , 2004 .

[16]  Soo Dong Kim,et al.  A Variability Modeling Method for Adaptable Services in Service-Oriented Computing , 2007, 11th International Software Product Line Conference (SPLC 2007).

[17]  Dirk Krafzig,et al.  Enterprise SOA: Service-Oriented Architecture Best Practices , 2004 .

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

[19]  Peter Sommerlad,et al.  Pattern-Oriented Software Architecture Volume 1: A System of Patterns , 1996 .

[20]  Hassan Gomaa Designing Software Product Lines with UML 2.0: From Use Cases to Pattern-Based Software Architectures , 2006, ICSR.

[21]  Keunhyuk Yeom,et al.  An Approach to Designing Service-Oriented Product-Line Architecture for Business Process Families , 2007, The 9th International Conference on Advanced Communication Technology.

[22]  Jilles van Gurp,et al.  Service grid variability realization , 2006, 10th International Software Product Line Conference (SPLC'06).

[23]  C. M. Sperberg-McQueen,et al.  Extensible Markup Language (XML) , 1997, World Wide Web J..

[24]  Lu Zhang,et al.  A framework for testing Web services and its supporting tool , 2005, IEEE International Workshop on Service-Oriented System Engineering (SOSE'05).

[25]  Ivar Jacobson,et al.  The unified modeling language reference manual , 2010 .

[26]  Paulo S. C. Alencar,et al.  Um Processo de Desenvolvimento de Aplicações Web baseado em Serviços , 2007, SBCARS.

[27]  Stephen A. White,et al.  Business Process Modeling Notation (BPMN), Version 1.0 , 2004 .

[28]  John D. McGregor,et al.  Testing a Software Product Line , 2001, PSSE.

[29]  Klaus Schmid,et al.  PuLSE: a methodology to develop software product lines , 1999, SSR '99.

[30]  Kendall Scott,et al.  UML distilled - a brief guide to the Standard Object Modeling Language (2. ed.) , 2000, notThenot Addison-Wesley object technology series.

[31]  Peter Sommerlad,et al.  Pattern-Oriented Software Architecture , 1996 .

[32]  Esperanza Marcos,et al.  Business Process Development based on Web Services: a Web Information System for Medical Image Management and Processing , 2006, 2006 IEEE International Conference on Web Services (ICWS'06).

[33]  Kangde Yao,et al.  A Brief Guide to the Standard Object Modelling Language , 2000 .

[34]  J. van Gurp,et al.  Service grid variability realization , 2006 .

[35]  David Lorge Parnas,et al.  Review of David L. Parnas' "Designing Software for Ease of Extension and Contraction" , 2004 .