next up previous contents
Nächste Seite: Beispiel einer Problemanalyse Aufwärts: Programmiertechnik Vorherige Seite: Was ist ein Programm?   Inhalt

Was ist Programmieren?

Aus dem vorigen Abschnitt ist deutlich geworden, daß beim Konstruieren eines Programms nicht die Umsetzung eines Lösungsentwurfs in Anweisungen an das Rechnersystem die schwierigste Arbeit ist, sondern das Entwerfen einer angemessenen Lösung für ein Problem. Es gibt verschiedene Vorgehensmodelle zur Entwicklung von Software. Wir wollen hier das Phasenmodell beschreiben. Es orientiert sich am Lebenszyklus von Software (engl. software-lifecycle). Die Phasen bauen grundsätzlich aufeinander auf, aber es gibt auch Rückkopplungen, die dazu führen können, daß Teile einer vorherigen Phase überarbeitet werden müssen.

Damit ein Softwaresystem von verschiedenen Personen bearbeitet werden kann und die Wartung mit vertretbarem Aufwand möglich ist, muß eine fortlaufende Dokumentation angefertigt werden. Das erleichtert auch die Fehlersuche und -berichtigung während der Erstellung eines Softwareproduktes.

Abschnitt 2.6 zeigt eine Methode zum Programmentwurf -- die Nutzung von Struktogrammen.

1mm
\begin{picture}(160,230)
\put(110,0) {\framebox (50,30){}}
\put(135,25) {\makebo...
... e  \\
 D o k u m e n t a t i o n}}
\end{picture}

Damit läßt sich Programmieren, also das Aufsuchen einer Problemlösung und ihre vollständige Beschreibung, gut vergleichen mit dem systematischen Konstruieren eines technischen Produkts, z.B. Brücke, Auto, CD-Player. Man kann allgemein sagen: Durch Konstruktion eines Programms wird aus der Universalmaschine Rechnersystem eine Spezialmaschine, beispielsweise zur Auswertung von Meßreihen oder zur Temperaturregelung in einem Reaktor.

Wer Maschinen konstruiert, z.B. Roboter oder Lenkwaffen, muß darauf gefaßt sein, daß er für die Auswirkungen des Einsatzes seiner Maschinen mit verantwortlich gemacht wird. Das gilt für Programme um so mehr, als sich solche rechnergestützten Spezialmaschinen ungemein leicht ausweiten und miteinander verknüpfen lassen.

Desweiteren gibt es Programme und Programmsysteme, z.B. zur Büroautomatisierung oder zur Optimierung des öffentlichen Personenverkehrs, die als Spezialmaschinen nur ungenügend zu beschreiben sind. Die Konstruktion solcher Programme hat nicht nur Auswirkungen auf Arbeitsplätze, sondern greift unmittelbar in Arbeitsabläufe und zwischenmenschliche Kontakte ein. Beim Konstruieren solcher Programme treten also auch vielfältige organisatorische, arbeitsrechtliche, soziale oder politische Fragen auf.


next up previous contents
Nächste Seite: Beispiel einer Problemanalyse Aufwärts: Programmiertechnik Vorherige Seite: Was ist ein Programm?   Inhalt
Lars Tornow 2003-04-02