Entwicklungssoftware und Entwicklungsumgebungen
Um Programme jeglicher Art zu erstellen, ist eine spezielle Software nötig, die Entwicklungssoftware, die direkt auf dem Betriebssystem aufsetzt. Entwicklungssoftware besteht aus Komponenten für das Erstellen, das Testen und das Ausführen der zu entwickelnden Programme (Hansen & Neumann, 2001, S. 151).
Der Umfang von Entwicklungssoftware reicht von Einzelkomponenten bis hin zu ganzen Entwicklungsumgebungen, die für eine bestimmte Programmiersprache entworfen worden sind (Hansen & Neumann, 2001, S. 935).
Entwicklungsumgebungen bestehen aus folgenden Komponenten:
- (Text-)
Editor: Programm zum Erstellen, Lesen und Ändern von Dateien
Compiler bzw.
Interpreter: Werkzeuge zum Übersetzen des
Quellcodes in Maschinensprache
Linker: Werkzeug Zusammenführung von Dateien in Programme
Debugger: Werkzeug zur Fehlerbehebung
- Quelltextformatierungsfunktion
Durch die integrierten Werkzeuge wird der Programmierer bei seiner Entwicklungsarbeit unterstützt, indem er komplexe Entwicklungsaufgaben besser handhaben kann oder indem ihm Routineaufgaben durch die Entwicklungsumgebung abgenommen werden. Aufwändige Routinetätigkeiten entfallen so.
Die Sicherstellung der Qualität sowohl im Entwicklungsprozess als auch des fertigen Softwareprodukts und die Effizienz des Entwicklungsprozesses sind wesentliche Ziele von Entwicklungsumgebungen.

Um den gesamten Prozess der Software-Entwicklung zu unterstützen, wurden sogenannten CASE-Tools entwickelt (CASE: Computer-Aided Software Engineering), die den Programmierer bei der Planung, dem Entwurf, Implementierung
und der Dokumentation spezielle Werkzeuge zur Verfügung stellt. CASE-Tools haben meist eine grafische Benutzeroberfläche und unterstützen häufig ganze Entwicklerteams.

Ein im deutschsprachigen Raum sehr bekanntes CASE-Tool ist das ARIS-Toolset von IDS.