Abstraktion

Abstraktion bezeichnet das Weglassens von Einzelheiten und das Überführen auf etwas Allgemeineres oder Einfacheres. In der Welt der Informatik werden Probleme der realen Welt abstrakt betrachtet. Unwichtige Details und Ausnahmen werden weggelassen (vereinfacht bzw. abstrahiert). So entsteht ein vereinfachtes Model der realen Welt.

Neben dem Weglassen unwichtiger Details lässt sich ein großes und komplexes Problem auch vereinfachen, indem man es in viele kleine Probleme zerlegt. Jedes Problem für sich ist einfach zu lösen. Hat man alle Einzelprobleme gelöst, dann ist auch das gesamte Problem gelöst.

Aus diesem Ansatz leitet sich die objektorientierte Softwareentwicklung ab. Anstatt eine komplexes Probleme in einer Klasse mit womöglich einer Methode zu lösen, teilte man die Lösung in viele Klassen mit vielen Methoden auf. Jede Methode löst ein kleines überschaubares Problem. Alle Methoden aller Klassen ergeben die Lösung für ein komplexe Software.

Zur Laufzeit des Programms interagieren die Instanzen (Objekte) der Klassen miteinander und arbeiten zusammen. Die Zusammenarbeit entsteht durch das Aufrufen von Methoden. Diese Interaktion wird in der UML z.B. durch ein Sequenzdiagramm dargestellt.

Durch diesen Ansatz ist es möglich die beachtliche Komplexität eines Software-Projektes zu beherrschen. Mehrere Entwickler können an dem Projekt mitarbeiten, ohne Details eines für sich nicht wichtigen Problems zu kennen.