Pattern-driven Reuse in Architecture-centric Evolution for Service Software

Aakash Ahmad, Pooyan Jamshidi, Claus Pahl

2012

Abstract

Service-based architectures implement business processes as technical software services to develop enterprise software. As a consequence of frequent business and technical change cycles, the architect requires a reuse-centered approach to systematically accommodate recurring changes in existing software. Our ‘Pat-Evol’ project aims at supporting pattern-driven reuse in architecture-centric evolution for service software. We propose architecture change mining as a complementary phase to a systematic architecture change execution. Therefore, we investigate the ‘history’ of sequential changes - exploiting change logs - to discover patterns of change that occur during evolution. To foster reuse, a pattern catalogue maintains an updated collection with once-off specification for identified pattern instances. This allows us to exploit change pattern as a generic, first class abstractions (that can be operationalised and parameterised) to support reuse in architecture-centric software evolution. The notion of ‘build-once, use-often’ empowers the role of an architect to model and execute generic and potentially reusable solution to recurring architecture evolution problems.

References

  1. Ahmad, A., Jamshidi, P., and Pahl, C. (2012). Graph-based Pattern Identification from Architecture Change Logs. In Intl Workshop On System/Software Architectures.
  2. Ahmad, A. and Pahl, C. (2012a). Pat-Evol: Pattern-Driven Reuse in Architecture-Based Evolution for Service Software. In ERCIM News 88.
  3. Ahmad, A. and Pahl, C. (Retrieved April 1, 2012b). Pattern Catalogue: Towards an Automated Storage and Retrieval of Architecture Change Patterns (Technical Report). http://www.computing.dcu.ie/ aaakash/PatternCatalogue.pdf.
  4. Breivold, H. P., Crnkovic, I., and Larsson, M. (2012). A Systematic Review of Software Architecture Evolution Research. Inf and Softw Techn, 54(1):16-40.
  5. Buckley, J., Mens, T., Zenger, M., Rashid, A., and Kniesel, G. (2005). Towards a Taxonomy of Software Change. Journal of Software Maintenance and Evolution, 17:309-332.
  6. Corradini, A., Montanari, U., Rossi, F., Ehrig, H., Heckel, R., and L öwe, M. (1996). Algebraic Approaches to Graph Transformation, Part I: Basic Concepts and Double Pushout Approach. In Handbook of Graph Grammars and Computing Graph Transformation, Volume 1: Foundations, pages 163-245.
  7. Dashofy, E., v.d. Hoek, A., and Taylor, R. N. (2002). An Infrastructure for the Rapid Development of XMLbased Architecture Description Languages. In 24th International Conference on Software Engineering.
  8. Ehrig, H., Prange, U., and Taentzer, G. (2004). Fundamental Theory for Typed Attributed Graph Transformation. In Graph Transformations, pages 161-177.
  9. Garlan, D., Barnes, J., Schmerl, B., and Celiku, O. (2009). Evolution Styles: Foundations and Tool Support for Software Architecture Evolution. In Proc. Joint Working IEEE/IFIP Conference on Software Architecture.
  10. Goaer, O. L., Tamzalit, D., Oussalah, M., and Seriai, A. D. (2008). Evolution Shelf: Reusing Evolution Expertise within Component-Based Software Architectures. In IEEE Intl Computer Software and Applications Conf.
  11. Graaf, B. (2007). Model-Driven Evolution of Software Architectures. Ph.D Dissertation: T.U. Delft.
  12. Gruhn, V., Pahl, C., and Wever, M. (1996). Data Model Evolution as Basis of Business Process Management. In 14th International Conference on ObjectOriented and Entity Relationship Modelling O-O ER95. Springer-Verlag (LNCS Series).
  13. Javed, M., Abgaz, Y.M., Pahl, C. (2009). A pattern-based framework of change operators for ontology evolution. In: On the Move to Meaningful Internet Systems: OTM Workshops, LNCS 5872, pp. 544-553. Springer.
  14. Kim, S. K. and Carrington, D. (2006). A Pattern based Model Evolution Approach. In 13th Asia Pacific Software Engineering Conference.
  15. Lara, J. and Guerra, E. (2008). Pattern-Based Model-toModel Transformation. In 4th International Conference on Graph Transformations.
  16. Lewis, G. and Smith, D. (2008). Service-Oriented Architecture and its Implications for Software Maintenance and Evolution. In Frontiers of Software Maintenance.
  17. Pahl, C. (2002). A Formal Composition and Interaction Model for a Web Component Platform. ICALP'2002 Workshop on Formal Methods and Component Interaction. Elsevier ENTCS.
  18. Pahl, C. and Zhu, Y. (2006). A Semantical Framework for the Orchestration and Choreography of Web Services. International Workshop on Web Languages and Formal Methods WLFM'05. Elsevier ENTCS.
  19. Weber, B., Rinderle, S., and Reichert, M. (2007). Change Patterns and Change Support Features in ProcessAware Information Systems. In 19th Intl. Conference on Advanced Information Systems Engineering.
Download


Paper Citation


in Harvard Style

Ahmad A., Jamshidi P. and Pahl C. (2012). Pattern-driven Reuse in Architecture-centric Evolution for Service Software . In Proceedings of the 7th International Conference on Software Paradigm Trends - Volume 1: ICSOFT, ISBN 978-989-8565-19-8, pages 279-284. DOI: 10.5220/0004128602790284


in Bibtex Style

@conference{icsoft12,
author={Aakash Ahmad and Pooyan Jamshidi and Claus Pahl},
title={Pattern-driven Reuse in Architecture-centric Evolution for Service Software},
booktitle={Proceedings of the 7th International Conference on Software Paradigm Trends - Volume 1: ICSOFT,},
year={2012},
pages={279-284},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0004128602790284},
isbn={978-989-8565-19-8},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 7th International Conference on Software Paradigm Trends - Volume 1: ICSOFT,
TI - Pattern-driven Reuse in Architecture-centric Evolution for Service Software
SN - 978-989-8565-19-8
AU - Ahmad A.
AU - Jamshidi P.
AU - Pahl C.
PY - 2012
SP - 279
EP - 284
DO - 10.5220/0004128602790284