20 KiB
1. Einleitung
1.1 Ausgangssituation und Motivation
Die digitale Transformation stellt mittelständische Softwareunternehmen vor vielfältige Herausforderungen. Insbesondere gewachsene Legacy-Systeme, die über Jahre hinweg kontinuierlich erweitert wurden, erfordern zunehmend eine strategische Neuausrichtung. Diese Systeme bilden häufig das Rückgrat geschäftskritischer Prozesse, ihre technologische Basis entspricht jedoch nicht mehr den Anforderungen moderner Cloud- und Web-Architekturen. Die Migration solcher Systeme gestaltet sich komplex, da historisch gewachsene Funktionalitäten oft nicht vollständig dokumentiert sind und implizites Wissen bei einzelnen Entwickler:innen oder langjährigen Mitarbeiter:innen verankert ist.
Die c-entron GmbH steht exemplarisch für diese Herausforderung. Das mittelständische Softwareunternehmen mit Sitz in Ulm entwickelt und vertreibt seit über zwei Jahrzehnten eine Windows-basierte ERP-Software, die speziell für IT-Systemhäuser konzipiert wurde. Die Software deckt ein breites Funktionsspektrum ab – von der Auftragsverwaltung über Lagerhaltung bis hin zur Fakturierung und Projektabrechnung. Über die Jahre ist eine umfangreiche, funktionsreiche Lösung entstanden, die bei der Zielgruppe etabliert ist und einen hohen Reifegrad aufweist.
Mit einer expansiven Vertriebsstrategie und dem Ziel, neue Marktsegmente zu erschließen, steht die c-entron GmbH jedoch vor der Notwendigkeit, ihre Software-Architektur grundlegend zu modernisieren. Die native Windows-Anwendung stößt an Grenzen der Skalierbarkeit – sowohl in der Entwicklung als auch im Betrieb und Roll-out. Kunden erwarten zunehmend webbasierte, plattformunabhängige Lösungen mit modernen Benutzeroberflächen und flexiblen Deployment-Optionen. Eine Migration zu einer modernen, webbasierten Plattform ist daher unumgänglich geworden.
Diese Modernisierung erfordert jedoch nicht lediglich eine technologische Neuentwicklung, sondern setzt eine umfassende Analyse der bestehenden Funktionalität voraus. Genau hier zeigt sich eine zentrale Herausforderung vieler Legacy-Systeme: Die funktionalen und nicht-funktionalen Anforderungen wurden über die Jahre nie systematisch dokumentiert. Was im Code implementiert ist, existiert oft nicht in strukturierter Form als Anforderungsspezifikation. Dies erschwert eine gezielte und vollständige Migration erheblich.
Parallel zu dieser praktischen Herausforderung hat sich in den letzten Jahren ein neues technologisches Paradigma etabliert: Large Language Models (LLMs) wie GPT-4, Claude oder Code-Llama haben gezeigt, dass sie in der Lage sind, Code zu verstehen, zu analysieren und zu dokumentieren. Diese Modelle bieten potenziell neue Möglichkeiten, die Lücke zwischen implizitem Wissen in Codebasen und expliziter Anforderungsdokumentation zu schließen. Der Einsatz von LLMs für Reverse Requirements Engineering – also die nachträgliche Extraktion von Anforderungen aus bestehendem Code – ist jedoch noch wenig erforscht und in der Praxis kaum systematisch erprobt.
Genau an dieser Schnittstelle zwischen praktischem Bedarf und technologischer Innovation setzt die vorliegende Arbeit an. Sie untersucht, wie KI-gestützte Verfahren eingesetzt werden können, um aus Legacy-Software strukturierte Requirements zu extrahieren und damit eine fundierte Basis für Migrationsprojekte zu schaffen. Die Arbeit adressiert damit sowohl eine wissenschaftliche Forschungslücke als auch einen konkreten Anwendungsfall mit hoher praktischer Relevanz für mittelständische Softwareunternehmen.
1.2 Problemstellung
Die zentrale Problemstellung dieser Arbeit ergibt sich aus der fehlenden Anforderungsdokumentation der bestehenden ERP-Software der c-entron GmbH. Diese Situation ist symptomatisch für viele über Jahre gewachsene Softwaresysteme: Während der kontinuierlichen Weiterentwicklung lag der Fokus auf der Implementierung neuer Features und der Behebung von Fehlern. Anforderungen wurden primär implizit durch Code-Commits, Ticket-Systeme und direktes Kundenfeedback kommuniziert, jedoch nicht systematisch in Form strukturierter Requirements erfasst.
Die fehlende Dokumentation erschwert die gezielte Migration erheblich, da sowohl funktionale Redundanzen als auch implizit verankerte Prozesse nur durch aufwendige manuelle Analysen identifiziert werden können. Konkret führt dies zu folgenden Problemen:
Re-Implementationsfehler und unvollständige Migration: Ohne vollständige Kenntnis aller implementierten Funktionen besteht das Risiko, dass bei der Neuentwicklung Features übersehen oder falsch interpretiert werden. Insbesondere Edge Cases, Sonderfälle und historisch gewachsene Workarounds sind häufig nur im Code ersichtlich und werden in manuellen Reviews leicht übersehen. Dies kann dazu führen, dass geschäftskritische Prozesse bei Kunden nach der Migration nicht mehr korrekt funktionieren.
Hohe technische Schuld und Ineffizienzen: Die Analyse und das Verständnis der Legacy-Codebasis binden erhebliche Entwicklungsressourcen. Entwickler:innen müssen Code lesen, verstehen und dokumentieren – ein zeitintensiver Prozess, der vom eigentlichen Entwickeln der neuen Lösung ablenkt. Zudem besteht die Gefahr, dass veraltete oder redundante Funktionalitäten unreflektiert in die neue Architektur übernommen werden, anstatt sie kritisch zu hinterfragen und zu modernisieren.
Implizites Wissen und Wissenstransfer: Ein erheblicher Teil des Domänenwissens ist bei einzelnen langjährigen Mitarbeiter:innen verankert, die die Entstehungsgeschichte bestimmter Features kennen. Dieses implizite Wissen ist schwer zu erfassen und zu formalisieren. Bei Personalwechseln oder in größeren Teams führt dies zu Wissenslücken und Abhängigkeiten von Einzelpersonen.
Komplexität gewachsener Codebasen: Die über Jahre gewachsene Codebasis der c-entron GmbH weist typische Charakteristika von Legacy-Systemen auf: verschachtelte Abhängigkeiten, historisch bedingte Architekturentscheidungen, unterschiedliche Code-Stile verschiedener Entwicklungsphasen und eine enge Kopplung an spezifische Technologien. Diese Komplexität erschwert nicht nur das Verständnis, sondern auch die Extraktion klarer, modularer Anforderungen für die Neuimplementierung.
Fehlende Traceability: Ohne strukturierte Requirements fehlt die Nachvollziehbarkeit, warum bestimmte Funktionen existieren, welche Geschäftsprozesse sie unterstützen und welche Stakeholder-Anforderungen sie erfüllen. Dies erschwert sowohl die Priorisierung im Migrationsprojekt als auch die spätere Wartung und Weiterentwicklung der neuen Software.
Die manuelle Erhebung und Dokumentation aller Anforderungen wäre mit einem prohibitiv hohen Aufwand verbunden. Hier könnten KI-gestützte Verfahren, insbesondere Large Language Models mit ihren Code-Verständnis-Fähigkeiten, einen wesentlichen Beitrag leisten. Die zentrale Fragestellung ist daher, inwieweit LLMs in der Lage sind, aus bestehendem Quellcode systematisch und strukturiert Requirements zu extrahieren, die als Grundlage für eine Neuentwicklung dienen können.
Diese Problemstellung ist nicht nur für die c-entron GmbH relevant, sondern betrifft eine Vielzahl mittelständischer Softwareunternehmen, die vor ähnlichen Modernisierungsherausforderungen stehen. Die Entwicklung eines systematischen, KI-gestützten Ansatzes für Reverse Requirements Engineering könnte daher einen signifikanten Beitrag zur Bewältigung dieser weit verbreiteten Herausforderung leisten.
1.3 Zielsetzung
Das übergeordnete Ziel dieser Masterarbeit ist die Entwicklung, Implementierung und Evaluation eines KI-gestützten Verfahrens für Reverse Requirements Engineering bei Legacy-Software. Konkret soll ein LLM-basierter Agent konzipiert und prototypisch umgesetzt werden, der in der Lage ist, aus der bestehenden Codebasis der c-entron GmbH strukturierte, vollständige und nachvollziehbare Requirements zu extrahieren.
Die Arbeit verfolgt dabei mehrere spezifische Teilziele:
Konzeptionelle Entwicklung eines Prozessmodells: Es soll ein theoretisch fundiertes und praktisch anwendbares Prozessmodell entwickelt werden, das beschreibt, wie Unternehmen systematisch den Übergang von Legacy-Software zu modernen Architekturen mithilfe von KI-gestützter Anforderungserhebung gestalten können. Dieses Prozessmodell soll die verschiedenen Phasen – von der Vorbereitung über die Analyse bis zur Validierung – strukturieren und Best Practices sowie kritische Erfolgsfaktoren identifizieren.
Technologische Evaluation und Auswahl: Im Rahmen der Arbeit sollen aktuelle Large Language Models hinsichtlich ihrer Eignung für das Reverse Requirements Engineering evaluiert werden. Dabei sind Kriterien wie Code-Verständnis, Kontextfenster-Größe, Kontrollierbarkeit, Datenschutz-Compliance und Kosten zu berücksichtigen. Die Evaluation soll zu einer begründeten Auswahl eines Hauptmodells sowie gegebenenfalls ergänzender Modelle für spezifische Teilaufgaben führen.
Prototypische Implementierung eines LLM-Agenten: Basierend auf der Konzeption soll ein funktionsfähiger Prototyp entwickelt werden, der die Codebasis der c-entron GmbH analysieren und daraus Requirements extrahieren kann. Der Agent soll dabei sowohl funktionale als auch nicht-funktionale Anforderungen identifizieren, diese strukturiert beschreiben und mit Traceability-Metadaten anreichern, die eine Nachvollziehbarkeit zur Codebasis ermöglichen.
Integration von Stakeholder-Wissen: Da nicht alle Anforderungen – insbesondere nicht-funktionale Aspekte wie Performance-Erwartungen, Sicherheitsanforderungen oder Usability-Präferenzen – vollständig aus dem Code ableitbar sind, soll ein hybrider Ansatz verfolgt werden. Durch strukturierte Interviews mit relevanten Stakeholdern (Entwickler:innen, Product Owner, Kunden) sollen diese Aspekte erhoben und mit den KI-generierten Requirements abgeglichen und angereichert werden.
Systematische Evaluation: Die Qualität der extrahierten Requirements soll anhand definierter Kriterien systematisch evaluiert werden. Dabei sollen sowohl quantitative Metriken (z.B. Vollständigkeit im Vergleich zu einem Referenzset, Anzahl identifizierter Requirements) als auch qualitative Bewertungen durch Expert:innen der c-entron GmbH einfließen. Zentrale Evaluationskriterien sind Vollständigkeit, Verständlichkeit, Redundanzfreiheit, Stakeholder-Alignment und Aufwandsreduktion im Vergleich zu rein manuellen Verfahren.
Governance und Compliance: Da der Einsatz externer KI-Dienste mit sensiblen Codedaten verbunden ist, sollen auch Aspekte des Datenschutzes, des IP-Schutzes und der IT-Sicherheit adressiert werden. Die Arbeit soll Handlungsempfehlungen ableiten, wie Unternehmen KI-gestützte Analysen unter Einhaltung regulatorischer Anforderungen und Sicherheitsrichtlinien durchführen können.
Praxistransfer und Handlungsempfehlungen: Die Erkenntnisse aus der prototypischen Umsetzung und Evaluation sollen in konkrete Handlungsempfehlungen für die c-entron GmbH überführt werden. Dabei geht es sowohl um die operative Nutzung des entwickelten Ansatzes im Migrationsprojekt als auch um die potenzielle Integration in bestehende Toolchains (z.B. Jira, Confluence). Zudem soll die Übertragbarkeit auf andere Kontexte und Unternehmensgrößen diskutiert werden.
Zusammenfassend verfolgt die Arbeit das Ziel, einen wissenschaftlich fundierten und praktisch erprobten Beitrag zur Bewältigung einer zentralen Herausforderung bei der Modernisierung von Legacy-Software zu leisten: die systematische und effiziente Rekonstruktion von Anforderungen durch den Einsatz moderner KI-Technologien.
1.4 Forschungsleitfragen
Zur strukturierten Bearbeitung der Zielsetzung werden folgende Forschungsleitfragen formuliert, die sich an den zentralen Aspekten der Arbeit orientieren:
F1: Wie können Large Language Models systematisch für Reverse Requirements Engineering in Legacy-Software eingesetzt werden?
Diese Frage adressiert die grundlegende Konzeption des Ansatzes. Sie umfasst sowohl die technische Ebene (Wie müssen LLMs konfiguriert und gesteuert werden? Welche Prompt-Engineering-Strategien sind erfolgreich?) als auch die methodische Ebene (Welche Schritte sind notwendig? Wie wird der Prozess strukturiert? Welche Rolle spielen menschliche Expert:innen?). Die Beantwortung dieser Frage erfordert die Entwicklung eines Prozessmodells, das beschreibt, wie der KI-Einsatz in den Gesamtkontext der Anforderungserhebung eingebettet wird.
F2: Welche funktionalen und nicht-funktionalen Anforderungen lassen sich durch eine Kombination aus KI-gestützter Codeanalyse und Stakeholder-Interviews extrahieren?
Diese Frage fokussiert auf die inhaltliche Dimension der extrahierten Requirements. Sie untersucht, welche Arten von Anforderungen durch LLMs aus Code identifizierbar sind und wo die Grenzen der automatisierten Extraktion liegen. Insbesondere soll analysiert werden, wie funktionale Requirements (Was soll das System tun?) und nicht-funktionale Requirements (Wie soll das System beschaffen sein?) aus unterschiedlichen Quellen – Code, Dokumentation, Interviews – zusammengeführt werden können. Die hybride Vorgehensweise aus KI-Analyse und menschlichem Input steht hier im Fokus.
F3: Wie bewerten Fachexpert:innen die Qualität und Vollständigkeit der durch KI gewonnenen Requirements?
Diese Frage adressiert die Evaluation des entwickelten Ansatzes aus Sicht der praktischen Anwendbarkeit. Sie untersucht, inwieweit die extrahierten Requirements den Qualitätsansprüchen von Software-Entwickler:innen, Projektmanager:innen und anderen Stakeholdern genügen. Dabei sollen sowohl objektive Kriterien (z.B. Vollständigkeit im Vergleich zu einem Referenzset) als auch subjektive Einschätzungen (Verständlichkeit, Präzision, Nützlichkeit für die Weiterentwicklung) erfasst werden. Diese Frage ist zentral für die Beurteilung, ob der entwickelte Ansatz in der Praxis eingesetzt werden kann.
F4: Welche Chancen und Grenzen ergeben sich beim KI-gestützten Requirements Engineering in Legacy-Umgebungen?
Diese Frage nimmt eine kritisch-reflektierende Perspektive ein und untersucht sowohl die Potenziale als auch die Limitationen des Ansatzes. Chancen können sich etwa in der Effizienzsteigerung, der Systematisierung oder der Entdeckung bisher unbekannter Abhängigkeiten ergeben. Grenzen zeigen sich möglicherweise bei implizitem Wissen, das nicht im Code abgebildet ist, bei der Zuverlässigkeit von LLM-Ausgaben (Halluzinationen) oder bei spezifischen technischen Einschränkungen (Kontextfenster-Größe, Kosten). Die Beantwortung dieser Frage liefert wichtige Erkenntnisse für die Einordnung der Ergebnisse und die Ableitung von Handlungsempfehlungen.
Diese vier Forschungsleitfragen strukturieren die Arbeit und leiten sowohl die theoretische Fundierung als auch die empirische Untersuchung. Ihre Beantwortung erfolgt durch die Kombination aus Literaturanalyse, technologischer Evaluation, prototypischer Implementierung und systematischer Validierung im Unternehmenskontext der c-entron GmbH.
1.5 Aufbau der Arbeit
Die vorliegende Arbeit ist in acht Kapitel gegliedert, die aufeinander aufbauen und einen systematischen Weg von der theoretischen Fundierung über die praktische Umsetzung bis zur kritischen Reflexion beschreiben.
Kapitel 1 – Einleitung führt in die Thematik ein, beschreibt die Ausgangssituation der c-entron GmbH, formuliert die Problemstellung und leitet daraus die Zielsetzung sowie die Forschungsleitfragen ab.
Kapitel 2 – Theoretische Grundlagen schafft das theoretische Fundament der Arbeit. Es werden zunächst die Konzepte des Requirements Engineering und des Reverse Requirements Engineering erläutert, wobei der Fokus auf Qualitätskriterien für Requirements und den besonderen Herausforderungen bei Legacy-Software liegt. Anschließend wird der Stand der Technik zu Large Language Models im Software Engineering aufgearbeitet. Dabei werden die Funktionsweise, Fähigkeiten und Grenzen aktueller Modelle (GPT-4o, Claude 3.5, Code-Llama) diskutiert. Das Kapitel schließt mit einer systematischen Analyse des Forschungsstands zu KI-gestütztem Requirements Engineering und Legacy-Modernisierung ab und identifiziert die Forschungslücke, die diese Arbeit adressiert.
Kapitel 3 – Fallstudie c-entron GmbH stellt den Unternehmenskontext detailliert vor. Es beschreibt das Geschäftsmodell, die Zielgruppe und die technologischen Charakteristika der bestehenden ERP-Software. Die geplante Migrationsstrategie wird ebenso erläutert wie die spezifischen Herausforderungen, die sich aus der gewachsenen Codebasis ergeben. Dieses Kapitel schafft das Verständnis für den konkreten Anwendungsfall und die praktischen Rahmenbedingungen der Arbeit.
Kapitel 4 – Konzeption und methodisches Vorgehen entwickelt das zentrale Prozessmodell für KI-gestütztes Reverse Requirements Engineering. Zunächst werden die Anforderungen an das Verfahren definiert – sowohl funktional als auch nicht-funktional. Anschließend wird das Prozessmodell mit seinen verschiedenen Phasen, Aktivitäten und Rollen beschrieben. Die Technologieauswahl und -evaluation wird dokumentiert, wobei die Entscheidung für spezifische LLMs begründet wird. Das Kapitel beschreibt zudem die methodische Einbindung von Stakeholdern durch Interviews und die Integration der Datengrundlagen (Code-Repositories, Dokumentation, Ticket-Systeme).
Kapitel 5 – Prototypische Umsetzung dokumentiert die technische Implementierung des LLM-Agenten. Es wird die Architektur des Systems beschrieben, einschließlich der einzelnen Komponenten für Code-Analyse, Requirements-Extraktion und Traceability. Die Integration in bestehende Toolchains (Jira, Confluence) wird konzeptionell skizziert. Zudem werden die getroffenen Maßnahmen zu Governance, Datenschutz und IP-Schutz dargelegt, um den Einsatz im Unternehmenskontext rechtskonform zu gestalten.
Kapitel 6 – Evaluation präsentiert die systematische Bewertung des entwickelten Ansatzes. Nach Darstellung des Evaluationsdesigns und der definierten Qualitätskriterien (Vollständigkeit, Verständlichkeit, Redundanzfreiheit, Stakeholder-Alignment, Aufwandsreduktion) werden die Durchführung und die Ergebnisse der Evaluation detailliert beschrieben. Dies umfasst sowohl quantitative Messungen als auch qualitative Expertenreviews. Die Ergebnisse werden strukturiert aufbereitet und bilden die empirische Basis für die nachfolgende Diskussion.
Kapitel 7 – Diskussion interpretiert die Evaluationsergebnisse vor dem Hintergrund der Forschungsleitfragen. Es werden die Potenziale des KI-gestützten Ansatzes erörtert – etwa in Bezug auf Effizienzgewinne, Systematisierung und Vollständigkeit. Gleichzeitig werden Limitationen kritisch reflektiert, darunter technische Einschränkungen, Zuverlässigkeitsfragen und organisatorische Voraussetzungen. Das Kapitel leitet aus den Erkenntnissen Implikationen sowohl für die wissenschaftliche Forschung als auch für die praktische Anwendung in Unternehmen ab.
Kapitel 8 – Fazit und Ausblick fasst die zentralen Erkenntnisse der Arbeit zusammen und beantwortet die eingangs formulierten Forschungsleitfragen. Es werden konkrete Handlungsempfehlungen für die c-entron GmbH formuliert, die sowohl den operativen Einsatz des Prototyps als auch die Weiterentwicklung des Ansatzes betreffen. Das Kapitel schließt mit einem Ausblick auf zukünftige Forschungsfelder und Entwicklungsperspektiven im Bereich KI-gestütztes Requirements Engineering.
Diese Gliederung gewährleistet eine systematische Bearbeitung der Forschungsfragen und verbindet theoretische Fundierung mit praktischer Anwendung. Die Fallstudie bei der c-entron GmbH dient dabei als roter Faden, der alle Kapitel miteinander verknüpft und die wissenschaftlichen Erkenntnisse in einen konkreten Praxiskontext einbettet.