KI und Software-Engineering

Eine Symbiose der Zukunft

25. Januar 2024

Jean Allisat


Software-Engineerings im Zeitalter der KI

In der Welt des Software-Engineerings fühlen wir uns oft wie Pioniere, die gerade lernen, Raketen zu fliegen.

Die Faszination für Künstliche Intelligenz (KI) ist allgegenwärtig und verändert die Art und Weise, wie wir über Programmierung und Systementwicklung denken. Doch die Vorstellung, dass KI das Software-Engineering ersetzen könnte, ist so weit von der Realität entfernt wie die Erde vom Mars. Software-Engineering ist mehr als nur das Schreiben von Code; es ist eine Kombination aus Kunst und Wissenschaft, die Problemlösung, Design und das Managen von Komplexität umfasst [2].

Die KI mag in der Lage sein, Code zu generieren oder Fehler zu beheben, aber sie kann nicht die kreative und kritische Denkweise eines erfahrenen Software-Ingenieurs ersetzen. Es reicht eben nicht aus, dass Dinge nur für den Moment funktionieren. Sie sollen dauerhaft funktionieren, Sicherheit bieten und wachsen können. Es muss jemanden geben, der dafür Verantwortung übernimmt, sich kümmert und Erfahrung damit hat, mit Risiken umzugehen. Wie ein neues Paar Schuhe, das uns hilft, schneller zu laufen, ist KI ein Werkzeug, das uns unterstützt, aber nicht die gesamte Last unserer Arbeit trägt. Der Marathon des Software-Engineerings erfordert Ausdauer, Anpassungsfähigkeit und ein tiefes Verständnis für die zugrundeliegenden Prozesse, die KI (noch) nicht bieten kann.

Wissenschaftliche Methoden im Software-Engineering

Die Anwendung wissenschaftlicher Methoden im Software-Engineering ist entscheidend, um effiziente und wirtschaftliche Lösungen zu entwickeln.

Es geht nicht darum, zu Physikern zu werden, die alles mit höchster Präzision messen, sondern um einen pragmatischen Ansatz zur Problemlösung. Durch die Anwendung der wissenschaftlichen Methode – Beobachten, Hypothesen aufstellen, Vorhersagen treffen und Experimentieren – können Software-Ingenieure das Risiko vorschneller Schlüsse minimieren und qualitativ hochwertigere Arbeit leisten [2].

Die fünf Techniken – Iteration, Feedback, Inkrementalismus, Experimente und Empirismus – sind das Fundament für diesen lernzentrierten Ansatz [2]. Sie ermöglichen es uns, komplexe Systeme schrittweise zu entwickeln und auf Erfolge und Misserfolge zu reagieren. Dieser evolutionäre Ansatz ist entscheidend, um mit der inhärenten Komplexität von Softwareprojekten umzugehen und Fortschritte zu erzielen, selbst wenn Antworten und manchmal sogar die Richtung unsicher sind.

Software Engineering im Wandel

Die Bezeichnung "Software Engineering" hat sich in der Branche gewandelt und wird oft fälschlicherweise mit dem reinen Schreiben von Code gleichgesetzt [1][3].

Doch echtes Engineering bedeutet, Dinge zu schaffen, die funktionieren, und Verfahren anzuwenden, die die Qualität der Arbeit verbessern [2]. Die nächste Generation von Sprachmodellen wird zweifellos die Art und Weise, wie Programmcode entsteht, verändern, aber sie wird das Software Engineering nicht überflüssig machen. Vielmehr wird sie die Rolle des Software-Ingenieurs stärken, der die Übersetzung von Konzepten in Code überwacht und steuert.

Für Entscheidungsträger und Auftraggeber von Softwareprojekten bedeutet dies, dass Fachkräfte mit echten Software-Engineering-Fähigkeiten wichtiger denn je sind. Es wäre fahrlässig, in den neuen Möglichkeiten der KI mehr zu sehen, als sie derzeit bieten kann. Software-Entwickler ohne formale Ausbildung im IT-Bereich sollten sich daher intensiv mit dem Thema Software-Engineering auseinandersetzen oder sogar einen Abschluss in einer Informatikdisziplin in Betracht ziehen [4].

Quellen

[1]: Marco, D. (2023, March 29). There is no engineering in software engineering. Retrieved January 13, 2024, from https://mfdela.medium.com/there-is-no-engineering-in-software-engineering-85fb5e262e9e

[2]: Farley, D. (2023). Modern Software Engineering (1st ed.). Addison Wesley.

[3]: The Atlantic. (2015, November). Programmers: Stop Calling Yourselves Engineers. Retrieved March 2023, from https://www.theatlantic.com/technology/archive/2015/11/programmers-should-not-call-themselves-engineers/414271/

[4]: Statista. (2022, July). Levels of formal education for software developers, worldwide, as of 2022. Retrieved March 2023, from https://www.statista.com/statistics/793568/worldwide-developer-survey-level-formal-education/


Folge uns auf unseren Social Media Kanälen und erfahre mehr über unsere Praxispartnertätigkeiten und Karrieremöglichkeiten.

Lesen Sie weiter, um mehr über uns zu erfahren.


KI und Software-Engineering

25. Januar 2024


Handbücher vs. ChatGPT

20. Juli 2023

Nach oben scrollen