The Role of Coordination Analysis in Software Integration Projects

  • Nuno F. Rodrigues
  • Nuno Oliveira
  • Luís S. Barbosa
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7046)


What sort of component coordination strategies emerge in a software integration process? How can such strategies be discovered and further analysed? How close are they to the coordination component of the envisaged architectural model which was supposed to guide the integration process? This paper introduces a framework in which such questions can be discussed and illustrates its use by describing part of a real case-study. The approach is based on a methodology which enables semi-automatic discovery of coordination patterns from source code, combining generalized slicing techniques and graph manipulation.


Source Code Dependence Graph Customer Relationship Management Coordination Pattern Coordination Strategy 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Ferrante, J., Ottenstein, K.J., Warren, J.D.: The program dependence graph and its use in optimization. ACM Trans. Program. Lang. Syst. 9(3), 319–349 (1987)CrossRefzbMATHGoogle Scholar
  2. 2.
    Gelernter, D., Carrier, N.: Coordination languages and their significance. Communication of the ACM 2(35), 97–107 (1992)CrossRefGoogle Scholar
  3. 3.
    Hohpe, G., Woolf, B.: Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions. Addison-Wesley Longman Publishing Co., Inc., Boston (2003)Google Scholar
  4. 4.
    Horwitz, S., Reps, T., Binkley, D.: Interprocedural slicing using dependence graphs. In: PLDI 1988: Proceedings of the ACM SIGPLAN 1988 Conf. on Programming Usage, Design and Implementation, pp. 35–46. ACM Press (1988)Google Scholar
  5. 5.
    Linthicum, D.S.: Enterprise application integration. Addison-Wesley Longman Ltd., Essex (2000)Google Scholar
  6. 6.
    Oliveira, N., Rodrigues, N., Henriques, P.R., Barbosa, L.S.: A pattern language for architectural analysis. In: 14th Brazilian Symposium in Programming Languages, SBLP 2010, Slavador, Brasil, vol. 2, pp. 167–180. SBC — Brazilian Computer Society (September 2010) ISSN: 2175-5922Google Scholar
  7. 7.
    Raza, A., Vogel, G., Plödereder, E.: Bauhaus - a Tool Suite for Program Analysis and Reverse Engineering. In: Pinho, L.M., González Harbour, M. (eds.) Ada-Europe 2006. LNCS, vol. 4006, pp. 71–82. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  8. 8.
    Rodrigues, N.F.: Slicing Techniques Applied to Architectural Analysis of Legacy Software. PhD thesis, Escola de Engenharia, Braga, Portugal (2008)Google Scholar
  9. 9.
    Rodrigues, N.F., Barbosa, L.S.: Coordinspector: a tool for extracting coordination data from legacy code. In: SCAM 2008: Proc. of the Eighth IEEE Inter. Working Conference on Source Code Analysis and Manipulation, pp. 265–266. IEEE Computer Society (2008)Google Scholar
  10. 10.
    Rodrigues, N.F., Barbosa, L.S.: Slicing for architectural analysis. Science of Computer Programming (March 2010)Google Scholar
  11. 11.
    Sartipi, K., Dezhkam, N., Safyallah, H.: An orchestrated multi-view software architecture reconstruction environment. In: 13th Working Conference on Reverse Engineering (WCRE 2006), Benevento, Italy, October 23-27, pp. 61–70 (2006)Google Scholar
  12. 12.
    Schmerl, B.R., Aldrich, J., Garlan, D., Kazman, R., Yan, H.: Discovering architectures from running systems. IEEE Trans. Software Eng. 32(7), 454–466 (2006)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Nuno F. Rodrigues
    • 1
    • 2
  • Nuno Oliveira
    • 2
  • Luís S. Barbosa
    • 2
  1. 1.DIGARCPolytechnic Institute of Cávado and AveBarcelosPortugal
  2. 2.DI-CCTCUniversidade do MinhoBragaPortugal

Personalised recommendations