[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.5555/962198.962211dlproceedingsArticle/Chapter ViewAbstractPublication PagescasconConference Proceedingsconference-collections
Article
Free access

Experiences in program understanding

Published: 09 November 1992 Publication History

Abstract

The application of reverse engineering technologies to large-scale legacy software systems offers the opportunity to regain a measure of control and understanding of the software. This activity can leverage the software developer's actions and knowledge, and augment the software development and maintenance processes.This paper motivates the use of program understanding technologies through a description of our experiences to date in the Program Understanding project. Following a project introduction, an overview of work to date is outlined, followed by a review of many of the applied research opportunities available in this area and a discussion of the issues that have occurred as a result of the ongoing applied research project. Future research directions and summary comments are then detailed.Further information detailing the authors' initial research experiences are in [1].

References

[1]
Erich Buss and John Henshaw, "A Software Reverse Engineering Experience," Proceedings of the 1991 CAS Conference, October 1991.
[2]
Kathleen Melymuka, "Managing Maintenance: The 4,000-Pound Gorilla," CIO, vol. 4, no. 6, pp. 74--82, March 1991.
[3]
P. A. V. Hall, "Overview of reverse engineering and reuse research," Information and Software Technology, vol. 34, no. 4, pp. 239--249, Butterworth-Heinemann Ltd., April 1992.
[4]
E. J. Chikofsky and J. H. Cross II, "Reverse Engineering and Design Recovery: A Taxonomy," IEEE Software, vol. 7, no. 1, pp. 13--17, January 1990.
[5]
Song C. Choi and Walt Scacchi, "Extracting and Restructuring the Design of Large Systems," IEEE Software, pp. 66--71, University of Southern California, January 1990.
[6]
Gordon B. Kotik and Lawrence Z. Markosian, "Program Transformation: The Key to Automating Software Maintenance and Re-engineering," IEEE Transactions on Software Engineering, vol. 16, no. 9, pp. 1024--1043, Reasoning Systems Inc., September 1990.
[7]
Gary M. Laskoski, Automated Documentation Generation For Program Understanding, Somers, New York: IBM Region Information Systems and Telecommunications, April 1991. TR 78.0265, 39 pages
[8]
Spencer Rugaber, Stephen B. Ornburn, and Richard J. LeBlanc Jr., "Recognizing Design Decisions in Programs," IEEE Software, pp. 46--54, Georgia Institute of Technology, January 1990.
[9]
J. J. Salasin and F. C. Chilli, "Transition Engineering Methodology," Proceedings of the First International Conference on Systems Integration, pp. 110--116, 1990.
[10]
Tony Hill, "Reversing the creative process," Computer Systems Europe, vol. 10, no. 10, pp. 27--28, October 1990.
[11]
Santanu Paul, Atul Prakash, Erich Buss, and John Henshaw, "Theories and Techniques of Program Understanding," Proceedings of the 1991 CAS Conference, 1991.
[12]
Douglas R. Smith, "KIDS: A Semi-Automatic Program Development System," IEEE Transactions on Software Engineering, Kestrel Institute, September 1990.
[13]
Fredrick. P. Brookes Jr., "No Silver Bullet: Essence and accidents of Software Engineering," IEEE Computer, vol. 20, no. 4, April 1987.
[14]
M. Astrahan, M. Blasgen, D. Chamberlin, K. Eswaran, J. Gray, P. Griffiths, W. King, R. Lorie, P. McJones, J. Mehl, G. Putzolu, I. Traiger, B. Wade, and V. Watson, "System R: Relational approach to database management," ACM Transactions on Database Systems, vol. 1, no. 2, June 1976.
[15]
S. Henry and D. Kafura, "Software structure metrics based on information flow," IEEE Transactions on Software Engineering, vol. SE-7, no. 5, pp. 510--518, May 1981.
[16]
D. Kafura and S. Henry, "Software quality metrics based on interconnectivity," Journal of Systems and Software, vol. 2, pp. 121--131, February 1982.
[17]
Scott Burson, Gordon B. Kotik, and Lawrence Z. Markosian, "A Program Transformation Approach to Automating Software Re-engineering," Proceedings. Fourteenth Annual International Computer Software and Applications Conference, pp. 314--322, Chicago, IL, USA: IEEE Computer Society Press, October 1990.
[18]
T. McCabe, "A Complexity Measure," IEEE Transactions on Software Engineering, vol. SE-7, no. 4, pp. 308--320, September 1976.
[19]
Harry M. Sneed, "Bank Application Reengineering & Conversion at the Union Bank of Switzerland," Proceedings of the Conference on Software Maintenance, pp. 60--72, IEEE Computer Society Press, 1990.
[20]
Alfred V. Aho, Ravi Sethi, and Jeffrey D. Ullman, Compilers, Principles, Techniques and Tools, Addison-Wesley, 1988.
[21]
Joel Troster, "Assessing Design Quality Metric on Legacy Software," (To appear in) Proceedings of the 1992 CAS Conference, November 1992.
[22]
M. Mullerberg, "Software testing: a stepwise process," Conference Proceedings. Second European Conference on Software Quality Assurance 1990 P22 pp., p. 22, Oslo, Norway, May 1990.
[23]
C. L. Jones, "A process-integrated approach to defect prevention," IBM Systems Journal, vol. 24, no. 2, pp. 150--167, 1985.
[24]
R. G. Mays, C. L. Jones, G. J. Holloway, and D. P. Studinski, "Experiences with Defect Prevention," IBM Systems Journal, vol. 29, no. 1, 1990.
[25]
James M. Haugh, "Never Make the Same Mistake Twice: Using Configuration Control and Error Analysis to Improve Software Quality," IEEE AES Systems Magazine, pp. 12--16, International Business Machines (IBM) Corporation, Federal Sector Division (FSD), January 1992.
[26]
F. P. Brooks Jr., Essays of Software Engineering, The Mythical Man-Month, Chapel Hill: Addison-Wesley, 1975.
[27]
M. Lehman and L. Belady, "Programming system dynamics," ACM SIGOPS Third Symposium on Operating System Principles, Association for Computing Machinery, October 1971.
[28]
Ira D. Baxter, "Design Maintenance Systems," Communications of the ACM, vol. 35, no. 4, pp. 73--89, 1992.
[29]
Eric J. Byrne, "Software Reverse Engineering: A Case Study," Software --- Practice and Experience, vol. 21, no. 12, pp. 1349--1364, John Wiley & Sons, Ltd., December 1991.

Cited By

View all
  • (2011)Runtime verification with state estimationProceedings of the Second international conference on Runtime verification10.1007/978-3-642-29860-8_15(193-207)Online publication date: 27-Sep-2011
  • (1996)Navigating the textual redundancy web in legacy sourceProceedings of the 1996 conference of the Centre for Advanced Studies on Collaborative research10.5555/782052.782068Online publication date: 12-Nov-1996
  • (1995)Using textual redundancy to understand changeProceedings of the 1995 conference of the Centre for Advanced Studies on Collaborative research10.5555/781915.781949Online publication date: 7-Nov-1995
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image DL Hosted proceedings
CASCON '92: Proceedings of the 1992 conference of the Centre for Advanced Studies on Collaborative research - Volume 1
November 1992
527 pages

Sponsors

  • IBM Canada Ltd. Laboratory Centre for Advanced Studies

Publisher

IBM Press

Publication History

Published: 09 November 1992

Qualifiers

  • Article

Acceptance Rates

Overall Acceptance Rate 24 of 90 submissions, 27%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)46
  • Downloads (Last 6 weeks)8
Reflects downloads up to 03 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2011)Runtime verification with state estimationProceedings of the Second international conference on Runtime verification10.1007/978-3-642-29860-8_15(193-207)Online publication date: 27-Sep-2011
  • (1996)Navigating the textual redundancy web in legacy sourceProceedings of the 1996 conference of the Centre for Advanced Studies on Collaborative research10.5555/782052.782068Online publication date: 12-Nov-1996
  • (1995)Using textual redundancy to understand changeProceedings of the 1995 conference of the Centre for Advanced Studies on Collaborative research10.5555/781915.781949Online publication date: 7-Nov-1995
  • (1994)Towards an integrated toolset for program understandingProceedings of the 1994 conference of the Centre for Advanced Studies on Collaborative research10.5555/782185.782233Online publication date: 31-Oct-1994
  • (1994)Supporting communications infrastructure evolutionProceedings of the 1994 conference of the Centre for Advanced Studies on Collaborative research10.5555/782185.782229Online publication date: 31-Oct-1994
  • (1994)Partial design recovery using dynamic programmingProceedings of the 1994 conference of the Centre for Advanced Studies on Collaborative research10.5555/782185.782219Online publication date: 31-Oct-1994
  • (1994)Visualizing textual redundancy in legacy sourceProceedings of the 1994 conference of the Centre for Advanced Studies on Collaborative research10.5555/782185.782217Online publication date: 31-Oct-1994
  • (1993)Filtering for qualityProceedings of the 1993 conference of the Centre for Advanced Studies on Collaborative research: software engineering - Volume 110.5555/962289.962324(429-449)Online publication date: 24-Oct-1993
  • (1993)The development of a partial design recovery environment for legacy systemsProceedings of the 1993 conference of the Centre for Advanced Studies on Collaborative research: software engineering - Volume 110.5555/962289.962308(206-216)Online publication date: 24-Oct-1993
  • (1992)Assessing design-quality metrics on legacy softwareProceedings of the 1992 conference of the Centre for Advanced Studies on Collaborative research - Volume 110.5555/962198.962209(113-131)Online publication date: 9-Nov-1992

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media