Skip to main content

Graph-Based Structural Analysis for Telecommunication Systems

  • Chapter
Graph Transformations and Model-Driven Engineering

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5765))

Abstract

Many methods and tools for the reengineering of software systems have been developed so far. However, the domain-specific requirements of telecommunication systems have not been addressed sufficiently. The E-CARES project is dedicated to reverse engineering of complex legacy telecommunication systems by providing graph-based tools. With E-CARES, the software architecture of a telecommunication system is recovered in two steps. In the first step (program analysis), the source code is parsed to build a structure graph which uses the abstractions of the underlying programming language and describes the internals of program units (blocks) as well as their communication via exchange of signals. In the second step, a software architecture description is abstracted from the structure graph. The software architecture is described in ROOM, a real-time object-oriented modeling language for embedded systems design. Both program analysis and architecture recovery are based on graphs and graph transformations. In both steps, domain-specific knowledge — referred to as methods of use — is exploited which refers to the ways how language constructs are used to realize processing concepts of telecommunication systems.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Chikofsky, E.J., Cross II, J.H.: Reverse engineering and design recovery: A taxonomy. IEEE Software 7(1), 13–17 (1990)

    Article  Google Scholar 

  2. Kazman, R., Woods, S.G., Carrière, J.: Requirements for integrating software architecture and reengineering models: CORUM II. In: Proceedings 5th Working Conference on Reverse Engineering (WCRE 1998), Hawai, USA, pp. 154–163. IEEE Computer Society Press, Los Alamitos (October 1998)

    Google Scholar 

  3. Cremer, K., Marburger, A., Westfechtel, B.: Graph-based tools for re-engineering. Journal of Software Maintenance and Evolution: Research and Practice 14, 257–292 (2002)

    Article  MATH  Google Scholar 

  4. Markosian, L., Newcomb, P., Brand, R., Burson, S., Kitzmiller, T.: Using an enabling technology to reengineer legacy systems. Communications of the ACM 37(5), 58–70 (1994)

    Article  Google Scholar 

  5. Kollmann, R., Selonen, P., Stroulia, E., Systä, T., Zündorf, A.: A study on the current state of the art in tool-supported UML-based static reverse engineering. In: van Deursen, A., Burd, E. (eds.) Proceedings 9th Working Conference on Reverse Engineering (WCRE 2002), Richmond, VA, pp. 22–32. IEEE Computer Society Press, Los Alamitos (November 2002)

    Chapter  Google Scholar 

  6. Wilde, N., Scully, M.: Software reconnaissance: Mapping program features to code. Journal of Software Maintenance: Research and Practice 7(1), 49–62 (1995)

    Article  Google Scholar 

  7. Marburger, A., Herzberg, D.: E-CARES research project: Understanding complex legacy telecommunication systems. In: Sousa, P., Ebert, J. (eds.) Proceedings 5th European Conference on Software Maintenance and Reengineering (CSMR 2001), Lisbon, Portugal, pp. 139–147. IEEE Computer Society Press, Los Alamitos (2001)

    Chapter  Google Scholar 

  8. Marburger, A.: Reverse Engineering of Complex Legacy Telecommunication Systems. Informatik. Shaker Verlag, Aachen (2005)

    Google Scholar 

  9. Mosler, C.: Graphbasiertes Reengineering von Telekommunikationssystemen. Informatik. Shaker Verlag, Aachen (2009)

    Google Scholar 

  10. Selic, B., Gullekson, G., Ward, P.T.: Real-Time Object-Oriented Modeling. John Wiley & Sons, Reading (1994)

    MATH  Google Scholar 

  11. Herzberg, D.: Modeling Telecommunication Systems: From Standards to System Architectures. PhD thesis, RWTH Aachen University, Aachen, Germany (2003)

    Google Scholar 

  12. Ellsberger, J., Hogrefe, D., Sarma, A.: SDL - Formal Object-Oriented Language for Communicating Systems. Prentice Hall, Upper Saddle River (1997)

    Google Scholar 

  13. Object Management Group Needham, Massachusetts: OMG Unified Modeling Language (OMG UML), Superstructure, V 2.1.2. formal/2007-11-02 edn. (November 2007)

    Google Scholar 

  14. Marburger, A., Westfechtel, B.: Tools for understanding the behavior of telecommunication systems. In: Proceedings 25th International Conference on Software Engineering (ICSE 2003), Portland, OR, pp. 430–441. IEEE Computer Society Press, Los Alamitos (2003)

    Chapter  Google Scholar 

  15. Liu, S.S., Wilde, N.: Identifying Objects in a Conventional Procedural Language: An Example of Data Design Recovery. In: Proceedings of the Conference on Software Maintenance (CSM 1990), San Diego, CA, pp. 266–271. IEEE Computer Society Press, Los Alamitos (1990)

    Chapter  Google Scholar 

  16. Canfora, G., Cimitile, A., Munro, M.: An Improved Algorithm for Identifying Objects in Code. Software - Practice and Experience 26(1), 25–48 (1996)

    Article  Google Scholar 

  17. Marburger, A., Westfechtel, B.: Graph-based reengineering of telecommunication systems. In: Corradini, A., Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2002. LNCS, vol. 2505, pp. 270–285. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  18. Schürr, A., Winter, A., Zündorf, A.: The PROGRES approach: Language and environment. In: Ehrig, H., Engels, G., Kreowski, H.J., Rozenberg, G. (eds.) Handbook of Graph Grammars and Computing by Graph Transformation. Applications, Languages, and Tools, vol. 2, pp. 487–550. World Scientific, Singapore (1999)

    Chapter  Google Scholar 

  19. Böhlen, B., Jäger, D., Schleicher, A., Westfechtel, B.: UPGRADE: A framework for building graph-based interactive tools. In: Mens, T., Schürr, A., Taentzer, G. (eds.) Proceedings of the International Workshop on Graph-Based Tools (GraBaTs 2002), Barcelona, Spain. Electronic Notes of Theoretical Computer Science, vol. 72-2, pp. 149–159 (October 2002)

    Google Scholar 

  20. Marburger, A., Westfechtel, B.: Behavioral analysis of telecommunication systems by graph transformations. In: Pfaltz, J.L., Nagl, M., Böhlen, B. (eds.) AGTIVE 2003. LNCS, vol. 3062, pp. 202–219. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  21. Schürr, A.: Specification of graph translators with triple graph grammars. In: Mayr, E.W., Schmidt, G., Tinhofer, G. (eds.) WG 1994. LNCS, vol. 903, pp. 151–163. Springer, Heidelberg (1995)

    Chapter  Google Scholar 

  22. Königs, A., Schürr, A.: Tool Integration with Triple Graph Grammars - A Survey. In: Heckel, R. (ed.) Proceedings of the SegraVis School on Foundations of Visual Modelling Techniques. Electronic Notes in Theoretical Computer Science, vol. 148, pp. 113–150. Elsevier Science, Amsterdam (2006)

    Google Scholar 

  23. Müller, H.A., Wong, K., Tilley, S.R.: Understanding Software Systems Using Reverse Engineering Technology. In: The 62nd Congress of L’Association Canadienne Francaise pour l’Avancement des Sciences ACFAS 1994, Montreal, Canada, pp. 41–48 (May 1994)

    Google Scholar 

  24. Ebert, J., Süttenbach, R., Uhe, I.: Meta-CASE in practice: A case for KOGGE. In: Olivé, À., Pastor, J.A. (eds.) CAiSE 1997. LNCS, vol. 1250, pp. 203–216. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  25. van Zuylen, H.J. (ed.): The REDO Compendium: Reverse Engineering for Software Maintenance, p. 405. John Wiley & Sons, Chichester (1993)

    MATH  Google Scholar 

  26. Canfora, G., Cimitile, A., De Lucia, A., Di Lucca, G.A.: Decomposing Legacy Systems into Objects: An eclectic approach. Information Technology and Software 43(6), 401–412 (2001)

    Article  Google Scholar 

  27. Zündorf, A.: Rigorous Object-Oriented Development. Habilitation thesis, University of Paderborn, Paderborn, Germany (2002)

    Google Scholar 

  28. Lange, C., Sneed, H.M., Winter, A.: Applying the graph-oriented GUPRO Approach in comparison to a Relational Database based Approach. In: Proceedings of the 9th International Workshop on Program Comprehension IWPC 2001, pp. 209–218. IEEE Computer Society Press, Los Alamitos (2001)

    Chapter  Google Scholar 

  29. Kazman, R., Carrière, S.J.: Playing Detective: Reconstructing Software Architecture from Available Evidence. Journal of Automated Software Engineering 6(2), 107–138 (1999)

    Article  Google Scholar 

  30. Ebert, J., Kullbach, B., Riediger, V., Winter, A.: GUPRO – Generic Understanding of Programs: An Overview. Electronic Notes in Theoretical Computer Science 72(2), 10 pages (2002), http://www.elsevier.nl/locate/entcs/volume72.html

    Article  Google Scholar 

  31. Finnigan, P.J., Holt, R.C., Kalas, I., Kerr, S., Kontogiannis, K., Müller, H.A., Mylopoulos, J., Perelgut, S.G., Stanley, M., Wong, K.: The Software Bookshelf. IBM Systems Journal 36(4), 564–593 (1997)

    Article  Google Scholar 

  32. Müller, H.A., Orgun, M.A., Tilley, S.R., Uhl, J.S.: A Reverse Engineering Approach To Subsystem Structure Identification. Journal of Software Maintenance: Research and Practice 5(4), 181–204 (1993)

    Article  Google Scholar 

  33. Koschke, R.: Atomic Architectural Component Recovery for Program Understanding and Evolution. Doctoral thesis, Institute of Computer Science. University of Stuttgart, Stuttgart, Germany, p. 414 (2000)

    Google Scholar 

  34. Holt, R.C., Malton, A., Davis, I., Bull, I., Trevors, A.: SWAGKit – The Software Architecture Toolkit. Software Architecture Group, University of Waterloo, Canada (2003), http://swag.uwaterloo.ca/swagkit/

  35. Knor, R., Trausmuth, G., Weidl, J.: Reengineering C/C++ Source Code by Transforming State Machines. In: van der Linden, F.J. (ed.) Development and Evolution of Software Architectures for Product Families. LNCS, vol. 1429, pp. 97–105. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  36. Pinzger, M., Gall, H.: Pattern-Supported Architecture Recovery. In: Proceedings of the 10th International Workshop on Program Comprehension (IWPC 2002), Paris, France, pp. 53–61 (June 2002)

    Google Scholar 

  37. Fiutem, R., Tonella, P., Antoniol, G., Merlo, E.: A Cliché-Based Environment to Support Architectural Reverse Engineering. In: Proceedings of the 1996 International Conference on Software Maintenance (ICSM 1996), Monterey, CA, USA, November 4-8, pp. 319–328. IEEE Computer Society Press, Los Alamitos (1996)

    Chapter  Google Scholar 

  38. Guo, G.Y., Atlee, J.M., Kazman, R.: A Software Architecture Reconstruction Method. In: Donohoe, P. (ed.) Proceedings of the First Working IFIP Conference on Software Architecture (WICSA 1999), San Antonio, Texas, USA, February 22-24, pp. 15–34. Kluwer Academic Publishers, Dordrecht (1999)

    Google Scholar 

  39. Burd, E., Munro, M., Wezeman, C.: Analysing Large COBOL Programs: the extraction of reusable modules. In: Proceedings of the 1996 International Conference on Software Maintenance ICSM 1996, Monetery, Canada, pp. 238–243. IEEE Computer Society Press, Los Alamitos (November 1996)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2010 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Marburger, A., Westfechtel, B. (2010). Graph-Based Structural Analysis for Telecommunication Systems. In: Engels, G., Lewerentz, C., Schäfer, W., Schürr, A., Westfechtel, B. (eds) Graph Transformations and Model-Driven Engineering. Lecture Notes in Computer Science, vol 5765. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-17322-6_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-17322-6_16

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-17321-9

  • Online ISBN: 978-3-642-17322-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics