From COBOL to OOP

Chapter 6: Object-Oriented Design

A big problem when working with object-oriented programming is to find the correct kind and number of classes. This chapter presents techniques to support this task.

6.1 Object-Oriented Design and UML

Abbot method, UML, CRC cards

This section deals with how to best divide a system into classes. The object-oriented design differs from the procedural design the stepwise refinement discussed in Section 2.4. In this case, we will first work out the particularities of the design and then discuss the Abbot method. Moreover, this section introduces tools, such as the Unified Modeling Language (UML) and CRC cards. These issues will be completed with a few useful tips and warnings about frequent design errors.

6.1.1 Comparison with the Procedural Design

The question of what the system uses to do something is in the foreground

Stepwise refinement can be applied to work out clean program logic that is easy to use but also sensitive to changes and not very friendly toward reusability. In an object-oriented design, what the system uses to do something is the focal point. The results are classes, forming core components, and several procedures (or classes) building on the former.

Central things first

The general approach is to first work out the things central to the task for example, in an accounting software, accounts, postings, or persons. Next, we consider what operations could be executed with these central things such as, creating an account, printing an account, or adding a posting entry. Also, we would have to think what information...

UNLIMITED FREE
ACCESS
TO THE WORLD'S BEST IDEAS

SUBMIT
Already a GlobalSpec user? Log in.

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.

Customize Your GlobalSpec Experience

Category: Integrated Development Environment (IDE)
Finish!
Privacy Policy

This is embarrasing...

An error occurred while processing the form. Please try again in a few minutes.