Die objekt-orientierte Modularisierung hat mit dem herkömmlichen Ansatz viele Dinge gemein: Sie benutzt dieselben Datenstrukturen und dieselben Algorithmen. Der wesentliche Unterschied besteht darin, wie das Gesamtsystem in Module aufgeteilt wird.
Die herkömmliche Modularisierung benutzte als Kriterium, jeden größeren Zwischenschritt zu einem Modul zu machen. Man kann sagen: um den ersten Schritt zu tun, erstellt man ein Datenflußdiagramm. Dies ist der meist gebräuchliche Ansatz zur Modularisierung und resultiert aus der Entwurfsmethode, so lange von einem groben Flußdiagramm zu einem verfeinertem Flußdiagramm überzugehen, bis das Diagramm fein genug ist, um implementiert zu werden. Dieser Ansatz funktioniert auch wirklich gut, aber nur bis zu einer Programmgröße von etwa 5000 bis 10000 Zeilen. Um darüber hinaus zu gehen, braucht man neue Konzepte.
Der objekt-orientierte Ansatz benutzt als Kriterium, jede Entwurfsentscheidung in einem Modul zu verbergen. Wir werden gleich sehen, wie das funktioniert.
In der herkömmlichen Modularisierung manipulieren oder verwenden zum Beispiel vier Module die Titeltabelle. Alle diese Module müssen wissen, daß die Titeltabelle als Array im Hauptspeicher implementiert worden ist, d.h., sie arbeiten nur dann korrekt, wenn sie die Datenstruktur der Titeltabelle kennen. Im objekt-orientierten Ansatz gibt es genau einen Modul, der die Titeltabelle direkt manipuliert. Dieser Modul verbirgt die interne Struktur der Titeltabelle vor den anderen Modulen im System. Alle anderen Module sind komplett unabhängig von der Struktur der Titeltabelle.
Wir werden später einige Vorteile des objekt-orientierten Ansatzes kennenlernen, jetzt aber wollen wir die objekt-orientierte Modularisierung unseres Systems durchführen.