Teaching Software Design Using Both Functional and Object‐Oriented Decomposition

Frank A. Cioch · Computer Science Education · 1990

For the past decade, functional decomposition, together with the conventional modularization criterion, has dominated the way that software design has been taught in academia. With the introduction of the Ada and Modula‐2 programming languages, there has been much interest in object‐oriented design, which centers around the use of the data abstraction modularization criterion to perform object‐oriented decomposition. Object‐oriented decomposition results in a product that is more reusable, understandable, and modifiable than that produced using only functional decomposition. In this article it is proposed that object‐oriented decomposition is not only useful in developing a higher quality product, but it is also useful in teaching software design. Teaching design using both functional and object‐oriented decomposition is not difficult to implement and would ameliorate common problems students have in learning software design: confusing design and coding and the related difficulty in making the transition from smaller to larger programs.

Read the paper · More papers on PaperTik