Skip to main content

2018 | OriginalPaper | Buchkapitel

81. Generating Sequence Diagram and Call Graph Using Source Code Instrumentation

verfasst von : Mustafa Hammad, Muna Al-Hawawreh

Erschienen in: Information Technology - New Generations

Verlag: Springer International Publishing

Aktivieren Sie unsere intelligente Suche, um passende Fachinhalte oder Patente zu finden.

search-config
loading …

Abstract

Understanding the dynamic behavior of the source code is an important key in software comprehension and maintenance. This paper presents a reverse engineering approach to build UML sequence diagram and call graph by monitoring the program execution. The generated models show the dynamic behavior of a set of target methods with time and object creation information. Timing and dynamic behavior details are extracted by instrumenting the target code with a set of calls to a monitoring function in specific instrumentation points in the source code. The proposed approach is applied on a case study to show the effectiveness and the benefits of the generated models.

Sie haben noch keine Lizenz? Dann Informieren Sie sich jetzt über unsere Produkte:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Literatur
1.
Zurück zum Zitat Choudhary, U., & Yadav, M. (2015). Review on reverse engineering techniques of software engineering. International Journal of Computer Applications, 119(14), 7–10. Choudhary, U., & Yadav, M. (2015). Review on reverse engineering techniques of software engineering. International Journal of Computer Applications, 119(14), 7–10.
2.
Zurück zum Zitat Banker, R. D., & Kemerer, F. C. (1987). Factors affecting software maintenance productivity: An exploratory study. InICIS. Banker, R. D., & Kemerer, F. C. (1987). Factors affecting software maintenance productivity: An exploratory study. InICIS.
3.
Zurück zum Zitat Hammad, M., & Cook, J. (2009). Lightweight monitoring of sensor software. In Proceedings of the 2009 ACM symposium on applied computing (pp 2180–2185). USA. Hammad, M., & Cook, J. (2009). Lightweight monitoring of sensor software. In Proceedings of the 2009 ACM symposium on applied computing (pp 2180–2185). USA.
4.
Zurück zum Zitat Hammadand, M., & Cook, J. (2009). Lightweight deployable software monitoring for sensor networks. Proceedings of 18th internatonal conference in computer communications and networks( ICCCN)., IEEE (pp 1–6). USA. Hammadand, M., & Cook, J. (2009). Lightweight deployable software monitoring for sensor networks. Proceedings of 18th internatonal conference in computer communications and networks( ICCCN)., IEEE (pp 1–6). USA.
5.
Zurück zum Zitat Sarkar, K. M., & Chaterjee, T. (2013). Reverse engineering: An analysis of dynamic behavior of object oriented programs by extracting UML interaction diagram. International Journal of Computer Technology and Applications, 4(3), 378. Sarkar, K. M., & Chaterjee, T. (2013). Reverse engineering: An analysis of dynamic behavior of object oriented programs by extracting UML interaction diagram. International Journal of Computer Technology and Applications, 4(3), 378.
6.
Zurück zum Zitat Taniguchi, K., Ishio, T., Kamiya, T., Kusumoto, S., Inoue, K. (2005). Extracting sequence diagram from execution trace of Java program. In Principles of software evolution, eighth international workshop on IEEE (pp. 148–151). Portugal. Taniguchi, K., Ishio, T., Kamiya, T., Kusumoto, S., Inoue, K. (2005). Extracting sequence diagram from execution trace of Java program. In Principles of software evolution, eighth international workshop on IEEE (pp. 148–151). Portugal.
7.
Zurück zum Zitat Oechsle, R., & Schmitt, T. (2002). Javavis: Automatic program visualization with object and sequence diagrams using the java debug interface (jdi). In Software visualization (pp. 176–190). Berlin/Heidelberg:Springer. Oechsle, R., & Schmitt, T. (2002). Javavis: Automatic program visualization with object and sequence diagrams using the java debug interface (jdi). In Software visualization (pp. 176–190). Berlin/Heidelberg:Springer.
8.
Zurück zum Zitat Lo, D., Maoz, S., Khoo, S.-C.(2007). Mining modal scenariobased specifications from execution traces of reactive systems. In ASE 02 (pp. 465–468). Lo, D., Maoz, S., Khoo, S.-C.(2007). Mining modal scenariobased specifications from execution traces of reactive systems. In ASE 02 (pp. 465–468).
9.
Zurück zum Zitat Ziadi, T., Da Silva, A. M., Hillah, M. L., Ziane, M. (2011). A fully dynamic approach to the reverse engineering of UML sequence diagrams. IEEE Engineering of Complex Computer Systems (ICECCS) (pp. 107–116). Ziadi, T., Da Silva, A. M., Hillah, M. L., Ziane, M. (2011). A fully dynamic approach to the reverse engineering of UML sequence diagrams. IEEE Engineering of Complex Computer Systems (ICECCS) (pp. 107–116).
10.
Zurück zum Zitat Guéhéneuc, G. Y., & Ziadi, T. (2005). Automated reverse-engineering of UML v2.0 dynamic models. Proceedings of the 6th ECOOP workshop on object-oriented reengineering. Guéhéneuc, G. Y., & Ziadi, T. (2005). Automated reverse-engineering of UML v2.0 dynamic models. Proceedings of the 6th ECOOP workshop on object-oriented reengineering.
11.
Zurück zum Zitat Alalfi, H. M., Cordy, R. J., Dean, R. T. (2009). Automated reverse engineering of UML sequence diagrams for dynamic web applications. IEEE Software testing, verification and validation workshops, (ICSTW'09) (pp. 287–294). USA. Alalfi, H. M., Cordy, R. J., Dean, R. T. (2009). Automated reverse engineering of UML sequence diagrams for dynamic web applications. IEEE Software testing, verification and validation workshops, (ICSTW'09) (pp. 287–294). USA.
12.
Zurück zum Zitat Toma, R. T., & Islam, S. M. (2014). An efficient mechanism of generating call graph for JavaScript using dynamic analysis in web application. IEEE Informatics, Electronics & Vision (ICIEV) (pp. 1–6). Toma, R. T., & Islam, S. M. (2014). An efficient mechanism of generating call graph for JavaScript using dynamic analysis in web application. IEEE Informatics, Electronics & Vision (ICIEV) (pp. 1–6).
13.
Zurück zum Zitat Kandala, P., Kaur, J., Rao, N. V. T. (2014). Optimizing programs using call graphs. Compusof An International Journal of Advanced Computer Technology, 3(2), 561–568. Kandala, P., Kaur, J., Rao, N. V. T. (2014). Optimizing programs using call graphs. Compusof An International Journal of Advanced Computer Technology, 3(2), 561–568.
14.
Zurück zum Zitat Ebad, S. A., & Ahmed, M. A. (2012). XMI2UC: An automatic tool to extract use cases from object oriented source code. International Journal of Future Computer and Communication, 1(2), 193–196.CrossRef Ebad, S. A., & Ahmed, M. A. (2012). XMI2UC: An automatic tool to extract use cases from object oriented source code. International Journal of Future Computer and Communication, 1(2), 193–196.CrossRef
15.
Zurück zum Zitat Gomaa, H., & Olimpiew, M. E. (2005). The role of use cases in requirements and analysis modeling. In Workshop on use cases in model-driven software engineering. Montego Bay. Jamaica. Gomaa, H., & Olimpiew, M. E. (2005). The role of use cases in requirements and analysis modeling. In Workshop on use cases in model-driven software engineering. Montego Bay. Jamaica.
16.
Zurück zum Zitat Gomaa, H., Shin, M. (2003). Variability in multiple-view models of software product lines. In International workshop on software variability management (SVM) (pp. 63–70). USA. Gomaa, H., Shin, M. (2003). Variability in multiple-view models of software product lines. In International workshop on software variability management (SVM) (pp. 63–70). USA.
17.
Zurück zum Zitat Khaled, L. (2011). Extracting use case diagram from requirement engineering processes. International Journal of Research and Reviews in Applied Sciences, 9(2), 317–321. Khaled, L. (2011). Extracting use case diagram from requirement engineering processes. International Journal of Research and Reviews in Applied Sciences, 9(2), 317–321.
18.
Zurück zum Zitat Hammad, M., Abu-Wandi, R., Aydeh, Haneen. (2016). Automatic reverse engineering of classes’ relationships. Information Technology: New Generations. Springer International Publishing (pp. 1267–1272). USA. Hammad, M., Abu-Wandi, R., Aydeh, Haneen. (2016). Automatic reverse engineering of classes’ relationships. Information Technology: New Generations. Springer International Publishing (pp. 1267–1272). USA.
Metadaten
Titel
Generating Sequence Diagram and Call Graph Using Source Code Instrumentation
verfasst von
Mustafa Hammad
Muna Al-Hawawreh
Copyright-Jahr
2018
DOI
https://doi.org/10.1007/978-3-319-54978-1_81