Skip to main content
Log in

Case Studies of Constructivist Comprehension in Software Engineering

  • Published:
Brain and Mind

Abstract

Program comprehension is an essential part of software engineering. The paper describes the constructivist theory of comprehension, a process based on assimilation and accommodation of knowledge. Assimilation means that the new facts are either added to the existing knowledge or rejected. Accommodation means that the existing knowledge is reorganized in order to absorb new facts. These processes are illustrated by case studies of knowledge-level reengineering of a legacy program and of incremental change. In both cases, we constructed preliminary knowledge from the program documentation, and then adjusted it by comprehending the actual code. The case studies supported constructivism as a suitable theory of program comprehension.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Biggerstaff, T. J., Mitbander, B. G. and Webster, D. E., 1994: Program understanding and the concept assignment problem, Comun.of ACM 37 May, 72-78.

  • Booch, G., Rumbaugh, J. and I. Jacobson, 1998: The Unified Modeling Language User Guide, Addison-Wesley, Reading, MA.

    Google Scholar 

  • Brooks, R., 1977: Towards a theory of the cognitive processes in computer programming, Int.J.Man-Machine Stud., 9, 737-751.

    Google Scholar 

  • Canfora, G., De Lucia, A. and Di Lucca, G. A., 1999: An incremental object-oriented migration strategy for RPG legacy systems, Int.J.Software Engineer.Knowledge Engineer. 9, 5-25.

    Google Scholar 

  • Chen, K. and Rajlich, V., 2000: Case study of feature location using dependence graph, in Proc.International Workshop on Program Comprehension, IEEE Computer Society Press, Los Alamitos, CA, pp. 241-249.

    Google Scholar 

  • Fjeldstad, R. K. and Hamlen, W. T., 1982: Application Program Maintenance Study: Report to our respondents, in G. Parikh and N. Zvegintzov, (eds.), Tutorial on Software Maintenance, IEEE Computer Society Press, Los Alamitos, CA, pp. 13-30.

    Google Scholar 

  • Jones, S. L. and Aitken, E. D., 1994: Convert3.0 User's Manual, ASI Systems International, Fort Walton Beach, FL.

    Google Scholar 

  • Kozaczynski, W. and Wilde, N., 1992: On the re-engineering of transaction systems, J.Software Maintenance 4, 143-162.

    Google Scholar 

  • Letovsky, S. and Soloway, E., 1986: Delocalized plans and program comprehension, IEEE Software, 3(3), 41-49. Mosaic Web site (source codes and documents). Available at: http://www.ncsa.uiuc.edu/SDG/ Software/Mosaic, accessed July 8, 2003

    Google Scholar 

  • Murphy, G., Notkin, D. and Sullivan, K. J., 2001: Software reflection models: Bridging the gap between design and implementation, IEEE Trans.Software Engineer. 27, 364-380.

    Google Scholar 

  • Novak, J. D., 1998: Learning, Creating, and Using Knowledge, Erlbaum, Mahwah, NJ.

    Google Scholar 

  • Piaget, J., (1954) The Construction of Reality in the Child, Basic Books, New York.

    Google Scholar 

  • Rajlich, V., Wilde, N., Buckellew, M. and Page, H., 2001: Software cultures and evolution, IEEE Comp. 34 September, 24-29.

  • von Glasersfeld, E., Radical Constructivism, The Falmer Press, London, 1995.

    Google Scholar 

  • von Mayrhauser, A. and Vans, A., 1993: From program comprehension to tool requirements for an industrial environment, in Proc.2ndWorkshop on ProgramComprehension, IEEE Computer Society Press, Los Alamitos, CA, 78-86.

    Google Scholar 

  • Wilde, N., Buckellew, M., Page, H. and Rajlich, V., 2001: A case study of feature location in unstructured legacy Fortran code, in Proc.Conf.on Software Maintenance and Reengineering, IEEE Computer Society Press, Los Alamitos, CA, pp. 68-76.

    Google Scholar 

  • Wilde, N. and Scully, M. C., 1995: Software reconnaissance: Mapping program features to code, J.Software Maintenance: Res.Pract. 7, 49-62.

    Google Scholar 

  • Wirfs-Brock, R., Wilkerson, B., Wiener, L. and Brock, R., 1990: Designing Object-Oriented Software, Prentice-Hall, Englewood Cliffs, NJ.

    Google Scholar 

  • Wittgenstein, L., 1953: Philosophical Investigations, Macmillan, New York.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Rajlich, V. Case Studies of Constructivist Comprehension in Software Engineering. Brain and Mind 4, 229–238 (2003). https://doi.org/10.1023/A:1025461813458

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1025461813458

Navigation