Arten von Automatisierung

Es gibt mehrere Arten von Automatisierung bei der Entwicklung von Software. Alle im folgenden aufgeführten Arten werden bei unserer Projektarbeit, zum Teil nur im Bedarfsfall, eingesetzt. Die letztgenannte (MDSD) verspricht einen zusätzlichen, ähnlich hohen Produktivitätsgewinn wie die erstgenannte (Höhere Programmiersprachen + Compiler).

  • Erzeugen von Maschinencode/Bytecode durch Compiler – dies ist die bekannteste und am weitesten verbreitete Art der Automatisierung
  • Dynamische Erweiterung von Bytecode während des Ladens desselbigen – auch Bytecode-Enhancement genannt
  • Continuous Integration – automatisches Bauen von Software und Durchführen von Unit-Tests
  • Erzeugen von textuellen und visuellen Reports (Abhängigkeiten von Klassen und Modulen, Entwicklungsfortschritt, Quellcode-Analyse, Test-Ergebnisse, …)
  • Einmaliges Erzeugen von Artefakten durch Wizards
  • Wiederholbares Erzeugen von Artefakten durch Umwandlung von Artefakten einer Abstraktions-Ebene in andere Artefakte derselben Abstraktionsebene (Cross-Compiler, Präprozessoren, Daten-Transformatoren)
  • Wiederholbares Erzeugen von Artefakten durch Umwandlung von Artefakten einer höheren Abstraktions-Ebene in andere Artefakte einer niedereren Abstraktionsebene (MDSD = Model-Driven Software Development)

MDSD (Model-Driven Software Development)

MDSD ist ein Oberbegriff für Techniken, die automatisiert, aus formalen Modellen lauffähige Software erzeugen. Dabei werden sogenannte domänenspezifische Sprachen eingesetzt (auch Modellierungssprache oder Modellierungsstil genannt). Damit wird die Software oder Teile hiervon auf einer höheren, abstrakteren Ebene als die einer höheren Programmiersprache beschrieben. Als Modell kann jegliche Information dienen, die in strukturierter Form vorliegt und zur Beschreibung der Software oder von Teilen davon geeignet ist. Eine weiterführende Beschreibung finden Sie hier. Auch in unserer Linksammlung finden Sie weiterführende Informationen.