Skip to main content

Software Regression and Migration Assistance Using Dynamic Instrumentation

  • Chapter
  • First Online:
Book cover Advanced Computing and Systems for Security

Abstract

Companies and organizations use the legacy software for decades to serve various purposes. During this journey, the software system travels through several change requests and amendments of functionalities due to the changing nature of business and other requirements. As a result, different methodologies and implementations employed over the time are often not at all documented. So, modifying or migrating those software systems become difficult due to lack of technical knowledge about their behavior. This difficulty is even more when there is no Subject-Matter Expert (SME). Here, we propose a technique to verify the unchanged functionalities of untouched modules of the modified application by comparing with the older version of the application. Sometimes, the number of functional behaviors become irrelevant as they are no longer required by the business. However, significantly large portions of legacy applications continue executing, untouched by any modification or customization, to serve tiny yet critical purposes. Stakeholders also remain reluctant to cleanup or migrate because only for finding out the active part or functionals scope of the application is very tedious and consumes lot of effort due to lack of knowledge or documentation. Here, we have devised a mechanism to assist the migration specialists to identify the active part of an application, associated files, and data used by the active code that help in building the new one with similar functionalities. We can also assist the performance engineer by detecting the resource leakage in the application.

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 79.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 99.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

References

  1. Hwang, S.-M., Lee, J.: Design and implementation of Java dynamic testing tool using instrumentation. Indian J. Sci. Technol. 8(1), 475480 (2015)

    MathSciNet  Google Scholar 

  2. Misurda, J., Clause, J.A., Reed, J.L., Childers, B.R., Soffa, M.L.: Demand-driven structural testing with dynamic instrumentation. In: ICSE’05, St. Louis, Missouri, USA (2005)

    Google Scholar 

  3. Eclipse integrated development environment. http://www.eclipse.org

  4. Upadya, V.: State-based testing using dynamic instrumentation a case study. In: PNSQC 2012 Proceedings, pp. 1–6 (2012)

    Google Scholar 

  5. Huang, H.: Business rule extraction from legacy code. In: COMPSAC ’96 Proceedings of the 20th Conference on Computer Software and Applications, p. 162 (1996)

    Google Scholar 

  6. Streitel, F., Steidl, D., Jrgens, E.: Dead Code Detection on Class Level. CQSE GmbH, Garching bei München, Germany (2014)

    Google Scholar 

  7. Detecting dead C++ code. http://oovcde.sourceforge.net/articles/deadcode.html

  8. Gupta, R., Berson, D.A., Fang, J.Z.: Path profile guided partial dead code elimination using predication. In: PACT ’97 Proceedings of the 1997 International Conference on Parallel Architectures and Compilation Techniques, p. 102 (1997)

    Google Scholar 

  9. PIN tool user guide. https://software.intel.com/sites/landingpage/pintool/docs/81205/pin/html/

  10. Chatterjee, N., Bose, S., Das, P.P.: Dynamic weaving of aspects in C/C++ using PIN. In: HP3C-2017 Proceedings of the International Conference on High Performance Compilation, Computing and Communications, pp. 55–59 (2017)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Nachiketa Chatterjee .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Singapore Pte Ltd.

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Chatterjee, N., Chakrabarti, A., Das, P.P. (2019). Software Regression and Migration Assistance Using Dynamic Instrumentation. In: Chaki, R., Cortesi, A., Saeed, K., Chaki, N. (eds) Advanced Computing and Systems for Security. Advances in Intelligent Systems and Computing, vol 897. Springer, Singapore. https://doi.org/10.1007/978-981-13-3250-0_12

Download citation

Publish with us

Policies and ethics