Softwaredesign umfasst die Konzeption und Planung einer
Softwarelösung und dient als Vorgabe für die
technische
Implementierung.
In
diesem Prozess werden die zuvor definierten Anforderungen in eine Form
gebracht, sodass sie direkt als Vorgabe für die technische
Umsetzung verwendet werden können. Dieser Prozess umfasst vor
allem folgende Schritte:
In der Planung der
Softwarearchitektur
werden die bestehenden Softwareteile und ihre Beziehungen beschrieben.
Dies umfasst auch die Beschreibung aller Umsysteme und deren
Schnittstellen.
Beispiel Systemarchitektur
In der Datenmodellierung
werden
alle (durch die Software zu verwaltenden) Objekte, deren Attribute und
deren Beziehungen beschrieben. Dieser Schritt umfasst die Erstellung
eines Entity-Relationsship-Modells welches später meistens
für die Umsetzung in einer relationalen Datenbank verwendet
wird.
Beispiel Datenmodellierung anhand eines Entity Relationship Diagramms
Im detailierten
funktionalen Design
wird das gewünschte Programmverhalten
genau
beschrieben. Hier kann z.B. UML (Unified
Modeling
Language) oder Pseudocode zum Einsatz
kommen.