Lecture overview -- Keyboard shortcut: 'u'  Previous page: Introduction [Section] -- Keyboard shortcut: 'p'  Next page: Kinds of understanding -- Keyboard shortcut: 'n'  Lecture notes - all slides and notes together  slide -- Keyboard shortcut: 't'  Help page about these notes  Alphabetic index  Course home  Page 2 : 47
Elucidative Programming
Introduction

We start this talk with a view on two basic program comprehension approaches. We here distinguish between whether program comprehension has been written on before hand, or whether the understanding is going to be extracted from the source program.

Program comprehension plays a major role in any non-trivial software development effort

  • Two basic program comprehension approaches

    • Prevenient

      • The program understanding is written as a forethought before, during, or after the development of the source program

    • Posterior

      • The program understanding is extracted from the source program by means of special reverse engineering tools

Here we want to make a distinction which represents when the program comprehension is dealt with relative to the time where it is actually needed.

The prevenient approach represent the cases in which some documentation is explicitly written before it is needed.

The posterior approach, on the other hand, represent the cases in which the comprehension is attempted to be extracted from the program, when it is needed typically in a late phases of the program life time.

The prevenient approach to program comprehension is hypothesized to be a very good investment seen in relation to the total life time costs