From 2e6a75f93c3447276f1407fdfaf42dee85dbc778 Mon Sep 17 00:00:00 2001 From: "christoph.schwoerer" Date: Tue, 17 Feb 2026 08:27:56 +0100 Subject: [PATCH] Kapitel 2 draft --- .vscode/launch.json | 15 + Abbildungen/abb_2_1_feedforward_nn.png | Bin 0 -> 140087 bytes .../abb_2_2_aktivierungsfunktionen.png | Bin 0 -> 98467 bytes Abbildungen/abb_2_3_attention_heatmap.png | Bin 0 -> 70620 bytes Kapitel/00_abstract.typ | 2 +- Kapitel/01_einleitung.typ | 2 +- Kapitel/02_theoretischer_hintergrund.typ | 370 +- Kapitel/03_fallstudie.typ | 5 + ...> 04_konzeption_methodisches_vorgehen.typ} | 7 +- Kapitel/04_prototypische_umsetzung.typ | 3 +- Kapitel/05_evaluation.typ | 10 - Kapitel/05_prototypische_umsetzung.typ | 10 + Kapitel/06_evaluation.typ | 10 + .../{06_diskussion.typ => 07_diskussion.typ} | 2 +- Kapitel/07_fazit_ausblick.typ | 10 - Kapitel/08_fazit_ausblick.typ | 10 + Kapitel/08_literaturverzeichnis.typ | 2 - Kapitel/09_literaturverzeichnis.typ | 3 + Kapitel/{09_anhang.typ => 10_anhang.typ} | 2 +- Masterarbeit_draft.pdf | 6908 +++++++++++++++++ Masterarbeit_draft.typ | 17 +- Perplexity_1_Lab.md | 144 + Perplexity_1_Research.md | 484 ++ Protokoll.md | 17 +- Quellen.md | 220 + {Test => Typst}/MA_style.typ | 0 {Test => Typst}/MA_test.typ | 0 {Test => Typst}/simple_style.typ | 0 {Test => Typst}/simple_style_demo.typ | 0 kapitel_1_einleitung_adapted.md | 57 +- kapitel_2_Theoretische_Grundlagen.md | 380 + literatur.bib | 191 + prompts.md | 3 + 33 files changed, 8803 insertions(+), 81 deletions(-) create mode 100644 .vscode/launch.json create mode 100644 Abbildungen/abb_2_1_feedforward_nn.png create mode 100644 Abbildungen/abb_2_2_aktivierungsfunktionen.png create mode 100644 Abbildungen/abb_2_3_attention_heatmap.png create mode 100644 Kapitel/03_fallstudie.typ rename Kapitel/{03_methodisches_vorgehen.typ => 04_konzeption_methodisches_vorgehen.typ} (52%) delete mode 100644 Kapitel/05_evaluation.typ create mode 100644 Kapitel/05_prototypische_umsetzung.typ create mode 100644 Kapitel/06_evaluation.typ rename Kapitel/{06_diskussion.typ => 07_diskussion.typ} (87%) delete mode 100644 Kapitel/07_fazit_ausblick.typ create mode 100644 Kapitel/08_fazit_ausblick.typ delete mode 100644 Kapitel/08_literaturverzeichnis.typ create mode 100644 Kapitel/09_literaturverzeichnis.typ rename Kapitel/{09_anhang.typ => 10_anhang.typ} (77%) create mode 100644 Masterarbeit_draft.pdf create mode 100644 Perplexity_1_Lab.md create mode 100644 Perplexity_1_Research.md create mode 100644 Quellen.md rename {Test => Typst}/MA_style.typ (100%) rename {Test => Typst}/MA_test.typ (100%) rename {Test => Typst}/simple_style.typ (100%) rename {Test => Typst}/simple_style_demo.typ (100%) create mode 100644 kapitel_2_Theoretische_Grundlagen.md create mode 100644 literatur.bib create mode 100644 prompts.md diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..2ba986f --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,15 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "type": "chrome", + "request": "launch", + "name": "Launch Chrome against localhost", + "url": "http://localhost:8080", + "webRoot": "${workspaceFolder}" + } + ] +} \ No newline at end of file diff --git a/Abbildungen/abb_2_1_feedforward_nn.png b/Abbildungen/abb_2_1_feedforward_nn.png new file mode 100644 index 0000000000000000000000000000000000000000..cf84d98b3782a402b0308b17038aa513b1daac3e GIT binary patch literal 140087 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⋙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

@FK?uIMoBS3-+&?q0Sy78e3vqG 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 CF=V*_ literal 0 HcmV?d00001 diff --git a/Abbildungen/abb_2_2_aktivierungsfunktionen.png b/Abbildungen/abb_2_2_aktivierungsfunktionen.png new file mode 100644 index 0000000000000000000000000000000000000000..f88d14d4ff3e27d465b49cfdca189a21325178d5 GIT binary patch literal 98467 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 VLYu6I(8-7xMOkH;j4S#N{~H!|4buPs literal 0 HcmV?d00001 diff --git a/Abbildungen/abb_2_3_attention_heatmap.png b/Abbildungen/abb_2_3_attention_heatmap.png new file mode 100644 index 0000000000000000000000000000000000000000..a8adcbb326340dc98151f162623956bba1d7b87f GIT binary patch literal 70620 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 ND%&^2DDOV`zW_Ih*82be literal 0 HcmV?d00001 diff --git a/Kapitel/00_abstract.typ b/Kapitel/00_abstract.typ index faeb4a2..fc6ef93 100644 --- a/Kapitel/00_abstract.typ +++ b/Kapitel/00_abstract.typ @@ -1,2 +1,2 @@ -#heading(level: 1, numbering: none)[Abstract] +#heading(level: 1, numbering: none)[Abstract (ca. 1 Seite)] Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ergänze hier die Zusammenfassung der Arbeit. diff --git a/Kapitel/01_einleitung.typ b/Kapitel/01_einleitung.typ index 4f214d7..eec624f 100644 --- a/Kapitel/01_einleitung.typ +++ b/Kapitel/01_einleitung.typ @@ -1,4 +1,4 @@ -#heading(level: 1)[Einleitung] +#heading(level: 1)[Einleitung (ca. 8 Seiten)] #heading(level: 2)[Ausgangssituation und Motivation] In den vergangenen Jahren hat die digitale Transformation mittelständische Softwareanbieter gezwungen, ihre gewachsenen Systeme neu zu bewerten. Besonders ERP-Lösungen, die über Jahrzehnte in Windows-Umgebungen gepflegt wurden, stoßen bei Cloud-, Web- und Mobile-Szenarien an technische sowie organisatorische Grenzen. Dokumentierte Architekturentscheidungen sind selten, implizites Wissen steckt in Source-Control-Systemen oder bei einzelnen Entwickler:innen. diff --git a/Kapitel/02_theoretischer_hintergrund.typ b/Kapitel/02_theoretischer_hintergrund.typ index e4dd0ed..846b4d5 100644 --- a/Kapitel/02_theoretischer_hintergrund.typ +++ b/Kapitel/02_theoretischer_hintergrund.typ @@ -1,10 +1,366 @@ -#heading(level: 1)[Theoretischer Hintergrund] +#heading(level: 1)[Theoretische Grundlagen (ca. 12 Seiten)] -#heading(level: 2)[Large Language Models im Requirements Engineering] -Charakterisiere relevante LLM-Konzepte, Fähigkeiten und Grenzen. +Dieses Kapitel beschreibt die theoretischen Grundlagen, die für die Konzeption und Bewertung eines KI-gestützten Reverse Requirements Engineering in Legacy-Umgebungen benötigt werden. Zunächst werden zentrale Begriffe des Requirements Engineering sowie die Idee der rückwärtsgerichteten Anforderungsgewinnung aus bestehenden Systemen eingeordnet. Anschließend werden Large Language Models als Werkzeugklasse im Software Engineering beschrieben, inklusive typischer Leistungsgrenzen und Absicherungsmechanismen. Abschließend werden Grundlagen der Legacy-Modernisierung sowie etablierte Migrationsstrategien zusammengefasst, um den Kontext der Fallstudie und die Zielrichtung einer webbasierten Modernisierung einzuordnen. -#heading(level: 2)[Reverse Requirements Engineering] -Beschreibe etablierte Verfahren, Herausforderungen und Best Practices. +#heading(level: 2)[Requirements Engineering und Reverse Requirements Engineering] -#heading(level: 2)[Legacy-Modernisierung und Governance] -Analysiere regulatorische, sicherheitsrelevante und organisatorische Aspekte. +#heading(level: 3)[Begriff und Zielsetzung des Requirements Engineering] + +Requirements Engineering (RE) umfasst die systematische Erhebung, Analyse, Spezifikation, Validierung und Verwaltung von Anforderungen an ein System über dessen Lebenszyklus. In Standards und Lehrwerken wird RE als eigenständiger Prozess verstanden, der sowohl fachliche Ziele (z. B. unterstützte Geschäftsprozesse) als auch technische und organisatorische Randbedingungen (z. B. Sicherheitsvorgaben, Betriebsmodelle) in überprüfbare Aussagen überführt @iso29148_2018 @ieee830_1998. + +Im Kern adressiert RE zwei Spannungsfelder: + +- **Kommunikation zwischen Domäne und Technik:** Anforderungen müssen fachlich verständlich und gleichzeitig so präzise sein, dass sie implementiert, getestet und geändert werden können. +- **Umgang mit Unsicherheit und Wandel:** Anforderungen sind zu Projektbeginn selten vollständig. RE ist daher nicht nur Dokumentation, sondern ein iterativer Klärungs- und Abstimmungsprozess. + +Ein etablierter Ansatz zur Strukturierung heterogener Sichtweisen ist das Viewpoint-Konzept, bei dem Anforderungen aus unterschiedlichen Perspektiven modelliert und anschließend konsolidiert werden @kotonya1996viewpoints. Für die vorliegende Arbeit ist diese Perspektivenorientierung relevant, weil eine Codebasis typischerweise keine expliziten Stakeholder-Sichten enthält, diese aber für eine Migration wieder sichtbar gemacht werden müssen (z. B. Nutzerrollen, kundenspezifische Varianten, regulatorische Vorgaben). + +#heading(level: 3)[Arten von Requirements und Qualitätskriterien] + +In der Literatur wird häufig zwischen funktionalen Anforderungen (Was soll das System tun?) und Qualitäts- bzw. nicht-funktionalen Anforderungen (Welche Eigenschaften und Randbedingungen gelten?) unterschieden. Die Praxis zeigt jedoch, dass diese Trennung nicht immer trennscharf ist: Eigenschaften können sowohl als Systemverhalten (z. B. „Audit-Log erzeugen“) als auch als Qualitätsziel (z. B. „Nachvollziehbarkeit“) formuliert werden @glinz2007nfr. Für Reverse Requirements Engineering ist diese Unschärfe besonders relevant, weil Quellcode meist Verhalten konkretisiert, Qualitätsziele aber häufig implizit bleiben (z. B. Performance-Workarounds, Sicherheitsannahmen). + +Für die Qualität einzelner Requirements sind in Standards und RE-Forschung wiederkehrende Kriterien etabliert. ISO/IEC/IEEE 29148:2018 nennt unter anderem Eindeutigkeit, Konsistenz, Vollständigkeit, Verifizierbarkeit und Nachvollziehbarkeit als zentrale Eigenschaften. IEEE 830-1998 formuliert ähnliche Prinzipien für Software Requirements Specifications, mit stärkerem Fokus auf Dokumentstruktur und Lesbarkeit @iso29148_2018 @ieee830_1998. + +Für die Bewertung von KI-extrahierten Requirements sind drei Kriterien unmittelbar handhabbar: + +- **Verifizierbarkeit:** Ein Requirement ist so formuliert, dass eine Testidee oder Prüfmethode ableitbar ist (z. B. Messkriterium, Akzeptanzbedingung). +- **Eindeutigkeit:** Formulierungen vermeiden Mehrdeutigkeiten und definieren Begriffe, die in der Domäne unterschiedlich interpretiert werden können. +- **Nachvollziehbarkeit (Traceability):** Es ist erkennbar, aus welchem Artefakt (Code, Konfiguration, Datenbank, Ticket, Interview) das Requirement abgeleitet wurde. + +Qualitätsanforderungen verdienen im Modernisierungskontext eine gesonderte Betrachtung, weil sie über die reine Funktionsgleichheit hinaus die Zielarchitektur motivieren. #cite(, form: "prose") argumentiert, dass Qualitätsanforderungen risikobasiert und wertorientiert priorisiert werden sollten. Für Legacy-Migrationen ist dies plausibel: Ein „vollständiges“ Requirements-Set ist praktisch schwer erreichbar, gleichzeitig sind bestimmte Quality Requirements (z. B. Datenschutz, Verfügbarkeit, Rollout-Fähigkeit) hochkritisch, weil sie Architekturentscheidungen dominieren. + +Für die inhaltliche Strukturierung von Qualitätsanforderungen ist das Qualitätsmodell ISO/IEC 25010:2011 verbreitet, das Qualitätsmerkmale wie Performance-Effizienz, Zuverlässigkeit, Sicherheit oder Wartbarkeit systematisch ordnet. Für Reverse Requirements Engineering ist dies hilfreich, weil aus Code häufig nur Teilaspekte sichtbar werden (z. B. Caching-Mechanismen als Hinweis auf Performance-Annahmen), während andere Qualitätsziele (z. B. „Maintainability“) eher indirekt über Architekturentscheidungen und Entwicklungspraktiken wirksam werden @iso25010_2011. + +Die Relevanz sauberer Requirements-Qualität zeigt sich auch in der Risikoperspektive. #cite(, form: "prose") beschreiben Requirements Engineering als primäre Risikozone, wenn Anforderungen unklar, instabil oder unvollständig sind. Für diese Arbeit folgt daraus, dass KI-gestützte Requirements-Extraktion nicht nur „mehr Text“ erzeugen darf, sondern gezielt die Risiken der Unklarheit und der Fehlinterpretation reduzieren muss. + +#heading(level: 3)[Spezifikationsformen und Grad der Formalisierung] + +Requirements werden in der Praxis in unterschiedlichen Repräsentationsformen dokumentiert. Standards wie IEEE 830-1998 und ISO/IEC/IEEE 29148:2018 fokussieren auf strukturierte Spezifikationen (z. B. SRS) und definieren typische Kapitel (Zweck, Systemkontext, funktionale Anforderungen, Schnittstellen, Qualitätsanforderungen, Annahmen). Daneben existieren weniger formale Formen wie User Stories, Use-Case-Beschreibungen oder Backlog-Einträge, die vor allem in agilen Settings verbreitet sind @ieee830_1998 @iso29148_2018. + +Für Reverse Requirements Engineering sind zwei Punkte entscheidend: + +- **Form beeinflusst Interpretierbarkeit:** Eine knappe User Story („Als Nutzer möchte ich …“) ist leicht verständlich, transportiert aber selten Randbedingungen, Datenregeln oder Fehlerfälle. Eine SRS-Formulierung kann präziser sein, erfordert aber mehr Kontext und Definitionen. +- **Grad der Formalisierung beeinflusst Prüfbarkeit:** Je stärker Requirements mit Akzeptanzkriterien, Beispielen oder Messgrößen verknüpft sind, desto einfacher sind Reviews und Tests. #cite(, form: "prose") betont Anforderungen-Validierung als eigene Disziplin, die ohne prüfbare Formulierungen methodisch kaum belastbar ist. + +Im Kontext dieser Arbeit bietet sich daher ein hybrider Stil an: Requirements werden als kurze, klare Soll-Aussagen formuliert und jeweils um Kontext (Akteur/Prozess), Randbedingungen (Vorbedingungen, Datenobjekte) und mindestens eine Prüfidee ergänzt. LLMs können die sprachliche Konsistenz unterstützen, die notwendige Präzisierung muss jedoch durch Belege und Validierung abgesichert werden. + +#heading(level: 3)[Traceability als Verbindung zwischen Code und Requirement] + +Traceability bezeichnet die Möglichkeit, Beziehungen zwischen Requirements und anderen Artefakten herzustellen und über den Lebenszyklus zu pflegen. #cite(, form: "prose") analysieren Traceability als wiederkehrendes Problem, insbesondere dort, wo Artefakte heterogen sind und die Disziplin zur Pflege fehlt. #cite(, form: "prose") schlagen Referenzmodelle vor, die Traceability-Typen und -Ziele strukturieren, etwa die Rückverfolgbarkeit zur Begründung (Rationale), zu Designentscheidungen oder zur Evolution eines Requirements. + +Für Reverse Requirements Engineering ist Traceability nicht nur ein „Nice-to-have“, sondern eine Sicherheitsmaßnahme: + +- **Plausibilisierung:** Ein Requirement lässt sich gegen konkrete Codeausschnitte oder Laufzeitbeobachtungen prüfen. +- **Abgrenzung:** Es wird klar, ob eine Aussage wirklich aus der Codebasis folgt oder aus Interpretationen und Ergänzungen entsteht. +- **Änderungsmanagement:** Bei Codeänderungen lässt sich ermitteln, welche Requirements betroffen sein könnten. + +In Legacy-Systemen ist Traceability typischerweise fragmentiert: Hinweise finden sich in Commit-Messages, Branch-Namen, Datenbankskripten, Konfigurationsdateien, UI-Texten oder in impliziten Konventionen. Der methodische Anspruch dieser Arbeit besteht daher nicht darin, „perfekte“ Traceability wiederherzustellen, sondern eine minimal belastbare, reproduzierbare Verknüpfung zwischen extrahierten Requirements und Belegen zu etablieren. + +#heading(level: 3)[Reverse Engineering und Reverse Requirements Engineering] + +Reverse Engineering wird klassisch als Analyseprozess verstanden, der aus einem bestehenden System Wissen über Struktur, Verhalten und Designentscheidungen rekonstruiert. #cite(, form: "prose") prägen hierfür eine Taxonomie und grenzen Reverse Engineering von Reengineering sowie Design Recovery ab. Für Requirements-nahe Fragestellungen ist hier relevant, dass Reverse Engineering nicht automatisch „Anforderungen“ liefert, sondern zunächst technische Fakten (z. B. Abhängigkeiten, Datenflüsse, Zustandsautomaten). + +Reverse Requirements Engineering (RRE) fokussiert auf die rückwärtsgerichtete Gewinnung von Anforderungen aus bestehenden Artefakten. Dabei kann das Ziel unterschiedlich interpretiert werden: + +- **Rekonstruktion eines Soll-Zustands:** Welche fachlichen Anforderungen werden durch die aktuelle Implementierung implizit erfüllt? +- **Rekonstruktion eines Ist-Zustands:** Welche Funktionen und Regeln sind tatsächlich implementiert, unabhängig davon, ob sie intendiert waren? + +Gerade im Migrationskontext ist diese Unterscheidung entscheidend. Die Codebasis enthält oft historisch entstandene Workarounds oder kundenspezifische Anpassungen. Diese können fachlich gewollt, technisch opportunistisch oder schlicht „mitgewachsen“ sein. Ohne zusätzliche Validierung besteht das Risiko, dass RRE den Ist-Zustand als Soll-Zustand fehlinterpretiert. + +Frühe Ansätze zur Brücke zwischen Reverse Engineering und Requirements liefern beispielsweise #cite(, form: "prose") mit „RETR: Reverse Engineering to Requirements“. Der Beitrag betont, dass Requirements-Rückgewinnung eine methodische Kette aus Artefaktsichtung, Strukturierung und Validierung benötigt. In ähnlicher Richtung beschreibt ein requirementsgetriebenes Reengineering-Framework, wie Requirements als Leitplanken für Reengineering-Entscheidungen genutzt werden können @tahvildari2001reengineering. + +Methodisch lassen sich dabei grob zwei Analysestränge unterscheiden: + +- **Statische Analyse:** Ableitung von Struktur- und Datenflussinformationen aus Code und Artefakten ohne Ausführung (z. B. Abhängigkeiten, SQL-Statements, Aufrufketten). Statische Analyse ist skaliert gut, erkennt aber nicht zuverlässig Laufzeitbedingungen (z. B. Feature Flags, Konfigurationsvarianten). +- **Dynamische Analyse:** Beobachtung von Laufzeitverhalten durch Logging, Tracing oder instrumentierte Tests (z. B. welche Regeln bei bestimmten Eingaben greifen). Dynamische Analyse ist näher am realen Verhalten, benötigt aber reproduzierbare Szenarien und Testdaten. + +Reverse Requirements Engineering in einem Migrationsprojekt profitiert typischerweise von einer Kombination beider Stränge. Ohne dynamische Belege steigt das Risiko, dass nicht offensichtliche Bedingungen (z. B. kundenspezifische Schalter) übersehen werden; ohne statische Analyse bleibt die Abdeckung häufig zu gering. + +#heading(level: 3)[Typische Methodenkette für Requirements-Rückgewinnung aus Code] + +Aus Sicht dieser Arbeit lässt sich Reverse Requirements Engineering in einer Legacy-Codebasis als wiederholbarer Ablauf strukturieren. Die konkrete Ausgestaltung hängt vom System und den verfügbaren Artefakten ab, die grundlegenden Schritte sind jedoch weitgehend stabil: + +1. **Scope und Domänenabgrenzung:** Auswahl relevanter Module, Datenobjekte und Prozesse (z. B. Auftragsabwicklung, Fakturierung). +2. **Artefakterhebung:** Quellcode, Konfiguration, UI-Texte, Datenbankschemata, Schnittstellenbeschreibungen, Change-Historie. +3. **Technische Analyse:** Struktur- und Abhängigkeitsanalyse, Identifikation von Kernkomponenten, Regeln und Integrationspunkten. +4. **Semantische Interpretation:** Ableitung fachlicher Aussagen aus technischen Implementierungen (z. B. Statusübergänge, Berechtigungsprüfungen). +5. **Formalisierung als Requirements:** Überführung in klare, testbare Anforderungen mit Kontext (Akteur, Vorbedingung, Ergebnis). +6. **Traceability-Anreicherung:** Verknüpfung jedes Requirements mit Belegen (Datei, Klasse, Methode, SQL-Statement, UI-String). +7. **Validierung:** Review durch Fachexperten und Abgleich mit Laufzeitverhalten, Tickets oder Kundenwissen. + +In der Praxis unterscheiden sich Artefakte darin, wie direkt sie fachliche Aussagen stützen. Quellcode, der eine Regel hart erzwingt (z. B. „Update nur bei Status X“), ist als Beleg stärker als Kommentare oder UI-Texte, die lediglich Absichten ausdrücken. Für eine belastbare Requirementsbasis ist es daher sinnvoll, Belege zu klassifizieren und die Aussagekraft zu kennzeichnen, beispielsweise: + +- **Primärbelege:** Durchgesetzte Regeln im Code oder in Datenbankconstraints (z. B. Statusmaschinen, Validierungslogik, Berechtigungschecks). +- **Sekundärbelege:** Indirekte Hinweise wie UI-Labels, Fehlermeldungen, Report-Layouts, Mappingtabellen oder Konfigurationsschalter. +- **Kontextbelege:** Ticketbeschreibungen, Commit-Messages oder Interviewaussagen, die Motivation und Ausnahmen erklären, aber nicht zwingend im Code sichtbar sind. + +Diese Einteilung ist kein Selbstzweck. Sie hilft, Risiken sichtbar zu machen: Requirements, die überwiegend auf Sekundär- oder Kontextbelegen beruhen, sind anfälliger für Fehlinterpretation und sollten priorisiert validiert werden. Gerade in ERP-Systemen sind Datenbankschemata und SQL-Statements häufig besonders aussagekräftig, weil sie Domänenobjekte, Kardinalitäten und Geschäftsregeln (z. B. referentielle Integrität, historisierte Tabellen) sichtbar machen, die in UI- oder Servicecode nur indirekt erscheinen. + +Ein weiterer Hebel ist das Mining der Änderungshistorie. Commit-Messages, Diff-Hotspots oder Branch-Konventionen können Hinweise liefern, welche Bereiche besonders volatil sind, welche Kundenvarianten existieren und wo in der Vergangenheit Fehler oder Workarounds eingeführt wurden. Für Reverse Requirements Engineering folgt daraus, dass Requirements nicht nur „aus dem aktuellen Code“, sondern idealerweise auch aus der Evolution des Codes abgeleitet werden, um implizite Stabilitätsannahmen und technische Schulden zu erkennen. + +Der kritische Schritt ist die semantische Interpretation. Program Comprehension ist hierfür das methodische Fundament: #cite(, form: "prose") zeigt, dass Programmverständnis in der Praxis aus einer Kombination von statischer Analyse, Navigation, Visualisierung und Hypothesenbildung besteht. RRE übernimmt diesen kognitiven Prozess, erweitert ihn jedoch um das Ziel, Aussagen als Requirements zu formulieren, die unabhängig vom Code als Spezifikation nutzbar sind. + +#heading(level: 3)[Zwischenfazit zu 2.1] + +Requirements Engineering liefert Kriterien und Artefaktformen, um Anforderungen präzise, prüfbar und nachvollziehbar zu beschreiben @iso29148_2018 @ieee830_1998. Reverse Requirements Engineering überträgt diese Zielsetzung in einen Kontext, in dem Requirements nicht vorliegen, sondern aus technischen Artefakten rekonstruiert werden. Für die vorliegende Arbeit folgt daraus, dass Automatisierung (z. B. durch KI) nur dann praktikabel ist, wenn Traceability und Validierung als feste Prozessbestandteile mitgeführt werden. + +#heading(level: 2)[Large Language Models im Software Engineering] + +#heading(level: 3)[Künstliche Intelligenz, Machine Learning und Einordnung von LLMs] + +Künstliche Intelligenz (KI) ist ein Oberbegriff für Verfahren, die Aufgaben bearbeiten, die in der Praxis typischerweise kognitive Fähigkeiten erfordern (z. B. Klassifikation, Planung, Sprachverarbeitung). Machine Learning (ML) ist dabei ein Teilgebiet, das Modelle aus Daten lernt, anstatt Regeln vollständig manuell zu spezifizieren. In der gängigen Einordnung wird zwischen überwachtem Lernen (mit Zielwerten), unüberwachtem Lernen (Struktur in Daten) und Reinforcement Learning (Lernen über Rückmeldesignale) unterschieden @bishop2006prml @goodfellow2016dl. + +Deep Learning bezeichnet ML-Verfahren, die neuronale Netze mit vielen Parametern und mehreren Verarbeitungsebenen nutzen, um geeignete Repräsentationen aus Rohdaten zu lernen. Charakteristisch ist, dass Merkmalsextraktion und Modellanpassung gemeinsam über Optimierung (typischerweise Gradientenverfahren) erfolgen. #cite(, form: "prose") beschreiben Deep Learning als zentrale Entwicklungslinie moderner KI, insbesondere für Wahrnehmungs- und Sprachaufgaben. + +Neuronale Netze lassen sich dabei vereinfacht als parametrisierte Funktionsketten aus Schichten beschreiben, die Eingaben in zunehmend abstrakte Repräsentationen überführen. Das Training erfolgt über eine Zielfunktion (Loss) und Gradientenberechnung, praktisch meist über Backpropagation und Varianten des Gradientenabstiegs @goodfellow2016dl. + +#figure( + image("../Abbildungen/abb_2_1_feedforward_nn.png", width: 85%), + caption: [Schematische Darstellung eines vollständig verbundenen Feedforward-Netzes.] +) + +Ein einzelnes Neuron lässt sich als affine Transformation mit nachgeschalteter Aktivierungsfunktion formulieren: + +$ +z = sum_(i=1)^d w_i x_i + b, quad a = phi(z) +$ + +Typische Aktivierungsfunktionen sind die Sigmoid-Funktion und ReLU #cite(): + +$ +sigma(z) = 1 / (1 + e^(-z)), quad ReLU(z) = max(0, z) +$ + +#figure( + image("../Abbildungen/abb_2_2_aktivierungsfunktionen.png", width: 85%), + caption: [Beispielhafte Aktivierungsfunktionen (Sigmoid, tanh, ReLU).] +) + +Die Optimierung erfolgt üblicherweise iterativ. Für Gradientenabstieg gilt in kompakter Form: + +$ +theta^(t+1) = theta^(t) - eta nabla_theta cal(L)(theta^(t)) +$ + +**Abgrenzung neuronaler Netze und LLMs zu anderen ML-Methoden** + +Neuronale Netze sind ein Teilbereich von ML, sie ersetzen jedoch nicht automatisch klassische Verfahren. In der Praxis hängt die Methodenauswahl von Datenart, Datenmenge, Interpretierbarkeit und Betriebsvorgaben ab @bishop2006prml @hastie2009esl. + +Die folgende Tabelle fasst die Abgrenzung zu häufigen ML-Familien zusammen: + +#figure( + kind: "table", + caption: [Abgrenzung zu häufigen Machine-Learning-Methoden.], + table( + columns: (1fr, 1.35fr, 1.2fr, 1.6fr), + align: (left, left, left, left), + [**Methodik**], + [**Typischer Einsatz**], + [**Stärken**], + [**Grenzen**], + [Lineare/GLM-Modelle], + [Strukturierte Daten, Baselines], + [schnell, gut interpretierbar], + [begrenzte Nichtlinearität (ohne Feature Engineering)], + [Support Vector Machines (SVM)], + [Klassifikation/Regression, mittlere Datenmengen], + [starke Theorie, robuste Margin-Idee], + [Skalierung/Kernelwahl, eingeschränkte Erklärbarkeit @cortes1995svm], + [Entscheidungsbäume/Ensembles], + [Tabellarische Daten], + [nichtlinear, oft gute Performance], + [Overfitting ohne Regularisierung; Ensembles weniger interpretierbar], + [Random Forests], + [Tabellarische Daten, robuste Defaults], + [stabil, gute Generalisierung], + [begrenzte Extrapolation, Erklärbarkeit indirekt @breiman2001randomforests], + [Gradient Boosting], + [Tabellarische Daten, hohe Genauigkeit], + [sehr starke Praxisleistung], + [Hyperparameter-sensitiv, Trainingskosten @friedman2001gbm], + [Neuronale Netze (Deep Learning)], + [Unstrukturierte Daten (Text, Bild), große Datenmengen], + [Representation Learning, End-to-End], + [hoher Daten-/Rechenbedarf, schwerer zu erklären @lecun2015deeplearning], + [LLMs (Transformers)], + [Text- und Codeaufgaben, generative Assistenz], + [Vortraining nutzt große Korpora; flexible Transferleistung], + [Halluzinationen, Kontextlimit, Governance-Aufwand @vaswani2017attention @ji2023hallucination], + ) +) + +LLMs unterscheiden sich dabei von vielen klassischen Verfahren nicht nur durch Modellgröße, sondern auch durch Zielsetzung: Häufig wird ein generatives, autoregressives Sprachmodell trainiert, das die nächste Tokenwahrscheinlichkeit modelliert: + +$ +max_(theta) sum_(t=1)^T log p_(theta)(x_t mid x_(): + +$ +Attention(Q, K, V) = softmax((Q K^T) / sqrt(d_k)) V +$ + +#figure( + image("../Abbildungen/abb_2_3_attention_heatmap.png", width: 85%), + caption: [Schematisches Beispiel einer Attention-Gewichtsmatrix (illustrativ).] +) + +Für diese Arbeit sind drei Konsequenzen dieser Modellklasse besonders relevant: + +- **Kontextfenster:** Modelle verarbeiten Eingaben nur bis zu einer maximalen Tokenanzahl. Längere Artefakte müssen segmentiert oder komprimiert werden. +- **Tokenisierung:** Quellcode und Fachsprache werden in Token zerlegt. Dies beeinflusst, wie gut Identifier, Struktur und Domänenterminologie repräsentiert werden. +- **Generativer Charakter:** Ausgaben sind nicht deterministisch. Temperatur, Sampling-Strategien und Promptform beeinflussen Reproduzierbarkeit. + +LLMs werden im Software Engineering eingesetzt, weil sie sowohl natürlichsprachliche Artefakte (z. B. Anforderungen, Kommentare) als auch Codeartefakte (z. B. Klassen, Funktionen, Tests) verarbeiten können. Surveyarbeiten ordnen LLM-Anwendungen nach Aufgabenklassen wie Codegenerierung, Codezusammenfassung, Fehlersuche, Testgenerierung oder Dokumentation @fan2023llmse @salem2024surveyllmse @llm4se2024slr @llm4se2024survey. + +#heading(level: 3)[Training, Instruction Tuning und Prompting] + +LLMs werden typischerweise in mehreren Phasen entwickelt. In einer Vortrainingsphase lernen Modelle aus großen Text- und Codekorpora statistische Regularitäten. Für den Einsatz als Assistenzsysteme werden Modelle häufig zusätzlich auf Anweisungen und Dialogformate ausgerichtet („instruction tuning“). Der GPT-4 Technical Report beschreibt diese Ausrichtung auf Systemebene und diskutiert Safety- und Evaluationsaspekte, ohne die vollständige Trainingspipeline offen zu legen @openai2023gpt4. + +Im Engineering-Kontext ist der Prompt damit nicht nur Eingabe, sondern ein Steuerungsinstrument. Für diese Arbeit sind vor allem folgende Hebel relevant: + +- **Aufgabenrahmen:** Ziel, gewünschtes Artefaktformat, Definition von Begriffen und Abgrenzung (z. B. „Requirement“ vs. „Designentscheidung“). +- **Kontextwahl:** Welche Code- und Textartefakte werden bereitgestellt, und welche Teile werden bewusst ausgeblendet, um Überinterpretation zu begrenzen? +- **Ausgabe-Constraints:** Belegpflicht, Kennzeichnung unsicherer Aussagen, deterministische Parameter (z. B. niedrige Temperatur), feste Templates. + +Da LLMs ein begrenztes Kontextfenster besitzen, wird in Forschung und Praxis häufig Retrieval-Augmented Generation (RAG) eingesetzt: Relevante Textstellen werden zunächst über Suche/Retrieval ausgewählt und anschließend als Kontext in die Generierung eingebracht. #cite(, form: "prose") beschreiben dieses Grundprinzip für wissensintensive Aufgaben. Für Requirements-Extraktion aus Legacy-Code ist RAG naheliegend, weil relevante Regeln, Konfigurationen und UI-Strings über große Repositories verteilt sind und eine „Alles in den Prompt“-Strategie nicht skaliert. + +Prompting-Strategien wie Chain-of-Thought können die Qualität komplexer Ableitungen verbessern, bergen im Requirements-Kontext jedoch ein Risiko: Längere Begründungen können plausibel wirken und dadurch Fehlannahmen stabilisieren. #cite(, form: "prose") zeigen Chain-of-Thought als wirksame Prompttechnik; für diese Arbeit folgt daraus vor allem, dass Begründungen stets mit Artefaktbelegen gekoppelt werden müssen und nicht als eigenständige Evidenz gelten. + +#heading(level: 3)[LLMs für Code: Spezialisierung, Stärken und Grenzen] + +Neben allgemeinen Modellen existieren code-spezialisierte LLMs, die auf Codekorpora vortrainiert oder nachtrainiert wurden. Ein prominentes Beispiel ist Code Llama, dessen Technical Report Training und Evaluationsaufbau beschreibt und die Ausrichtung auf Codeaufgaben explizit macht @roziere2023codellama. Aus praktischer Sicht sind bei code-spezifischen Modellen typischerweise drei Stärken zu beobachten: + +- **Syntaxnahe Mustererkennung:** Wiederkehrende Idiome, Framework-Patterns und typische Kontrollstrukturen werden zuverlässig erkannt. +- **Semantische Zusammenfassung:** Funktionen und Module lassen sich in natürliche Sprache übertragen, inklusive grober Zweckbeschreibung. +- **Transformation und Vorschläge:** Refactorings, Testideen oder API-Skizzen können generiert und iterativ verfeinert werden. + +Den Stärken stehen systematische Grenzen gegenüber. LLMs „verstehen“ Code nicht im Sinne einer formalen Semantik. Sie approximieren Bedeutung über Muster aus Trainingsdaten und aus dem gegebenen Kontext. Insbesondere in Legacy-Systemen mit proprietären Frameworks, kundenspezifischen Erweiterungen und historisch gewachsenen Konventionen ist die Wahrscheinlichkeit hoch, dass Modelle plausible, aber falsche Erklärungen liefern. Genau diese Plausibilität ist im Requirements-Kontext kritisch, weil Text als Spezifikation eine höhere Autorität erhält als eine rein technische Zusammenfassung. + +#heading(level: 3)[Halluzinationen und Verlässlichkeit: Relevanz für Requirements] + +Halluzinationen bezeichnen Ausgaben, die syntaktisch korrekt und plausibel wirken, aber nicht durch Eingabedaten oder Weltwissen gedeckt sind. #cite(, form: "prose") liefern eine Taxonomie und diskutieren Detektions- und Mitigationsansätze. Für Requirements ist die Gefahr besonders kritisch, weil falsche Requirements nicht als „Bug“ im Text auffallen, sondern als scheinbar saubere Spezifikation in nachgelagerte Architektur- und Implementationsentscheidungen einfließen können. + +Zusätzlich zu Halluzinationen sind zwei weitere Verlässlichkeitsthemen relevant: + +- **Daten- und Domänenbias:** Modelle spiegeln Verteilungen und Annahmen aus Trainingsdaten wider. #cite(, form: "prose") diskutieren solche Risiken systematisch und betonen Governance-Fragen. +- **Reproduzierbarkeit:** Kleine Promptänderungen oder Parameterunterschiede können zu variierenden Ergebnissen führen. Für einen engineeringfähigen Prozess sind daher Steuerungsmechanismen (z. B. feste Templates, deterministische Einstellungen, versionierte Prompts) notwendig. + +Für diese Arbeit folgt daraus, dass LLM-Ausgaben im Requirements-Kontext nicht als „Quelle“, sondern als Hypothesenmaterial zu behandeln sind. Erst durch Traceability (Belege) und Validierung (Expertenreview, Laufzeitchecks) wird aus einer Hypothese eine belastbare Anforderung. + +#heading(level: 3)[LLMs im Requirements Engineering: Stand der Forschung] + +Die Forschung zu LLMs im Requirements Engineering ist dynamisch und lässt sich sinnvoll in eine Vorgeschichte (NLP/IR-Ansätze) und in aktuelle LLM-spezifische Arbeiten gliedern. Vor dem breiten Aufkommen von LLMs wurden Aufgaben wie Terminologieextraktion, Klassifikation, Qualitätsprüfung und Traceability häufig mit Natural Language Processing (NLP) und Information Retrieval (IR) adressiert. #cite(, form: "prose") geben einen Überblick über NLP-Verfahren im Requirements Engineering, inklusive typischer Problemklassen (z. B. Mehrdeutigkeit, Konsistenz, Vollständigkeit). Für Traceability ist die IR-basierte Link-Recovery-Literatur ein wichtiger Referenzpunkt, weil sie zeigt, welche Artefakte (Requirements, Code, Dokumentation) typischerweise verknüpft werden und welche Evaluationsmuster (Precision/Recall, Gold-Standards) sich etabliert haben @borg2013traceability. + +Aktuelle Arbeiten zu LLMs im Requirements Engineering verschieben den Schwerpunkt. Während NLP/IR-Ansätze oft auf klar definierten Teilaufgaben mit begrenzten Ausgaben (Labels, Links, Hinweise) beruhen, können LLMs artefaktnahe Texte erzeugen, umformulieren und strukturieren. Dieser Übergang ist ambivalent: Einerseits entsteht ein direkter Produktivitätshebel, andererseits steigt das Risiko, dass sprachlich "gute" Texte als Spezifikation akzeptiert werden, obwohl die fachliche Basis unzureichend ist @ji2023hallucination @hemmat2025directions. + +Systematische Übersichten ordnen die LLM-Nutzung im RE entlang klassischer Prozessschritte ein. #cite(, form: "prose") fassen Forschungsrichtungen zu LLMs im Software Requirements Engineering zusammen und nennen als wiederkehrende Problemfelder Qualitätssicherung, Nachvollziehbarkeit und Domänenabhängigkeit. Eine weitere Review zum ChatGPT-Einsatz im Requirements Engineering liefern #cite(, form: "prose"). Sie diskutieren den Einsatz entlang typischer RE-Aktivitäten (Elicitation, Analyse, Spezifikation, Validierung) und heben als zentrale Herausforderungen inkonsistente Ergebnisse, begrenztes Domänenwissen sowie die Schwierigkeit belastbarer Evaluationen hervor. + +In der Detailperspektive lassen sich aktuelle LLM-Arbeiten grob nach Anwendungsfeldern bündeln: + +- **Strukturierung und (Re-)Formulierung von Requirements:** #cite(, form: "prose") untersuchen, wie LLMs naturalsprachliche Anforderungen in strukturiertere Formen überführen können. #cite(, form: "prose") adressieren die automatische Umstrukturierung von Software Requirements Specifications mit dem Ziel, Standardkonformität zu erhöhen. +- **Qualitätsunterstützung und Defektanalyse:** #cite(, form: "prose") evaluieren ChatGPT für Inkonsistenzdetektion in naturalsprachlichen Requirements. #cite(, form: "prose") untersuchen LLM-gestützte Assistenz zur Verbesserung der Requirements-Vollständigkeit. +- **Elicitation und Stakeholder-Perspektiven:** #cite(, form: "prose") zeigen, wie LLMs zur Generierung wertorientierter User Stories als "Inspirationsimpulse" eingesetzt werden können. Diese Richtung ist für Reverse Requirements Engineering indirekt relevant, weil sie zeigt, wie LLMs fehlende Stakeholder-Sichten ergänzen können, ohne den Code als Primärbeleg zu ersetzen. +- **Domänenspezifische Requirements (Safety/Compliance):** #cite(, form: "prose") betrachten LLMs bei der Engineering-Unterstützung von Safety Requirements im Kontext autonomen Fahrens. #cite(, form: "prose") diskutiert LLM-Einsatz für rechtliche Compliance- und Regulationsanalyse. Solche Arbeiten verdeutlichen, dass LLMs nicht nur Text umformulieren, sondern auch Wissensstrukturen (Normen, Regeln) operationalisieren sollen; zugleich erhöhen sich die Anforderungen an Belegbarkeit und Haftung. + +Über die einzelnen Studien hinaus ist der Evidenzstand derzeit heterogen. Viele Arbeiten sind als Workshopbeiträge oder "preliminary evaluations" angelegt, nutzen begrenzte Datensätze und kombinieren automatische Metriken mit Expertenurteilen. Zudem sind Prompting-Strategien, Modellversionen und Kontexteinstellungen häufig nicht vollständig standardisiert, was die Reproduzierbarkeit erschwert @fan2023llmse @hemmat2025directions. Aus Sicht dieser Arbeit folgt daraus eine klare Konsequenz: LLMs sind im Requirements Engineering am stärksten als Assistenzsysteme in einem kontrollierten Prozess, in dem (1) Aussagen mit Belegen verknüpft werden, (2) Unsicherheit explizit markiert wird und (3) fachliche Validierung als definierter Kontrollpunkt erfolgt. + +Für Reverse Requirements Engineering lässt sich der Nutzen damit präzisieren: LLMs können Kandidaten-Requirements aus großen Artefaktmengen (Code, Kommentare, UI-Strings, Konfiguration) verdichten und in eine konsistente Spezifikationsform überführen. Die fachliche Belastbarkeit entsteht jedoch erst durch Traceability zu Codebelegen und die Validierung durch Experten, insbesondere bei Safety-, Compliance- und Abrechnungslogik. + +#heading(level: 3)[Absicherung: Human-in-the-loop, Belege und Prozesskontrollen] + +Die Literatur legt nahe, dass LLMs im Software Engineering dann robust eingesetzt werden können, wenn sie in einen Prozess eingebettet sind, der Fehler systematisch begrenzt @fan2023llmse @hemmat2025directions. Für die Requirements-Extraktion aus Legacy-Code sind folgende Kontrollen praxisnah: + +- **Belegpflicht (Evidence-First):** Jedes generierte Requirement erhält mindestens einen konkreten Beleg (Datei/Komponente/Query/GUI-String) sowie eine kurze Begründung, warum der Beleg die Aussage trägt. +- **Trennung von Fakt und Interpretation:** Technische Fakten (z. B. „Status = 'Closed' verhindert Update“) werden getrennt von fachlicher Interpretation (z. B. „Abgeschlossene Aufträge sind schreibgeschützt“) dokumentiert. +- **Mehrstufige Validierung:** Automatische Checks (z. B. Linting auf Verbformen, Konsistenzregeln) werden mit Expertenreview kombiniert. +- **Reproduzierbarkeit:** Versionierung von Promptvorlagen, Modellversionen und Kontextzuschnitten, um Ergebnisse vergleichbar zu machen. + +Diese Kontrollen adressieren nicht alle Risiken, reduzieren aber die typischen Fehlerklassen (Halluzination, Überinterpretation, fehlende Konsistenz) und schaffen die Grundlage für eine belastbare Evaluation in Kapitel 6. + +#heading(level: 3)[Qualitätsbewertung und Messgrößen im Requirements-Kontext] + +Die Qualität von LLM-Ergebnissen wird in vielen Arbeiten über allgemeine Textmetriken oder Task-spezifische Benchmarks bewertet. Für Requirements-Extraktion aus Code sind solche Metriken nur begrenzt aussagekräftig, weil der zentrale Anspruch nicht „sprachliche Ähnlichkeit“, sondern fachliche Korrektheit, Prüfbarkeit und Nachvollziehbarkeit ist @hemmat2025directions @marques2024chatgptre. Eine zweckmäßige Qualitätsbewertung sollte daher an RE-Kriterien anschließen und explizit zwischen drei Ebenen unterscheiden: + +- **Statement-Qualität:** Ist ein Requirement eindeutig, vollständig im Satzbau, frei von nicht belegten Annahmen und mit Akzeptanzkriterium bzw. Prüfidee versehen? +- **Set-Qualität:** Ist die Menge der Requirements konsistent, nicht redundant und deckt die relevanten Prozesse und Varianten ab, ohne sich in Detailfällen zu verlieren? +- **Traceability-Qualität:** Sind Belege reproduzierbar auffindbar (z. B. Dateipfad, Methode, SQL-Query), und lässt sich die Ableitung von „Beleg → Requirement“ nachvollziehen? + +Für Legacy-Migrationen ist zudem die Fehlerkostenperspektive entscheidend. Ein fehlendes Requirement kann zu Funktionsverlust führen, ein falsches Requirement kann zu fehlerhaften Designentscheidungen führen, und ein unpräzises Requirement verursacht Review- und Nacharbeit. Daraus folgt eine pragmatische Bewertung: Requirements mit hoher Migrationskritikalität (z. B. Sicherheitsregeln, Abrechnungslogik, Berechtigungen) sollten strengere Evidenzanforderungen und intensivere Reviews erhalten als periphere Funktionen. Dieses Prinzip ist kompatibel mit der risikobasierten Priorisierung von Qualitätsanforderungen @glinz2008quality und lässt sich auf Funktionsanforderungen übertragen. + +#heading(level: 3)[Zwischenfazit zu 2.2] + +LLMs liefern im Software Engineering eine leistungsfähige Assistenz für Analyse, Zusammenfassung und Textproduktion, sind jedoch nicht verlässlich im Sinne formaler Korrektheit @fan2023llmse @ji2023hallucination. Für Requirements ist der entscheidende Punkt, dass die Qualität nicht an der sprachlichen Glätte, sondern an Nachvollziehbarkeit und Prüfbarkeit hängt. Daraus folgt für diese Arbeit ein designierter "Sicherheitsgurt": Evidence-First, Traceability und Human-in-the-loop sind keine Zusatzoptionen, sondern Kernelemente des Vorgehens. + +#heading(level: 2)[Legacy-Modernisierung und Stand der Forschung] + +#heading(level: 3)[Charakteristika von Legacy-Systemen] + +Legacy-Systeme sind nicht allein durch ihr Alter definiert, sondern durch ihren Kontext: Sie tragen geschäftskritische Funktionen, sind über lange Zeit erweitert worden und weisen oft starke technische und organisatorische Abhängigkeiten auf. #cite(, form: "prose") beschreiben typische Merkmale wie enge Kopplung, heterogene Technologien, schwer austauschbare Komponenten und unzureichende Dokumentation. Gerade letzteres ist für Modernisierungsvorhaben problematisch, weil Entscheidungen ohne belastbare Anforderungsbasis zu Funktionsverlusten und Akzeptanzproblemen führen können. + +Im ERP-Kontext verschärfen sich diese Merkmale häufig durch: + +- **Domänenkomplexität:** Geschäftsregeln sind zahlreich, variantenreich und teilweise kundenspezifisch. +- **Datenzentrierung:** Prozesse hängen stark von Datenmodellen, Stammdatenqualität und historisch gewachsenen Datenkonventionen ab. +- **Integrationslast:** Schnittstellen zu Drittsystemen (z. B. Buchhaltung, Shop, Dokumentenmanagement) sind über Jahre organisch entstanden. + +Damit wird nachvollziehbar, warum Requirements-Extraktion aus der Codebasis nicht nur ein Dokumentationsprojekt, sondern ein Risikoreduktionsinstrument für Migrationen ist. + +#heading(level: 3)[Modernisierungsstrategien und Reengineering als Prozess] + +Modernisierung kann unterschiedliche Strategien annehmen, von "Lift-and-Shift" bis zur vollständigen Neuimplementierung. Die Literatur betont wiederholt, dass die Wahl einer Strategie von Risiko, Zielarchitektur und verfügbaren Ressourcen abhängt und daher explizit geplant werden sollte @sneed1995planning. Eine zentrale Aussage ist dabei, dass Reengineering nicht als rein technischer Umbau verstanden werden kann: Ohne fachliche Leitplanken entstehen technische Verbesserungen, die am Bedarf vorbeilaufen oder bestehende Fachlogik unabsichtlich verändern. + +Aus Sicht dieser Arbeit lassen sich Modernisierungsstrategien pragmatisch entlang zweier Achsen einordnen: (1) Wie stark wird die bestehende Implementierung weitergenutzt? (2) Wie stark wird die Zielarchitektur verändert? Daraus ergeben sich typische Strategietypen, die in der Praxis auch kombiniert auftreten: + +- **Weiterbetrieb mit Hülle (Wrapping):** Die Legacy-Logik bleibt bestehen, wird aber über neue Schnittstellen oder UI-Schichten zugänglich gemacht. Vorteil ist geringe Eingriffstiefe; Nachteil ist, dass technische Schulden und Engpässe erhalten bleiben. +- **Schrittweise Modularisierung:** Teile der Legacy-Anwendung werden sukzessive in neue Komponenten überführt, während andere Teile weiterlaufen. Vorteil ist Risikostreuung und frühe Nutzenrealisierung; Nachteil ist erhöhte Integrationskomplexität während der Übergangsphase. +- **Reengineering/Refactoring:** Die bestehende Logik wird strukturell überarbeitet (z. B. Entkopplung, Schichten, bessere Testbarkeit), ohne den Funktionsumfang grundsätzlich zu verändern. Vorteil ist bessere Wartbarkeit; Nachteil ist hoher Analyseaufwand, gerade ohne Requirementsbasis. +- **Neuimplementierung mit Funktionsparität:** Die Legacy-Logik wird auf neuer Technologie nachgebaut, häufig mit dem Anspruch, zunächst funktional äquivalent zu sein. Vorteil ist saubere Zielarchitektur; Nachteil ist die hohe Abhängigkeit von vollständigen, korrekten Requirements. + +Für ERP-Systeme ist die Wahl einer Strategie stark datengetrieben. Datenmodelle, Schnittstellenverträge und Buchungslogik definieren die „harten Kanten“ einer Migration. Damit steigt der Stellenwert von Requirements, die Datenobjekte, Zustandsmodelle und Integrationspunkte explizit machen. Besonders migrationskritisch sind dabei Anforderungen, die in der Legacy-Implementierung als implizite Konvention existieren (z. B. Statuscodes, historische Sonderfälle, kundenspezifische Maskenlogik), weil sie ohne gezielte Extraktion und Validierung leicht verloren gehen. + +#cite(, form: "prose") geben einen Überblick über Migrationsansätze und ordnen typische Risikofelder ein, darunter Datenmigration, Funktionsäquivalenz und organisatorische Abhängigkeiten. #cite(, form: "prose") argumentieren ergänzend, dass Werkzeugunterstützung nur dann wirksam ist, wenn sie in eine methodische Kette eingebettet ist. Diese Argumentation ist direkt anschlussfähig an KI-gestützte Verfahren: Auch LLM-basierte Automatisierung entfaltet Nutzen nur innerhalb eines reproduzierbaren Prozesses mit klaren Kontrollpunkten. + +#heading(level: 3)[Zielarchitekturen: Web, Cloud und „Cloud-native“] + +Die Modernisierung vieler Legacy-Anwendungen zielt auf webbasierte, plattformunabhängige Oberflächen und auf Betriebsmodelle, die Skalierung, automatisiertes Deployment und schnelle Iteration unterstützen. #cite(, form: "prose") fassen in einer systematischen Mapping Study zusammen, welche Merkmale cloud-nativer Anwendungen in der Forschung und Praxis wiederkehren. Dazu zählen typischerweise automatisierte Bereitstellung, resiliente Komponenten, horizontale Skalierung und eine stärkere Trennung von Build- und Run-Umgebungen. + +Im selben Zielraum werden Microservices häufig als Architekturstil diskutiert. #cite(, form: "prose") kartieren Forschung zu Microservices und zeigen wiederkehrende Problemfelder, unter anderem die Wahl der richtigen Servicegranularität, die erhöhte Komplexität im Betrieb und Anforderungen an Observability. Für Migrationsprojekte ist daraus eine pragmatische Schlussfolgerung ableitbar: Modularisierung ist ein Ziel, erzeugt aber zugleich neue Anforderungen (z. B. Deployment-Pipelines, Monitoring, Sicherheitskonzepte), die im Requirements-Set sichtbar sein müssen. + +Für die Requirementsarbeit bedeutet die Zielarchitekturverschiebung eine Verschiebung des Schwerpunktes: Während in klassischen Client/Server-Architekturen die fachliche Funktionslogik oft dominiert, rücken in Web- und Cloud-Kontexten betriebliche und sicherheitsbezogene Qualitätsmerkmale stärker in den Vordergrund. ISO/IEC 25010:2011 bietet hierfür eine hilfreiche Taxonomie @iso25010_2011. Für Modernisierungsvorhaben lassen sich vor allem folgende Qualitätsmerkmale als wiederkehrend beobachten: + +- **Sicherheit:** Identitäten, Rollenmodelle, Mandantenfähigkeit, Auditierbarkeit. +- **Zuverlässigkeit:** Fehlerresistenz, Wiederanlauf, Degradationsverhalten. +- **Performance-Effizienz:** Antwortzeiten, Lastverhalten, Skalierungsgrenzen. +- **Wartbarkeit:** Änderbarkeit, Testbarkeit, Modularität und technische Schuld. +- **Kompatibilität und Interoperabilität:** Schnittstellenstabilität, Integrationsfähigkeit mit Drittsystemen. + +Diese Merkmale sind nicht neu, ihre Sichtbarkeit im Projekt nimmt jedoch zu, weil Cloud- und Webbetrieb ein engeres Zusammenspiel von Entwicklung und Betrieb erzwingt. Für Reverse Requirements Engineering folgt daraus, dass der Blick auf die Legacy-Codebasis systematisch um Betriebs- und Sicherheitsanforderungen ergänzt werden muss, auch wenn diese im Code nur indirekt sichtbar sind (z. B. über Deployment-Skripte, Konfigurationen, Logging-Policies oder Rechteprüfungen). + +Sicherheitsanforderungen werden in Cloud-Migrationskontexten häufig unterschätzt. Eine systematische Mapping Study zu Security-Aspekten bei Legacy-to-Cloud-Migrationen @security2014legacycloud zeigt, dass Identitätsmanagement, Datenflusskontrolle und Compliance wiederkehrende Kernprobleme sind. Für diese Arbeit bedeutet dies, dass Requirements-Extraktion aus Code um Sicherheits- und Datenschutzanforderungen ergänzt werden muss, da sie nicht in jedem Quellcodefragment explizit sichtbar sind. + +#heading(level: 3)[Stand der Forschung: KI-Unterstützung in Modernisierungsvorhaben] + +Die Forschung zu KI- bzw. LLM-Unterstützung im Modernisierungskontext ist im Vergleich zu klassischen Reengineering-Ansätzen jünger. Die Übersichten zu LLM4SE @fan2023llmse @llm4se2024slr zeigen, dass ein Teil der Arbeiten auf Codeverständnis, Dokumentation und Artefakttransformation zielt. Spezifisch für Requirements Engineering bündeln Reviews und SLRs erste Evidenz und Forschungsrichtungen @marques2024chatgptre @hemmat2025directions. + +Aus dieser Literatur lassen sich zwei robuste Aussagen ableiten: + +- **LLMs sind besonders stark in der Strukturierung und sprachlichen Formulierung**, also dort, wo aus fragmentierten Hinweisen ein konsistenter Text entstehen muss. +- **LLMs benötigen technische und organisatorische Sicherungen**, wenn Ergebnisse als Entscheidungsgrundlage in Migrationen dienen sollen (z. B. Belege, Review, reproduzierbarer Prozess). + +Damit ist eine zentrale Motivation dieser Arbeit begründet: Eine Legacy-Modernisierung benötigt belastbare Requirements, die im Legacy-Kontext oft fehlen. LLMs sind als Assistenz zur Rekonstruktion naheliegend, müssen jedoch methodisch so eingesetzt werden, dass Verlässlichkeit und Nachvollziehbarkeit systematisch erhöht werden. + +#heading(level: 3)[Zwischenfazit zu 2.3] + +Legacy-Modernisierung ist ein sozio-technisches Vorhaben, das technische Umbauten und fachliche Zielsetzungen integrieren muss @bisbal1999legacy @sneed1995planning. Moderne Zielarchitekturen (Web/Cloud) verschieben zudem die Anforderungslandschaft, weil Betriebs- und Sicherheitsanforderungen stärker in den Vordergrund treten @kratzke2017cloudnative @security2014legacycloud. Für die vorliegende Arbeit folgt daraus, dass Requirements-Extraktion nicht nur der Funktionsrekonstruktion dient, sondern die Grundlage für Migrationsentscheidungen, Priorisierung und Qualitätssicherung bildet. + +#heading(level: 3)[Kapitelzusammenfassung und Anschluss] + +Die drei Themenblöcke dieses Kapitels greifen ineinander. Requirements Engineering liefert Kriterien, um Anforderungen prüfbar und nachvollziehbar zu formulieren @iso29148_2018. Reverse Requirements Engineering überträgt diese Kriterien in einen Kontext, in dem Anforderungen aus bestehenden Artefakten rekonstruiert werden müssen @chikofsky1990taxonomy @yu2005retr. Large Language Models können diese Rekonstruktion unterstützen, sind aber fehleranfällig und benötigen Prozesskontrollen, vor allem gegen Halluzinationen und Überinterpretation @ji2023hallucination @fan2023llmse. Legacy-Modernisierung schließlich liefert die praktische Motivation und zeigt, warum eine belastbare Anforderungsbasis migrationskritisch ist @bisbal1999legacy @sneed1995planning. + +Damit ist das Fundament gelegt, um in Kapitel 3 den konkreten Fallkontext zu beschreiben und in Kapitel 4 ein Vorgehensmodell zu entwickeln, das KI-Unterstützung, Traceability und Validierung systematisch miteinander verbindet. diff --git a/Kapitel/03_fallstudie.typ b/Kapitel/03_fallstudie.typ new file mode 100644 index 0000000..1e29e4c --- /dev/null +++ b/Kapitel/03_fallstudie.typ @@ -0,0 +1,5 @@ +#heading(level: 1)[Fallstudie c-entron GmbH (ca. 6 Seiten)] + +#heading(level: 2)[Unternehmenskontext und Legacy-Software] + +#heading(level: 2)[Migrationsstrategie und spezifische Herausforderungen] diff --git a/Kapitel/03_methodisches_vorgehen.typ b/Kapitel/04_konzeption_methodisches_vorgehen.typ similarity index 52% rename from Kapitel/03_methodisches_vorgehen.typ rename to Kapitel/04_konzeption_methodisches_vorgehen.typ index 2e06b18..b45153d 100644 --- a/Kapitel/03_methodisches_vorgehen.typ +++ b/Kapitel/04_konzeption_methodisches_vorgehen.typ @@ -1,10 +1,13 @@ -#heading(level: 1)[Methodisches Vorgehen] +#heading(level: 1)[Konzeption und methodisches Vorgehen (ca. 12 Seiten)] #heading(level: 2)[Forschungsdesign und Vorgehensmodell] Verbinde Literaturrecherche, Technologieevaluation und Interviews in einem konsistenten Design. +#heading(level: 2)[Prozessmodell für KI-gestütztes Reverse Requirements Engineering] +Skizziere Phasen, Rollen und Kontrollpunkte für einen reproduzierbaren Analyse-Workflow. + #heading(level: 2)[Technologieauswahl und LLM-Konfiguration] Dokumentiere Kriterien, Modellwahl und Evaluationsschritte. -#heading(level: 2)[Datengrundlage und Stakeholder-Einbindung] +#heading(level: 2)[Stakeholder-Einbindung und Datengrundlage] Beschreibe Datenquellen, Interviewleitfäden und Validierungsworkshops. diff --git a/Kapitel/04_prototypische_umsetzung.typ b/Kapitel/04_prototypische_umsetzung.typ index cdab9f2..c1f6d47 100644 --- a/Kapitel/04_prototypische_umsetzung.typ +++ b/Kapitel/04_prototypische_umsetzung.typ @@ -6,5 +6,4 @@ Skizziere die Komponenten, Interaktionsabläufe und Traceability-Konzepte. #heading(level: 2)[Toolchain-Integration] Bewerte die Einbindung in bestehende Systeme (z. B. Jira, Confluence). -#heading(level: 2)[Governance, Datenschutz und IP] -Dokumentiere Maßnahmen zur Sicherstellung von Compliance. + diff --git a/Kapitel/05_evaluation.typ b/Kapitel/05_evaluation.typ deleted file mode 100644 index 5c4186a..0000000 --- a/Kapitel/05_evaluation.typ +++ /dev/null @@ -1,10 +0,0 @@ -#heading(level: 1)[Evaluation] - -#heading(level: 2)[Evaluationskriterien und Messgrößen] -Beschreibe Vollständigkeit, Verständlichkeit, Redundanzfreiheit, Stakeholder-Alignment und Aufwandsreduktion. - -#heading(level: 2)[Durchführung der Evaluation] -Erläutere Messaufbau, Workshop-Design und Datenauswertung. - -#heading(level: 2)[Ergebnisse] -Stelle die Resultate der Qualitätsbewertung zusammen. diff --git a/Kapitel/05_prototypische_umsetzung.typ b/Kapitel/05_prototypische_umsetzung.typ new file mode 100644 index 0000000..179e9f8 --- /dev/null +++ b/Kapitel/05_prototypische_umsetzung.typ @@ -0,0 +1,10 @@ +#heading(level: 1)[Prototypische Umsetzung (ca. 10 Seiten)] + +#heading(level: 2)[Architektur des LLM-Agenten] +Skizziere die Komponenten, Interaktionsabläufe und Traceability-Konzepte. + +#heading(level: 2)[Toolchain-Integration] +Bewerte die Einbindung in bestehende Systeme (z. B. Jira, Confluence). + +#heading(level: 2)[Governance, Datenschutz und IP] +Dokumentiere Maßnahmen zur Sicherstellung von Compliance. diff --git a/Kapitel/06_evaluation.typ b/Kapitel/06_evaluation.typ new file mode 100644 index 0000000..5e2998d --- /dev/null +++ b/Kapitel/06_evaluation.typ @@ -0,0 +1,10 @@ +#heading(level: 1)[Evaluation (ca. 12 Seiten)] + +#heading(level: 2)[Evaluationskriterien und Messgrößen] +Beschreibe Vollständigkeit, Verständlichkeit, Redundanzfreiheit, Stakeholder-Alignment und Aufwandsreduktion. + +#heading(level: 2)[Durchführung und Ergebnisse] +Erläutere Messaufbau, Workshop-Design, Datenauswertung und die wichtigsten Resultate. + +#heading(level: 2)[Qualitative Bewertung durch Experten] +Fasse Feedback, Einschätzungen und offene Punkte aus den Experteninterviews zusammen. diff --git a/Kapitel/06_diskussion.typ b/Kapitel/07_diskussion.typ similarity index 87% rename from Kapitel/06_diskussion.typ rename to Kapitel/07_diskussion.typ index d27ad55..489742f 100644 --- a/Kapitel/06_diskussion.typ +++ b/Kapitel/07_diskussion.typ @@ -1,4 +1,4 @@ -#heading(level: 1)[Diskussion] +#heading(level: 1)[Diskussion (ca. 8 Seiten)] #heading(level: 2)[Interpretation der Ergebnisse] Vergleiche die Evaluation mit den Forschungsleitfragen. diff --git a/Kapitel/07_fazit_ausblick.typ b/Kapitel/07_fazit_ausblick.typ deleted file mode 100644 index f601473..0000000 --- a/Kapitel/07_fazit_ausblick.typ +++ /dev/null @@ -1,10 +0,0 @@ -#heading(level: 1)[Fazit und Ausblick] - -#heading(level: 2)[Zusammenfassung der Arbeit] -Fasse die wichtigsten Erkenntnisse zusammen. - -#heading(level: 2)[Ausblick] -Zeige zukünftige Forschungsschwerpunkte und Weiterentwicklungsmöglichkeiten des Prototyps. - -#heading(level: 2)[Handlungsempfehlungen] -Formuliere konkrete nächste Schritte für die c-entron GmbH. diff --git a/Kapitel/08_fazit_ausblick.typ b/Kapitel/08_fazit_ausblick.typ new file mode 100644 index 0000000..1d2df30 --- /dev/null +++ b/Kapitel/08_fazit_ausblick.typ @@ -0,0 +1,10 @@ +#heading(level: 1)[Fazit und Ausblick (ca. 4 Seiten)] + +#heading(level: 2)[Zusammenfassung und Beantwortung der Forschungsfragen] +Fasse die wichtigsten Erkenntnisse zusammen und beantworte die Leitfragen. + +#heading(level: 2)[Handlungsempfehlungen für c-entron GmbH] +Formuliere konkrete nächste Schritte für die c-entron GmbH. + +#heading(level: 2)[Ausblick und zukünftige Forschung] +Zeige zukünftige Forschungsschwerpunkte und Weiterentwicklungsmöglichkeiten des Prototyps. diff --git a/Kapitel/08_literaturverzeichnis.typ b/Kapitel/08_literaturverzeichnis.typ deleted file mode 100644 index 2020503..0000000 --- a/Kapitel/08_literaturverzeichnis.typ +++ /dev/null @@ -1,2 +0,0 @@ -#heading(level: 1)[Literaturverzeichnis] -Ergänze hier das automatisch generierte Literaturverzeichnis. diff --git a/Kapitel/09_literaturverzeichnis.typ b/Kapitel/09_literaturverzeichnis.typ new file mode 100644 index 0000000..5ef5664 --- /dev/null +++ b/Kapitel/09_literaturverzeichnis.typ @@ -0,0 +1,3 @@ +#heading(level: 1)[Literaturverzeichnis (ca. 3 Seiten)] + +#bibliography("../literatur.bib", style: "apa") diff --git a/Kapitel/09_anhang.typ b/Kapitel/10_anhang.typ similarity index 77% rename from Kapitel/09_anhang.typ rename to Kapitel/10_anhang.typ index f290348..daffac7 100644 --- a/Kapitel/09_anhang.typ +++ b/Kapitel/10_anhang.typ @@ -1,4 +1,4 @@ -#heading(level: 1)[Anhang] +#heading(level: 1)[Anhang (ca. 6 Seiten)] #heading(level: 2)[Interviewleitfäden] diff --git a/Masterarbeit_draft.pdf b/Masterarbeit_draft.pdf new file mode 100644 index 0000000..f43becd --- /dev/null +++ b/Masterarbeit_draft.pdf @@ -0,0 +1,6908 @@ +%PDF-1.7 +% + +1 0 obj +<< + /Type /Pages + /Count 8 + /Kids [472 0 R 474 0 R 476 0 R 520 0 R 522 0 R 524 0 R 526 0 R 528 0 R] +>> +endobj + +2 0 obj +<< + /Type /Outlines + /First 3 0 R + /Last 41 0 R + /Count 13 +>> +endobj + +3 0 obj +<< + /Parent 2 0 R + /Next 4 0 R + /Title + /Dest 430 0 R +>> +endobj + +4 0 obj +<< + /Parent 2 0 R + /Next 5 0 R + /Prev 3 0 R + /Title (Abstract (ca. 1 Seite)) + /Dest 431 0 R +>> +endobj + +5 0 obj +<< + /Parent 2 0 R + /Next 6 0 R + /Prev 4 0 R + /Title (Abstract (ca. 1 Seite)) + /Dest 432 0 R +>> +endobj + +6 0 obj +<< + /Parent 2 0 R + /Next 12 0 R + /Prev 5 0 R + /First 7 0 R + /Last 11 0 R + /Count -5 + /Title (1 Einleitung (ca. 8 Seiten)) + /Dest 438 0 R +>> +endobj + +7 0 obj +<< + /Parent 6 0 R + /Next 8 0 R + /Title (1.1 Ausgangssituation und Motivation) + /Dest 433 0 R +>> +endobj + +8 0 obj +<< + /Parent 6 0 R + /Next 9 0 R + /Prev 7 0 R + /Title (1.2 Problemstellung) + /Dest 434 0 R +>> +endobj + +9 0 obj +<< + /Parent 6 0 R + /Next 10 0 R + /Prev 8 0 R + /Title (1.3 Zielsetzung) + /Dest 435 0 R +>> +endobj + +10 0 obj +<< + /Parent 6 0 R + /Next 11 0 R + /Prev 9 0 R + /Title (1.4 Forschungsleitfragen) + /Dest 436 0 R +>> +endobj + +11 0 obj +<< + /Parent 6 0 R + /Prev 10 0 R + /Title (1.5 Aufbau der Arbeit) + /Dest 437 0 R +>> +endobj + +12 0 obj +<< + /Parent 2 0 R + /Next 16 0 R + /Prev 6 0 R + /First 13 0 R + /Last 15 0 R + /Count -3 + /Title (2 Theoretische Grundlagen (ca. 12 Seiten)) + /Dest 442 0 R +>> +endobj + +13 0 obj +<< + /Parent 12 0 R + /Next 14 0 R + /Title (2.1 Requirements Engineering und Reverse Requirements Engineering) + /Dest 439 0 R +>> +endobj + +14 0 obj +<< + /Parent 12 0 R + /Next 15 0 R + /Prev 13 0 R + /Title (2.2 Large Language Models im Software Engineering) + /Dest 440 0 R +>> +endobj + +15 0 obj +<< + /Parent 12 0 R + /Prev 14 0 R + /Title (2.3 Legacy-Modernisierung und Stand der Forschung) + /Dest 441 0 R +>> +endobj + +16 0 obj +<< + /Parent 2 0 R + /Next 19 0 R + /Prev 12 0 R + /First 17 0 R + /Last 18 0 R + /Count -2 + /Title (3 Fallstudie c-entron GmbH (ca. 6 Seiten)) + /Dest 445 0 R +>> +endobj + +17 0 obj +<< + /Parent 16 0 R + /Next 18 0 R + /Title (3.1 Unternehmenskontext und Legacy-Software) + /Dest 443 0 R +>> +endobj + +18 0 obj +<< + /Parent 16 0 R + /Prev 17 0 R + /Title (3.2 Migrationsstrategie und spezifische Herausforderungen) + /Dest 444 0 R +>> +endobj + +19 0 obj +<< + /Parent 2 0 R + /Next 24 0 R + /Prev 16 0 R + /First 20 0 R + /Last 23 0 R + /Count -4 + /Title (4 Konzeption und methodisches Vorgehen (ca. 12 Seiten)) + /Dest 450 0 R +>> +endobj + +20 0 obj +<< + /Parent 19 0 R + /Next 21 0 R + /Title (4.1 Forschungsdesign und Vorgehensmodell) + /Dest 446 0 R +>> +endobj + +21 0 obj +<< + /Parent 19 0 R + /Next 22 0 R + /Prev 20 0 R + /Title + /Dest 447 0 R +>> +endobj + +22 0 obj +<< + /Parent 19 0 R + /Next 23 0 R + /Prev 21 0 R + /Title (4.3 Technologieauswahl und LLM-Konfiguration) + /Dest 448 0 R +>> +endobj + +23 0 obj +<< + /Parent 19 0 R + /Prev 22 0 R + /Title (4.4 Stakeholder-Einbindung und Datengrundlage) + /Dest 449 0 R +>> +endobj + +24 0 obj +<< + /Parent 2 0 R + /Next 28 0 R + /Prev 19 0 R + /First 25 0 R + /Last 27 0 R + /Count -3 + /Title (5 Prototypische Umsetzung (ca. 10 Seiten)) + /Dest 454 0 R +>> +endobj + +25 0 obj +<< + /Parent 24 0 R + /Next 26 0 R + /Title (5.1 Architektur des LLM-Agenten) + /Dest 451 0 R +>> +endobj + +26 0 obj +<< + /Parent 24 0 R + /Next 27 0 R + /Prev 25 0 R + /Title (5.2 Toolchain-Integration) + /Dest 452 0 R +>> +endobj + +27 0 obj +<< + /Parent 24 0 R + /Prev 26 0 R + /Title (5.3 Governance, Datenschutz und IP) + /Dest 453 0 R +>> +endobj + +28 0 obj +<< + /Parent 2 0 R + /Next 32 0 R + /Prev 24 0 R + /First 29 0 R + /Last 31 0 R + /Count -3 + /Title (6 Evaluation (ca. 12 Seiten)) + /Dest 458 0 R +>> +endobj + +29 0 obj +<< + /Parent 28 0 R + /Next 30 0 R + /Title + /Dest 455 0 R +>> +endobj + +30 0 obj +<< + /Parent 28 0 R + /Next 31 0 R + /Prev 29 0 R + /Title + /Dest 456 0 R +>> +endobj + +31 0 obj +<< + /Parent 28 0 R + /Prev 30 0 R + /Title (6.3 Qualitative Bewertung durch Experten) + /Dest 457 0 R +>> +endobj + +32 0 obj +<< + /Parent 2 0 R + /Next 36 0 R + /Prev 28 0 R + /First 33 0 R + /Last 35 0 R + /Count -3 + /Title (7 Diskussion (ca. 8 Seiten)) + /Dest 462 0 R +>> +endobj + +33 0 obj +<< + /Parent 32 0 R + /Next 34 0 R + /Title (7.1 Interpretation der Ergebnisse) + /Dest 459 0 R +>> +endobj + +34 0 obj +<< + /Parent 32 0 R + /Next 35 0 R + /Prev 33 0 R + /Title (7.2 Chancen und Grenzen) + /Dest 460 0 R +>> +endobj + +35 0 obj +<< + /Parent 32 0 R + /Prev 34 0 R + /Title + /Dest 461 0 R +>> +endobj + +36 0 obj +<< + /Parent 2 0 R + /Next 40 0 R + /Prev 32 0 R + /First 37 0 R + /Last 39 0 R + /Count -3 + /Title (8 Fazit und Ausblick (ca. 4 Seiten)) + /Dest 466 0 R +>> +endobj + +37 0 obj +<< + /Parent 36 0 R + /Next 38 0 R + /Title (8.1 Zusammenfassung und Beantwortung der Forschungsfragen) + /Dest 463 0 R +>> +endobj + +38 0 obj +<< + /Parent 36 0 R + /Next 39 0 R + /Prev 37 0 R + /Title + /Dest 464 0 R +>> +endobj + +39 0 obj +<< + /Parent 36 0 R + /Prev 38 0 R + /Title + /Dest 465 0 R +>> +endobj + +40 0 obj +<< + /Parent 2 0 R + /Next 41 0 R + /Prev 36 0 R + /Title (9 Literaturverzeichnis (ca. 3 Seiten)) + /Dest 467 0 R +>> +endobj + +41 0 obj +<< + /Parent 2 0 R + /Prev 40 0 R + /First 42 0 R + /Last 44 0 R + /Count -3 + /Title (10 Anhang (ca. 6 Seiten)) + /Dest 471 0 R +>> +endobj + +42 0 obj +<< + /Parent 41 0 R + /Next 43 0 R + /Title + /Dest 468 0 R +>> +endobj + +43 0 obj +<< + /Parent 41 0 R + /Next 44 0 R + /Prev 42 0 R + /Title + /Dest 469 0 R +>> +endobj + +44 0 obj +<< + /Parent 41 0 R + /Prev 43 0 R + /Title (10.3 Konfigurationsdetails des Prototyps) + /Dest 470 0 R +>> +endobj + +45 0 obj +<< + /Nums [0 391 0 R 2 392 0 R 3 393 0 R 4 394 0 R 5 395 0 R 6 396 0 R 7 397 0 R] +>> +endobj + +46 0 obj +<< + /Type /StructTreeRoot + /RoleMap << + /Datetime /Span + /Terms /Part + /Title /P + /Strong /Span + /Em /Span + >> + /K [55 0 R] + /ParentTree << + /Nums [0 47 0 R 1 48 0 R 2 49 0 R 3 373 0 R 4 370 0 R 5 367 0 R 6 363 0 R 7 359 0 R 8 355 0 R 9 351 0 R 10 347 0 R 11 343 0 R 12 338 0 R 13 334 0 R 14 330 0 R 15 326 0 R 16 321 0 R 17 317 0 R 18 313 0 R 19 308 0 R 20 304 0 R 21 300 0 R 22 296 0 R 23 292 0 R 24 287 0 R 25 283 0 R 26 279 0 R 27 275 0 R 28 270 0 R 29 266 0 R 30 262 0 R 31 258 0 R 32 253 0 R 33 249 0 R 34 245 0 R 35 241 0 R 36 236 0 R 37 232 0 R 38 228 0 R 39 224 0 R 40 219 0 R 41 215 0 R 42 211 0 R 43 207 0 R 44 203 0 R 45 50 0 R 46 51 0 R 47 52 0 R 48 53 0 R 49 54 0 R] + >> + /ParentTreeNextKey 50 +>> +endobj + +47 0 obj +[390 0 R 390 0 R 389 0 R 388 0 R 387 0 R 386 0 R 385 0 R 384 0 R 383 0 R] +endobj + +48 0 obj +[382 0 R 381 0 R 381 0 R 381 0 R 379 0 R 380 0 R 377 0 R 378 0 R] +endobj + +49 0 obj +[376 0 R 375 0 R] +endobj + +50 0 obj +[374 0 R 373 0 R 373 0 R 370 0 R 370 0 R 367 0 R 367 0 R 364 0 R 363 0 R 363 0 R 360 0 R 359 0 R 359 0 R 356 0 R 355 0 R 355 0 R 352 0 R 351 0 R 351 0 R 348 0 R 347 0 R 347 0 R 344 0 R 343 0 R 343 0 R 339 0 R 338 0 R 338 0 R 335 0 R 334 0 R 334 0 R 331 0 R 330 0 R 330 0 R 327 0 R 326 0 R 326 0 R 322 0 R 321 0 R 321 0 R 318 0 R 317 0 R 317 0 R 314 0 R 313 0 R 313 0 R 309 0 R 308 0 R 308 0 R 305 0 R 304 0 R 304 0 R 301 0 R 300 0 R 300 0 R 297 0 R 296 0 R 296 0 R 293 0 R 292 0 R 292 0 R 288 0 R 287 0 R 287 0 R 284 0 R 283 0 R 283 0 R 280 0 R 279 0 R 279 0 R 276 0 R 275 0 R 275 0 R 271 0 R 270 0 R 270 0 R 267 0 R 266 0 R 266 0 R 263 0 R 262 0 R 262 0 R 259 0 R 258 0 R 258 0 R 254 0 R 253 0 R 253 0 R 250 0 R 249 0 R 249 0 R 246 0 R 245 0 R 245 0 R 242 0 R 241 0 R 241 0 R 237 0 R 236 0 R 236 0 R 233 0 R 232 0 R 232 0 R 229 0 R 228 0 R 228 0 R 225 0 R 224 0 R 224 0 R 220 0 R 219 0 R 219 0 R 216 0 R 215 0 R 215 0 R 212 0 R 211 0 R 211 0 R 208 0 R 207 0 R 207 0 R 204 0 R 203 0 R 203 0 R] +endobj + +51 0 obj +[198 0 R 197 0 R 197 0 R 196 0 R 196 0 R 195 0 R 195 0 R 194 0 R 194 0 R 194 0 R 194 0 R 194 0 R 194 0 R 193 0 R 193 0 R 193 0 R 193 0 R 193 0 R 193 0 R 193 0 R 192 0 R 192 0 R 192 0 R 192 0 R 192 0 R 192 0 R 192 0 R 192 0 R 191 0 R 191 0 R 190 0 R 190 0 R 190 0 R 189 0 R 188 0 R 188 0 R 188 0 R 186 0 R 185 0 R 185 0 R 185 0 R 185 0 R 183 0 R 182 0 R 182 0 R 182 0 R 180 0 R 179 0 R 179 0 R 179 0 R 177 0 R 176 0 R 176 0 R 176 0 R 173 0 R 173 0 R 173 0 R] +endobj + +52 0 obj +[172 0 R 172 0 R 171 0 R 171 0 R 171 0 R 170 0 R 169 0 R 169 0 R 167 0 R 166 0 R 166 0 R 164 0 R 163 0 R 163 0 R 161 0 R 160 0 R 160 0 R 158 0 R 157 0 R 157 0 R 155 0 R 154 0 R 154 0 R 151 0 R 151 0 R 150 0 R 149 0 R 148 0 R 148 0 R 148 0 R 148 0 R 146 0 R 145 0 R 145 0 R 145 0 R 145 0 R 143 0 R 142 0 R 142 0 R 142 0 R 140 0 R 139 0 R 139 0 R 139 0 R 139 0 R 136 0 R 136 0 R 135 0 R 134 0 R 133 0 R 133 0 R 131 0 R 130 0 R 130 0 R 130 0 R 128 0 R 127 0 R 127 0 R 127 0 R 125 0 R 124 0 R 124 0 R 124 0 R 122 0 R 121 0 R 121 0 R 121 0 R 119 0 R 118 0 R 118 0 R 116 0 R 115 0 R 115 0 R 115 0 R 113 0 R 112 0 R 112 0 R 112 0 R] +endobj + +53 0 obj +[109 0 R 109 0 R 108 0 R 108 0 R 107 0 R 107 0 R 106 0 R 106 0 R 105 0 R 105 0 R 104 0 R 104 0 R 103 0 R 103 0 R 102 0 R 102 0 R 101 0 R 101 0 R 100 0 R 100 0 R 99 0 R 99 0 R 98 0 R 98 0 R 97 0 R 97 0 R 96 0 R 95 0 R 95 0 R 94 0 R 93 0 R 93 0 R 92 0 R 91 0 R 91 0 R 90 0 R 89 0 R 89 0 R 88 0 R 88 0 R 87 0 R 86 0 R 86 0 R 85 0 R 84 0 R 84 0 R 83 0 R] +endobj + +54 0 obj +[82 0 R 82 0 R 81 0 R 81 0 R 80 0 R 80 0 R 79 0 R 79 0 R 78 0 R 77 0 R 77 0 R 76 0 R 75 0 R 75 0 R 74 0 R 74 0 R 73 0 R 72 0 R 72 0 R 71 0 R 70 0 R 70 0 R 69 0 R 68 0 R 68 0 R 67 0 R 67 0 R 66 0 R 65 0 R 65 0 R 64 0 R 63 0 R 63 0 R 62 0 R 61 0 R 61 0 R 60 0 R 59 0 R 59 0 R 58 0 R 58 0 R 57 0 R 57 0 R 56 0 R 56 0 R] +endobj + +55 0 obj +<< + /Type /StructElem + /S /Document + /P 46 0 R + /K [390 0 R 389 0 R 388 0 R 387 0 R 386 0 R 385 0 R 384 0 R 383 0 R 382 0 R 381 0 R 379 0 R 377 0 R 376 0 R 375 0 R 374 0 R 199 0 R 198 0 R 197 0 R 196 0 R 195 0 R 194 0 R 193 0 R 192 0 R 191 0 R 190 0 R 174 0 R 173 0 R 172 0 R 171 0 R 152 0 R 151 0 R 150 0 R 137 0 R 136 0 R 135 0 R 110 0 R 109 0 R 108 0 R 107 0 R 106 0 R 105 0 R 104 0 R 103 0 R 102 0 R 101 0 R 100 0 R 99 0 R 98 0 R 97 0 R 96 0 R 95 0 R 94 0 R 93 0 R 92 0 R 91 0 R 90 0 R 89 0 R 88 0 R 87 0 R 86 0 R 85 0 R 84 0 R 83 0 R 82 0 R 81 0 R 80 0 R 79 0 R 78 0 R 77 0 R 76 0 R 75 0 R 74 0 R 73 0 R 72 0 R 71 0 R 70 0 R 69 0 R 68 0 R 67 0 R 66 0 R 65 0 R 64 0 R 63 0 R 62 0 R 61 0 R 60 0 R 59 0 R 58 0 R 57 0 R 56 0 R] +>> +endobj + +56 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Konfigurationsdetails des Prototyps) + /K [43 44] + /Pg 528 0 R +>> +endobj + +57 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T + /K [41 42] + /Pg 528 0 R +>> +endobj + +58 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T + /K [39 40] + /Pg 528 0 R +>> +endobj + +59 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T (Anhang (ca. 6 Seiten)) + /K [37 38] + /Pg 528 0 R +>> +endobj + +60 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [36] + /Pg 528 0 R +>> +endobj + +61 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T (Literaturverzeichnis (ca. 3 Seiten)) + /K [34 35] + /Pg 528 0 R +>> +endobj + +62 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [33] + /Pg 528 0 R +>> +endobj + +63 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T + /K [31 32] + /Pg 528 0 R +>> +endobj + +64 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [30] + /Pg 528 0 R +>> +endobj + +65 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T + /K [28 29] + /Pg 528 0 R +>> +endobj + +66 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [27] + /Pg 528 0 R +>> +endobj + +67 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Zusammenfassung und Beantwortung der Forschungsfragen) + /K [25 26] + /Pg 528 0 R +>> +endobj + +68 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T (Fazit und Ausblick (ca. 4 Seiten)) + /K [23 24] + /Pg 528 0 R +>> +endobj + +69 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [22] + /Pg 528 0 R +>> +endobj + +70 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T + /K [20 21] + /Pg 528 0 R +>> +endobj + +71 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [19] + /Pg 528 0 R +>> +endobj + +72 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Chancen und Grenzen) + /K [17 18] + /Pg 528 0 R +>> +endobj + +73 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [16] + /Pg 528 0 R +>> +endobj + +74 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Interpretation der Ergebnisse) + /K [14 15] + /Pg 528 0 R +>> +endobj + +75 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T (Diskussion (ca. 8 Seiten)) + /K [12 13] + /Pg 528 0 R +>> +endobj + +76 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [11] + /Pg 528 0 R +>> +endobj + +77 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Qualitative Bewertung durch Experten) + /K [9 10] + /Pg 528 0 R +>> +endobj + +78 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [8] + /Pg 528 0 R +>> +endobj + +79 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T + /K [6 7] + /Pg 528 0 R +>> +endobj + +80 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [4 5] + /Pg 528 0 R +>> +endobj + +81 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T + /K [2 3] + /Pg 528 0 R +>> +endobj + +82 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T (Evaluation (ca. 12 Seiten)) + /K [0 1] + /Pg 528 0 R +>> +endobj + +83 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [46] + /Pg 526 0 R +>> +endobj + +84 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Governance, Datenschutz und IP) + /K [44 45] + /Pg 526 0 R +>> +endobj + +85 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [43] + /Pg 526 0 R +>> +endobj + +86 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Toolchain-Integration) + /K [41 42] + /Pg 526 0 R +>> +endobj + +87 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [40] + /Pg 526 0 R +>> +endobj + +88 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Architektur des LLM-Agenten) + /K [38 39] + /Pg 526 0 R +>> +endobj + +89 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T (Prototypische Umsetzung (ca. 10 Seiten)) + /K [36 37] + /Pg 526 0 R +>> +endobj + +90 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [35] + /Pg 526 0 R +>> +endobj + +91 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Stakeholder-Einbindung und Datengrundlage) + /K [33 34] + /Pg 526 0 R +>> +endobj + +92 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [32] + /Pg 526 0 R +>> +endobj + +93 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Technologieauswahl und LLM-Konfiguration) + /K [30 31] + /Pg 526 0 R +>> +endobj + +94 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [29] + /Pg 526 0 R +>> +endobj + +95 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T + /K [27 28] + /Pg 526 0 R +>> +endobj + +96 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [26] + /Pg 526 0 R +>> +endobj + +97 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Forschungsdesign und Vorgehensmodell) + /K [24 25] + /Pg 526 0 R +>> +endobj + +98 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T (Konzeption und methodisches Vorgehen (ca. 12 Seiten)) + /K [22 23] + /Pg 526 0 R +>> +endobj + +99 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Migrationsstrategie und spezifische Herausforderungen) + /K [20 21] + /Pg 526 0 R +>> +endobj + +100 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Unternehmenskontext und Legacy-Software) + /K [18 19] + /Pg 526 0 R +>> +endobj + +101 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T (Fallstudie c-entron GmbH (ca. 6 Seiten)) + /K [16 17] + /Pg 526 0 R +>> +endobj + +102 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [14 15] + /Pg 526 0 R +>> +endobj + +103 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Legacy-Modernisierung und Stand der Forschung) + /K [12 13] + /Pg 526 0 R +>> +endobj + +104 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [10 11] + /Pg 526 0 R +>> +endobj + +105 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Large Language Models im Software Engineering) + /K [8 9] + /Pg 526 0 R +>> +endobj + +106 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [6 7] + /Pg 526 0 R +>> +endobj + +107 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Requirements Engineering und Reverse Requirements Engineering) + /K [4 5] + /Pg 526 0 R +>> +endobj + +108 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T (Theoretische Grundlagen (ca. 12 Seiten)) + /K [2 3] + /Pg 526 0 R +>> +endobj + +109 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [0 1] + /Pg 526 0 R +>> +endobj + +110 0 obj +<< + /Type /StructElem + /S /L + /P 55 0 R + /A [<< + /O /List + /ListNumbering /Decimal + >>] + /K [132 0 R 129 0 R 126 0 R 123 0 R 120 0 R 117 0 R 114 0 R 111 0 R] +>> +endobj + +111 0 obj +<< + /Type /StructElem + /S /LI + /P 110 0 R + /K [113 0 R 112 0 R] +>> +endobj + +112 0 obj +<< + /Type /StructElem + /S /LBody + /P 111 0 R + /K [75 76 77] + /Pg 524 0 R +>> +endobj + +113 0 obj +<< + /Type /StructElem + /S /Lbl + /P 111 0 R + /K [74] + /Pg 524 0 R +>> +endobj + +114 0 obj +<< + /Type /StructElem + /S /LI + /P 110 0 R + /K [116 0 R 115 0 R] +>> +endobj + +115 0 obj +<< + /Type /StructElem + /S /LBody + /P 114 0 R + /K [71 72 73] + /Pg 524 0 R +>> +endobj + +116 0 obj +<< + /Type /StructElem + /S /Lbl + /P 114 0 R + /K [70] + /Pg 524 0 R +>> +endobj + +117 0 obj +<< + /Type /StructElem + /S /LI + /P 110 0 R + /K [119 0 R 118 0 R] +>> +endobj + +118 0 obj +<< + /Type /StructElem + /S /LBody + /P 117 0 R + /K [68 69] + /Pg 524 0 R +>> +endobj + +119 0 obj +<< + /Type /StructElem + /S /Lbl + /P 117 0 R + /K [67] + /Pg 524 0 R +>> +endobj + +120 0 obj +<< + /Type /StructElem + /S /LI + /P 110 0 R + /K [122 0 R 121 0 R] +>> +endobj + +121 0 obj +<< + /Type /StructElem + /S /LBody + /P 120 0 R + /K [64 65 66] + /Pg 524 0 R +>> +endobj + +122 0 obj +<< + /Type /StructElem + /S /Lbl + /P 120 0 R + /K [63] + /Pg 524 0 R +>> +endobj + +123 0 obj +<< + /Type /StructElem + /S /LI + /P 110 0 R + /K [125 0 R 124 0 R] +>> +endobj + +124 0 obj +<< + /Type /StructElem + /S /LBody + /P 123 0 R + /K [60 61 62] + /Pg 524 0 R +>> +endobj + +125 0 obj +<< + /Type /StructElem + /S /Lbl + /P 123 0 R + /K [59] + /Pg 524 0 R +>> +endobj + +126 0 obj +<< + /Type /StructElem + /S /LI + /P 110 0 R + /K [128 0 R 127 0 R] +>> +endobj + +127 0 obj +<< + /Type /StructElem + /S /LBody + /P 126 0 R + /K [56 57 58] + /Pg 524 0 R +>> +endobj + +128 0 obj +<< + /Type /StructElem + /S /Lbl + /P 126 0 R + /K [55] + /Pg 524 0 R +>> +endobj + +129 0 obj +<< + /Type /StructElem + /S /LI + /P 110 0 R + /K [131 0 R 130 0 R] +>> +endobj + +130 0 obj +<< + /Type /StructElem + /S /LBody + /P 129 0 R + /K [52 53 54] + /Pg 524 0 R +>> +endobj + +131 0 obj +<< + /Type /StructElem + /S /Lbl + /P 129 0 R + /K [51] + /Pg 524 0 R +>> +endobj + +132 0 obj +<< + /Type /StructElem + /S /LI + /P 110 0 R + /K [134 0 R 133 0 R] +>> +endobj + +133 0 obj +<< + /Type /StructElem + /S /LBody + /P 132 0 R + /K [49 50] + /Pg 524 0 R +>> +endobj + +134 0 obj +<< + /Type /StructElem + /S /Lbl + /P 132 0 R + /K [48] + /Pg 524 0 R +>> +endobj + +135 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [47] + /Pg 524 0 R +>> +endobj + +136 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Aufbau der Arbeit) + /K [45 46] + /Pg 524 0 R +>> +endobj + +137 0 obj +<< + /Type /StructElem + /S /L + /P 55 0 R + /A [<< + /O /List + /ListNumbering /Circle + >>] + /K [147 0 R 144 0 R 141 0 R 138 0 R] +>> +endobj + +138 0 obj +<< + /Type /StructElem + /S /LI + /P 137 0 R + /K [140 0 R 139 0 R] +>> +endobj + +139 0 obj +<< + /Type /StructElem + /S /LBody + /P 138 0 R + /K [41 42 43 44] + /Pg 524 0 R +>> +endobj + +140 0 obj +<< + /Type /StructElem + /S /Lbl + /P 138 0 R + /K [40] + /Pg 524 0 R +>> +endobj + +141 0 obj +<< + /Type /StructElem + /S /LI + /P 137 0 R + /K [143 0 R 142 0 R] +>> +endobj + +142 0 obj +<< + /Type /StructElem + /S /LBody + /P 141 0 R + /K [37 38 39] + /Pg 524 0 R +>> +endobj + +143 0 obj +<< + /Type /StructElem + /S /Lbl + /P 141 0 R + /K [36] + /Pg 524 0 R +>> +endobj + +144 0 obj +<< + /Type /StructElem + /S /LI + /P 137 0 R + /K [146 0 R 145 0 R] +>> +endobj + +145 0 obj +<< + /Type /StructElem + /S /LBody + /P 144 0 R + /K [32 33 34 35] + /Pg 524 0 R +>> +endobj + +146 0 obj +<< + /Type /StructElem + /S /Lbl + /P 144 0 R + /K [31] + /Pg 524 0 R +>> +endobj + +147 0 obj +<< + /Type /StructElem + /S /LI + /P 137 0 R + /K [149 0 R 148 0 R] +>> +endobj + +148 0 obj +<< + /Type /StructElem + /S /LBody + /P 147 0 R + /K [27 28 29 30] + /Pg 524 0 R +>> +endobj + +149 0 obj +<< + /Type /StructElem + /S /Lbl + /P 147 0 R + /K [26] + /Pg 524 0 R +>> +endobj + +150 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [25] + /Pg 524 0 R +>> +endobj + +151 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Forschungsleitfragen) + /K [23 24] + /Pg 524 0 R +>> +endobj + +152 0 obj +<< + /Type /StructElem + /S /L + /P 55 0 R + /A [<< + /O /List + /ListNumbering /Circle + >>] + /K [168 0 R 165 0 R 162 0 R 159 0 R 156 0 R 153 0 R] +>> +endobj + +153 0 obj +<< + /Type /StructElem + /S /LI + /P 152 0 R + /K [155 0 R 154 0 R] +>> +endobj + +154 0 obj +<< + /Type /StructElem + /S /LBody + /P 153 0 R + /K [21 22] + /Pg 524 0 R +>> +endobj + +155 0 obj +<< + /Type /StructElem + /S /Lbl + /P 153 0 R + /K [20] + /Pg 524 0 R +>> +endobj + +156 0 obj +<< + /Type /StructElem + /S /LI + /P 152 0 R + /K [158 0 R 157 0 R] +>> +endobj + +157 0 obj +<< + /Type /StructElem + /S /LBody + /P 156 0 R + /K [18 19] + /Pg 524 0 R +>> +endobj + +158 0 obj +<< + /Type /StructElem + /S /Lbl + /P 156 0 R + /K [17] + /Pg 524 0 R +>> +endobj + +159 0 obj +<< + /Type /StructElem + /S /LI + /P 152 0 R + /K [161 0 R 160 0 R] +>> +endobj + +160 0 obj +<< + /Type /StructElem + /S /LBody + /P 159 0 R + /K [15 16] + /Pg 524 0 R +>> +endobj + +161 0 obj +<< + /Type /StructElem + /S /Lbl + /P 159 0 R + /K [14] + /Pg 524 0 R +>> +endobj + +162 0 obj +<< + /Type /StructElem + /S /LI + /P 152 0 R + /K [164 0 R 163 0 R] +>> +endobj + +163 0 obj +<< + /Type /StructElem + /S /LBody + /P 162 0 R + /K [12 13] + /Pg 524 0 R +>> +endobj + +164 0 obj +<< + /Type /StructElem + /S /Lbl + /P 162 0 R + /K [11] + /Pg 524 0 R +>> +endobj + +165 0 obj +<< + /Type /StructElem + /S /LI + /P 152 0 R + /K [167 0 R 166 0 R] +>> +endobj + +166 0 obj +<< + /Type /StructElem + /S /LBody + /P 165 0 R + /K [9 10] + /Pg 524 0 R +>> +endobj + +167 0 obj +<< + /Type /StructElem + /S /Lbl + /P 165 0 R + /K [8] + /Pg 524 0 R +>> +endobj + +168 0 obj +<< + /Type /StructElem + /S /LI + /P 152 0 R + /K [170 0 R 169 0 R] +>> +endobj + +169 0 obj +<< + /Type /StructElem + /S /LBody + /P 168 0 R + /K [6 7] + /Pg 524 0 R +>> +endobj + +170 0 obj +<< + /Type /StructElem + /S /Lbl + /P 168 0 R + /K [5] + /Pg 524 0 R +>> +endobj + +171 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [2 3 4] + /Pg 524 0 R +>> +endobj + +172 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Zielsetzung) + /K [0 1] + /Pg 524 0 R +>> +endobj + +173 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [54 55 56] + /Pg 522 0 R +>> +endobj + +174 0 obj +<< + /Type /StructElem + /S /L + /P 55 0 R + /A [<< + /O /List + /ListNumbering /Circle + >>] + /K [187 0 R 184 0 R 181 0 R 178 0 R 175 0 R] +>> +endobj + +175 0 obj +<< + /Type /StructElem + /S /LI + /P 174 0 R + /K [177 0 R 176 0 R] +>> +endobj + +176 0 obj +<< + /Type /StructElem + /S /LBody + /P 175 0 R + /K [51 52 53] + /Pg 522 0 R +>> +endobj + +177 0 obj +<< + /Type /StructElem + /S /Lbl + /P 175 0 R + /K [50] + /Pg 522 0 R +>> +endobj + +178 0 obj +<< + /Type /StructElem + /S /LI + /P 174 0 R + /K [180 0 R 179 0 R] +>> +endobj + +179 0 obj +<< + /Type /StructElem + /S /LBody + /P 178 0 R + /K [47 48 49] + /Pg 522 0 R +>> +endobj + +180 0 obj +<< + /Type /StructElem + /S /Lbl + /P 178 0 R + /K [46] + /Pg 522 0 R +>> +endobj + +181 0 obj +<< + /Type /StructElem + /S /LI + /P 174 0 R + /K [183 0 R 182 0 R] +>> +endobj + +182 0 obj +<< + /Type /StructElem + /S /LBody + /P 181 0 R + /K [43 44 45] + /Pg 522 0 R +>> +endobj + +183 0 obj +<< + /Type /StructElem + /S /Lbl + /P 181 0 R + /K [42] + /Pg 522 0 R +>> +endobj + +184 0 obj +<< + /Type /StructElem + /S /LI + /P 174 0 R + /K [186 0 R 185 0 R] +>> +endobj + +185 0 obj +<< + /Type /StructElem + /S /LBody + /P 184 0 R + /K [38 39 40 41] + /Pg 522 0 R +>> +endobj + +186 0 obj +<< + /Type /StructElem + /S /Lbl + /P 184 0 R + /K [37] + /Pg 522 0 R +>> +endobj + +187 0 obj +<< + /Type /StructElem + /S /LI + /P 174 0 R + /K [189 0 R 188 0 R] +>> +endobj + +188 0 obj +<< + /Type /StructElem + /S /LBody + /P 187 0 R + /K [34 35 36] + /Pg 522 0 R +>> +endobj + +189 0 obj +<< + /Type /StructElem + /S /Lbl + /P 187 0 R + /K [33] + /Pg 522 0 R +>> +endobj + +190 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [30 31 32] + /Pg 522 0 R +>> +endobj + +191 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Problemstellung) + /K [28 29] + /Pg 522 0 R +>> +endobj + +192 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [20 21 22 23 24 25 26 27] + /Pg 522 0 R +>> +endobj + +193 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [13 14 15 16 17 18 19] + /Pg 522 0 R +>> +endobj + +194 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [7 8 9 10 11 12] + /Pg 522 0 R +>> +endobj + +195 0 obj +<< + /Type /StructElem + /S /H2 + /P 55 0 R + /T (Ausgangssituation und Motivation) + /K [5 6] + /Pg 522 0 R +>> +endobj + +196 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T (Einleitung (ca. 8 Seiten)) + /K [3 4] + /Pg 522 0 R +>> +endobj + +197 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [1 2] + /Pg 522 0 R +>> +endobj + +198 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T (Abstract (ca. 1 Seite)) + /K [0] + /Pg 522 0 R +>> +endobj + +199 0 obj +<< + /Type /StructElem + /S /TOC + /P 55 0 R + /K [371 0 R 368 0 R 365 0 R 361 0 R 340 0 R 336 0 R 323 0 R 319 0 R 310 0 R 306 0 R 289 0 R 285 0 R 272 0 R 268 0 R 255 0 R 251 0 R 238 0 R 234 0 R 221 0 R 217 0 R 213 0 R 200 0 R] +>> +endobj + +200 0 obj +<< + /Type /StructElem + /S /TOC + /P 199 0 R + /K [209 0 R 205 0 R 201 0 R] +>> +endobj + +201 0 obj +<< + /Type /StructElem + /S /TOCI + /P 200 0 R + /K [202 0 R] +>> +endobj + +202 0 obj +<< + /Type /StructElem + /S /Reference + /P 201 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [203 0 R] +>> +endobj + +203 0 obj +<< + /Type /StructElem + /S /Link + /P 202 0 R + /K [204 0 R 122 123 << + /Type /OBJR + /Pg 520 0 R + /Obj 519 0 R + >>] + /Pg 520 0 R +>> +endobj + +204 0 obj +<< + /Type /StructElem + /S /Lbl + /P 203 0 R + /K [121] + /Pg 520 0 R +>> +endobj + +205 0 obj +<< + /Type /StructElem + /S /TOCI + /P 200 0 R + /K [206 0 R] +>> +endobj + +206 0 obj +<< + /Type /StructElem + /S /Reference + /P 205 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [207 0 R] +>> +endobj + +207 0 obj +<< + /Type /StructElem + /S /Link + /P 206 0 R + /K [208 0 R 119 120 << + /Type /OBJR + /Pg 520 0 R + /Obj 518 0 R + >>] + /Pg 520 0 R +>> +endobj + +208 0 obj +<< + /Type /StructElem + /S /Lbl + /P 207 0 R + /K [118] + /Pg 520 0 R +>> +endobj + +209 0 obj +<< + /Type /StructElem + /S /TOCI + /P 200 0 R + /K [210 0 R] +>> +endobj + +210 0 obj +<< + /Type /StructElem + /S /Reference + /P 209 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [211 0 R] +>> +endobj + +211 0 obj +<< + /Type /StructElem + /S /Link + /P 210 0 R + /K [212 0 R 116 117 << + /Type /OBJR + /Pg 520 0 R + /Obj 517 0 R + >>] + /Pg 520 0 R +>> +endobj + +212 0 obj +<< + /Type /StructElem + /S /Lbl + /P 211 0 R + /K [115] + /Pg 520 0 R +>> +endobj + +213 0 obj +<< + /Type /StructElem + /S /TOCI + /P 199 0 R + /K [214 0 R] +>> +endobj + +214 0 obj +<< + /Type /StructElem + /S /Reference + /P 213 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [215 0 R] +>> +endobj + +215 0 obj +<< + /Type /StructElem + /S /Link + /P 214 0 R + /K [216 0 R 113 114 << + /Type /OBJR + /Pg 520 0 R + /Obj 516 0 R + >>] + /Pg 520 0 R +>> +endobj + +216 0 obj +<< + /Type /StructElem + /S /Lbl + /P 215 0 R + /K [112] + /Pg 520 0 R +>> +endobj + +217 0 obj +<< + /Type /StructElem + /S /TOCI + /P 199 0 R + /K [218 0 R] +>> +endobj + +218 0 obj +<< + /Type /StructElem + /S /Reference + /P 217 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [219 0 R] +>> +endobj + +219 0 obj +<< + /Type /StructElem + /S /Link + /P 218 0 R + /K [220 0 R 110 111 << + /Type /OBJR + /Pg 520 0 R + /Obj 515 0 R + >>] + /Pg 520 0 R +>> +endobj + +220 0 obj +<< + /Type /StructElem + /S /Lbl + /P 219 0 R + /K [109] + /Pg 520 0 R +>> +endobj + +221 0 obj +<< + /Type /StructElem + /S /TOC + /P 199 0 R + /K [230 0 R 226 0 R 222 0 R] +>> +endobj + +222 0 obj +<< + /Type /StructElem + /S /TOCI + /P 221 0 R + /K [223 0 R] +>> +endobj + +223 0 obj +<< + /Type /StructElem + /S /Reference + /P 222 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [224 0 R] +>> +endobj + +224 0 obj +<< + /Type /StructElem + /S /Link + /P 223 0 R + /K [225 0 R 107 108 << + /Type /OBJR + /Pg 520 0 R + /Obj 514 0 R + >>] + /Pg 520 0 R +>> +endobj + +225 0 obj +<< + /Type /StructElem + /S /Lbl + /P 224 0 R + /K [106] + /Pg 520 0 R +>> +endobj + +226 0 obj +<< + /Type /StructElem + /S /TOCI + /P 221 0 R + /K [227 0 R] +>> +endobj + +227 0 obj +<< + /Type /StructElem + /S /Reference + /P 226 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [228 0 R] +>> +endobj + +228 0 obj +<< + /Type /StructElem + /S /Link + /P 227 0 R + /K [229 0 R 104 105 << + /Type /OBJR + /Pg 520 0 R + /Obj 513 0 R + >>] + /Pg 520 0 R +>> +endobj + +229 0 obj +<< + /Type /StructElem + /S /Lbl + /P 228 0 R + /K [103] + /Pg 520 0 R +>> +endobj + +230 0 obj +<< + /Type /StructElem + /S /TOCI + /P 221 0 R + /K [231 0 R] +>> +endobj + +231 0 obj +<< + /Type /StructElem + /S /Reference + /P 230 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [232 0 R] +>> +endobj + +232 0 obj +<< + /Type /StructElem + /S /Link + /P 231 0 R + /K [233 0 R 101 102 << + /Type /OBJR + /Pg 520 0 R + /Obj 512 0 R + >>] + /Pg 520 0 R +>> +endobj + +233 0 obj +<< + /Type /StructElem + /S /Lbl + /P 232 0 R + /K [100] + /Pg 520 0 R +>> +endobj + +234 0 obj +<< + /Type /StructElem + /S /TOCI + /P 199 0 R + /K [235 0 R] +>> +endobj + +235 0 obj +<< + /Type /StructElem + /S /Reference + /P 234 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [236 0 R] +>> +endobj + +236 0 obj +<< + /Type /StructElem + /S /Link + /P 235 0 R + /K [237 0 R 98 99 << + /Type /OBJR + /Pg 520 0 R + /Obj 511 0 R + >>] + /Pg 520 0 R +>> +endobj + +237 0 obj +<< + /Type /StructElem + /S /Lbl + /P 236 0 R + /K [97] + /Pg 520 0 R +>> +endobj + +238 0 obj +<< + /Type /StructElem + /S /TOC + /P 199 0 R + /K [247 0 R 243 0 R 239 0 R] +>> +endobj + +239 0 obj +<< + /Type /StructElem + /S /TOCI + /P 238 0 R + /K [240 0 R] +>> +endobj + +240 0 obj +<< + /Type /StructElem + /S /Reference + /P 239 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [241 0 R] +>> +endobj + +241 0 obj +<< + /Type /StructElem + /S /Link + /P 240 0 R + /K [242 0 R 95 96 << + /Type /OBJR + /Pg 520 0 R + /Obj 510 0 R + >>] + /Pg 520 0 R +>> +endobj + +242 0 obj +<< + /Type /StructElem + /S /Lbl + /P 241 0 R + /K [94] + /Pg 520 0 R +>> +endobj + +243 0 obj +<< + /Type /StructElem + /S /TOCI + /P 238 0 R + /K [244 0 R] +>> +endobj + +244 0 obj +<< + /Type /StructElem + /S /Reference + /P 243 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [245 0 R] +>> +endobj + +245 0 obj +<< + /Type /StructElem + /S /Link + /P 244 0 R + /K [246 0 R 92 93 << + /Type /OBJR + /Pg 520 0 R + /Obj 509 0 R + >>] + /Pg 520 0 R +>> +endobj + +246 0 obj +<< + /Type /StructElem + /S /Lbl + /P 245 0 R + /K [91] + /Pg 520 0 R +>> +endobj + +247 0 obj +<< + /Type /StructElem + /S /TOCI + /P 238 0 R + /K [248 0 R] +>> +endobj + +248 0 obj +<< + /Type /StructElem + /S /Reference + /P 247 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [249 0 R] +>> +endobj + +249 0 obj +<< + /Type /StructElem + /S /Link + /P 248 0 R + /K [250 0 R 89 90 << + /Type /OBJR + /Pg 520 0 R + /Obj 508 0 R + >>] + /Pg 520 0 R +>> +endobj + +250 0 obj +<< + /Type /StructElem + /S /Lbl + /P 249 0 R + /K [88] + /Pg 520 0 R +>> +endobj + +251 0 obj +<< + /Type /StructElem + /S /TOCI + /P 199 0 R + /K [252 0 R] +>> +endobj + +252 0 obj +<< + /Type /StructElem + /S /Reference + /P 251 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [253 0 R] +>> +endobj + +253 0 obj +<< + /Type /StructElem + /S /Link + /P 252 0 R + /K [254 0 R 86 87 << + /Type /OBJR + /Pg 520 0 R + /Obj 507 0 R + >>] + /Pg 520 0 R +>> +endobj + +254 0 obj +<< + /Type /StructElem + /S /Lbl + /P 253 0 R + /K [85] + /Pg 520 0 R +>> +endobj + +255 0 obj +<< + /Type /StructElem + /S /TOC + /P 199 0 R + /K [264 0 R 260 0 R 256 0 R] +>> +endobj + +256 0 obj +<< + /Type /StructElem + /S /TOCI + /P 255 0 R + /K [257 0 R] +>> +endobj + +257 0 obj +<< + /Type /StructElem + /S /Reference + /P 256 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [258 0 R] +>> +endobj + +258 0 obj +<< + /Type /StructElem + /S /Link + /P 257 0 R + /K [259 0 R 83 84 << + /Type /OBJR + /Pg 520 0 R + /Obj 506 0 R + >>] + /Pg 520 0 R +>> +endobj + +259 0 obj +<< + /Type /StructElem + /S /Lbl + /P 258 0 R + /K [82] + /Pg 520 0 R +>> +endobj + +260 0 obj +<< + /Type /StructElem + /S /TOCI + /P 255 0 R + /K [261 0 R] +>> +endobj + +261 0 obj +<< + /Type /StructElem + /S /Reference + /P 260 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [262 0 R] +>> +endobj + +262 0 obj +<< + /Type /StructElem + /S /Link + /P 261 0 R + /K [263 0 R 80 81 << + /Type /OBJR + /Pg 520 0 R + /Obj 505 0 R + >>] + /Pg 520 0 R +>> +endobj + +263 0 obj +<< + /Type /StructElem + /S /Lbl + /P 262 0 R + /K [79] + /Pg 520 0 R +>> +endobj + +264 0 obj +<< + /Type /StructElem + /S /TOCI + /P 255 0 R + /K [265 0 R] +>> +endobj + +265 0 obj +<< + /Type /StructElem + /S /Reference + /P 264 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [266 0 R] +>> +endobj + +266 0 obj +<< + /Type /StructElem + /S /Link + /P 265 0 R + /K [267 0 R 77 78 << + /Type /OBJR + /Pg 520 0 R + /Obj 504 0 R + >>] + /Pg 520 0 R +>> +endobj + +267 0 obj +<< + /Type /StructElem + /S /Lbl + /P 266 0 R + /K [76] + /Pg 520 0 R +>> +endobj + +268 0 obj +<< + /Type /StructElem + /S /TOCI + /P 199 0 R + /K [269 0 R] +>> +endobj + +269 0 obj +<< + /Type /StructElem + /S /Reference + /P 268 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [270 0 R] +>> +endobj + +270 0 obj +<< + /Type /StructElem + /S /Link + /P 269 0 R + /K [271 0 R 74 75 << + /Type /OBJR + /Pg 520 0 R + /Obj 503 0 R + >>] + /Pg 520 0 R +>> +endobj + +271 0 obj +<< + /Type /StructElem + /S /Lbl + /P 270 0 R + /K [73] + /Pg 520 0 R +>> +endobj + +272 0 obj +<< + /Type /StructElem + /S /TOC + /P 199 0 R + /K [281 0 R 277 0 R 273 0 R] +>> +endobj + +273 0 obj +<< + /Type /StructElem + /S /TOCI + /P 272 0 R + /K [274 0 R] +>> +endobj + +274 0 obj +<< + /Type /StructElem + /S /Reference + /P 273 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [275 0 R] +>> +endobj + +275 0 obj +<< + /Type /StructElem + /S /Link + /P 274 0 R + /K [276 0 R 71 72 << + /Type /OBJR + /Pg 520 0 R + /Obj 502 0 R + >>] + /Pg 520 0 R +>> +endobj + +276 0 obj +<< + /Type /StructElem + /S /Lbl + /P 275 0 R + /K [70] + /Pg 520 0 R +>> +endobj + +277 0 obj +<< + /Type /StructElem + /S /TOCI + /P 272 0 R + /K [278 0 R] +>> +endobj + +278 0 obj +<< + /Type /StructElem + /S /Reference + /P 277 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [279 0 R] +>> +endobj + +279 0 obj +<< + /Type /StructElem + /S /Link + /P 278 0 R + /K [280 0 R 68 69 << + /Type /OBJR + /Pg 520 0 R + /Obj 501 0 R + >>] + /Pg 520 0 R +>> +endobj + +280 0 obj +<< + /Type /StructElem + /S /Lbl + /P 279 0 R + /K [67] + /Pg 520 0 R +>> +endobj + +281 0 obj +<< + /Type /StructElem + /S /TOCI + /P 272 0 R + /K [282 0 R] +>> +endobj + +282 0 obj +<< + /Type /StructElem + /S /Reference + /P 281 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [283 0 R] +>> +endobj + +283 0 obj +<< + /Type /StructElem + /S /Link + /P 282 0 R + /K [284 0 R 65 66 << + /Type /OBJR + /Pg 520 0 R + /Obj 500 0 R + >>] + /Pg 520 0 R +>> +endobj + +284 0 obj +<< + /Type /StructElem + /S /Lbl + /P 283 0 R + /K [64] + /Pg 520 0 R +>> +endobj + +285 0 obj +<< + /Type /StructElem + /S /TOCI + /P 199 0 R + /K [286 0 R] +>> +endobj + +286 0 obj +<< + /Type /StructElem + /S /Reference + /P 285 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [287 0 R] +>> +endobj + +287 0 obj +<< + /Type /StructElem + /S /Link + /P 286 0 R + /K [288 0 R 62 63 << + /Type /OBJR + /Pg 520 0 R + /Obj 499 0 R + >>] + /Pg 520 0 R +>> +endobj + +288 0 obj +<< + /Type /StructElem + /S /Lbl + /P 287 0 R + /K [61] + /Pg 520 0 R +>> +endobj + +289 0 obj +<< + /Type /StructElem + /S /TOC + /P 199 0 R + /K [302 0 R 298 0 R 294 0 R 290 0 R] +>> +endobj + +290 0 obj +<< + /Type /StructElem + /S /TOCI + /P 289 0 R + /K [291 0 R] +>> +endobj + +291 0 obj +<< + /Type /StructElem + /S /Reference + /P 290 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [292 0 R] +>> +endobj + +292 0 obj +<< + /Type /StructElem + /S /Link + /P 291 0 R + /K [293 0 R 59 60 << + /Type /OBJR + /Pg 520 0 R + /Obj 498 0 R + >>] + /Pg 520 0 R +>> +endobj + +293 0 obj +<< + /Type /StructElem + /S /Lbl + /P 292 0 R + /K [58] + /Pg 520 0 R +>> +endobj + +294 0 obj +<< + /Type /StructElem + /S /TOCI + /P 289 0 R + /K [295 0 R] +>> +endobj + +295 0 obj +<< + /Type /StructElem + /S /Reference + /P 294 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [296 0 R] +>> +endobj + +296 0 obj +<< + /Type /StructElem + /S /Link + /P 295 0 R + /K [297 0 R 56 57 << + /Type /OBJR + /Pg 520 0 R + /Obj 497 0 R + >>] + /Pg 520 0 R +>> +endobj + +297 0 obj +<< + /Type /StructElem + /S /Lbl + /P 296 0 R + /K [55] + /Pg 520 0 R +>> +endobj + +298 0 obj +<< + /Type /StructElem + /S /TOCI + /P 289 0 R + /K [299 0 R] +>> +endobj + +299 0 obj +<< + /Type /StructElem + /S /Reference + /P 298 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [300 0 R] +>> +endobj + +300 0 obj +<< + /Type /StructElem + /S /Link + /P 299 0 R + /K [301 0 R 53 54 << + /Type /OBJR + /Pg 520 0 R + /Obj 496 0 R + >>] + /Pg 520 0 R +>> +endobj + +301 0 obj +<< + /Type /StructElem + /S /Lbl + /P 300 0 R + /K [52] + /Pg 520 0 R +>> +endobj + +302 0 obj +<< + /Type /StructElem + /S /TOCI + /P 289 0 R + /K [303 0 R] +>> +endobj + +303 0 obj +<< + /Type /StructElem + /S /Reference + /P 302 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [304 0 R] +>> +endobj + +304 0 obj +<< + /Type /StructElem + /S /Link + /P 303 0 R + /K [305 0 R 50 51 << + /Type /OBJR + /Pg 520 0 R + /Obj 495 0 R + >>] + /Pg 520 0 R +>> +endobj + +305 0 obj +<< + /Type /StructElem + /S /Lbl + /P 304 0 R + /K [49] + /Pg 520 0 R +>> +endobj + +306 0 obj +<< + /Type /StructElem + /S /TOCI + /P 199 0 R + /K [307 0 R] +>> +endobj + +307 0 obj +<< + /Type /StructElem + /S /Reference + /P 306 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [308 0 R] +>> +endobj + +308 0 obj +<< + /Type /StructElem + /S /Link + /P 307 0 R + /K [309 0 R 47 48 << + /Type /OBJR + /Pg 520 0 R + /Obj 494 0 R + >>] + /Pg 520 0 R +>> +endobj + +309 0 obj +<< + /Type /StructElem + /S /Lbl + /P 308 0 R + /K [46] + /Pg 520 0 R +>> +endobj + +310 0 obj +<< + /Type /StructElem + /S /TOC + /P 199 0 R + /K [315 0 R 311 0 R] +>> +endobj + +311 0 obj +<< + /Type /StructElem + /S /TOCI + /P 310 0 R + /K [312 0 R] +>> +endobj + +312 0 obj +<< + /Type /StructElem + /S /Reference + /P 311 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [313 0 R] +>> +endobj + +313 0 obj +<< + /Type /StructElem + /S /Link + /P 312 0 R + /K [314 0 R 44 45 << + /Type /OBJR + /Pg 520 0 R + /Obj 493 0 R + >>] + /Pg 520 0 R +>> +endobj + +314 0 obj +<< + /Type /StructElem + /S /Lbl + /P 313 0 R + /K [43] + /Pg 520 0 R +>> +endobj + +315 0 obj +<< + /Type /StructElem + /S /TOCI + /P 310 0 R + /K [316 0 R] +>> +endobj + +316 0 obj +<< + /Type /StructElem + /S /Reference + /P 315 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [317 0 R] +>> +endobj + +317 0 obj +<< + /Type /StructElem + /S /Link + /P 316 0 R + /K [318 0 R 41 42 << + /Type /OBJR + /Pg 520 0 R + /Obj 492 0 R + >>] + /Pg 520 0 R +>> +endobj + +318 0 obj +<< + /Type /StructElem + /S /Lbl + /P 317 0 R + /K [40] + /Pg 520 0 R +>> +endobj + +319 0 obj +<< + /Type /StructElem + /S /TOCI + /P 199 0 R + /K [320 0 R] +>> +endobj + +320 0 obj +<< + /Type /StructElem + /S /Reference + /P 319 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [321 0 R] +>> +endobj + +321 0 obj +<< + /Type /StructElem + /S /Link + /P 320 0 R + /K [322 0 R 38 39 << + /Type /OBJR + /Pg 520 0 R + /Obj 491 0 R + >>] + /Pg 520 0 R +>> +endobj + +322 0 obj +<< + /Type /StructElem + /S /Lbl + /P 321 0 R + /K [37] + /Pg 520 0 R +>> +endobj + +323 0 obj +<< + /Type /StructElem + /S /TOC + /P 199 0 R + /K [332 0 R 328 0 R 324 0 R] +>> +endobj + +324 0 obj +<< + /Type /StructElem + /S /TOCI + /P 323 0 R + /K [325 0 R] +>> +endobj + +325 0 obj +<< + /Type /StructElem + /S /Reference + /P 324 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [326 0 R] +>> +endobj + +326 0 obj +<< + /Type /StructElem + /S /Link + /P 325 0 R + /K [327 0 R 35 36 << + /Type /OBJR + /Pg 520 0 R + /Obj 490 0 R + >>] + /Pg 520 0 R +>> +endobj + +327 0 obj +<< + /Type /StructElem + /S /Lbl + /P 326 0 R + /K [34] + /Pg 520 0 R +>> +endobj + +328 0 obj +<< + /Type /StructElem + /S /TOCI + /P 323 0 R + /K [329 0 R] +>> +endobj + +329 0 obj +<< + /Type /StructElem + /S /Reference + /P 328 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [330 0 R] +>> +endobj + +330 0 obj +<< + /Type /StructElem + /S /Link + /P 329 0 R + /K [331 0 R 32 33 << + /Type /OBJR + /Pg 520 0 R + /Obj 489 0 R + >>] + /Pg 520 0 R +>> +endobj + +331 0 obj +<< + /Type /StructElem + /S /Lbl + /P 330 0 R + /K [31] + /Pg 520 0 R +>> +endobj + +332 0 obj +<< + /Type /StructElem + /S /TOCI + /P 323 0 R + /K [333 0 R] +>> +endobj + +333 0 obj +<< + /Type /StructElem + /S /Reference + /P 332 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [334 0 R] +>> +endobj + +334 0 obj +<< + /Type /StructElem + /S /Link + /P 333 0 R + /K [335 0 R 29 30 << + /Type /OBJR + /Pg 520 0 R + /Obj 488 0 R + >>] + /Pg 520 0 R +>> +endobj + +335 0 obj +<< + /Type /StructElem + /S /Lbl + /P 334 0 R + /K [28] + /Pg 520 0 R +>> +endobj + +336 0 obj +<< + /Type /StructElem + /S /TOCI + /P 199 0 R + /K [337 0 R] +>> +endobj + +337 0 obj +<< + /Type /StructElem + /S /Reference + /P 336 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [338 0 R] +>> +endobj + +338 0 obj +<< + /Type /StructElem + /S /Link + /P 337 0 R + /K [339 0 R 26 27 << + /Type /OBJR + /Pg 520 0 R + /Obj 487 0 R + >>] + /Pg 520 0 R +>> +endobj + +339 0 obj +<< + /Type /StructElem + /S /Lbl + /P 338 0 R + /K [25] + /Pg 520 0 R +>> +endobj + +340 0 obj +<< + /Type /StructElem + /S /TOC + /P 199 0 R + /K [357 0 R 353 0 R 349 0 R 345 0 R 341 0 R] +>> +endobj + +341 0 obj +<< + /Type /StructElem + /S /TOCI + /P 340 0 R + /K [342 0 R] +>> +endobj + +342 0 obj +<< + /Type /StructElem + /S /Reference + /P 341 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [343 0 R] +>> +endobj + +343 0 obj +<< + /Type /StructElem + /S /Link + /P 342 0 R + /K [344 0 R 23 24 << + /Type /OBJR + /Pg 520 0 R + /Obj 486 0 R + >>] + /Pg 520 0 R +>> +endobj + +344 0 obj +<< + /Type /StructElem + /S /Lbl + /P 343 0 R + /K [22] + /Pg 520 0 R +>> +endobj + +345 0 obj +<< + /Type /StructElem + /S /TOCI + /P 340 0 R + /K [346 0 R] +>> +endobj + +346 0 obj +<< + /Type /StructElem + /S /Reference + /P 345 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [347 0 R] +>> +endobj + +347 0 obj +<< + /Type /StructElem + /S /Link + /P 346 0 R + /K [348 0 R 20 21 << + /Type /OBJR + /Pg 520 0 R + /Obj 485 0 R + >>] + /Pg 520 0 R +>> +endobj + +348 0 obj +<< + /Type /StructElem + /S /Lbl + /P 347 0 R + /K [19] + /Pg 520 0 R +>> +endobj + +349 0 obj +<< + /Type /StructElem + /S /TOCI + /P 340 0 R + /K [350 0 R] +>> +endobj + +350 0 obj +<< + /Type /StructElem + /S /Reference + /P 349 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [351 0 R] +>> +endobj + +351 0 obj +<< + /Type /StructElem + /S /Link + /P 350 0 R + /K [352 0 R 17 18 << + /Type /OBJR + /Pg 520 0 R + /Obj 484 0 R + >>] + /Pg 520 0 R +>> +endobj + +352 0 obj +<< + /Type /StructElem + /S /Lbl + /P 351 0 R + /K [16] + /Pg 520 0 R +>> +endobj + +353 0 obj +<< + /Type /StructElem + /S /TOCI + /P 340 0 R + /K [354 0 R] +>> +endobj + +354 0 obj +<< + /Type /StructElem + /S /Reference + /P 353 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [355 0 R] +>> +endobj + +355 0 obj +<< + /Type /StructElem + /S /Link + /P 354 0 R + /K [356 0 R 14 15 << + /Type /OBJR + /Pg 520 0 R + /Obj 483 0 R + >>] + /Pg 520 0 R +>> +endobj + +356 0 obj +<< + /Type /StructElem + /S /Lbl + /P 355 0 R + /K [13] + /Pg 520 0 R +>> +endobj + +357 0 obj +<< + /Type /StructElem + /S /TOCI + /P 340 0 R + /K [358 0 R] +>> +endobj + +358 0 obj +<< + /Type /StructElem + /S /Reference + /P 357 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [359 0 R] +>> +endobj + +359 0 obj +<< + /Type /StructElem + /S /Link + /P 358 0 R + /K [360 0 R 11 12 << + /Type /OBJR + /Pg 520 0 R + /Obj 482 0 R + >>] + /Pg 520 0 R +>> +endobj + +360 0 obj +<< + /Type /StructElem + /S /Lbl + /P 359 0 R + /K [10] + /Pg 520 0 R +>> +endobj + +361 0 obj +<< + /Type /StructElem + /S /TOCI + /P 199 0 R + /K [362 0 R] +>> +endobj + +362 0 obj +<< + /Type /StructElem + /S /Reference + /P 361 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [363 0 R] +>> +endobj + +363 0 obj +<< + /Type /StructElem + /S /Link + /P 362 0 R + /K [364 0 R 8 9 << + /Type /OBJR + /Pg 520 0 R + /Obj 481 0 R + >>] + /Pg 520 0 R +>> +endobj + +364 0 obj +<< + /Type /StructElem + /S /Lbl + /P 363 0 R + /K [7] + /Pg 520 0 R +>> +endobj + +365 0 obj +<< + /Type /StructElem + /S /TOCI + /P 199 0 R + /K [366 0 R] +>> +endobj + +366 0 obj +<< + /Type /StructElem + /S /Reference + /P 365 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [367 0 R] +>> +endobj + +367 0 obj +<< + /Type /StructElem + /S /Link + /P 366 0 R + /K [5 6 << + /Type /OBJR + /Pg 520 0 R + /Obj 480 0 R + >>] + /Pg 520 0 R +>> +endobj + +368 0 obj +<< + /Type /StructElem + /S /TOCI + /P 199 0 R + /K [369 0 R] +>> +endobj + +369 0 obj +<< + /Type /StructElem + /S /Reference + /P 368 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [370 0 R] +>> +endobj + +370 0 obj +<< + /Type /StructElem + /S /Link + /P 369 0 R + /K [3 4 << + /Type /OBJR + /Pg 520 0 R + /Obj 479 0 R + >>] + /Pg 520 0 R +>> +endobj + +371 0 obj +<< + /Type /StructElem + /S /TOCI + /P 199 0 R + /K [372 0 R] +>> +endobj + +372 0 obj +<< + /Type /StructElem + /S /Reference + /P 371 0 R + /A [<< + /O /Layout + /Placement /Block + >>] + /K [373 0 R] +>> +endobj + +373 0 obj +<< + /Type /StructElem + /S /Link + /P 372 0 R + /K [1 2 << + /Type /OBJR + /Pg 520 0 R + /Obj 478 0 R + >>] + /Pg 520 0 R +>> +endobj + +374 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T (Inhaltsverzeichnis) + /K [0] + /Pg 520 0 R +>> +endobj + +375 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [1] + /Pg 476 0 R +>> +endobj + +376 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T (Abstract (ca. 1 Seite)) + /K [0] + /Pg 476 0 R +>> +endobj + +377 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [6 378 0 R] + /Pg 474 0 R +>> +endobj + +378 0 obj +<< + /Type /StructElem + /S /Code + /P 377 0 R + /K [7] + /Pg 474 0 R +>> +endobj + +379 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [4 380 0 R] + /Pg 474 0 R +>> +endobj + +380 0 obj +<< + /Type /StructElem + /S /Code + /P 379 0 R + /K [5] + /Pg 474 0 R +>> +endobj + +381 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [1 2 3] + /Pg 474 0 R +>> +endobj + +382 0 obj +<< + /Type /StructElem + /S /H1 + /P 55 0 R + /T + /K [0] + /Pg 474 0 R +>> +endobj + +383 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [8] + /Pg 472 0 R +>> +endobj + +384 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [7] + /Pg 472 0 R +>> +endobj + +385 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [6] + /Pg 472 0 R +>> +endobj + +386 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [5] + /Pg 472 0 R +>> +endobj + +387 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [4] + /Pg 472 0 R +>> +endobj + +388 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [3] + /Pg 472 0 R +>> +endobj + +389 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [2] + /Pg 472 0 R +>> +endobj + +390 0 obj +<< + /Type /StructElem + /S /P + /P 55 0 R + /K [0 1] + /Pg 472 0 R +>> +endobj + +391 0 obj +<< + /Type /PageLabel +>> +endobj + +392 0 obj +<< + /Type /PageLabel + /S /D + /St 3 +>> +endobj + +393 0 obj +<< + /Type /PageLabel + /S /D + /St 1 +>> +endobj + +394 0 obj +<< + /Type /PageLabel + /S /D + /St 2 +>> +endobj + +395 0 obj +<< + /Type /PageLabel + /S /D + /St 3 +>> +endobj + +396 0 obj +<< + /Type /PageLabel + /S /D + /St 4 +>> +endobj + +397 0 obj +<< + /Type /PageLabel + /S /D + /St 5 +>> +endobj + +398 0 obj +<< + /Type /Font + /Subtype /Type0 + /BaseFont /RGIBGQ+LibertinusSerif-Bold-Identity-H + /Encoding /Identity-H + /DescendantFonts [399 0 R] + /ToUnicode 402 0 R +>> +endobj + +399 0 obj +<< + /Type /Font + /Subtype /CIDFontType0 + /BaseFont /RGIBGQ+LibertinusSerif-Bold + /CIDSystemInfo << + /Registry (Adobe) + /Ordering (Identity) + /Supplement 0 + >> + /FontDescriptor 401 0 R + /DW 0 + /W [0 0 500 1 1 367 2 2 616 3 3 619 4 4 505.99997 5 5 325 6 6 358 7 7 427 8 8 529 9 9 489 10 10 428 11 11 452 12 12 322 13 13 456 14 14 740 15 15 542 16 16 250 17 17 315 18 18 244 19 19 514 20 20 504 21 21 315 22 22 609 23 23 598 24 24 521 25 25 514 26 26 551 27 27 561 28 28 899 29 29 514 30 30 614 31 31 905 32 32 514 33 33 624 34 34 514 35 35 545 36 36 391 37 37 514 38 38 391 39 39 652 40 40 732 41 41 716 42 42 573 43 43 577 44 44 688 45 45 777 46 46 558 47 47 358 48 48 817 49 49 514 50 50 732 51 51 613 52 52 561 53 53 581 54 54 641 55 55 736 56 56 700 57 57 598 58 58 734 59 59 514 60 60 244 61 61 551 62 62 615 63 63 730 64 64 654 65 65 514 66 66 706 67 67 514 68 68 505.99997] +>> +endobj + +400 0 obj +<< + /Length 13 + /Filter /FlateDecode +>> +stream +x~, +endstream +endobj + +401 0 obj +<< + /Type /FontDescriptor + /FontName /RGIBGQ+LibertinusSerif-Bold + /Flags 131078 + /FontBBox [0 -238 1135 720] + /ItalicAngle 0 + /Ascent 894 + /Descent -246 + /CapHeight 645 + /StemV 168.6 + /CIDSet 400 0 R + /FontFile3 403 0 R +>> +endobj + +402 0 obj +<< + /Length 1566 + /Type /CMap + /WMode 0 +>> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: procset CIDInit +%%IncludeResource: procset CIDInit +%%BeginResource: CMap Custom +%%Title: (Custom Adobe Identity 0) +%%Version: 1 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo 3 dict dup begin + /Registry (Adobe) def + /Ordering (Identity) def + /Supplement 0 def +end def +/CMapName /Custom def +/CMapVersion 1 def +/CMapType 0 def +/WMode 0 def +1 begincodespacerange +<0000> +endcodespacerange +68 beginbfchar +<0001> <0049> +<0002> <006E> +<0003> <0068> +<0004> <0061> +<0005> <006C> +<0006> <0074> +<0007> <0073> +<0008> <0076> +<0009> <0065> +<000A> <0072> +<000B> <007A> +<000C> <0069> +<000D> <0063> +<000E> <0041> +<000F> <0062> +<0010> <0020> +<0011> <0028> +<0012> <002E> +<0013> <0031> +<0014> <0053> +<0015> <0029> +<0016> <0045> +<0017> <0075> +<0018> <0067> +<0019> <0038> +<001A> <006F> +<001B> <0064> +<001C> <004D> +<001D> <0032> +<001E> <0050> +<001F> <006D> +<0020> <0033> +<0021> <005A> +<0022> <0034> +<0023> <0046> +<0024> <0066> +<0025> <0035> +<0026> <0066> +<0027> <0054> +<0028> <0047> +<0029> <0052> +<002A> <0071> +<002B> <004C> +<002C> <00660074> +<002D> <0077> +<002E> <0079> +<002F> <002D> +<0030> <0048> +<0031> <0036> +<0032> <0055> +<0033> <006B> +<0034> <0078> +<0035> <0070> +<0036> <00660069> +<0037> <004B> +<0038> <0056> +<0039> <00FC> +<003A> <0044> +<003B> <0030> +<003C> <002C> +<003D> <00F6> +<003E> <00DF> +<003F> <0051> +<0040> <0042> +<0041> <0037> +<0042> <0043> +<0043> <0039> +<0044> <00E4> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF +endstream +endobj + +403 0 obj +<< + /Length 7511 + /Filter /FlateDecode + /Subtype /CIDFontType0C +>> +stream +xzwxgQ"0!3!!,Iz j 7ܻ%wKFݲlٸ&w !HB a3܏=Lro;}{;r!~! q;cC\a KS43ϡ5΂)LCצ^p8_p^|gi8*6n3ʰX \Tkj5~j 8:\-οap'pV;h x9YXr112Ǝ9|E / +7CWŌgԋDB E2&-tOs뉗q:&&12aʦe:[LrI衏2쫂Z1=[fB<1Ur!:["fWx\ D8ttIiX0?%OE\h6ju1LrIY5s0g]? Tz d ٖ5jN ),Y E@ެx];SԢ 2!:?[5ĮU0 ^A)8 n~oPنL*(c}*C+5f +*zOѭ=%#TۛɎ0~ԖOK8 +c`lWSv>03{pE`7짳<-U)M# +-c>g0hRD%VdVN֖rS:"h`~o)0 Jh_k.{4IWP؍ iv +)fg*""kgٹg `nc1 +%Rȫ?ڿeWQ +눊f[*X[mTAXŃҨh""?DL5 Ov$#’}{.}r<^rQeNJ7e2Gָj#cHk | ޭ rIJ%4j*[IK,|iv8e$iG- o.@"܁ ɮSHbwxwd+E߄@3i4<l:?"9qڪ(Q(ffc[A`%iY,פմX"0QQդ o+RsnN!)3Y9EYd]m:@p`ĺWk\&˜FdxVu+F濩O\Q1fh⟹z)gkRK;k=nJf|Y{r|}饆zNB3MQ)l¢ᮊ۬Gry.LyƊvaީ[ faP)HehJ)%I; IuWoaHCeҨ(颬)"H<2>eO|X%z])ܰs[tb}KTHb$|Qpcaz:Z_#i$+wD\47k+A=Scmm!?s9vNmh~ͳMJ!4?@$,f$(V!u4C(tn[Iq?7fSC6cOl>B>ÒJaiYrᾘ'Aj>hxdkz +2)ZqR`̧eeeLunb(5-dn\ *uߟ_TRB@roa"VZ2gGelʺ|rqM{oi{(@ڛ]l0-3A`w1%S% +mYd{E@Lî齔x'`0WOFfv4'u}=F.h$@ob}vO~}$W5ϫ:5Dj;pݩq_NpwC4&`Soa.Eev`aLǃ."<ܲK%P(uW+v嬰п(,r`LqHሇxhֲ5tTKUYs6bτ +` zJ蚢du*F K͢Dp**xH\L@a!n\ԬW 5G'W{m}}4 +@UzHMyh[W톶SV_~d/?M%#nѲFme)~tuFEqHUUx>xݗyri5hj/ +|w m*y0 :c+"[U.PyDEsO[*yzQ[^@㓣Tѓ a<֕ߖ?s\hJ4ē$DFȕo4՟<`LG o8ys-:]"F;vrLֽi?'/_!8lą8$z%Åb.J4dRSI~,hH=*[N1ľo^[`De{WgA}Æ)UYCɎm3?n|mԡTUai_Uص9& sǾ-n/Yy[b:ǟg*K > +WӅ 2<)&YZ.ZIn7|}U?x芻WGQ yt:foʯh4Qz) +?d_`u.u%VLyIeHy/.E@ZV3WL-TZ|stY6}6E<kAAaIEi(qԍ6 +S?6(큼G +Ǒ\O nWZY_U{@E5UW֟Q*rwT3F~W"f] νhUK"c>]!01Dja>,//2Paձ-dSe١ީ>; لD-Sdтl@yDw! W`\Ҫ4=$<\_NKOe0;Uqt TvXg8M|oe o!L?:l\* {[f}޿#u:_DKmc;(wlq9Kk U+ri5Gqj:†U!IgJ$,:O[-A`AbS$Af[B +lK̆pǮykq߶Fᩉ! kS ̼urZTw$ -|qZ)񬦼`_'QA_];q?5e(e$A;" e=? +kqop(%!X~/(}*C"2%iMR{}#! J͢fcɿ#Om.Ckr0{G0J]yɭ>;T[|(?T,ʉxb_FHb57P*[VZR7F}]~ pY PXDh-1Ǫ]h~D:^RNJZf&‰CEmCOɂILLо'UclCܔr"Q] '`/+b@ ;3c Z{Ldy!VبjTRa(F9cHj.z*-́Z]JsvFQ^aP֤TyZ[xzFRIRI>%WJKs`*EeʼR킰/mWTv[,Q4cVY%-1\#Zl)梳0(Ks "N`_' \`N'{3%Y4URh;nf[\z@EPCA?2$0XCD0R;i5`]ڽͯH-@cSdۯ.ӫ#BtJm tC7!zֿwtu1S:l!6R,tEH_QL%b:5O5?+Z&")rfq+y y:fF'D$I$|¢Ȭ|~~0v90.g3zbrܢ0*X1*jjaJG 2Xކf^oZ[K~4>-a™'Y(ĮRIΥn*B&n5B T +Kk+5Jy?6Cir3lT۠m<7!v=n*oj|pw?2y% oܺ 3g`]d`ZWתe HC1Vk͏xi&}!Z$6;F(KEt>C-屷2#!j!rdB*,*l+.Nl /Cw[wv:=`Go-ub مi10yDR*@jL5# znɥEf"Gg{䑡QĊe`_m:)W{-ۨ!oJ +asVF+dzqxljہWj=L$MT=@D!-% M>{AL&ove"w% 8~.=sW/ɴ|v#QWPYYWNf׈ʸʈpJv7C񕺃Vti3s?O>@j&*GKlq7-[ztpXӜ,o R4 @cZ3h#~hZz/d`7mE Z \x -*QVUEV} JejkW;G5π7=ֽ]S&˞6Cൟ9?9roI9|\>_r#y0 K4i*W!g?OsvDE ~V!v3+Ĺ,-/+%*cED$QX1/> ׿{ NjammOWA5K]hAT,Ȣ%Qcb.@Ug"XϷmK[\ـl' +jxmξ5ۨ]"E50 am`Z`UU}EhZILO7:wzN+yAz^{n9WNfH,{߿>[h64f.pa+#)Oj;!Pz`9ρ +MƟ7:Νr݅翽ǧ:;L }|)-0r/;mfc >0g(ib|Q@͹r FV.:4Q4ݔvZ/:P%uÆŐDfg*-LNe-#짝VN7\U$K%/YM"[0[_$Tw|e>Ϥ8՗yLhہ&h7Z&7;ј/{}|:astWeh2jyw$ @s!Bcᵶ&ky*tOV5UBh&<.PN"F NcRe'wᝅr{6Lºx'^ O9:85VZ` +endstream +endobj + +404 0 obj +<< + /Type /Font + /Subtype /Type0 + /BaseFont /ASSXZP+TimesNewRomanPSMT + /Encoding /Identity-H + /DescendantFonts [405 0 R] + /ToUnicode 408 0 R +>> +endobj + +405 0 obj +<< + /Type /Font + /Subtype /CIDFontType2 + /BaseFont /ASSXZP+TimesNewRomanPSMT + /CIDSystemInfo << + /Registry (Adobe) + /Ordering (Identity) + /Supplement 0 + >> + /FontDescriptor 407 0 R + /DW 0 + /CIDToGIDMap /Identity + /W [0 0 777.83203 1 1 889.16016 2 2 443.84766 3 3 389.16016 4 4 277.83203 5 5 443.84766 6 6 333.0078 7 7 500 8 8 277.83203 9 9 250 10 11 500 12 12 722.16797 13 13 500 14 14 443.84766 15 16 500 17 17 277.83203 18 18 722.16797 19 19 333.0078 20 20 722.16797 21 21 777.83203 22 22 333.0078 23 23 556.15234 24 24 722.16797 25 25 277.83203 26 26 666.9922 27 27 500 28 28 666.9922 29 29 556.15234 30 30 250 31 31 722.16797 32 34 500 35 36 443.84766 37 41 500 42 42 250 43 43 500 44 45 722.16797 46 48 500 49 49 610.83984 50 50 500 51 53 610.83984] +>> +endobj + +406 0 obj +<< + /Length 13 + /Filter /FlateDecode +>> +stream +x +endstream +endobj + +407 0 obj +<< + /Type /FontDescriptor + /FontName /ASSXZP+TimesNewRomanPSMT + /Flags 131076 + /FontBBox [-13.183594 -215.82031 868.16406 694.33594] + /ItalicAngle 0 + /Ascent 693.3594 + /Descent -215.82031 + /CapHeight 662.1094 + /StemV 95.4 + /CIDSet 406 0 R + /FontFile2 409 0 R +>> +endobj + +408 0 obj +<< + /Length 1348 + /Type /CMap + /WMode 0 +>> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: procset CIDInit +%%IncludeResource: procset CIDInit +%%BeginResource: CMap Custom +%%Title: (Custom Adobe Identity 0) +%%Version: 1 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo 3 dict dup begin + /Registry (Adobe) def + /Ordering (Identity) def + /Supplement 0 def +end def +/CMapName /Custom def +/CMapVersion 1 def +/CMapType 0 def +/WMode 0 def +1 begincodespacerange +<0000> +endcodespacerange +53 beginbfchar +<0001> <004D> +<0002> <0061> +<0003> <0073> +<0004> <0074> +<0005> <0065> +<0006> <0072> +<0007> <0062> +<0008> <0069> +<0009> <0020> +<000A> <006E> +<000B> <0064> +<000C> <0048> +<000D> <006F> +<000E> <0063> +<000F> <0068> +<0010> <0075> +<0011> <006C> +<0012> <004E> +<0013> <002D> +<0014> <0055> +<0015> <006D> +<0016> <0066> +<0017> <0053> +<0018> <0041> +<0019> <003A> +<001A> <0043> +<001B> <0070> +<001C> <0042> +<001D> <0050> +<001E> <002E> +<001F> <0044> +<0020> <0067> +<0021> <0033> +<0022> <0031> +<0023> <00E4> +<0024> <007A> +<0025> <0032> +<0026> <0030> +<0027> <0036> +<0028> <0076> +<0029> <0079> +<002A> <002C> +<002B> <006B> +<002C> <0051> +<002D> <0077> +<002E> <00F6> +<002F> <00DF> +<0030> <00FC> +<0031> <0054> +<0032> <0078> +<0033> <004C> +<0034> <0045> +<0035> <005A> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF +endstream +endobj + +409 0 obj +<< + /Length 33009 + /Filter /FlateDecode +>> +stream +x{x\U0=sssdd&I2i%M+Mifj@IJhP"T + N S.=VOx|Zs={2{wٗ+@#@fӶ%f[x@•W]w]h W lo=wxٶ |4or2r@du]z3𻁭6n \tp{A̅Ka\ב3J%^.߰gx0 `=| }*eуq8%3,OÍ0£>A;08!0w#08Z +hyL+Jjv3( +s=gneKxނwC;EXPCZa >߄ x_Xo/?nNW XaͰ ~P2 +"3P=jEUnt*Xxϔ߱Wi 8p #^@vC)AGx^o[mY'4qexX) r %5S?-x d,3Yۙ0?c~op ON@?! MJAVPg (2jt ݄nCwn}#=|pp ny܁U6| +>_1^faF,,[n!E_oTtvrv04L?1}PY]: v=G<7HDaTQ7ZehZzQ/Z֢hڈ-hACG_@_B_]tFO'ѓ7m.z `'8N/ǗUx+ފ0ކo*ceL 1010b6ɦvv5{yek\pqϩ<&UTT*ĿWQ7)|[Z2gcoo 2N QPUs+Jth- يVgQ pm̕p'T kGQ {zoe:k~{h<3=¿=6@; |5}l1\֢r7ϡyvT˼>0a4nch1z^)I4諠Л =|-z%TԂ1A +FvԃO^iq&_AO•:a5|834k.fpd_6ށw $!7UFfep`(k t`',8pwϡ?gg԰dN~,]<q JK;?ZxM|` BP@/‹aB\p^+CG.X_yǠUơvr&x ^@Ga!;`!(Dxއ<)e +!_C `7lp +?;KJ3۹aE;–,a#]8WC( #+Klmk_68 "!P IjߧZrs< RXa9 k`z + +p5\ 0ۨn0v(| >`/|P#Cx~DƟS9^%~;x ކpUv~kzUW^ػjJ~9m֖lScC}&]Jʵx, Rz.Y-fd4uZWq,$;]R)_bc Sd b. RbDP.T6H+ Sb*0 C{*)uұa֮ K/-$/17,TR:- :K]۶v/H%~#q6Z]GCJB܏`gg~ jC*Yrt\ +JLsRϊ`JPǦ/)dgJOF ''F, _ooްl(0%gxAy)0,Y:v^8aF;ū%2)p6HJplsa*do+mTR"AzwW;  _2zM-eۃnrrܝ誾p x`\x&/u4.\qn(:-sE‹JJI$ಾp G[V R%+:.i:G6O0(K\TKB '?a +*9Gh%a_Rm-!"w02.KR zJhC-- y +lL%}ձ=㠤B {/9wx8JԱs&aVB+KVX'u<%.U[Pu%6ZRE;ū/[G8Z]ΫJ֎>ƃ CX;*Y:֝;3ɹب2^W $/ `yPrESMx W {ȋ>lZ\}%GKPb]ҕ+bHJrx X!WT54Z}:lpgƤ2di9~EͣQ)7$6iuJ%W +sR*&JKjy*WTzfQxEKCr ;[KpyDqU:EK%岾-IY=~93ªag+eMNSQt{υ,d]r'<%TH#/atܷA<~v8x-O:*YChеreK3˦!>.mjx[{`_r4Ѡ9, +N C@7n)d0KIy$"#FƔ0ղ2Mĭhx]zx?zE ='`֩tef9-2L\eeNF́6gN̺|-p#lόmphfoC% D&N4|pW&-rvעsu şd^_ͼ#1M0$<`. p x0 .@.Q,y-#:3i1"p].'֨LFvB,'ǃ'CJj@ $;QT8#WL(~T$vs.= v~t!snNnT׉#tϠbqhhhOZrhΉ%j1,Wr[ɲ oQHL3-3'̀ F-3' h egC^g +2ۜF{0Ҝ57cp6P*?M#k'ړɬ8l%+B#57ړȬ ;>d?}v́hIfţ;KgGM~ 0,L2w02BW ܛWVkuQN{z\9, ([v(v 6RO[>UWL(Ƃ{&&^ق{+ *R Q$ QY.Zri̖\J(HxS +ȲG٪6bfdcZ"[nt*&Gƻ[:CK۔>KZhet-Fw6_ЙV9>͖\:S_xU8647dbT$8mUXsct6H;*^ K?Oh ctiύZN^Y߆O._u3>wMGVG2J54V%ȷM96z߂/b+ٟ[h͕S7>g@rhTH$BD ǭ <4+'0@M:n +C94!.F&?G%7wۢbqXL珒hq(M|c+\*) AS\::Ӹ,K8t-YsZ~m_EMq ^6:n!M<@ޔ|L>ZmB~X$_b^8JgxH]g0!2ʫM,BXe6s%<ݚoH_9Ȇ7$nH~Xx_{̻^}B]gPaTF83R<' HڿdV->.LWXȥ;W*&!?yL0$"0I/">E #`4ƛL0yfڧ*4& TvykI09E _y2[*v)װ!"anE#߈|# P1HƕC6mSLksne\\%W ~K(]rzܓ+!Κ W}ak.)ZTebaŒKJrid%ES :@NpZrzKJ\R4?ċ7Tbv.m-W=8P[eˬd3SX,RmN'1ln$Ұ9gdcCs  >kX|z@4އ6v0V*6/k4 =og_fq&Q׽7kݨλV:/k˭dW<)+)D"v+⬴k5h-W~H;kr 1V:ir2RAcɣDɲ|br6wн\yZَ\yOޠLdچ9ŋTIA&(dRrz"8kgz +rɄ\djy7eY>~ pL8Zkʞ#`֣}ͻ]ڟu]=>t-/7ׯ7|(r*.Ea]nͳ12J%x/v~%)鑾.+bY.b뱢+`-Y'ǭ'*k;W&'I gNۅIar]89K>CE44\aP @lRTfh7s (6f[UD_Dzp-~ƚXv7 1Rh($H!NeՆ{IG1͸@牚ydM:ϖ+#rOrfu:O2$!7 +WgP\L"&?D} ėx~~˳7q!?ū6b)l(u$[ 1囲n˱Uc%G:"oILձqqF(SnjFP+~>Vgp+&X2Fcd(%#sڈJ4M Q]j&C@0!)y؜KՎbqh8G\vhm%wPu2!+.+AIDTTGH[i# )FM.r.ɜ3HT!7 !יP94`̞2f^ǖՁ݌(I$6Yh0Fb!hkoK?#??= M+?tn{^_^[_UXjJZjNs%'.YM*D#q\@gLTSFx>@UX\9("z9 "Ęqy|k|G!,8)L61*&Qh}6 5V ^T%\?q\y"yhB8 +cǪG*aԀL +VLcyE_ x\VWkIb =xѩ]B +̑@ iL RIKԟxܾLjO Cĥ&'fjr |8y}HQC$w2sї25< ḮZ/HBD$RD\AI"Dǣh駶,l-Tjd޴ri9Ck_t$͝Ӌ=H!=h޹^Sdp)w8 >:OU!ΦQKFԗ+$D'B,zo zk$Xf)b2\)ͼ)>`fr 9q(\DjƐ;%}gJ%z},zr6$%]oX.FĿ4"}y\wMm[SB7~n1ܟ1 àa % 2apʕ'ڳs3RA9L#fgR uCj\c㗐[+z%^_B6(!#[$@B#p9`,0ͬM(Jp4"?G^fM͹_7w=j$zkȚj.ܜg:z`[NLgϖC;湻@!<HeBJ2iL!Hc +Ah}JhNCb +EC2)W~q`k "nK,WNR,,\y%BA& +UH,94B:,7& <=k %,$ ݓ\d3~ZZT +j +!Jn#Kh"a%l&@IijDn (F32,S#tcc5=k,#'Ez"X!1|hVmSjVsĄߺ8dH-k.л1RBzjюaڑ%bgkz9'8is[ӘzD/c^ȉo͘L3!IbBѨzi^@}2ZEh^ _l(|tGo@iߞ D=T5A Bb-f~C9gcY."GcRVURgGYƧv$2cR̡DYR'a_.3F.\/Bq$6Z#QILAjV](D/RH$ v$1(%H Ʒєozt UMZvsXٱEt1*6b^ĩDE2" +ĵPq(b{5&-vzE3``"QjƘl׬>Åp [3DW6h.F]%sJ3t%sl]7!'[k.o$ IFC'шږ(HR.AqͩzUtL,{'2a7cIXX^G ]8ݔ&$u\ԟeGi^I1vU<-njM2$UN(rrJtHbjk\?.^oAMS $Q2`tIbY>p9O[5QݝUuuVɩbT; N\ObZUȌaNYu<S'$ل5|TB\UDz+[[[[PP642ǃIs.I5^@--aAn)t'4 rCMٳnU8M(Ҁ& +QHSD)(b=sIH3'I0'!Ϝv椢 H\\bȧybWUa\ǻOtJsOnl xtP(CMO]0̣5 +`xh +`A8x͝iq]*zk+!vILh07t#D[-AEFgzUuP/݈t~\{`$>%Lé צWUD0R $aw!X h3 QXfLޢ<79CĞQ)h D8&tY֯W\Z rqx;'QZPXc ݩ( YX E٫D]~9'db?+]^chTrIgzvek!UV& Phmm-t= nX1 `8)LfncҌ|1ޘ6M6 |-!&Ȼ%d50:.)hXͺ"1:iiՍ7Znp|ZW],h99{rzH8m?eeOI-uIlSs3DRcrw|U72{%{>ᖫ}ٳ#[3̝rY JWhgT>3%G#j }+4:+W~~zIp?:CG =Z6aBN{ؕJ*q#09oօ6]/miB~ ^KugrwA3~k~5k(R},I4yE։1G lS(O.HLQ0E©uRd\@1S|)$Z$X0'!MIŔ1l3;$K$q:MlY/HA8J9h$KHbMf 4ǵyRgOKEv&GA3q?)8HA +f=T7#I+gi$jmߺ|%ݪf3EMֱV:zUuV$ń\uR |qH ?VuM$śe<3KhƴE&ve-%n^4H] ՓO ؑX +RRBj"u<Ŧ[.^^Nzb^Ef<)TڳײZhXaę0pytH?ciA˲jfyvAdYluM DSmOkj㍝)ߛ~z$RGO-tiuHĪm]̭p3|r)w j?w.!g|Szsnx e,휡DK}N*dUQǓ! ~S>[r09cV\]kjQkuN4FN1RԔ]%x$~[K-Zh DRU]AI1N fC^8&PȿYͦfQ0'U;8ۤk I  %έ.pp?h>W/tQ:QޏQtA =e";bXǬx:f-Yԗf*k칪w.z>U"~@a /PN<^kr{A0{( GDg9@TTiuF_Y0VUDuM7b|6877Yf)čNmsP۲/2_=7rI{~E1Ӽ( M]`G߿0V|T*ϐ4 !Czg3Sɯ IМZ[=Ü5sx?z.WÓ L XQ 6nrF$U' +g"DH z""sN8O;']MUrssܰljg9suv_B *MxPĠ9MT7;iLz_?՟sq!Xͷ:"09ǫpgb\pyV}=׹]cFfn@2|0Ty>=n)5KF-r7BXY#8NY[7X[C!@Px!m~?l!KfBeM>j4{juzJY2"0ɘjaJ ÄzhQghoD'6r +{0  +U# OB ߜ!ʲ?"e»Yi09ZR~^h@qOX\Cβ[ZVr)t"#-yLa[H=3otgmrH-kB`aYäĂ6?da|9ܬDVеVhz C,z*Y6 7eLn7y!H=hKryb35ds|sgy8;g96`_gҪ+N``7 s#;8Ca 1G*TFM`]TH4pg?0e{3 +"hy?  +sK*ӎ@2q6ݔ!/EVY6ըTKUMl47#q>qOzgM_?{LnT<8 +<`6A4 $.QhAS(W:yw6LZJ>+3ja_ iKMziJB ffJ6T4F\ SgR +Y,;hYFZH-+}B:mPFMLݼ\K@$qCޡ$bC̟0h#+ZL;G/ũλBm~8L 3D'{dɗz7#u.kċVE\woW˼e\< M +b͗F/ /k8CJ 0` 0V]23.K32+CTyKKo"%HwϧxJOU4fqKg='XJh.TKNTpFE 0:r\ 0[GP[0-Ue 3jfZ}zvƚ}CTn)5:\΅$#!uUN-ڻ]Iߞ4qE05AYώٝ1 +y>R)( T_{4kOr:Wn3 5]%q2-h>_*ڟ%B,qBzdo)IrY[ciw:tiB;K1ҌygPɰdU߳Uy:+Ad*r.QI#:-#2*DiʹR n!0Dz5#K,#ƖaX&,ʕ6GӲB=|tXFoK/H9Cl`첩ꪩL MI*E2&Kj!a55ֈ)}#I9.6"1QAV5SԞD,S64\%lb,Đ邪u}^'rlƔk̘$bf]z~[}+ԫ_3pMOˌ,6"b#?67R6" 1G-r#Q/]k:Ɨ1鿍 =f;?<"ZBՓ\̓>C@:&u0 ZҐD"ɥZ] 1 +5gl.ԩέ]UNtuQcsAi},X@< h~2=IKa/Z0!<T8JVCnВ-j1 +fJ\ԟu9mL2E:r5D=Y'q~viM*[^wn{Kn%Y- -ym !&8`$Ğ`K|%/m INI&'O<ÄSe||9վܺUu[!', $nMOb%94L~;y{7dfv԰lpb=A+ A,C3cI1 !ur9U٠b[c%<Ij' #DU`CP3[@n1 wQ/F;Nj \&f"j uҥJOvƑF]G% cR\"!V1&2hthg\h'! rGoM=.^ȵNJY1MTo[y΍7k30 dƞOcm7o#dUmqӽ˶eN `e}]zce:>Ͽ/ 7ݿ.b;V?=~:SOc?kنqӶN{5Ė_9jr Y]j9=psdg'g_h0lS{e~{eR-5kZ׺CYaZ0psg;쏻Ҭ~-{_ϲAnholT42w݃>Px0vW==ّ~+aW)ReÀ$&0'8agRqv sc ԚK|S 7r./3^ƻM*zRk,a)c`IDP$)8IOIAd$&|5| n %ѸHD*֞*\Z;!DI$Jn3M8w 1+)];Hnn?/쟳ÜϽ-gVEBcd>}/4?,z=_HgW*`K7u +7s ԰s3;ޗzЫ<>ޟծGs\lv1(H댒*oti粫#e,S|߮h]Xmg>:9<"&#zqW]O7.j8sVBǩ /]d˼P. H@Mx62s? in`_Pi NC5Ӓ:to/ᎲGl|cs-e>?^}~&ΩEc7 +nml ɒ0kzlYDykB/t8t!C2(2GPs%2A_E7א\Լn&Dʢ~w5rۼ,Fk X"8s(pXA,hmǠ""p4o3Q#{=H&hԁ=[ f"KpLe <_^uYAܳ[JF>9Mw{|@. 7Lǿ`6,|?Xퟋ>RRXQq +*)OIl~VYѾ;>_9oߺAǃG + wjzn_ZqKP[V'W=-{=wM6oHY"DRƬL'""Gp?61@ԯek98xhQPۢ +qy`1Z, $!E/n/Ce^'%kyh^Wzbmڅ]#.uA <^ +J֪5эɤi7p2RE!z3328$"WͥJ`bV,L}PFDNMI^2"Qtqq#/ɮB`:>,Ϭ^~j=Ik?4ͧZWIvd_c;Q7Eezbq'#yv̴cX wj[n%ӤxǺgG 9;dBu_L L~bџP6Ds(@Q1\}f ȩ@_L$:=A81 فD^0=ӭ%G{I]kZµ^ÉTHuU +mT":ҋ^h]*\U K7Ubffw=f]ͽrOvm${aΪ xj;TNJ;uaLi|]k}Gr͆k.V5+tLl;WBD~}͈~W^@(03(S5'J#{:_ v(yUֵK#s@:L.Qqv|Tt@ֵe*W2=٥M0Z9W@9-[2VW,7Bg;;/cBL8DlEy*jMoVEѨVFiMR7 +bH˧ԙn$|ݔn^i/N9gr)p=X%(F0\SRb!mWA 8"Froo8/{vHg'ڷ)pqD*~.--gcmǫN}t6|INWikśڛ?ѶmVJX&;78;/8YpNɊv&an&{0`GM菲L  gFdh͵nakr92a4Q/8AGɍ6Q)[&lgs4~Ϫf2Z64lk5wd.;Pg"Wu˃_RrLhKBj.-Yp`]pnx3̳P 쯭 c!)j91lkvt3 +{ޤ)hvر1*QjWmP1^lBC&e51 ՁNj(Z>)<#M6?QUZ5La̖abÚ0RvRe zeB b9`#'1JvdCiG}JW b\v'޲K/ORh˝„0A94RT:7ػE'. ŸVQND΀q-y[o[&|9Saꗧ96^F?=Uc,y%:m)[u󸉪@iNo1zU*W3&zdfGZ5jMhVaIw̆olzظGѲA\ +WzdʏCIi HgTT.pzoqj\0rMf)Zֳu[!/15~GǷ?syAz}a!Ryl.sjxΩո9Kanޥ6`R;)Ʊ.<<ʽ߅YG_@PeV\$Y]ϡwrYf33/30`8%EAhI7 +z;KB8" LWYqz?_"(v(3BQ_..:;{ծD)9v*J= gO*Uc=bY&D9[J0@uprmDo>^~ȯ2xwY3ߍTE\S<1[?>mۗNN^*qj;_PT@1F,]@&»!*G9!z8z!FaP+B>TzJ2KP850bԚ=Xm"p1kQFeFs7nFR7pR7npimd+*E=*pT[AXt\cE0sCK¶(K(?=n~upm/L8W\y Զ?M{{ԃ}?&8Ɓ(c +&?Otj;8!tNU wh4ț]..U8䊻XW@NIQP?qY$C r#Wl8\qpEsCiUjkrsՉmGû8P/NQХFx2jsn$ +nC(v#Eꆠ^.*n@8-h|LNTDSe +WzL3TkE5p])ݒ!5~O~Omg/^e5]1}}.>oGShګ{WlW~?%C:5/ 1vWtmQs3-H5H[>mɡ5*p< ֕Q%eVr2Z aZĵ?q}jZy +ZzvQ Yf6j\e̒%\i,D{1oֶ8[\;s_p?9| +op'SSӮ<|G=w!Rƫ7P;Qr^@c1l,50>={|Wq̝~anvSMxx&Xu-Nk?3|=J.m)&@TDv_u.w://{IED_^?f*夎ħO D'ݐ +So|XG#]DSkq5瑬ll`Qu VX|U8n6@!Dbft+O.X5e!sgq\FR(3f >#oE"?ʿaU]Z92e|U3`x>Q#1YeT? +!ў2S8d: x;v">=s]ը,jP"eʲ5e4b>/<UeF֕kk. +Egxr7&,g5)溏U3l zTg,lkw7y'?t|$O0<P98_:\"" +.2$۝ЖUTh +KTyV%nPqBĨJ.Kr>SvJgD.]bB+IP.J|0S.*UfȚHGcz􌭲2.@wM~؍rqAi)Y|0Z&-΀1{kNVd9q1 zO>on+~phǼc 4,k,p"ul&FlV@N4uNW W 2<b 9&V-_J 'D۷.b)jhm3v/U/JQzg`~wLM)aEME\h,IzQ j'f&!'XJDEas* +&O 7UH2TajRb)E6u#qZ!Qſ-uT&nD]E!sz1GQ$jܹs׸1R^T(ZT)'Z@j=?=;1ˣܸVs]BKzͽc Ȍezyt 7y^&.TRDs^؄UhRbCgAȼP|AVfI3gE +]VWZ.W0l+t͂HQZ+KT}r EĞ7!sRqTIw*]8t;V)&<*j\JcZ" MfH*aI,#&A !I VVY{S=NE.SG%=:g +9biH QzͩjOԁP+VB! U˄~쟡2H ۑCB#StqwEs/ {Qd~b@T[ty1nɡ%M91n"t9̄Z@,k1'eKkQ($ veG8<v9sDL#t2Ţ+,kQ\P~mo.s(ۚz; L΋z⓿sNl:Qr*HP}J-z}$&5g@ڨ Ȣm;(6C T[Ʒ44mDo mw>c} 5鉑DԄ>Ixf#$i>xDTdϧӎpߝr3Uᥪhb:< q$JpEtq)'@rz+;D+-LAat"y[(7_kIdĤTWjߗz3f/$˜G R|. )VE\tIǓ'.2+<+KR"nAx~li|i}a|}#G$r9LLԷ#ߎ,*V>quyc0ܮZY\^O_Ϲϵ/t_Hʱ)ifyFci?f ~ ʓ~0i~Ԟq. +Sd K5xYyy<Fb/8islamLUtʣ!AcB<z$Ed2/mYk2 (J0A=@|)."p8hQ?qȎ&{.t؅z >N; sZ2EAZ< m6Ert$D X; h6`~j1{#:_ƝfY,k'P#?7W=ađv2?$+N1i,`jJ @ W[ek뾚O4rz&xp +Nəq$F|qs&+'d 2t"Zm<ІSRQUnV[Ue\CXrn|+D+ݲ=˄w^J9.w^ +Y!*q*1u5ͥWDf9/pZ]֋bΈr{ҋ:/yQBFp_3NϘ9.h~'qh)̉j(U 8%9yE(r6kMn +EhDCY[g3_F]|Ozd͎D8`&1}-XsְJu1}ܲ"/6̭LSg1kemng|d45hP!̀1QUVY\Q?{a1Lpt&(t`G  +бcoE2ns@>xX9WUOx4 Gyc +4`lQd1o1p X(0q񔋊 S<=A]L)LSo+EܸjN\$ {~ͬ%L5DGbBh|W$jA"ET7;DyNt4OA ĜaZ%GD^ԄMQUܶyO-}Dŗ55QAdY].`FkMh P3αYe++&N+SOP7+t8QC9"^K777'~M6 ú׫5ކi]ʫB\s5E6<߿($Z#7v7 kvv ͻj O:*`2 dܑn + uu \*0;Q=iiNEkZR ϗKrM:4P鞨rZN:Fdk#k]j#:bBC(䊤Rlcv@ժTK Fjk#z{,˲Y}mMXĥOGZz &y~*yE1NȀb6BVR"l%}Z}#{*R@qɅ\$ P+F]\\, t]sLdAզbčCec 9h`+WtD%ѫDpKChLЫaSQqq rZrη rٝ]ou;N~ +w)Lh8ظ(4zEbȽ1 +\ +;C ànҘr9mD;Wx9o=BI|fjV1"tE#.¶ڢ˗M$KLd"㟎#7Lj! ԇ賉JߜHf!1bǐi9dKNL9`%eQC vŲP>%jq\#gV17^@>c!%+OHK/rkoE=LyQN?a絔$ZhlƱ(LQw0'ns[3 R2VmՂ,>l[؞%C^Ϯ(֞5l;S3y R/ [ mU;]!RÄYP-,:@1/n},h̅ZnOݧG#~_ =@z(FT{4^àdeH"E42Gr L0#>^rh𐑇4XSz]nyݑ:LJ}TȞW<سp-@GCc$#a:DaC~MѡCDb.^l\U ' A&QdI<)J Oݾ24O Kc= +: WF}~:о@O?uufe@&~ED0 b(VDFU?nik̰6S̖oQ1W&㛼dӺCJ5y4M<2LV,ѼfFi+',Yɀw[5zYشg8Id>A Zvk6XMuq͈)xJ{<ڂ$jJ'/pZXm/崺 B"h=f5ombZe I +iz'e_[JGjzZAyR)>6t(AJAqi,YG +?+fP$GQnr/W['lڢ^Ւ}Ϩ'?Iw܅V>P娔t&kels^mAwp|@&LrV:2*Ust'NxN^3kA 7++ey{\Y+@`@z{t̹8 /{{CW?-DCd ཡwYy:!A|?,> K{L`,@%-~ T/M< +T/N340z &հwU!Bb^7+XKC9 dć,Nܪ`%Zn 4=þ +sX*B*!!|B]wi°Ȱd0(\G\t7Q0Ǣ=_'^OnI[H܌fr\0 }sٴwg1'~KA=7MH3 JMGq3`dn kE7;# +E̩[w0?-9eE7{NJneYX -u 2VS0uVX2Q7Y0AK{ѭ_q+WJRŭ_q+WJRŭ_qeeԭQ[pug;uwA/QGlF|wѴLufg4%ꮠI$f/)2_Kn^G}A/ @571R A@Hv6C0H lfX[` o,za@m6`' L#M>Y :5 `;H64Mpk1bp; 08&;h;zf}Ҿ`.n衾<}mT-T l%_[a4p;l='x,wH)$ҷi-4 iOi]gƕ l7=A‡`#pM#b[C/F{63WH-/qXJ;}Ri? Nu +23rWs;Y2*i&'a:H_M̈́fN6:WJP u;Y,d#Lm Y'p5 }GH''$%c"xUzK| fOr >%>%-UF7 v #i=J?TLā:݆׽C a.ISuJr2 b3 7AN%,'iz+;:\+uLLSM2t&)@T_k  -QBp!+m p'my/6^U +fUF*Mp|_ӓږFI֓ʊx{qd^!J !=-YK^ uQSU_1?t$l4iHq+]H^;`#hmtXgV콆-{T:J層䛆[8N%!JFQYA+oȵOϜ+2 +l)²3im[q ڷǹ +\)sT).۷OCbHzm0TdnaV_[H dF+0/o-]1I"*}DFX5Rf͚k+Qi 6쀭[f@[ +RnZ%&Yٻ?(c.8UJJzXՙ+ʙ+0}':Ilq,d}{gJ+$e^[` c +'|mkon/ޯ\J8TUcE忽n#:0z/ +f"UVޙ+JBhm0Vhg a9jX A h ёZCס`uxjE iXKh46XN^ +2I,/րLV/#Bƈo ,Ѫ&yA_ ijg E%\v *eH7^%} Mh}V]wkhXJLOiJДh}Hm!j=?8IqPFCÇTRޏ?<\Oy(·ԇRϥ>c7sebu6{fUl+mest;le{xmG(nmgeR +f_V?0ςDo"4/}b=+| O&¯+5`A _><SxTSo[Zx"Exy0V9 +1W뱹sz1^QYJ 5~JxR L` +C߁4w &-~  >Y 99n4WC y|?\S^;z? p ? , '!6⃟@`G @/>`a%~JLU| Ağ&:AğP+pDEiEGA.ڟD>Hwanhƃc~Qh@@?$|2 |8%=P "M]c]W&-xû<9|w)JJ|7㻁 ~?<  x.QQ< paķ@9xe,.m<'W[|}Z[yc6[hq^O|}om2MQ (Û 7A xxX8-6dٍwUlY`)ͺpӽ>np7n8K HfpdpfJo] .8o T `Hl TDCڱ 6`C!4$%MF`wqa#, lgsڙ+ +?tXj~)$-sENΕQH5:P|S7U[,{/9%//a.ٽ"EcL5bsgf3As 1`cfA91`c1g!< yYhc.YP+̳d2| #.\Af5dۚ2G9 +!9p32=.5~=# 1dEN?='SV' :)Og"%φhPANZ'>)0hL'5R jY'v$KG +r#yL+6\3b}-F +HU2)" x j>ZV=I?¦CH:>Š!1"#0u[+ 76nxXJ<|9t{ǂjpSrx#@CCCC-C-̓-̓sh4d0Vo gxoUx7ޏ8pV`MCW7dFutuQ9y%JrkWoPGԇ> +endobj + +411 0 obj +<< + /Type /Font + /Subtype /CIDFontType2 + /BaseFont /YPMKLB+TimesNewRomanPS-BoldMT + /CIDSystemInfo << + /Registry (Adobe) + /Ordering (Identity) + /Supplement 0 + >> + /FontDescriptor 413 0 R + /DW 0 + /CIDToGIDMap /Identity + /W [0 1 777.83203 2 2 389.16016 3 3 333.0078 4 4 500 5 5 443.84766 6 6 389.16016 7 7 333.0078 8 8 556.15234 9 9 443.84766 10 10 250 11 11 722.16797 12 12 500 13 13 443.84766 14 15 556.15234 16 16 277.83203 17 17 833.0078 18 18 556.15234 19 19 666.9922 20 20 556.15234 21 21 666.9922 22 22 500 23 23 443.84766 24 24 500 25 25 556.15234 26 26 500 27 27 333.0078 28 28 722.16797 29 29 500 30 31 556.15234 32 32 277.83203 33 33 722.16797 34 34 333.0078 35 35 250 36 36 500 37 37 333.0078] +>> +endobj + +412 0 obj +<< + /Length 13 + /Filter /FlateDecode +>> +stream +x +endstream +endobj + +413 0 obj +<< + /Type /FontDescriptor + /FontName /YPMKLB+TimesNewRomanPS-BoldMT + /Flags 131076 + /FontBBox [7.8125 -215.82031 807.1289 677.7344] + /ItalicAngle 0 + /Ascent 677.2461 + /Descent -215.82031 + /CapHeight 662.1094 + /StemV 168.6 + /CIDSet 412 0 R + /FontFile2 415 0 R +>> +endobj + +414 0 obj +<< + /Length 1124 + /Type /CMap + /WMode 0 +>> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: procset CIDInit +%%IncludeResource: procset CIDInit +%%BeginResource: CMap Custom +%%Title: (Custom Adobe Identity 0) +%%Version: 1 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo 3 dict dup begin + /Registry (Adobe) def + /Ordering (Identity) def + /Supplement 0 def +end def +/CMapName /Custom def +/CMapVersion 1 def +/CMapType 0 def +/WMode 0 def +1 begincodespacerange +<0000> +endcodespacerange +37 beginbfchar +<0001> <004B> +<0002> <0049> +<0003> <002D> +<0004> <0067> +<0005> <0065> +<0006> <0073> +<0007> <0074> +<0008> <00FC> +<0009> <007A> +<000A> <0020> +<000B> <0052> +<000C> <0076> +<000D> <0072> +<000E> <0071> +<000F> <0075> +<0010> <0069> +<0011> <006D> +<0012> <006E> +<0013> <0045> +<0014> <0062> +<0015> <004C> +<0016> <0061> +<0017> <0063> +<0018> <0079> +<0019> <0053> +<001A> <006F> +<001B> <0066> +<001C> <0077> +<001D> <00E4> +<001E> <0064> +<001F> <006B> +<0020> <006C> +<0021> <0041> +<0022> <0028> +<0023> <002E> +<0024> <0031> +<0025> <0029> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF +endstream +endobj + +415 0 obj +<< + /Length 20705 + /Filter /FlateDecode +>> +stream +x |յ0~ΝҌdF,/+$g$8I@i-JhI) +}!!(ZhI+iGiMk-`3P}{{23sf ԭݵS`0t-_R0_eφ[~rq>H,7n\?Xv,@l;wx+pߖmk9 _>xq3w[/_7 m۱vL"VW#@F](4Pzkr~#2&7N3?q1x sP' ta-m& @?`>'Z( b>p,õnIX=7a1Zh{>A ү +;&x~ +%X rGJ~X[KOc\*alOý%&8rk`;JB+wK@%xHd(@4B#lt p1Spv[~xƣx^8W(pop$! K<߆n\\>/d肭nQ| p~u\ĵ M@̃ a | Ex5OvO lRkyA#x ^nşO3ǸKW2~ +C#ZЉ"6b ^W(DV0kgJ{JAbP6p< o0~1-~ oW Cbg~ٹLx4Tϩ^lSP"<?G ؏p~ +e|O'^ry@^! Sa`^f#&T2Rc`/J**!y脕pp/#p~?› Ç +a(ak0 +܍N|__~DXHDI5i&:Gcb$fs%s*kǹwucOj&7M<\jt` +AfĊ a 0l]zQx +_󥿿?I$!4^-؉j\WE>?W5| @dK~r)YE֒kɭ89N~D~J~A~C>`΄$\`F0?a,cqܭܗ/s~q%ݝuE[zY߯_EU_K$؋LMk*;"6Cb-wr>~0uo/| k:Uh2ނ?w1[ċL;{2ܗɛDO`efß +w; +'/P7!,|zl!;u|Ó' {N-M:/٥-xGR?<5`>0oY f1N1a~ƠI& +(af9Nz|Us/ýDգ68WS-J^q+d)1gEN3 0\J£p9l`&ͰZJCJ0(..}d.D< +zp3NCЃ±u0 +o0. wC]=\ 0 3hBm+p60 ZV2|:CTA ̆~X `\ g~ +|~÷ $\ ofX`ü 1`6F!xViAڸ"ɾR+|P8 ~.ɹ>nk".Bn쀟#^Z03CeK|\֖lcC}]6]#WxLFp(XY j1cP%uGG؄ӓuiPI ӰzDG3"GG*ȆTH5b$p$q8ri@W^>9@$.9Fwm<еzN0:t {0Y`8., gr9&rG\}]#VȌ~p!(B-[8xfFE3Q~5jȐ/7d)D`&+}gs\PswxɲZ`F.{SW +^Q-ȲZjr r^ruP,#=FW)DV --Ml"!IMWT\vɦK3>љxK1lK/wIv_HstM<BxSg7gn`>1ǝɕxϲƄ\j ;tDi̛ Fb F%G%4@8@f[ʟ6aI1 FM*Ө|bvEF#.DVEEF"]^0]ЫJ 9Y:㟀()GD9x¼5G7fЀ  Coy>aLdz0!{&N*/fB|M0.|M&;SO'ONԾ{ohlҵ>ST5Gҏt59;R֌#pea#ߡ8:D2ۡu >f; N•u[X(,Sd* \OFߕ=#OKdbxgKW/o3ѣTlV|>3dvOD(&ZESl]/OgYU" /(Ul"ų|ͶkS5fwo2 +ò, ò0^PJN? cj,C~e{uuG6RŻm}جl75^0gS`ؤ98 m΍=N}yd11 _YM{]lfFgnm}e6h0e0 +vx Q:f1ݔ_ޭY&(FO4< mYZ*^{3|tUOQ6*x #j2D]b˞PEZ?KJމXPx_qYiL2r™ +/ uQBP0ntQ@1dDQgZF3| m~>Ѭ.0!J񆰁3ՠ?U5+UHAhe|*)u ,w^):g$oȹ! t +o{c@G.i1gD+]Vj1y*oJ{!Gɣbuk ?N_ +|X1S+n|QGNWzJq<8\sΩ!όdόG(&{>|RQt=o.Nӊi^S[>v[b:YN. +#Mnfnӳm܀2ߞg7n]w܀Wuܺd햣q5Q 9NUlob'N'㺞N4י3cn\o36%șOXdY0G +kYX +RB0TV`*|eS&+ \N gr+=or(T_0FOZ1ptէNL>vřZڙCwi{T|iHxC~"!>H{ +j!EҨbٳ|Q!T,-yGMM.f 8Hbvf~|Ȱb-(ųfiXH_ ;'3!v,`-s1-2?`D+,MHƐ1vѱ,̄j3V,Ya"~r 9@""gqY`yYmYѤu@U8 Ҩf7 Fbue}zuh0NBؐ6LBM@A[@NJ/Nt*f[͆F"d0jg(g6% ۨ#'WϢ }".82!N3g( }B9ezDžwLAȽ#ҥ:nZ:MUX:MUXznԺJ^m?bJtw鳄@;°KƂ`t[(<+cy@Fy iB)%{ąTΏ^%lTLe1,zע;$q A4^u1+-ϭ\; :.si`w`wfK2ϻw\`)QT]TO#*U H -E+* +#}ѱ(#D̩(F=ՕQ) 7Gҵ"D2 bb@PM)2Dq[b8f%K<( xAPjm<&rLn|na)=…l哦W=tQdUgu tSD!n[dYZjZ%cUo&,m +W XN<˧HruzzF"io6!1001@`NzOaH5O.\0vE<k[4Z2CՇt'a&N6O|ENEiyy*qw uπ?tݐ>T,{r gE:Fo3=o:AGtȅunvK(yݼy.mNUX y:A!Wqź +{x`{5nD<dXnQVa@JfC +ա#!VH ȔEoe uLxs. Ve +:eZ +eCp~AȲJx ^GzQ-lS -kL#R\NOEj5&_h=ist6ԴN~zoP|0s]s8Iq](f+<0 sicX45Ku,ʴ^'Mj5ҚyA-ӝd(jAA*BBJ.á"s!{⩖tY j8hQ!J?;}VeYMΜ) c*ܸ,˲ \ u 6VUFWsscYۅqzT0N&|Yj&kПrdZ'3e)Q<[Օ?չ+^om>&ڮ"\Ł@|v><7)N{^6AG,(LHE_5{=6~ @e TGuP:,3{Ql)"U't* 5B/sUIHcIm5I[_VgAk;W(Cܐy(>$ԍt{M{CWR{/~Qhm{ZU ++EʽZ> b7W] FhwW#&mmlh&'g6u/ٰׯ&_412mɎEk |s[.bOڹMKN T2%D+*/hꏝ%`̳m*ZYd@ٚ AE*7X#œ$p$b$q:[o4::UkV:Sfu&٤SfduJ]}V$:%9QONWtPԽ#/Ⳋ)DfcJGSmFV-굲V-ֺUZs(•a86#PĜayzt=E豖YԫMɶ"˾kÌmv|RƚeVQtspn*y +Ô[QV2Д*6:)#[*r;o`"Z#˚k ^ ؜5']7#T_gh Tf_(>'a*uXءRk,lWU7| tQŞmաNTvb2ۜ`$FIY,5l%jG{M8&JY𨥒IeG*Hc>}$Z]Vf6ծsWҌ=Mҿ%BZgRhvӳȑY#Fg1YNbf"徳zu* >ztQFP?Y$)+X>4[9]]2QՆP!X3,!I'4|^ Qa` $6F F z2&c{N%fZE"Cqyk%t,Xk:*qJW,Ӣz:.VnY~|`QOzW} +eQnJ.)AMz1~WEܑNvLWY4"ddg꥝K[XKkDIz +Tث\y],[nydž]魧mF݂4r똟2?3.]Mm9l"|7` E M)jmT Es%%caY"6o),=,6Yg +Xr9p*3x'WI SlrR#TNjT699rRK䤖Hp>ILz(MJGSlԲY+굲V+UZ +WJT' u7hTImZfR1cلlrTAQTMqSaXsOdY=RsFWMj|sdOexƓyQ}Ӓj}kȎ\IVyl.P}ʸX8xQ=ccT-Nӽ̽;]2t˥47a8c2F_7>,˿zQ zQyq}kn1sA]D Kp[v܌GqszRXkxSky"=oտSDxT~N&9//WA^p_iFЬkGD5|J利ޱ0& o O]IT0uQ=A(SUFʁkyP(TO&إZ9459AYaY \SH$,+3?3?ܢh9S 1;nK7nx/NyWuC SAۋ]REe|r۝B < +6cJ@Jgl D1v>3۟:"u)%՟JIFS/#jCQ a-N +WTK@M`[F=CSTyh꜡4zv9⏳V.K~3&x&1hj It$D O>HpC!qoaӬ: Fk?a h׬O$Iz +Q#RV_ wMr#י7ΫoN^-j͟WWTH|{y3vr !+kp7^- %ك1l¨nL@ąP|_H"*4CUQ}6-K*#If +eP3g& W}qg +6Sr}nQٿ6~𜬃լ[= r2 G6ٌ :..v0#=Mr Y A$W+Ie<')SvQ}r6M=\TYwlr6{[amXM*SCTḊqҔm9WN1PMC3g~swuO.]:eA?{?/>wlӷ.5>r-Ů}g }J7Xh<0 X{K~VUQlV7t[/]roQx +֌Ւ,s]T 朶ڕɶLs>K`b$٬лQ9{[>co\NN`^]zb{<~ޕqWåRb2d/EdNq՟u)( \*ov +8Z C#lZYsʮw(Gi>]!gQd(p({N"5:N#-C{9jU G.os&[_ߵKff" 7P՜ O}714yiאxĂɏrKWuXt&`!Jͥl 0y.L0:y9BʞrY4uKfd+ڂi +<+p3ij}0Z)bER'R2oHf4W.~W0S:9śYkg&qmoG/ " +oNv-#p}oF۞[8C@U4Lլ\@cxa*Spf\af13<f&* Ϛ`o°¹گɖ]49H֒r|ǜ +vݮy Lee#sC74n yjvG榀?d.=sR6o|=Y"oZ\r}qՃce8QƘ +\xǤl +ޓ N9Y%!gyYbVX,-XNI$EZ-QS$"񎰃8SfT8 >-i gŖ5Rx&LR5}XO"yуhn\5ys0"I<CDpU.W*ou$!x$-$[+LTrQQZr5vP꫰ C̰TbOǻFE(&;MáY.25Bx"k}zu8Z BN á$^=4ჺ=m[,sgO$CC5x/Vt!ADFqr93pΜʐ̑ ɄP|b<VՖl/kK?C{{i3V[+bq)NtDU2$:[>T(Gr3g +h9y|™3 =S@r9u{9ZO}H3-h-}Y֤~,ѻ>:#5 +~9 N`\UdP p ?Y3`M~(ymQo91H[*^@sNtXXƺi*u&%@ǙI~3d3o:n~iDTɎv3Y0aLj8Qvtm֮i漈ǟ@6MɱaV3_C@@F@N3* .atpiAzJ0&JRd3M71H A +1f{ K$ ";m6첡t#vgRn#,z$>@1AxvLFF3xHXHWJKIJNBBL(ľHB^oX({' JS +BM4L ʪ_鞳(%]`c95R K2 t2VY<9s%]tcb(HtHϖ!7=/\<B +ki@X2]Wn=͓^rQ#kb:'5FVmxAx_Ōz2.ťk H]r9 d |jZy'ߘ,njX9 ^G0 fy:3S +,lˏ +TG?/wNBA̪EW Ym\ a+'h gY=$pWǿ Mb D"l6(<>[@^/j.5MRrf i'1bdvw'c;y ǯ骉ǫ.D]orPD67q7E=D>o||w+zA/f_DDZWL/%92l )|;pjf*o:oOVP=f!nJp@9x#y<,&T Asi|F΁oe[*>gP6urWA ?Lv|xfAm9'kJ]2AHǠenEL .!;whZ6Lf~VB;t`\b3L++a$QQ]`V.s;O(}z_4D嗎,SE KBKԖyp/0@0KIRv2iX€U;ܧu,Q jA}}|fѹh3] +ԫgE|z @'{gl>Ο[]Gu]syVZ=R,]B^v+a\Vo] + !;1+upǓdM$hb55M{7c?YޙiҎ J;uukgQܷBPS6jtϽ=wϼw_Tň4Fm +-]'ͱj n4,ӷ8Ͻy^7ž5B Bҿ(ilUh#6ʍi=}GklyF=ch}\27[ՕJgf2 -ݥ5jmԚ;gjmign-oDc:3& {n!*a~~d51_ +0ޙOڵ|j m'Y᳴lqAT_lX+ wԣBFRJaV +JV*ִRy&lMkWRjrZivqA٢b^y_-ԼpyaMe+iif7R vw$P+|L ݚ^ԼpUܚš5/Li^Tpi^Ҽ0AXY뎖k8tkšiU5'kNhќpՊ$S9 q)fCbn7hS9E!_YޮdxH- 21`kp3FgaZq=0ZC 0Ћዲz5E%'I$$ $06qR'IWɍ˚5v%)3Z Gx 'xst+?u{c>>5+[b`- 08JB E , |R.}@ZL Z"YE Y:B={d¯@ ~8M7Vb5xZ ++ЋW$^j!Ǡ$^m*IG1Y0 i6# Y:_ <L@gJAg치4gT8"~ H OeFotǰF&4pc;v ݊mbkmG>%YYR+-*Z[ +|EskTj`h%CŶl-, L lή`Ԍ`E~[lq՘-'1 IgOI f,6Dԃhk~A A֪0R54Ԉ BЀ4 AZр uЋ` +B7.5q5: \ Toǰta c ph00`L C0aab +,Vm5X }X iqJŕt:c'^>`n`zy/jz=^vJ|UT4 + =)rz`C-=yWP{)N; h18$YqI1g#M'&xxzzDnzM0g-Lہ&0؂ZBzH =.\iW5ꚗv UǼVGw 9V}ЮF0ccAy'`TAn6A a_}K +Gm?5/n~Ey{EMY=Jj%\%E7 _P_?y;iN'~?v.~UUcgAYUkRܮH3;n>' A@PO1ȍ6P;(WE>@8ja>Fk4 U0tMp| C?n8,GJR"w +_DrLI^bd0 , V +MA!,m\%,LS|KXlP(=߂*ES2Q.,v@&HCLZa=2nyDf6%!<}H&B~ ~*͛eBDu$iXFi1eFX,"UbLQa:xF yUBP/ńLl|2.,VNB6?o") #>sARi,*68qP2b{ȴL_,'{I)5aiLwL~I'6]XB]ҘY.~\%1aFD6Td+D:STWeR +X.1* oVY'W/ \<|LQ-6Lzb.qWr0Ū##f7=u0>(`Ug +,h/h(Q`Y҂RY,v9NSsr'8/]BzҡQSIOlݐMi{C.dLׇ;2}5s+v_zK,>_wXl$*Wqc+j9MO}//xIѕ/㱙C[Khޑ~aIgڠԒΦ +z]0dž"7FXggS. CHg0":@$D"6e2EA׃i֨@=c d$1T#Hvh_,C)lRZ/R}cQ?&~x?9e^P(K1LD0ML$0wyeUVOTc]2RC!15Z5n<=TF=bRģڍ.c3G6H+3H=?{!B eL +endstream +endobj + +416 0 obj +<< + /Type /Font + /Subtype /Type0 + /BaseFont /YXRKGC+LibertinusSerif-Regular-Identity-H + /Encoding /Identity-H + /DescendantFonts [417 0 R] + /ToUnicode 420 0 R +>> +endobj + +417 0 obj +<< + /Type /Font + /Subtype /CIDFontType0 + /BaseFont /YXRKGC+LibertinusSerif-Regular + /CIDSystemInfo << + /Registry (Adobe) + /Ordering (Identity) + /Supplement 0 + >> + /FontDescriptor 419 0 R + /DW 0 + /W [0 0 500 1 1 557 2 2 271 3 3 500 4 4 447 5 5 542 6 6 390 7 7 316 8 8 457 9 9 505.99997 10 10 512 11 11 372 12 12 264 13 13 531 14 14 250 15 15 220 16 16 465 17 17 695 18 18 493 19 19 457 20 20 428 21 21 298 22 22 465 23 23 485 24 24 298 25 26 465 27 27 504 28 28 839 29 29 497 30 30 541 31 31 790 32 32 604 33 33 424 34 34 465 35 35 485 36 36 538 37 37 310 38 38 465 39 39 328 40 40 597 41 41 685 42 42 587 43 43 503.00003 44 44 528 45 45 596 46 46 747 47 47 515 48 48 338 49 49 730 50 50 465 51 51 661 52 52 490 53 53 519 54 54 560 55 55 637 56 56 652 57 57 531 58 58 297 59 59 701 60 60 465 61 61 220 62 62 504 63 63 541 64 64 702 65 65 588 66 66 465 67 67 646 68 68 465 69 69 322 70 70 951 71 71 540 72 72 236 73 73 272 74 74 323 75 75 702 76 76 699 77 77 548 78 78 351 79 79 661 80 80 435 81 81 829 82 82 582] +>> +endobj + +418 0 obj +<< + /Length 13 + /Filter /FlateDecode +>> +stream +xA + +endstream +endobj + +419 0 obj +<< + /Type /FontDescriptor + /FontName /YXRKGC+LibertinusSerif-Regular + /Flags 131078 + /FontBBox [-68 -238 1002 806] + /ItalicAngle 0 + /Ascent 894 + /Descent -246 + /CapHeight 658 + /StemV 95.4 + /CIDSet 418 0 R + /FontFile3 421 0 R +>> +endobj + +420 0 obj +<< + /Length 1778 + /Type /CMap + /WMode 0 +>> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: procset CIDInit +%%IncludeResource: procset CIDInit +%%BeginResource: CMap Custom +%%Title: (Custom Adobe Identity 0) +%%Version: 1 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo 3 dict dup begin + /Registry (Adobe) def + /Ordering (Identity) def + /Supplement 0 def +end def +/CMapName /Custom def +/CMapVersion 1 def +/CMapType 0 def +/WMode 0 def +1 begincodespacerange +<0000> +endcodespacerange +82 beginbfchar +<0001> <0045> +<0002> <0069> +<0003> <0067> +<0004> <0065> +<0005> <006E> +<0006> <0073> +<0007> <0074> +<0008> <00E4> +<0009> <0064> +<000A> <006B> +<000B> <0072> +<000C> <006C> +<000D> <0075> +<000E> <0020> +<000F> <002E> +<0010> <0032> +<0011> <0041> +<0012> <0062> +<0013> <0061> +<0014> <0063> +<0015> <0028> +<0016> <0031> +<0017> <0053> +<0018> <0029> +<0019> <0033> +<001A> <0038> +<001B> <006F> +<001C> <004D> +<001D> <0076> +<001E> <0050> +<001F> <006D> +<0020> <005A> +<0021> <007A> +<0022> <0034> +<0023> <0046> +<0024> <0068> +<0025> <0066> +<0026> <0035> +<0027> <0066> +<0028> <0054> +<0029> <0047> +<002A> <0052> +<002B> <0071> +<002C> <004C> +<002D> <00660074> +<002E> <0077> +<002F> <0079> +<0030> <002D> +<0031> <0048> +<0032> <0036> +<0033> <0055> +<0034> <0078> +<0035> <0070> +<0036> <00660069> +<0037> <004B> +<0038> <0056> +<0039> <00FC> +<003A> <0049> +<003B> <0044> +<003C> <0030> +<003D> <002C> +<003E> <00F6> +<003F> <00DF> +<0040> <0051> +<0041> <0042> +<0042> <0037> +<0043> <0043> +<0044> <0039> +<0045> <004A> +<0046> <0057> +<0047> <0066006C> +<0048> <003A> +<0049> <006A> +<004A> <002F> +<004B> <004F> +<004C> <004E> +<004D> <2013> +<004E> <2022> +<004F> <00DC> +<0050> <003F> +<0051> <006600660069> +<0052> <00660066> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF +endstream +endobj + +421 0 obj +<< + /Length 9102 + /Filter /FlateDecode + /Subtype /CIDFontType0C +>> +stream +xztTUvb"ਹ{^AP (" !^fg&zNo3!IRHIQA"]y@osgg?k(/oooa鱉i"Sc^_Sz᣽Xs_As~د{yyu?觟N\i$ϯ;c'{x{39+F$E.LLMz?)9+56:&o39gƘԤf$MzkB/,*gL" ,|cW?_? g(l)>_ Vy?{zQkF`XXgد//G?=e1%c.3m,8'ɗ?ӳ7"B>F7ϊ=5_߅P=|ns' /|3W&Z'ŷ^l>祔οISM:9++G_է^=چK+{n(Z~9ҿ@C=zA_ xe frft_[4|_" ŝ1XK* ¬2iyik]")9ܑgi40RT8!(y: L: }05+[tj6tU>?f{d3CJ; ruU&tRc5dTKtOm3dF/D>KJ0\\]W$:$`Q~f5FURmfд(q\-ȤP"H."j G9nu_^qq.]x9krYm.TXdF-gD/yf_fUn+ғz'դΌ679;!C,I|& _M[i):@i܃[K* XqĦ'a[2ZmVHMjjl^eJ +/#5NS\ w`{Im:pUN3(Q\KTldGe#N,+{Qz kpzGZRE BUNVjlܬ +a +1. +Öoψ 'BBR.DG^8RhmK?f* +9-%6~ڊӭDqZrBrfiW;K( H'r;&l*b$7 ,9튰dRRq+UIYIXM& ?VѢJoܲ7 -N'(*}줇? K)'Ǧdf$ 2l# ;p?'qx`7*m׮]Ҫq Zwyȉ."Vf/4(t +=S%FZ]>I}uEkͩ/E=lP(^y.D +h .av:?|8׶ +3GN@%0AQ1|o5Ɍ"NSh!8) FjnmM: ѧ +r?pJlSC9({k788&R)me/MG`a_jg)ĞA^C\J$2+YHÈ IOA AfpPY0d4M\i-y!I>n܅}Խ6x^e5jMc*2Cx?`gH>[_q}E{iw5z-X)cC2BE?Ǻ>!&FC$ lo}˫S&̀! {n0\` pnRj; >pPR0 n\n< ΅Q /VuHUkJ1vS[a*Fd+:*uX:-Y#h^M"Ir :s\Aiab*Ҍe&^KI4i*:'8t5meHfFI55)lX]M\"G]| +zoW-fEe˺du^6/{.=re FeHQ(qREzd1?s8"<|prZRVlY7JP+0Os P\@-| |wkMb ?|ѼҪʌ|9ո<ʥqT?e!It96<=w*\| aE59 fbnrVj;,:;8|wC=m v M8A7xiIA q䢁䞨 +)8OW0VhGCE䢟ty^k> ;$dt8=c?Oח'D!V` ^'A^n~Ip@GOB`(`4H Ȫ6W;GF~(nNJKrr=O_[|R*14 L.S` + '0ɪs?%) Ȫ%k륃@aUU-4}VZ=F ?(eպB t C7io=xĂ}gD~N r"ʜ.W(P2..JLR}5<Ot"̤ו 0|\\}@;UdK7N4N} +2n#L[W^:<"\i4Q0%0asp?*"r8C>l)pi_qSdL_F)@M)T$B?Lq>UG +$d@d!-r꒵cl/xx4ji>` +Sw]zU/q\px +>6ѷ$F6Ufڥu:eDN#S j@LI}ZY8 +_g]&w<L0Y3k3iVҖlӚ(8Q:Q +i<;u"7'\z+)SiMFOevp- V_h'J2(T!1ANuRMMqCL̀Ӌ^!AsuXHߓUNjG΃7SfBPX#drma ͗ߴc)0֡3H"ѣ Mn٬,R/d՟wz@쵂Jl{߻> b_)tBO +̈\==pƞAddtm@AʉqvRbps~(lb"=p?U@u)$ xB& e"R.Cᦃ0GNM\md鴟d FD2:2J],mdz?~?P/qrڶ𹔈¼ [pPeطnnٺrSUEp)j/9_Vš[Ɉ0*bhGZC_ď t/@d.iG)uj砐dQw%[;N +x e0}f'_oC<._N=ծ}dr;0_Ny]v]uiJLFv-xzdcjSǶȚaI)T6ghH]~ŎAlU| ~2M9;T3L1GtE' '*LI ٵKF^lzcᴾHOKO†K( ۿ>uz?7]v@^/v wkßdd +K]<=IwfSFo[LRM?& Vp#x"k{pK\ |N-pTT'n"L"x3 .C+%My[_pܷHs5c nYDh!Sj߃(|e^>;ckA6M޻ȏ: ǃLo0; ^R|\NT($(/z|\葔J;$_Z| 9?"{ţ9d0$EZQU6Zѩ='-+^AA8|pR 24 .ch0gd sA-|?S\.iةC`4l#Qfl (vI@\.'| å3'B&@AwW#8NwUym~w^jt({vwYՄ$^E4?b"sQj5QJuKڄYB&gWͣNЏ#`>KKkxR}s(P3>fgH"1ƌU4YT 2PpYn"IT7`DF[>ྈ͎' Tb/Alx tmYw;Q}fϬ!,2ڬwڀ$xS_D_K`ΙarOv?䓗<}Kp@S`?؏>p}l~lp?Dfi6qGfcS3vvw=v0H$ rx W}'˴GF2"ze /=<,lsR\fD[$EX^/#7j%4^D9\oE`>pG~C)sΡFn'b$^ye1er?@-*@Edaa6CJW֥ NF$Rd?X/G"O +n0FVi4lX*#[Y0\%6]*7Dr +^/yn7X|#wO e!'%$c!{w"8H`!wà)qDn6_ +r >ӎ9vwN\7,2VfH>;Q8Fl 'O9}/Q|a`ס7~@8ͅ'5z1n J30!ΫS7Mug:D;H~YEZ 9Qw Qnher{]O_p[I0K x?E2^ȅXJX[ޘûR v] +L֌lhکaVBaSYbЙe8~|k.*(Ŋ +nN02Lm!2t#{k}>\z +j1 B /(T  (9 ++{9v,gʀ#%zwom(Gi!72&2%%C=k8Ftuv\zW[I[lZaPnbxZtKl FêqctgytO?zk8r~Sh^j"KDc K+E +L#dZEjP7rr_^?"1ȱS> +endobj + +423 0 obj +<< + /Type /Font + /Subtype /CIDFontType2 + /BaseFont /UXQQPA+DejaVuSansMono + /CIDSystemInfo << + /Registry (Adobe) + /Ordering (Identity) + /Supplement 0 + >> + /FontDescriptor 425 0 R + /DW 0 + /CIDToGIDMap /Identity + /W [0 1 602.0508] +>> +endobj + +424 0 obj +<< + /Length 9 + /Filter /FlateDecode +>> +stream +x; +endstream +endobj + +425 0 obj +<< + /Type /FontDescriptor + /FontName /UXQQPA+DejaVuSansMono + /Flags 131077 + /FontBBox [0 -235.83984 602.0508 705.0781] + /ItalicAngle 0 + /Ascent 759.7656 + /Descent -240.23438 + /CapHeight 759.7656 + /StemV 95.4 + /CIDSet 424 0 R + /FontFile2 427 0 R +>> +endobj + +426 0 obj +<< + /Length 619 + /Type /CMap + /WMode 0 +>> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: procset CIDInit +%%IncludeResource: procset CIDInit +%%BeginResource: CMap Custom +%%Title: (Custom Adobe Identity 0) +%%Version: 1 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo 3 dict dup begin + /Registry (Adobe) def + /Ordering (Identity) def + /Supplement 0 def +end def +/CMapName /Custom def +/CMapVersion 1 def +/CMapType 0 def +/WMode 0 def +1 begincodespacerange +<0000> +endcodespacerange +1 beginbfchar +<0001> <005F> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF +endstream +endobj + +427 0 obj +<< + /Length 3887 + /Filter /FlateDecode +>> +stream +xX tu#Xa^,Mz +B%IhVE`,`5NS84MU8 S۵SB]8vB%ib{3>$d̩s:ڝ{{iKÉfAKWk.sY[:^8AښWpnmkkn6-ZcmmiV`S`.`@ö.u`}!|v@W0sYL0z q8F 05w NTraqN1؅7dzX]8`9@ WKS8iAqaBqָ-}A06k1Sip/qAR28x Xx +YِH:Q\yقx8C."dH91j.aF QqbTJ'gonjfC=}>C9V:Mpa qZF[Op%6;3QVT*4Z0!>8E MiR ϪA|M-؄ >#8GffXdގ!؋N!HeXnh HGH.|'1AXdu;MOwZ 벽㾺a mw\YkaLFZ,5vZkjUZeqZjsT&^APYةwy5ш;jd3QV4)lKku&5S38'.KrTx_}A4 :ЋBa[{vϋV;YcB7WƯ<ʞљ&tWhNhSgf=֣~,CQk{q1uЦfg;nσnYk{aN[L{86bmU|KC4i{sDq'AeMH1 hRxZ&>;*{GB:4"*C,(Օ , k@>϶Еdd]/8lW*yc^d{~ΜYT4;:-eN#^r<.rW/:ԷGmPۊM=WC;mI(c(; E33rn"vcc*jbN;X>re>;EM[9:"AOX3)u6 ]-ƧoȎk}b8Ɵ!Fs|MTyWIe8JΘ_,؎;u>{|/e<"if4(F"gob}W,ejʕjT^2NVUnԠX +e*.jsi +ƨE^NJ}[ +TL-Zu + +{jP +SU(E%VLnTBdUmi=㴎뢖B9jQj1JP~ֿLv.--V12cb5*7]ZԠuOF.R>,CK@GB[Tj`XWVz[+82֕jV[VmG1~`MTs[Ni(G1VEq#\!ݚ?By,2QڸpLUrϞ0#uzA#8nTC Q +kͭysBj8>U*w`-{OBG~/,}Fd#p6s] +?8 [1\#v~FN^8~#("w=CcEt ^u5/YNk MnOl s[՘KCaY츧b ˇϳ!ur/ڮ~2>8a[qQe]Շ2q1`|f#_{!Ou]Q=Xoz;%w͝F6FAFv߯%Ș3 2jP8287b~ +HA!HVxIJjAF'(Ɩ'5c÷N~?']I F~zmIo.]\'.OvZߚ+.>뭹7o.ӛߒ~- +W.ArqA҅Ӿ+◃tO!f%6~!7ӿI:ie4:;H?SI?y5KDҫY ,cI/K/gя_ht_-$a8#tZ?KzqS8i +A:#NJGI$=/$=w(M<+IߓNK'\wtq\6Gֱ8=%黃(ߑ@x2}P8*o&3%}KާMIIG$}tBz'/>+i-z{REo ^zRʤI]u"8HyCB$.SHj8[4IjC4ΦI%}ZSOzZ"rZ'iFBT'VT#EUV^JRG*>*J3ETZQ>U4S,ӲbOLQJK4Jæϗdg'Mb_(Πq—d +_:N_45I,Ma[(v+nLK$<*tDO,.>KJe%}`JZT0],T,z]bt*N^ȟJyISDys' a:"w2岹ւ=b=4,%͓tR"< #)'#CHv{Ev?tJ,%͒4s41S 8Či4]4IS%0DܰdyŔr9D\ LgȔ4YB pCs*22(Cs,S)]s$Ғ)-lZIʹJ4E$KJB()IEd LfpKp6 ~^]_+) +endstream +endobj + +428 0 obj +[/ICCBased 429 0 R] +endobj + +429 0 obj +<< + /Length 258 + /N 1 + /Range [0 1] + /Filter /FlateDecode +>> +stream +xuJPFOUvDD@`]\ +FMkIRB|&إnऋ(HrTų9` ըa&ʺ:l +3Ŭ*ުnh)&C|>b纝黓AvCƫ+ y') +̵8+/> + /Font << + /f0 410 0 R + /f1 404 0 R + >> + >> + /MediaBox [0 0 595.2756 841.8898] + /StructParents 0 + /Parent 1 0 R + /Contents 473 0 R +>> +endobj + +473 0 obj +<< + /Length 621 + /Filter /FlateDecode +>> +stream +xVMo1WLáf>> + /Font << + /f0 410 0 R + /f1 404 0 R + /f2 422 0 R + >> + >> + /MediaBox [0 0 595.2756 841.8898] + /StructParents 1 + /Parent 1 0 R + /Contents 475 0 R +>> +endobj + +475 0 obj +<< + /Length 616 + /Filter /FlateDecode +>> +stream +x=o0 w +p62O2䒡2dH-F{GѳAY.'$R䫇-۝-. <92Rya&B}4PFC*~n#v#0 +.u4]ڏ~G~ +Va|>A]ADHYUNE ϳKY6۩Ҟ~7i S rZH7ѫixB +t~-xˊsWP2۸_״v9PluF@^zV酪rZ>œdIr$'JF@ +endstream +endobj + +476 0 obj +<< + /Type /Page + /Resources << + /ProcSet [/PDF /Text /ImageC /ImageB] + /ColorSpace << + /c0 428 0 R + >> + /Font << + /f0 410 0 R + /f1 404 0 R + >> + >> + /MediaBox [0 0 595.2756 841.8898] + /StructParents 2 + /Parent 1 0 R + /Contents 477 0 R +>> +endobj + +477 0 obj +<< + /Length 428 + /Filter /FlateDecode +>> +stream +xTKo0 Wx/ &u&)B5i6p(lLeҴԥK ~|?u(nz0  A(} +@h.!27F 'l2p5pf9"^eKTV[ +MI^SSzsߞ~@Zo$V^@!{eɐuVEV|鈎׹ +ī^2RKs|<," Y  e]=I*)Zbf}$5ʄTS%JÒf*@IJrEQA<۹`C/O5^4jSIؼ/zΪmR9sjuNk{YGg7&?Vo0s1viK[fTKI"I /Ox\0oUϲ_e;j +endstream +endobj + +478 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 745.60266 524.4094 752.84064] + /Border [0 0 0] + /Dest 430 0 R + /F 4 + /StructParent 3 + /Contents +>> +endobj + +479 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 731.2146 524.4094 738.45264] + /Border [0 0 0] + /Dest 431 0 R + /F 4 + /StructParent 4 + /Contents +>> +endobj + +480 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 716.82666 524.4094 724.06464] + /Border [0 0 0] + /Dest 432 0 R + /F 4 + /StructParent 5 + /Contents +>> +endobj + +481 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 702.4386 524.4094 709.67664] + /Border [0 0 0] + /Dest 438 0 R + /F 4 + /StructParent 6 + /Contents +>> +endobj + +482 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 688.05066 524.4094 695.28864] + /Border [0 0 0] + /Dest 433 0 R + /F 4 + /StructParent 7 + /Contents +>> +endobj + +483 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 673.6626 524.4094 680.90063] + /Border [0 0 0] + /Dest 434 0 R + /F 4 + /StructParent 8 + /Contents +>> +endobj + +484 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 659.27466 524.4094 666.51263] + /Border [0 0 0] + /Dest 435 0 R + /F 4 + /StructParent 9 + /Contents +>> +endobj + +485 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 644.8866 524.4094 652.12463] + /Border [0 0 0] + /Dest 436 0 R + /F 4 + /StructParent 10 + /Contents +>> +endobj + +486 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 630.49866 524.4094 637.73663] + /Border [0 0 0] + /Dest 437 0 R + /F 4 + /StructParent 11 + /Contents +>> +endobj + +487 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 616.1106 524.4094 623.34863] + /Border [0 0 0] + /Dest 442 0 R + /F 4 + /StructParent 12 + /Contents +>> +endobj + +488 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 601.72266 524.4094 608.96063] + /Border [0 0 0] + /Dest 439 0 R + /F 4 + /StructParent 13 + /Contents +>> +endobj + +489 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 587.3346 524.4094 594.57263] + /Border [0 0 0] + /Dest 440 0 R + /F 4 + /StructParent 14 + /Contents +>> +endobj + +490 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 572.94666 524.4094 580.18463] + /Border [0 0 0] + /Dest 441 0 R + /F 4 + /StructParent 15 + /Contents +>> +endobj + +491 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 558.5586 524.4094 565.79663] + /Border [0 0 0] + /Dest 445 0 R + /F 4 + /StructParent 16 + /Contents +>> +endobj + +492 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 544.17065 524.4094 551.4086] + /Border [0 0 0] + /Dest 443 0 R + /F 4 + /StructParent 17 + /Contents +>> +endobj + +493 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 529.7826 524.4094 537.0206] + /Border [0 0 0] + /Dest 444 0 R + /F 4 + /StructParent 18 + /Contents +>> +endobj + +494 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 515.39465 524.4094 522.6326] + /Border [0 0 0] + /Dest 450 0 R + /F 4 + /StructParent 19 + /Contents +>> +endobj + +495 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 501.00662 524.4094 508.24463] + /Border [0 0 0] + /Dest 446 0 R + /F 4 + /StructParent 20 + /Contents +>> +endobj + +496 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 486.61862 524.4094 493.85663] + /Border [0 0 0] + /Dest 447 0 R + /F 4 + /StructParent 21 + /Contents +>> +endobj + +497 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 472.23062 524.4094 479.46863] + /Border [0 0 0] + /Dest 448 0 R + /F 4 + /StructParent 22 + /Contents +>> +endobj + +498 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 457.84262 524.4094 465.08063] + /Border [0 0 0] + /Dest 449 0 R + /F 4 + /StructParent 23 + /Contents +>> +endobj + +499 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 443.45462 524.4094 450.69263] + /Border [0 0 0] + /Dest 454 0 R + /F 4 + /StructParent 24 + /Contents +>> +endobj + +500 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 429.06662 524.4094 436.30463] + /Border [0 0 0] + /Dest 451 0 R + /F 4 + /StructParent 25 + /Contents +>> +endobj + +501 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 414.67862 524.4094 421.91663] + /Border [0 0 0] + /Dest 452 0 R + /F 4 + /StructParent 26 + /Contents +>> +endobj + +502 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 400.29062 524.4094 407.52863] + /Border [0 0 0] + /Dest 453 0 R + /F 4 + /StructParent 27 + /Contents +>> +endobj + +503 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 385.90262 524.4094 393.14062] + /Border [0 0 0] + /Dest 458 0 R + /F 4 + /StructParent 28 + /Contents +>> +endobj + +504 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 371.51462 524.4094 378.75262] + /Border [0 0 0] + /Dest 455 0 R + /F 4 + /StructParent 29 + /Contents +>> +endobj + +505 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 357.12662 524.4094 364.36462] + /Border [0 0 0] + /Dest 456 0 R + /F 4 + /StructParent 30 + /Contents +>> +endobj + +506 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 342.73862 524.4094 349.97662] + /Border [0 0 0] + /Dest 457 0 R + /F 4 + /StructParent 31 + /Contents +>> +endobj + +507 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 328.35065 524.4094 335.58862] + /Border [0 0 0] + /Dest 462 0 R + /F 4 + /StructParent 32 + /Contents +>> +endobj + +508 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 313.96265 524.4094 321.20062] + /Border [0 0 0] + /Dest 459 0 R + /F 4 + /StructParent 33 + /Contents +>> +endobj + +509 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 299.57465 524.4094 306.81262] + /Border [0 0 0] + /Dest 460 0 R + /F 4 + /StructParent 34 + /Contents +>> +endobj + +510 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 285.18665 524.4094 292.42462] + /Border [0 0 0] + /Dest 461 0 R + /F 4 + /StructParent 35 + /Contents +>> +endobj + +511 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 270.79865 524.4094 278.03662] + /Border [0 0 0] + /Dest 466 0 R + /F 4 + /StructParent 36 + /Contents +>> +endobj + +512 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 256.41064 524.4094 263.64862] + /Border [0 0 0] + /Dest 463 0 R + /F 4 + /StructParent 37 + /Contents +>> +endobj + +513 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 242.02264 524.4094 249.26062] + /Border [0 0 0] + /Dest 464 0 R + /F 4 + /StructParent 38 + /Contents +>> +endobj + +514 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 227.63464 524.4094 234.87262] + /Border [0 0 0] + /Dest 465 0 R + /F 4 + /StructParent 39 + /Contents +>> +endobj + +515 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 213.24664 524.4094 220.48462] + /Border [0 0 0] + /Dest 467 0 R + /F 4 + /StructParent 40 + /Contents +>> +endobj + +516 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 198.85864 524.4094 206.09662] + /Border [0 0 0] + /Dest 471 0 R + /F 4 + /StructParent 41 + /Contents +>> +endobj + +517 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 184.47064 524.4094 191.70862] + /Border [0 0 0] + /Dest 468 0 R + /F 4 + /StructParent 42 + /Contents +>> +endobj + +518 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 170.08264 524.4094 177.32062] + /Border [0 0 0] + /Dest 469 0 R + /F 4 + /StructParent 43 + /Contents +>> +endobj + +519 0 obj +<< + /Type /Annot + /Subtype /Link + /Rect [70.86614 155.69464 524.4094 162.93262] + /Border [0 0 0] + /Dest 470 0 R + /F 4 + /StructParent 44 + /Contents +>> +endobj + +520 0 obj +<< + /Type /Page + /Resources << + /ProcSet [/PDF /Text /ImageC /ImageB] + /ColorSpace << + /c0 428 0 R + >> + /Font << + /f0 398 0 R + /f1 416 0 R + >> + >> + /MediaBox [0 0 595.2756 841.8898] + /StructParents 45 + /Tabs /S + /Parent 1 0 R + /Contents 521 0 R + /Annots [478 0 R 479 0 R 480 0 R 481 0 R 482 0 R 483 0 R 484 0 R 485 0 R 486 0 R 487 0 R 488 0 R 489 0 R 490 0 R 491 0 R 492 0 R 493 0 R 494 0 R 495 0 R 496 0 R 497 0 R 498 0 R 499 0 R 500 0 R 501 0 R 502 0 R 503 0 R 504 0 R 505 0 R 506 0 R 507 0 R 508 0 R 509 0 R 510 0 R 511 0 R 512 0 R 513 0 R 514 0 R 515 0 R 516 0 R 517 0 R 518 0 R 519 0 R] +>> +endobj + +521 0 obj +<< + /Length 20380 + /Filter /FlateDecode +>> +stream +x[Yr^"[:z︇$e؀o ն OiSX;W&!yr5 *;;֊˿ݭ}]-w[֬_~uúYw;~~Wk_?:Ӈ?_moί}ٟU//_~?1 `8/7Ə~ O?_z'}>~ҝ_?nOξ}

>cڢTFUEeĮ5L6I3%Sd CCը-YәTn2Z6{R)6KR/p2ZfkSitPZ5lK -2۝ze{TD&bE}z^T$7%RI=VQ*{JVqo޲ǨzQk1&UOIP+TQ_B-zSvJ}׿˿kҕ~~ܼR1L[| їwƇ]_;_w]0|ڋ!zEu9bfDDxeP%  [}ٛ類1)o&e% KEW4X&$"G!%4"ZR5JiHC4D- %>?B }6ݘwW%Q"x"F2H.5%]CCԖbRVo@{jm-vJ(4¨4>!wHC-Ni"$՚xglSf6%>KW4,_{)ۙl$dcaL6e;;T"w0Ed|4D.!.`rhj3$W ,}///u[~Ulʃ_R/fcܾ_TBV*#%wn&Q + ^\d̢Q)*d͚b1TD2ͼ!Qyf^hl-ݒy"zHǢ~ (S&Oc um̷*5ZAZ`"\\;I܋zQeJ-4 +Auå'zsT FhބQF2;[7DŽX-^3<Э"…npU3tïdSwЮ- jۢ>^RO8L{z{K,4H0-~3Mpa ͽn"FV u  kSа45hXE.4,IhP|_*{0OǑly ."9$d3mME/JY?weE-L2]uU+R>}뇦㐁WVoyg[ Znףw1O{(u#CX :QG=̂}1Li>=/#8b.=܍sgV?3w xH>wcȋт~ Wuſq{C܂dxT?gHlWC4BaR2 +LFoٱlS!{sh'=LƘx?QcdRMCd2@dFSl9 oTCaje>K`̱EeN3%j.1KP~Uz+DFʨ`cĖeV\F`!d"cD#iby :DFWRWWZ[ (DF ‹H@m2&F"A'zO+2nOd8FUQ_P0Ľclb,RV %ȋDFJmCda/µKA$"\*Ty;{w±y덲/ pמ-<ĉ9lI<R~lEpgqʑ aҿO/E.ݯ}psk-[0mcWE\pЬJc`IBF&B 3")h2Ԑ=Qm|1 nQk!fC%zIXC"2 +٨Fe(Ci +m5\`I=T Q*j&"#,Q1z[&-1z9i$)M}0-6t1vLDF Tn3ed3o?$)ˌ0qE"`>q0f'.|ˌąq#\-fg*n}fJn*`X'K>q "*c#" +dwB;#fąm)Q' B&"B>X؍PD Ҧ>p.'v%p.pa-E}QZeuWOE뱷.'"1?h!d+|WjrUhrUhp0V1>qaPzX+#鉈PBg@"\񾌷~쮸{[`jIWl;_7sZo)a-pz0:{~sgƎt[_/ 7_0.ӄHquRh^h&!\R7Mx/1qPyL= ,ڂƛGvy 0 Mlͻo.h\I-2O2/xŻ^ sx5'_HYmk 'Egmh VSNеکZ'GhE QUٱ4DJ*!"H}x@ѪSf!UyHmwyrT1yhX01.A%,7[9ğ{A b=hW̤! ]x$n#{jxb>:uD?([+mA.V>h׾__J|b$|H!4WzoTS߽eQz菿q}_i?/>ٳ/_u +KASK8ߊ +WtF/[6 !V3\H@E""ZV&CM>Hulw}i}ZumL/onPxx_m~{H)͌}yLC˸|f[/CM&ʟyڰ햐Qp7knID`H'"Rb~ dԛ[ xԉ|ydԯQ@FQD\惤"e]"bmk[ >1"@F} ̕qLM! ɨG&@Fa0v _;L3 GDR꫉ﻓR_x_dsǀ"S?!6̛J$ ^z"QyO#~f~ D/L$"0<(-`G6@F=cxQ'>-ŋys?a& q2Yxe/],e^G%/V2KeNJ2J)Og*.E>&~~g=b/㿽z o9ʗv|hRd"2J o8#Tatϡcs-*ű άP^6JeLZG.3pr߲cb~8DFaD|{AKdSOUe]eKC֥$ Gj]l̻WEe7o?V~JV.7y0>^4~xiй=Qcr|VDT3 eG$@j=hѕG8`F^Tb`]%<-Eb2K,7V<_0{DC"⭙J*>An‚paDb0ǔpqkϢ>+$9H$.`ɯԇyԜ0 1h\F2CE-;.G.2(p%LOrx 5TrfRr +bDK2@AC -4BnxnXydjSU[oPH&bm38 1tVs|JZ % q|̻ˈcwhn<£Ś,]߅厖\6%W͟o3l"1%/6oԽ +ɵs"3F|<'Q}<IЯTbYs%[7a+.2pAd%!2R*x\dc$R΍E9E ^2}.]c!3 +ըoӬ1Af58}k xTӗ>Qin,O_ͿvR~UJcJJ~]u7?>s^?r1"Qǽk?G9_h>,T *|UpDyV)h}l14DLuEEaK b h8]@p,(i *"ҙ29i4aw5Ѳ`0O튇HQ:M<1_Hgv!F#T +J]nt.1AD`J4P=0vw}SWřM|:#y 'Bcp`Mqt|ClKtWu|uTTt経zїw>?ssb˹j?zoσ{sۓEQcH*dηzkn`2*M-d#TI%"RlC6.ySLEᓇ@鮒m [TU ?ٟDHh'uo Ib1'W"#ewc x< G^S-u*BSfa=a)Ue>䈌cI7I%YfTFliMDKo"E;7y<GH)G&i +$Rp-@PqPUvhc}KG3⦮N +T|_ۥ\\-ke7kc]1n +񯾲{}2랷W"׫ x{Ax\~Vh $ZĦ"R\1 @#NpR{ M>% ;}hM0Lu"e,JdYph%;ԩFCS7f1Plgy43d%""$c`?$2FMzyS21[7"#e7#pĴrFڠclGF#2RMC!vrqq'W*jvrN.i| qӞod?VًAꠏ?{4>l^|M.srp4rZ6s:5-6a" Ɉ "F2eѲ1BZFexERo\FRu:DW~2T@n~x $daKdN +U0c! +LFɤ*{#Hј* E*}1VP=hMp㵴gܶl`"k8DK&<%1&#eqW<+TBhqbL@S22L0 Sc2BVssMӖܨPuc%Z@[2u/zkuz|#|X=v}\-ϕ͟Y߃5ɞz~9y͑cDӥLe[[?7~+TKlv^Ib2B`b2Fdf^O& xM*÷;DFxcĒm\ce2Z4tS_IexP$p4N)oNՈɀ~d2Ff20|4{K}DD`s_{.F<Q2}>ZUe5dDD6&ʊ[&F7p)w""*AD;cxt cx5"DƎOd>|"c$-*ۇ(ɳ8 !Dˣe<ߗfe3B]s_Aÿ5~_oރȀZS5&2J։! <"DF` +6?^2}՘(k!Pr<~;N"A-oy[78Uj?<\z1ƯE}_yC%"Rl? HLjHc"qrux%2jق8QD~ʽZǸ3}o+sY ELm_k_oH?vZDF3pKU4![O'=1:Ha1pK;qDF!u<[M^\ƠU -}fKdL<&\]"1dL[&x[&ux[֢t˲2RN&6"2`2Z ٥!nCo?$ R=s ]}$:'2'J]LFQf)Q-RJC;_CQQ۲vXPTJ2۩M (^̢~ICn ꡂ&qMꡂ#0 CxQ_0DQ< 4'aF2uՃ2G('jݥ @;62CȀ\DnE*h`2CHLR=T.J"T6!|B=d2C}Pyc@Zd`@1r ug*u#W[Q&VFc20MPuHUie&cL*6>%Ǫ@c@4CuTb^TeeG>TD!#U3]{]QinH\,YyG}~| =*5?tLyWk,ge7+Yo*DFjy,AJQ#u +Qv3V*3<[iӁ喓#eI/C.Qa^19IF,7,x0#ǩc2mPK4)\- =DƉ]ٰlfxW$#ROLj ]"crCk[QQ+74xǤVRc$Ƀǘ㉌ʭ Vn1*6iCE4nTdÀHܠ DOw_sa*~S"#%%پה;*wUikj!騏Ի^~<(?/m1l_/}B~l(?c~1mWǛ?\)|Iog;Jy~3,Q/K_˜O +ֱнo;+%T#*ޜưX9܉Bco@DBPU"2FR {5CM*k,"dU@G)Jzڧzr2 V~|!5iz~~{Z=kK=Kd.#FIDK'Adt`Cƶ(Yh*`2d`%Jdh8'"c"`1Paʇ(@?[2Bw +Hm O"Ayh#1J?_)J5z &PTc6DFK$:1;p#݁()s+T7utBzGrԓ=}ouq#|OؐK|+M7?i@x{_тh]2⧷{3"kMfbvpɠ-{m&#}_-öǀ%6@DlP "20g xRI#z3xpe*?W՘5Q%2Jt)J4quP'"B\MGDd DFH+"bdL91e--0΄pUC8wQu1M:DK,hv2R%M 2R<uR ɄOY1z8?"aǘ-fEmAՋ:i  + SMe-N%:T>֑zѲfYEdP~cd@a pމ38;ܧ!wdvm.#d*12G(n^ȠQA 2QAZ\?*(\u4PNhh1 |Dģ7%YEKAg_AwA,Y죎/[?M:x%}gZ 7+.QLB`du'\J&M1#2|fǽp=eYXŒJp4phԴ5\%0H~s/ZR=$2 A1بGꔂ1lkq/+_cBBddc .g1φm#S)LI*E*.%<"`B\̛I=d,Uoe&Z(r/nb<A-L#e2˪UCd2ySKwƹN;-z" LoyYAf_S}&cDDXE{ͽtmK &#-@{Pcʦ*Өe1=[,6%y!lh[t[g0-[%hƽv{ĪkwJRzHkDWP#EvwfEG>vcvC'N\oH|xc_S6e4/cq~:]K|$jT|NqM+׮DOkiqsMP-7Pé +.}$(.e^h3mpqS %DFKqꭰ >yMD,IѧkEu:D.DDoC@鮦*D2"J7Md!X1|=oAs2RY?u3.\i&"B%̅y*/q_Rc;߫SI_j?~`?]OU$chϩlVR0p%qc`D@({`H5|`HZRJy{:Jym*4cc`5P^TX(Bq:ESco,h1Dܤ [~XLc(*MwC +E"RW+Gi) !p7^WǻH=VGνdycԖmʽ*D7"[Ǫ?&kO,1[qTc&1Rvh M}B;1^Uՙ7Myh1H~ K|i?/Q_!_oGC5Sw^Nyw{WΑ7kW;DiD v"KZX<DC7 2'gD1C?j! "x GDJ>naQ 2JOR94u25u@z { $DFK=q-X?iwKQ/!"B>Nqi"#<з#-)e lN&3=ɗ}CdX19S ܍|:"ܨa"N:JpDDzpRo?]/$25 +iE!F#3G-1L3./}xZZ+ ݟ+#_px/߾Zply^ Cюp( t\8>cT:K%"Ro7 DFvQu Cc%n!tKq1!iH"3$"JFSO*$,"RU#>9D˽hteb cJOdBMD`ފh.mEdMc̖=gl sWfYލ*Qr{c!DFHjKTNdrd] "ϠIy± OR䙇c΁SHG (uR:C!#+Cl?DZȧ="#D$`C:!()3j=F,2'>xޗe/ J>w"(Hm~_G+U' /:aGk< ?{;k|2qY|^~p(TfLj-OdJԷ˷Ƥ 5&)Q;|e8$-&SMeTF[PχaKTRJI6 +ǕzJTSOG,>Shl4Ye>P-8M]hwuMmj56 C=TꡚCb\t&b{ +*nd`VR$lN] z֢.H`Y2QN=Ez<eSCc$ $JjPF9!¡ǡbd岫FSV5AQ8ԠYEƠS %9ЕsqBGyIjc> #/F.~0mhyK~d?۟|?}4ȋ 7!gPyt'2!p_16i ]&Y\FIn {Ka*L8T'D9u<:r5U x%t{HQ=EH= NdxoyPt, Fd}3Kʕ@.Gk͖'2 +1Ldi~~Ad)zQaΐOS߁4dI=SxS0 y:ʑS0#%Fdl\FDQ)%"Rm 5ԯa."TF5ԛ:") PexVc×@dM]"+r Rq =.F Lƈp_>Hf206bR+ E"#NJyQy_yG<2`~&#ezd蒭۩Jl3n۩3r #2|I`D2Ip iPi="2kX,fD%@Ρɡ0gUoq[pXN6\Է29E&GQŭAN"G2`02e|FK;XEZ Z ub1W,77fns_>?~^$^<7g/|Q=<_3 Dn9fAp ݆DFIJL!(Vt=/&*> + /Font << + /f0 398 0 R + /f1 416 0 R + >> + >> + /MediaBox [0 0 595.2756 841.8898] + /StructParents 46 + /Parent 1 0 R + /Contents 523 0 R +>> +endobj + +523 0 obj +<< + /Length 3865 + /Filter /FlateDecode +>> +stream +x]ݓ۶_AO΍pu.qN;$ɌTQwN?vH]2}|" bu/Gm/?㏫O>{c*]TA{ҝzvsFWo~7'w]67;]Fn7=qvݓkϟg;}5]V&TO=ѽw<P}ngnn0H&(k2HbeɩOnzG0 vk>Pwx0atvzAz ) k@4pW0%F8hxW?z.ـ!*RhE[ucx% +U\Q]okZ[`6+.@Zav[,3hrڄ3IoX5zT}oMF=2uHΪZxv&9uFy meݨe +=i;vl1 mQ{cAoogPҊ]ն! ?+FJ WB6*ji{{Gd[zI1 V/`'>$Y*p"B\(*Qp!a oMy+ʏ n +|hZ9@Ehn;d!%7 - ~_}%?$C:~nr 2wCgyӗz>,`QOu +H' +U + _!*qB1Q"ڜ:BJ4?O?GO s4ў򼸣t4۪!$="Æsd"IDi *s+NH a$10%ĊOJ1g@S0m,1r ć`&{ +'v)yn:5 ykr{|rқx~q 4FhbH27`;EϏ_ hwn0dZ'㤁x|NemuUu3"״ݚvy>mB +ώ"4'oOFD'ߩڋؠLe/XdL- +O393Hb :< {&ɱ,zCQeLAB-6;oR/\D+rXX!d(M>˝H/IJ(Q#=o^ +Nu^Kb +Ҽ@JBD\zM%=E(d)4"5xdߩbUƘ"T;:ԶlxYl+o-k6A &2 "9; 0-R"*9L>{&>L:b/FXDZekN"[wiq+, aΖ$ s}h D  +#ܩ +e%BCp qUQMLXSW֋c؞#Iɰ*8+w| V!qa|lcRxEWZqjUό.їQh"> + /Font << + /f0 398 0 R + /f1 416 0 R + >> + >> + /MediaBox [0 0 595.2756 841.8898] + /StructParents 47 + /Parent 1 0 R + /Contents 525 0 R +>> +endobj + +525 0 obj +<< + /Length 3437 + /Filter /FlateDecode +>> +stream +x]KWʒ-o l˒lU7F(Ul9ߧH F3Jr.Zr4_?^MWm믛g>_ oxD4Zg%3[ܾ]]o~ݬ]xs]]F(&/oW??pWmֿ4Y}wqW!E f5Ptq ww$ՁwU 8~a!7\Z$]K| /#+n0̺iÇc>P#sqvP8^^te 5֓gy0`ps8YnZL50~~0 ~@?&sw_£u㆕;%kat|~xk )2 +)98}>%Ujp. +.c> , [>B?jXMz .]P 9JQ^zw "#wwS^4bEu\\15e&JJiRDˤ6ZpXMwc`ClEdRSn݆ZYa[7&&-gRɓЖ;Dc,BY Ku2キל6v2HW =Ò.u#:z(: 8ay^*8)/GjRJص:r x.\nm- Q3 ʓ?yQ +ʆݍyt[J|8?7\v?]$$|֍)OCO!JƔGy N2(`nf wxP7^_w"ʓ,f3$T-5 _&*!.cE) AbLs6 {#wn&THmY؉b9vi>M;w%,IvE05Y(qnXK79IH]&y8p {s0 w|H+[g@v?dGRAiχ†%O) txIa$QDFw>ً@N(9vpdD?nfط1aﭟ@cCA 'tà`Z` EN0:Y#BsHg(#x'9FJwleAFoCPK$[jQ EtG:Z 7D%8 ĄX"t\};P<t' ޮud$T䧣Mdا l K2ggF@c Rh/~U)@4Dk[I^$Mu .ARt%(s ;zgmN$s1Hx|OBSF&"\Q ܆1}Qg*g^%y& ݞ[ސKq<*MUoad sJQWvR*R/8[ ʞdj}nux=p[U%x:OlZYƽ9aWdDV3=4n83g(yuB)=xtq UpS)ǴhY@MHAl>*CiJ&sU z@in,,Ϩz:E(&MU"B^_L?/̬.);DM0'qytᇔZ긐 %Jq!35ɾ%&%EѽN8YAM8t\ a,HY1 Y(홳5?,%$)+!%pX ka5EHDץ:g*?J9Hej* x ۵>͟M-3dL)Ô>S9t*xbvKh9M(!lڡ K:!Iؑ?ܥ?z5>ƁnZ #Cץ;D`8'hW-|YGZDKr攋;>:\;9];q[MpE4Ls'sCrcYTq@ZXޖ}}]$C[SS)<ːhϻP&,J13#U N=gnWmz(vIfېrD݉G^L$UAa%Өt8%H#I(FcQ䜹-}gWg}?ƻBA OgFCdeO-SRYQs'xu],JTW鋫r0H5f +,2J%WnE1-jZ`M*Um?hy+&[hw +ԜFe~!v_E@.q$qܨW]1dF.iVZRcFW}4'# +QZG'O"%WL^)SKKֳwݖ0%Ngb!- +U?V`j*L bp`P0:p~u;rMmsU{V]-ąEHT(ΰYPpڞO j:HW\!$녘.qJVQ7y+&>+xl7f hL 9y )~b3q$BІٚ_Tt!H5KީK,pJ(X2m*j 2A m} jѦ#b9WQg qxV٠*`!H#lPg9SJ搋aIVE+,M<;K 5 JxYj/UH#t +YEdۺtSj +Z%,׋'cV&0!\2] uT%yŒG:&,gȸ_"?HeqORh9.ͣ$zP`BA̺ 7+RǶeDN`^Q ݛkOwzgvwoٿ^Żw[ׇx776X[-lg_ꂣOD +endstream +endobj + +526 0 obj +<< + /Type /Page + /Resources << + /ProcSet [/PDF /Text /ImageC /ImageB] + /ColorSpace << + /c0 428 0 R + >> + /Font << + /f0 416 0 R + /f1 398 0 R + >> + >> + /MediaBox [0 0 595.2756 841.8898] + /StructParents 48 + /Parent 1 0 R + /Contents 527 0 R +>> +endobj + +527 0 obj +<< + /Length 2499 + /Filter /FlateDecode +>> +stream +x\ogE<~n즰'h (k]r}_v̒۵ya?7Cm~n^Z1_3+տV &ؕdsҰi^vq`VonVW`Rm?Bn_Zt>];/Ldg!q*T5q BolgPRGSA"P +hS(ftsw=#~x%wqFNxٕ\!n×\Z3%L:gE"R+Znz{ak$4\7 -̅%XX2@~˪.EK69eI&-7kvOYͤe3Ú]UAZfz<٦Oqێu +zNv3\zRpzl}}Z?-I$5k) +SD}0%lFr']5`$Y.!kHpmc3=SkS(GJyZ)O5%m=-YAyfmW)`' 4?kfuQpErG3 vMx2`Bӱf7_jY8>b@TgNQm{EI0(-*/jpÔ }0颢U9ˍ63/G @q^*^i#oH9K ITvЅ!+VhTi8SnaJ.:<&xWpI*INYn:tم>0::'Xni^(koeG9 8՞/ŖկrCթY{FM-c"I@$b,/z^zŸcHSYIɕ03t ;so *Iv$aE4g $ndt3Ox1rˀմԫ3'~?Ek)3"AtqVkϤs>W+b [z!h\7.*Cn0f̥y\D0V~kcEff[ZgTѸ_%FfҾuҒ:io*4u2#Cix "Sh$*$a +`(4{<̈́;z܀e4$;`?@W +hObK2#BHܡ $%HJRA'b8d&CIݤX#jSj%)Y`շ8GUCOGr)T A\"SVDB%m ;ϕy:G +Uz23ړCSdyvA UG~1R8VzeC$qD5`3$TVdBh8f'S]" K4+ņ_ߝ$3-VMbBFԼ5'Ŗ\92R[+e|gG03IG +1߰)@m(a{z1|$kNJ4TT_5]!̠%_e@ kaEYum)zD4[SzB>0ffczYC&xN4 D!5\J7[30$gٶPݣMToM_xkq>HA>x5z&H`*=4 N$YrOqL +X3Ӵ~B<ym.vx +M^9m(5z,Aϳ(mAS F;O.cfSHӏwD"Z5\UƝ^x x7XoaC#K}-D[BIdwxn̫lxm+ER@+it>a7-MzK&1g}I(*DuK5W샖Vh)*FQhb#0lT1#)1 2uB%YL:ۀ_vD>q?Ur=[d LUt[Zh}QNoS!P`?2]>aG&i-wNΪ_LB !=R(`H~խq|]hIa^++; H#s4V"}w#iv$N q?Nw'zZ1xLp>lм>ǻ??gona3dzŵU}JT/0Q +endstream +endobj + +528 0 obj +<< + /Type /Page + /Resources << + /ProcSet [/PDF /Text /ImageC /ImageB] + /ColorSpace << + /c0 428 0 R + >> + /Font << + /f0 398 0 R + /f1 416 0 R + >> + >> + /MediaBox [0 0 595.2756 841.8898] + /StructParents 49 + /Parent 1 0 R + /Contents 529 0 R +>> +endobj + +529 0 obj +<< + /Length 2108 + /Filter /FlateDecode +>> +stream +x[K6 W06,͗H)ldL䰻t&t;DY@PK2 zj˞?_0z}%Sv~y{!`Kϭ9+(5bu#͗`_nBbLfܰf;!\_ů/+8D57Bx'_4YsׁӛV[[.t.Agu3VϗK0k|?jTN[i5jj`m:%F$*$fH4aEtmm";FL\:Vok4+uC%2%23TN>Hdy'ԒKN"j|ro5 6Z ش'O=‹`zn rɎ=̔S_}6itv & t(LE %15VkYCgBy9QHaynNSG mѢnjת̢oxuIRTas3A8Qqd|WK +> + Qzx/Ń&mHeJ9iR븐m`䦃^{QPP^i8M[B"׻aX4AN""h||7ʸ?]˜tGt:9} mxjIVteńE-Zp1wR@(R§$~[6AE?IN-O562 ޙbHepHJR 0<R.WzDGA +$rH +6&L& S{/#p4 +=NYI᱾Sus_Z+y==PɹMJu&Q)Cvd(#5hzawٴʦ{< @NEDqHВ> +endobj + +531 0 obj +<< + /Length 996 + /Type /Metadata + /Subtype /XML +>> +stream +Typst 0.14.0en2025-11-29T11:42:01+00:002025-11-29T11:42:01+00:008application/pdf+g8Kl2zF2K0Wx444aP+2wQ==+g8Kl2zF2K0Wx444aP+2wQ==proof1.7 +endstream +endobj + +532 0 obj +<< + /Type /Catalog + /Pages 1 0 R + /Metadata 531 0 R + /PageLabels 45 0 R + /Lang (en) + /StructTreeRoot 46 0 R + /MarkInfo << + /Marked true + /Suspects false + >> + /ViewerPreferences << + /Direction /L2R + >> + /Outlines 2 0 R +>> +endobj + +xref +0 533 +0000000000 65535 f +0000000016 00000 n +0000000138 00000 n +0000000220 00000 n +0000000408 00000 n +0000000524 00000 n +0000000640 00000 n +0000000804 00000 n +0000000920 00000 n +0000001033 00000 n +0000001143 00000 n +0000001263 00000 n +0000001366 00000 n +0000001546 00000 n +0000001694 00000 n +0000001841 00000 n +0000001973 00000 n +0000002154 00000 n +0000002280 00000 n +0000002420 00000 n +0000002614 00000 n +0000002737 00000 n +0000003111 00000 n +0000003253 00000 n +0000003381 00000 n +0000003562 00000 n +0000003676 00000 n +0000003799 00000 n +0000003916 00000 n +0000004084 00000 n +0000004327 00000 n +0000004553 00000 n +0000004676 00000 n +0000004843 00000 n +0000004959 00000 n +0000005080 00000 n +0000005335 00000 n +0000005510 00000 n +0000005650 00000 n +0000005924 00000 n +0000006159 00000 n +0000006293 00000 n +0000006442 00000 n +0000006621 00000 n +0000006847 00000 n +0000006970 00000 n +0000007073 00000 n +0000007826 00000 n +0000007917 00000 n +0000008000 00000 n +0000008035 00000 n +0000009046 00000 n +0000009521 00000 n +0000010164 00000 n +0000010532 00000 n +0000010866 00000 n +0000011619 00000 n +0000011753 00000 n +0000011960 00000 n +0000012135 00000 n +0000012255 00000 n +0000012342 00000 n +0000012476 00000 n +0000012563 00000 n +0000012798 00000 n +0000012885 00000 n +0000013144 00000 n +0000013231 00000 n +0000013383 00000 n +0000013515 00000 n +0000013602 00000 n +0000013857 00000 n +0000013944 00000 n +0000014062 00000 n +0000014149 00000 n +0000014277 00000 n +0000014401 00000 n +0000014488 00000 n +0000014622 00000 n +0000014708 00000 n +0000014917 00000 n +0000015005 00000 n +0000015246 00000 n +0000015369 00000 n +0000015456 00000 n +0000015585 00000 n +0000015672 00000 n +0000015792 00000 n +0000015879 00000 n +0000016005 00000 n +0000016143 00000 n +0000016230 00000 n +0000016370 00000 n +0000016457 00000 n +0000016596 00000 n +0000016683 00000 n +0000017042 00000 n +0000017129 00000 n +0000017264 00000 n +0000017415 00000 n +0000017567 00000 n +0000017706 00000 n +0000017845 00000 n +0000017936 00000 n +0000018081 00000 n +0000018172 00000 n +0000018315 00000 n +0000018404 00000 n +0000018563 00000 n +0000018700 00000 n +0000018789 00000 n +0000018980 00000 n +0000019069 00000 n +0000019168 00000 n +0000019259 00000 n +0000019348 00000 n +0000019447 00000 n +0000019538 00000 n +0000019627 00000 n +0000019723 00000 n +0000019814 00000 n +0000019903 00000 n +0000020002 00000 n +0000020093 00000 n +0000020182 00000 n +0000020281 00000 n +0000020372 00000 n +0000020461 00000 n +0000020560 00000 n +0000020651 00000 n +0000020740 00000 n +0000020839 00000 n +0000020930 00000 n +0000021019 00000 n +0000021115 00000 n +0000021206 00000 n +0000021294 00000 n +0000021411 00000 n +0000021569 00000 n +0000021658 00000 n +0000021760 00000 n +0000021851 00000 n +0000021940 00000 n +0000022039 00000 n +0000022130 00000 n +0000022219 00000 n +0000022321 00000 n +0000022412 00000 n +0000022501 00000 n +0000022603 00000 n +0000022694 00000 n +0000022782 00000 n +0000022902 00000 n +0000023076 00000 n +0000023165 00000 n +0000023261 00000 n +0000023352 00000 n +0000023441 00000 n +0000023537 00000 n +0000023628 00000 n +0000023717 00000 n +0000023813 00000 n +0000023904 00000 n +0000023993 00000 n +0000024089 00000 n +0000024180 00000 n +0000024269 00000 n +0000024364 00000 n +0000024454 00000 n +0000024543 00000 n +0000024637 00000 n +0000024727 00000 n +0000024818 00000 n +0000024927 00000 n +0000025021 00000 n +0000025187 00000 n +0000025276 00000 n +0000025375 00000 n +0000025466 00000 n +0000025555 00000 n +0000025654 00000 n +0000025745 00000 n +0000025834 00000 n +0000025933 00000 n +0000026024 00000 n +0000026113 00000 n +0000026215 00000 n +0000026306 00000 n +0000026395 00000 n +0000026494 00000 n +0000026585 00000 n +0000026679 00000 n +0000026794 00000 n +0000026903 00000 n +0000027009 00000 n +0000027109 00000 n +0000027239 00000 n +0000027362 00000 n +0000027451 00000 n +0000027569 00000 n +0000027818 00000 n +0000027916 00000 n +0000027999 00000 n +0000028139 00000 n +0000028301 00000 n +0000028393 00000 n +0000028476 00000 n +0000028616 00000 n +0000028778 00000 n +0000028870 00000 n +0000028953 00000 n +0000029093 00000 n +0000029255 00000 n +0000029347 00000 n +0000029430 00000 n +0000029570 00000 n +0000029732 00000 n +0000029824 00000 n +0000029907 00000 n +0000030047 00000 n +0000030209 00000 n +0000030301 00000 n +0000030399 00000 n +0000030482 00000 n +0000030622 00000 n +0000030784 00000 n +0000030876 00000 n +0000030959 00000 n +0000031099 00000 n +0000031261 00000 n +0000031353 00000 n +0000031436 00000 n +0000031576 00000 n +0000031738 00000 n +0000031830 00000 n +0000031913 00000 n +0000032053 00000 n +0000032213 00000 n +0000032304 00000 n +0000032402 00000 n +0000032485 00000 n +0000032625 00000 n +0000032785 00000 n +0000032876 00000 n +0000032959 00000 n +0000033099 00000 n +0000033259 00000 n +0000033350 00000 n +0000033433 00000 n +0000033573 00000 n +0000033733 00000 n +0000033824 00000 n +0000033907 00000 n +0000034047 00000 n +0000034207 00000 n +0000034298 00000 n +0000034396 00000 n +0000034479 00000 n +0000034619 00000 n +0000034779 00000 n +0000034870 00000 n +0000034953 00000 n +0000035093 00000 n +0000035253 00000 n +0000035344 00000 n +0000035427 00000 n +0000035567 00000 n +0000035727 00000 n +0000035818 00000 n +0000035901 00000 n +0000036041 00000 n +0000036201 00000 n +0000036292 00000 n +0000036390 00000 n +0000036473 00000 n +0000036613 00000 n +0000036773 00000 n +0000036864 00000 n +0000036947 00000 n +0000037087 00000 n +0000037247 00000 n +0000037338 00000 n +0000037421 00000 n +0000037561 00000 n +0000037721 00000 n +0000037812 00000 n +0000037895 00000 n +0000038035 00000 n +0000038195 00000 n +0000038286 00000 n +0000038392 00000 n +0000038475 00000 n +0000038615 00000 n +0000038775 00000 n +0000038866 00000 n +0000038949 00000 n +0000039089 00000 n +0000039249 00000 n +0000039340 00000 n +0000039423 00000 n +0000039563 00000 n +0000039723 00000 n +0000039814 00000 n +0000039897 00000 n +0000040037 00000 n +0000040197 00000 n +0000040288 00000 n +0000040371 00000 n +0000040511 00000 n +0000040671 00000 n +0000040762 00000 n +0000040852 00000 n +0000040935 00000 n +0000041075 00000 n +0000041235 00000 n +0000041326 00000 n +0000041409 00000 n +0000041549 00000 n +0000041709 00000 n +0000041800 00000 n +0000041883 00000 n +0000042023 00000 n +0000042183 00000 n +0000042274 00000 n +0000042372 00000 n +0000042455 00000 n +0000042595 00000 n +0000042755 00000 n +0000042846 00000 n +0000042929 00000 n +0000043069 00000 n +0000043229 00000 n +0000043320 00000 n +0000043403 00000 n +0000043543 00000 n +0000043703 00000 n +0000043794 00000 n +0000043877 00000 n +0000044017 00000 n +0000044177 00000 n +0000044268 00000 n +0000044382 00000 n +0000044465 00000 n +0000044605 00000 n +0000044765 00000 n +0000044856 00000 n +0000044939 00000 n +0000045079 00000 n +0000045239 00000 n +0000045330 00000 n +0000045413 00000 n +0000045553 00000 n +0000045713 00000 n +0000045804 00000 n +0000045887 00000 n +0000046027 00000 n +0000046187 00000 n +0000046278 00000 n +0000046361 00000 n +0000046501 00000 n +0000046661 00000 n +0000046752 00000 n +0000046835 00000 n +0000046975 00000 n +0000047133 00000 n +0000047223 00000 n +0000047306 00000 n +0000047446 00000 n +0000047596 00000 n +0000047679 00000 n +0000047819 00000 n +0000047969 00000 n +0000048052 00000 n +0000048192 00000 n +0000048342 00000 n +0000048456 00000 n +0000048543 00000 n +0000048661 00000 n +0000048756 00000 n +0000048847 00000 n +0000048942 00000 n +0000049033 00000 n +0000049124 00000 n +0000049328 00000 n +0000049415 00000 n +0000049502 00000 n +0000049589 00000 n +0000049676 00000 n +0000049763 00000 n +0000049850 00000 n +0000049937 00000 n +0000050026 00000 n +0000050069 00000 n +0000050128 00000 n +0000050187 00000 n +0000050246 00000 n +0000050305 00000 n +0000050364 00000 n +0000050423 00000 n +0000050605 00000 n +0000051522 00000 n +0000051613 00000 n +0000051866 00000 n +0000053514 00000 n +0000061131 00000 n +0000061299 00000 n +0000062093 00000 n +0000062184 00000 n +0000062475 00000 n +0000063905 00000 n +0000096995 00000 n +0000097168 00000 n +0000097910 00000 n +0000098001 00000 n +0000098292 00000 n +0000099498 00000 n +0000120284 00000 n +0000120469 00000 n +0000121519 00000 n +0000121610 00000 n +0000121867 00000 n +0000123727 00000 n +0000132935 00000 n +0000133100 00000 n +0000133367 00000 n +0000133453 00000 n +0000133730 00000 n +0000134430 00000 n +0000138397 00000 n +0000138435 00000 n +0000138794 00000 n +0000138847 00000 n +0000138900 00000 n +0000138953 00000 n +0000139006 00000 n +0000139060 00000 n +0000139113 00000 n +0000139166 00000 n +0000139219 00000 n +0000139272 00000 n +0000139326 00000 n +0000139379 00000 n +0000139432 00000 n +0000139486 00000 n +0000139539 00000 n +0000139593 00000 n +0000139646 00000 n +0000139700 00000 n +0000139754 00000 n +0000139808 00000 n +0000139862 00000 n +0000139916 00000 n +0000139970 00000 n +0000140024 00000 n +0000140078 00000 n +0000140132 00000 n +0000140185 00000 n +0000140238 00000 n +0000140292 00000 n +0000140345 00000 n +0000140399 00000 n +0000140452 00000 n +0000140506 00000 n +0000140560 00000 n +0000140614 00000 n +0000140668 00000 n +0000140721 00000 n +0000140774 00000 n +0000140828 00000 n +0000140882 00000 n +0000140936 00000 n +0000140990 00000 n +0000141044 00000 n +0000141336 00000 n +0000142036 00000 n +0000142346 00000 n +0000143041 00000 n +0000143333 00000 n +0000143840 00000 n +0000144166 00000 n +0000144475 00000 n +0000144785 00000 n +0000145110 00000 n +0000145472 00000 n +0000145765 00000 n +0000146043 00000 n +0000146357 00000 n +0000146660 00000 n +0000147042 00000 n +0000147521 00000 n +0000147935 00000 n +0000148350 00000 n +0000148732 00000 n +0000149122 00000 n +0000149567 00000 n +0000150001 00000 n +0000150380 00000 n +0000150871 00000 n +0000151266 00000 n +0000151665 00000 n +0000152048 00000 n +0000152391 00000 n +0000152710 00000 n +0000153065 00000 n +0000153396 00000 n +0000153771 00000 n +0000154114 00000 n +0000154493 00000 n +0000154820 00000 n +0000155171 00000 n +0000155482 00000 n +0000155869 00000 n +0000156228 00000 n +0000156675 00000 n +0000157066 00000 n +0000157433 00000 n +0000157800 00000 n +0000158115 00000 n +0000158426 00000 n +0000158769 00000 n +0000159148 00000 n +0000159800 00000 n +0000180261 00000 n +0000180554 00000 n +0000184499 00000 n +0000184792 00000 n +0000188309 00000 n +0000188602 00000 n +0000191181 00000 n +0000191474 00000 n +0000193662 00000 n +0000193779 00000 n +0000194865 00000 n +trailer +<< + /Size 533 + /Root 532 0 R + /Info 530 0 R + /ID [(+g8Kl2zF2K0Wx444aP+2wQ==) (+g8Kl2zF2K0Wx444aP+2wQ==)] +>> +startxref +195124 +%%EOF \ No newline at end of file diff --git a/Masterarbeit_draft.typ b/Masterarbeit_draft.typ index 029bc7d..62e60df 100644 --- a/Masterarbeit_draft.typ +++ b/Masterarbeit_draft.typ @@ -27,6 +27,8 @@ #(thesis.body_show)() +#set cite(style: "apa") + #(thesis.body_content)([ #set page(numbering: "1") #counter(page).update(1) @@ -37,11 +39,12 @@ #include "Kapitel/00_abstract.typ" #include "Kapitel/01_einleitung.typ" #include "Kapitel/02_theoretischer_hintergrund.typ" - #include "Kapitel/03_methodisches_vorgehen.typ" - #include "Kapitel/04_prototypische_umsetzung.typ" - #include "Kapitel/05_evaluation.typ" - #include "Kapitel/06_diskussion.typ" - #include "Kapitel/07_fazit_ausblick.typ" - #include "Kapitel/08_literaturverzeichnis.typ" - #include "Kapitel/09_anhang.typ" + #include "Kapitel/03_fallstudie.typ" + #include "Kapitel/04_konzeption_methodisches_vorgehen.typ" + #include "Kapitel/05_prototypische_umsetzung.typ" + #include "Kapitel/06_evaluation.typ" + #include "Kapitel/07_diskussion.typ" + #include "Kapitel/08_fazit_ausblick.typ" + #include "Kapitel/09_literaturverzeichnis.typ" + #include "Kapitel/10_anhang.typ" ]) diff --git a/Perplexity_1_Lab.md b/Perplexity_1_Lab.md new file mode 100644 index 0000000..000c1c2 --- /dev/null +++ b/Perplexity_1_Lab.md @@ -0,0 +1,144 @@ + + +# Zusammenfassung der angegebenen und weiterer wissenschaftlicher Quellen zum Requirements Engineering (RE) und KI im Softwarekontext + +## Zentrale Erkenntnisse im Überblick + +**Requirements Engineering** im Kontext von künstlicher Intelligenz (KI), insbesondere Machine Learning (ML), ist ein hochdynamisches Forschungsfeld mit wachsender praktischer Relevanz. Die zunehmende Komplexität, Unsicherheit und mangelnde Erklärbarkeit von KI-Systemen stellt das klassische RE vor neue, grundlegende Herausforderungen, etwa bei der Spezifikation, Nachvollziehbarkeit und Validierung von Anforderungen. Die aktuelle Forschung betont deutliche Unterschiede zwischen RE für klassische IT-Systeme und KI-gestützte Lösungen – insbesondere bezüglich ethischer, nicht-funktionaler und datengetriebener Aspekte. Fortschrittliche Ansätze kombinieren klassische RE-Techniken mit KI-gestützten Tools, Natural Language Processing und explizit auf ML zugeschnittenen Frameworks. Dennoch bestehen weiterhin erhebliche offene Forschungsfragen und Validierungsbedarf, insbesondere in industriellen Kontexten.[^1][^2][^3][^4][^5][^6] + +*** + +## 1. Zusammenfassung: Verwendete Literatur in der Masterarbeit + +Die Literaturbasis Ihrer Masterarbeit erstreckt sich über Schlüsselquellen zu klassischen und KI-gestützten RE-Methoden. Dazu gehören:[^7] + +- **Handbuch- und Überblickswerke** (z.B. „The Encyclopedia of Human-Computer Interaction“): Sie bieten eine Einführung in grundlegende RE-Prinzipien, gängige Methoden sowie Best Practices in der Anforderungserhebung, -spezifikation und -validierung bei klassischer Softwareentwicklung. +- **Aktuelle arXiv-Preprints und Konferenzartikel**: Sie diskutieren neueste Forschungsfragen, insbesondere zum Einsatz von LLMs (Large Language Models) für das Reverse Requirements Engineering bei Legacy-Software und zeigen, wie KI-basierte Analyse das RE fundamental verändert.[^8] +- **Literatur zu Stakeholder-Integration und Traceability**: Diese Beiträge thematisieren die Herausforderung, implizites und Expertenwissen aus Legacy-Systemen systematisch zu dokumentieren sowie die Rückverfolgbarkeit von Anforderungen zu gewährleisten. + +Die genannten Quellen repräsentieren den State-of-the-Art und bilden die methodologische sowie inhaltliche Grundlage, um klassische RE-Verfahren mit KI-zentrierten Ansätzen zu verknüpfen.[^7][^8] + +*** + +## 2. Stand der Forschung: Requirements Engineering und KI + +### 2.1 Systematische Übersichtsarbeiten \& Forschungsüberblick + +Aktuelle Mapping- und Tertiärstudien analysieren die Entwicklung, Herausforderungen und Trends von RE im KI-Kontext: + +- **Habiba et al. (2024)**:[^2] +Die systematische Mapping-Studie basiert auf 126 Arbeiten (2010-2023) und identifiziert, dass die Forschungsaktivitäten insbesondere bei der Anforderungsanalyse und -erhebung liegen. Spezifische Herausforderungen sind die mangelnde Spezifizierbarkeit, Erklärbarkeit, Unsicherheiten im Systemverhalten und die Integration ethischer wie rechtlicher Anforderungen. Die Autoren schlagen explizit neue RE-Praktiken für KI/ML-Systeme vor und fordern Validierungsmethoden, um nicht-funktionale Anforderungen wie Fairness, Transparenz und Sicherheit berücksichtigen zu können. +- **Martins et al. (2025) – Journal of Software Engineering Research and Development**:[^3] +Diese Tertiärstudie synthetisiert Sekundärstudien zum RE für ML-basierte Systeme. Sie stellt fest, dass zwar zahlreiche Methoden zur Anforderungserhebung, -analyse, -spezifikation und -validierung existieren, jedoch vor allem die nicht-funktionalen Anforderungen, Stakeholder-Kollaboration und die Forschung in industriellen Umgebungen weiterhin große Herausforderungen darstellen. +- **Mehraj et al. (2024) – REFSQ Konferenz**:[^9][^10] +Die Autoren analysieren in ihrer Tertiärstudie 28 Sekundärarbeiten (2017–2023) und beobachten eine Zunahme von LLM-basierten Werkzeugen im RE und eine Tendenz, NLP mit ML-Ansätzen (z.B. LDA, Naive Bayes) zu kombinieren. Sie sehen jedoch weiterhin zentrale Herausforderungen bei Ambiguität, Sprachverarbeitung, Datenqualität, Algorithmen und Evaluation. + + +### 2.2 Aktuelle Anwendung und industrielle Perspektiven + +- In der industriellen Praxis kommt der Einsatz von KI vor allem als **kollaborativer Partner** („Human-AI Collaboration“, HAIC) zum Tragen, wobei rein automatisierte RE-Prozesse noch kritisch gesehen werden. KI unterstützt dabei vor allem Analyse, Priorisierung und Validierung, während die vollständige Automatisierung wegen Unsicherheiten, Compliance und fehlendem Domänenwissen auf Skepsis stößt.[^4][^11] +- Studien belegen, dass durch den Einsatz von KI-Tools in der Anforderungsphase Fehlerquoten um 20–30% und Projektlaufzeiten um bis zu 20% reduziert werden können, sofern Stakeholder frühzeitig und kontinuierlich eingebunden werden.[^1] + +*** + +## 3. Schwerpunkte \& Herausforderungen im KI-zentrierten Requirements Engineering + +### 3.1 Neue Formen und Qualitäten von Anforderungen + +- **Erklärbarkeit (Explainability):** KI-Systeme erfordern nachvollziehbare Entscheidungen und teilweise personalisierte Erklärungen für verschiedene Stakeholder – ein Aspekt, der in klassischen RE-Methoden kaum ausgeprägt ist.[^2][^3] +- **Nicht-funktionale Anforderungen:** Fairness, Transparenz, Datenschutz und Sicherheit werden zu zentralen Qualitätsmerkmalen – ihre Spezifikation ist aber unscharf und schwer zu prüfen.[^12][^2] +- **Datenqualität und -management:** ML-Systeme benötigen Anforderungen an Trainings-, Validierungs- und Betriebsdaten – ein Aspekt, der systematisch erst in neueren RE-Methodiken verankert ist.[^12][^2] + + +### 3.2 Menschliche und organisatorische Faktoren + +- **Gap zwischen ML-Entwicklern und Fachanwendern:** Fehlendes gemeinsames Vokabular und Wissensaustausch führen zu Kommunikationsproblemen und erhöhen die Gefahr für fehlerhafte, wenig akzeptierte Systeme. Die Forschung fordert kollaborative, multidisziplinäre Ansätze.[^4][^2] +- **Stakeholder-Integration:** Die Einbindung von Stakeholdern in iterativen, flexiblen Prozessen (z.B. durch Interviews und Workshops) gewinnt im Vergleich zu Wasserfallmodellen deutlich an Bedeutung.[^3][^2][^12] + + +### 3.3 Neue Methoden, Tools \& Frameworks + +- **LLMs und Prompt Engineering:** Neue Ansätze integrieren LLMs zur automatischen Extraktion und Analyse von Anforderungen. Genannt werden Prompt-Strategien, Evidence-based Guidelines und hybride Validierungsansätze (menschlich/automatisiert), um die Zuverlässigkeit von LLM-unterstützten RE-Prozessen zu steigern.[^6] +- **Frameworks wie LangChain und RAG:** Sie dienen zur Orchestrierung von modularen, sicheren KI-Workflows vor allem im Bereich der dynamischen Datumseinbindung und komplexen Validierung.[^6] + +*** + +## 4. Aktuelle Herausforderungen und Forschungsbedarf + +- **Empirische Validierung:** Es fehlen groß angelegte Feldstudien und Benchmark-Datensätze, um die Wirksamkeit neuer RE-Methoden und KI-Tools unabhängig und reproduzierbar zu validieren.[^2][^6] +- **Automatisierte und hybride Evaluationspipelines:** Bedingt durch die Limitationen von LLMs (Halluzinationen, Domänenwissen, Output-Qualität) ist eine stärkere Integration menschlicher Plausibilitätsprüfungen notwendig.[^6] +- **Regulatorik und Ethik:** Zunehmende Regularien (z.B. ISO/IEC 42001) und gesellschaftliche Erwartungen verlangen die Integration von Compliance-, Ethik- und Nachhaltigkeitsaspekten bereits ab der Anforderungsphase.[^12][^2] + +*** + +## 5. Literaturhinweise / Wichtigste Quellen (Beispiele) + +1. https://ijasce.org/index.php/IJASCE/article/view/152 +2. https://www.interaction-design.org/literature/book/the-encyclopedia-of-human-computer-interaction-2nd-ed/requirements-engineering +3. https://www.medienstuermer.de/blog/requirements-engineering-2024-moderne-ansaetze-fuer-komplexe-it-projekte/[^1] +4. Habiba, U.-e., Haug, M., Bogner, J., \& Wagner, S. (2024): How mature is requirements engineering for AI-based systems? *Requirements Engineering*. https://doi.org/10.1007/s00766-024-00432-3[^13][^2] +5. Martins, M.C. et al. (2025): Requirements Engineering for Machine Learning-Based AI Systems: A Tertiary Study. *Journal of Software Engineering Research and Development*, 13(2). https://doi.org/10.5753/jserd.2025.4892[^3] +6. https://www.serview.de/detail/requirements-engineering-in-der-ki-welt-worauf-es-ankommt[^12] +7. Lekshmi Murali Rani, R.B. Svensson, R. Feldt (2025): AI for Requirements Engineering: Industry adoption and Practitioner perspectives. arXiv:2511.01324[^11][^4] +8. https://www.sciencedirect.com/science/article/abs/pii/S0950584923000307[^5] +9. https://2024.refsq.org/details/refsq-2024-papers/9/A-tertiary-study-on-AI-for-Requirements-Engineering[^9] +10. https://researchportal.tuni.fi/en/publications/a-tertiary-study-onai-forrequirements-engineering/[^10] +11. Ebrahim, M. et al. (2025): Enhancing Software Requirements Engineering with Language Models and Prompting Techniques. Proceedings of ACL SRW 2025, 486–496. https://aclanthology.org/2025.acl-srw.31.pdf[^6] + +*** + +## Fazit + +**Requirements Engineering im Zeitalter der KI** ist kein evolutionäres Randthema, sondern verlangt einen Paradigmenwechsel in Methodik, Stakeholder-Einbindung und Tooling. Künftig müssen Ethik, Erklärbarkeit, Daten- und Modellqualität sowie regulatorische Anforderungen systematisch von Beginn an in den RE-Prozess integriert werden. Kollaborative, Mensch-zentrierte Prozesse, hybride Prompting-Strategien und empirisch validierte Frameworks werden für die erfolgreiche Entwicklung zukunftsfähiger Softwarelösungen mit KI immer wichtiger.[^4][^2][^3][^6] + +*** + +Bei Bedarf können weitere ausgewählte Literaturquellen oder Fachartikel zu spezifischen Teilaspekten (z.B. Prompt Engineering, Explainability, Compliance) ergänzt werden. +[^14][^15][^16][^17][^18][^19][^20][^21][^22] + +

+ +[^1]: https://www.medienstuermer.de/blog/requirements-engineering-2024-moderne-ansaetze-fuer-komplexe-it-projekte/ + +[^2]: https://mediatum.ub.tum.de/doc/1760059/6csttge2qwhb788cspl40xrvu.umm2024a.pdf + +[^3]: https://journals-sol.sbc.org.br/index.php/jserd/article/view/4892 + +[^4]: https://arxiv.org/pdf/2511.01324.pdf + +[^5]: https://www.sciencedirect.com/science/article/abs/pii/S0950584923000307 + +[^6]: https://aclanthology.org/2025.acl-srw.31.pdf + +[^7]: Quellen.md + +[^8]: Masterarbeit_draft.pdf + +[^9]: https://2024.refsq.org/details/refsq-2024-papers/9/A-tertiary-study-on-AI-for-Requirements-Engineering + +[^10]: https://researchportal.tuni.fi/en/publications/a-tertiary-study-onai-forrequirements-engineering/ + +[^11]: https://arxiv.org/abs/2511.01324 + +[^12]: https://www.serview.de/detail/requirements-engineering-in-der-ki-welt-worauf-es-ankommt + +[^13]: https://elib.uni-stuttgart.de/items/16f684d7-ee74-4321-aa95-f0c56e27c60c + +[^14]: https://www.fortiss.org/forschung/kompetenzfelder/detail/requirements-engineering + +[^15]: https://app.ch/blog/richtlinien-fuer-effektives-ki-prompting-im-requirements-engineering + +[^16]: https://onlinelibrary.wiley.com/doi/10.1002/spe.70029?af=R + +[^17]: https://www.se-trends.de/2024-ki-umfrage/ + +[^18]: https://www.adesso.de/de/news/blog/requirements-engineering-fuer-ki-projekte-anforderungen-an-die-summarization-aufnehmen.jsp + +[^19]: https://dl.acm.org/doi/10.1145/3701625.3701686 + +[^20]: https://www.arbeitswissenschaft.net/angebote-produkte/publikationen/veroeffentlichungen-2024 + +[^21]: https://ieeexplore.ieee.org/document/10877072/ + +[^22]: https://entwickler.de/digitale-transformation/die-anwendung-von-ki-im-requirements-engineering + diff --git a/Perplexity_1_Research.md b/Perplexity_1_Research.md new file mode 100644 index 0000000..441cce9 --- /dev/null +++ b/Perplexity_1_Research.md @@ -0,0 +1,484 @@ + + +# Lies die anghängten Dateien. Diese sind teil meiner Masterarbeit. ERstelle jetzt under disem Kontext eine Zusammenfassung der angegebenen Quellen. Suche danach nach weiteren aktuellen Quellen die mit den Themen (Requirements Engineering für Software und im zusammenhang mit Ki) stehen. ERstelle mir auch hier eine Zusammenfassung der Artikel die du gefdunen hast. + +Wichtig!! Es geht hier um wissenschaftliches Arbeiten. Konzentriere dich auf wissenschaftliche Artikel und Quellen. Und bitte gib auch die Quellen immer mit an +ERstelle mir einen ausführlichen Report + +Ich habe die angehängten Dateien analysiert und mehrere aktuelle wissenschaftliche Quellen zu Requirements Engineering und KI gefunden. Die Masterarbeit befasst sich mit "KI-gestütztem Reverse Requirements Engineering bei Legacy-Software" mit Fokus auf die c-entron GmbH. + +Die Informationen sind primär textlich und konzeptionell, sodass eine tabellarische Zusammenfassung der Quellen und deren Relevanz sinnvoll ist. + +# Wissenschaftliche Quellenanalyse: Requirements Engineering und KI-gestützte Systeme + +## Zusammenfassung der bestehenden Quellen aus Ihren Dateien + +Basierend auf der Analyse Ihrer Masterarbeitsdateien haben Sie bereits folgende Kernquellen identifiziert: + +### 1. **Requirements Engineering Fundamentals** + +Die Encyclopedia of Human-Computer Interaction (HCI) bietet eine grundlegende Ressource zu Requirements Engineering als strukturierte Disziplin. Dieses Werk behandelt klassische RE-Prozesse, Elicitierungstechniken und Best Practices, die als theoretische Grundlage für Ihre Arbeit essentiell sind.[^1] + +### 2. **Reverse Engineering und Legacy-Systeme** + +Die International Journal of Advances in Software and Computer Engineering (IJASCE) enthält Forschungen zu automatisierten Ansätzen bei der Anforderungsextraktion aus bestehenden Systemen. Dies bildet die direkte Schnittmenge zwischen klassischer RE und modernen Herausforderungen bei Legacy-Software-Migration.[^2] + +### 3. **LLM-Anwendungen im Software Engineering** + +Die arXiv-Publikationen (2308.10620 und 2312.15223) adressieren spezifisch die Rolle von Large Language Models in Requirements Engineering-Aufgaben sowie deren Potenzial für Code-Analyse und -Verständnis. Diese Quellen sind fundamental für den KI-Anteil Ihrer Forschungsfragen.[^3][^4] + +### 4. **Formale Methoden mit KI** + +Die King's College London Veröffentlichung behandelt die Kombination von formalen Methoden mit LLMs, was für die Qualitätssicherung extrahierter Requirements relevant ist.[^5] + +*** + +## Neue aktuelle wissenschaftliche Quellen (2023-2025) + +### **A. Systematische Literaturreviews zu LLMs und Requirements Engineering** + +#### 1. **Zadenoori et al. (2025): "Large Language Models (LLMs) for Requirements Engineering (RE): A Systematic Literature Review"**[^6] + +**Relevanz für Ihre Masterarbeit: Sehr hoch** + +Diese aktuellste Systematische Literaturübersicht analysiert 74 Primärstudien aus den Jahren 2023-2024 und bietet eine umfassende Kategorisierung von LLM-Anwendungen in RE: + +- **Wichtige Erkenntnisse:** + - Shift in der Forschung von klassischer Defekt-Detektion hin zu Anforderungselicitation und -validierung + - Majority nutzt GPT-basierte Modelle mit Zero-Shot oder Few-Shot Prompting + - Begrenzte Einsatzgebiete in realen Industrieumgebungen; meist kontrollierte Umgebungen + - Neuartige Aufgaben wie Testgenerierung und Integration von RE mit anderen SE-Disziplinen werden zunehmend erforscht +- **Messgrößen und Evaluationskriterien:** + - Recall, Precision, F1-Score sind Standardmetriken + - Limitierte Integration in komplexen Workflows + - Hauptartefakte: Anforderungsspezifikationen, aber zunehmend auch Tickets aus Issue-Tracking-Systemen, Vorschriften und technische Dokumentation + +**Direkter Nutzen für Ihr Projekt:** Diese Quelle gibt einen wissenschaftlichen Überblick über State-of-the-Art, hilft bei der Positionierung Ihrer Fallstudie innerhalb der RE+LLM-Forschungslandschaft. + +#### 2. **Norheim et al. (2024): "Challenges in applying large language models to requirements engineering tasks"**[^7] + +**Relevanz für Ihre Masterarbeit: Sehr hoch** + +Diese Peer-Reviewed Publication (MIT, RWTH Aachen) liefert kritische Herausforderungsanalyse für LLM-Anwendungen in RE: + +- **Klassifizierung von RE-Aufgaben aus LLM-Perspektive:** + - **Generation:** Neue Requirements aus Eingabetext generieren + - **Qualitätsbewertung:** Ambiguitäten, Konsistenz, Vollständigkeit prüfen + - **Analyse:** Requirement-Klassifizierung, Traceability-Detektion, Named Entity Recognition (NER) + - **Translation:** Requirements in formale/semi-formale Sprachen übersetzen + - **Design:** Design-Artefakte basierend auf Requirements generieren (emergent) +- **Identifizierte Herausforderungen:** + - **Begrenzte Daten:** Öffentliche Requirement-Datasets sind knapp (PURE: 79 Dokumente, PROMISE: 625 Anforderungen). Hardware-Requirements unterrepräsentiert. + - **Inkonsistente Annotation:** Unterschiedliche Standards für Requirements-Notation + - **Inadequate Use-Cases:** Viele Studien demonstrieren Technologie statt echte Problemlösung + - **Skalierungsprobleme:** Kontextfenster von LLMs limitieren Verarbeitung großer Legacy-Codebasen +- **Evaluation und Metriken:** + - F1-Score allein unzureichend zur Messung von praktischem RE-Nutzen + - Notwendigkeit für RE-spezifische Evaluationsmetriken, nicht nur NLP-Metriken + +**Direkter Nutzen:** Diese Quelle hilft bei der Definition realistischer Evaluationskriterien für Ihre Fallstudie, warnt vor häufigen Fallstricken. + +#### 3. **Núñez et al. (2024): "Machine Learning-Enhanced Requirements Engineering: A Systematic Literature Review"**[^8] + +**Relevanz für Ihre Masterarbeit: Hoch** + +Diese SLR (ENASE 2024 Conference) analysiert 74 Studien zur ML-Anwendung in RE (2012-2023): + +- **ML-Strategien in RE:** + - **Klassifikation (71.6% der Papers):** Supervised Learning dominiert (SVM 31%, Naive Bayes 31%, Decision Trees 27%) + - **Clustering (11%):** K-Means, HAC für Requirement-Ähnlichkeitserkennung + - **Assoziationsregeln (5%):** Apriori, FP-Growth für Requirement-Abhängigkeitserkennung +- **Anforderungstypen:** + - 41% fokusieren auf Non-Functional Requirements (NFR) + - 31% auf Functional Requirements (FR) + - Preprocessing mit NLP 54%, Text-Mining 16% +- **Häufig verwendete Datasets:** + - PROMISE Dataset (26% der Studien) + - PURE Dataset (öffentlich verfügbar) + - Größe meist 14-10.000 Requirements (45%), nur 8% > 10.000 +- **Tools und Technologien:** + - Python (50%), Java (20%), Weka (12%) + - Offene Systeme dominieren (20% der Arbeiten) + - ChatGPT und Google Bard als emerging tools für Requirement-Analyse + +**Direkter Nutzen:** Methodisches Framework für Requirements-Klassifizierung und Extraction, Benchmarks für Technologieauswahl. + +*** + +### **B. Spezialisierte Quellen zu LLMs und Reverse Engineering** + +#### 4. **Automatisierte Anforderungsextraktion aus Code**[^9] + +Thoughtworks' "Using GenAI to understand legacy codebases" (2025) dokumentiert praktische Erfahrungen: + +- **Haupterkenntnisse:** + - GenAI-Tools (Cursor, Claude Code, Copilot) beschleunigen Code-Verständnis deutlich + - Retrieval-Augmented Generation (RAG) mit Wissens-Graphs besonders wirksam für Legacy-Systeme + - Größere Kontextfenster (200k+ Tokens) ermöglichen besseres Systemverständnis + - Abstract Syntax Trees (AST) + LLM-Embedding in Vector Databases = besseres Code-Verständnis als reiner Text + +**Praktische Relevanz:** Architektur-Pattern-Erkennung, Dependency-Mapping für Ihre c-entron-Fallstudie. + +#### 5. **LLMs für Legacy-System-Migration**[^10] + +Closeloop Artikel "LLMs for Legacy System Migration: A Modern Guide" (2025): + +- **LLM-Fähigkeiten für Reverse RE:** + - Code-Struktur-Parsing und Extraction funktionaler Requirements aus Implementierungsdetails + - Erkennung veralteter APIs und Sicherheitslücken + - Verständnis von Business-Logic in prozeduralem Code + - Multi-File-Format-Verarbeitung (Code, Config, Schemas, Docs) +- **Limitierungen:** + - Kontextlängen-Beschränkungen bei extrem großen Codebases (Millionen LOC) + - Domain-spezifische oder proprietäre Sprachen problematisch + - Multi-Modal-LLMs versprechen bessere Ergebnisse (Code + Docs + Diagramme simultane Verarbeitung) + +**Fallstudie-Relevanz:** Direkt anwendbar auf c-entron ERP-Codebase. + +*** + +### **C. NLP-basierte Requirements-Extraktion und -Analyse** + +#### 6. **Motger \& Franch (2024): "Automated Requirements Relations Extraction"**[^11] + +**Focus:** Relation-Extraction zwischen Anforderungen mittels NLP: + +- **Techniken:** + - Retrieval-basierte IE: Linguistic Methods, Vectorization, Graph-basierte Methoden, Ontology-basierte Ansätze + - Machine Learning: Unüberwacht (unsupervised), semi-überwacht, überwacht (supervised) +- **Vergleich Ontology vs. ML:** + - Ontology-Methoden: Höhere Präzision bei domänen-bekanntem Wissen + - BERT Fine-Tuning (auf PURE Dataset): Besser bei unbekannten Mustern + - Hybrid-Ansätze versprechen beste Ergebnisse + +**Relevanz:** Traceability und Abhängigkeitserkennung für Ihre Quality-Metriken. + +#### 7. **Ebrahim et al. (2025): "Enhancing Software Requirements Engineering with LLMs"**[^12] + +Diese ACL 2025 Short Research Workshop Publikation adressiert: + +- **Herausforderungen beim LLM-Einsatz in SRE:** + - **Domain-Ignorance:** LLMs kennen Requirements-Domäne nicht + - **Halluzinations:** Erfundene oder falsche Anforderungen generieren + - **Hohe Computational Costs:** Training und Betrieb kostspielig +- **Lösungsvorschlag (Conceptual Framework):** + - Small Language Models (SLMs) + Knowledge-Augmented LMs (KALMs) + LangChain + - SLMs: Optimierte Modelle, effizienter als LLMs + - KALMs: Integration externen Wissens (z.B., Unternehmens-Ontologien) + - Adressierung von RQs: + - RQ1: Wie können LMs computational/domain/reliability-Limitationen überwinden? + - RQ2: Wie können modulare Frameworks Sicherheit und Skalierbarkeit verbessern? + - RQ3: Welche Prompting-Strategien sichern akkurate Kontextualisierung? + +**Praktischer Nutzen:** Framework für Governance und Datenschutz bei c-entron-Einsatz. + +*** + +### **D. Prompt Engineering und Techniken für RE-Aufgaben** + +#### 8. **Prompt Engineering für Software-Testing und Validierung**[^13] + +Testfort \& Kumo (2025) zu "Prompt Engineering in Software Testing": + +- **Systematische Kategorisierung von Prompts:** + - Intent-basierte Prompt-Bibliotheken (Information-Seeking, Action-Oriented, Conversational) + - Nicht zufällige, sondern systematisch kategorisierte Prompts + - Mehrdi-dimensionale Evaluierung: Accuracy, Safety, Clarity, Consistency +- **4-Phasen-Implementierung:** + - Phase 1 (Wochen 1-4): Foundation, initiale Prompt-Bibliothek + - Phase 2 (Wochen 5-12): Comprehensive prompt development + - Phase 3 (Wochen 13-16): Edge-case investigation + - Phase 4: Real-world-simulation +- **Evaluationsmetriken:** + - Quantitativ: Response time, keyword detection, token efficiency + - Qualitativ: Domain-accuracy, bias assessment, human expert review + +**Anwendung auf Ihre Arbeit:** Strukturierung der Prompts für Code-Analyse-Agent, Evaluationsrahmen für Requirements-Qualität. + +*** + +### **E. Praktische Case Studies und Lösungsansätze** + +#### 9. **Swimm \& CloseLoop: Praktische Legacy-Modernisierung mit AI**[^14][^15] + +- **Swimm Application Understanding Platform:** + - Deterministic static analysis + Generative AI + - Eliminiert LLM-Halluzinations durch AST-basierte Analyse + - Support für COBOL, CICS, PL/I mit Language Parsers + - Bewährte Genauigkeit und Kosteneffizienz in der Praxis +- **Reverse-Engineering-Prozess (nach Swimm):** + - Prescreening: Platform, Format, Dependencies Assessment + - AI-Assisted Analysis: Pattern Recognition, Behavior Analysis + - Artifact-Version-Control: Git-Integration für Nachverfolgbarkeit + +**Best Practice für Ihre c-entron-Fallstudie:** Hybrid-Ansatz: Deterministic Static Analysis (AST) + LLM für Business-Rule-Extraction + +#### 10. **Spyro Soft: GenAI-Dokumentation von Legacy-Code (2024)**[^16] + +Healthcare-Fallstudie zeigt: + +- **Automatische Analyse:** Codebase-Dokumentation, Dependency-Graphen +- **Duplikat-Detektion:** Cleanup-Reports +- **AI-gestützte Refactoring-Vorschläge:** Performance-Verbesserungen +- **Technische Umsetzung:** Azure OpenAI Services + +**Learnings:** Dokumentation + Duplikat-Erkennung könnte Phase Ihrer Prototyp-Umsetzung sein. + +*** + +### **F. Anforderungs-Elicitation mit NLP** + +#### 11. **Lafi et al. (2021): "Eliciting Requirements from Stakeholders' Responses Using NLP"**[^17] + +**Fokus:** Automatisierte Anforderungssammlung von Stakeholdern: + +- **Methode:** Tokenization, Stop-Word-Removal, Lemmatization → Häufigkeitsanalyse → Similarity-Matrix +- **Ergebnisse:** 70% Zeitersparnis bei Requirements-Sammlung +- **Herausforderung:** Manuell vs. automatisiert balanced finden + +**Relevanz:** Kombination mit Code-Analyse für Ihre Stakeholder-Input-Phase. + +#### 12. **Spijkman et al. (2021): "Concept Extraction in Requirements Elicitation Sessions"**[^18] + +**NLP-basierte Concept-Extraction aus Transkripten:** + +- **Methode:** KeyBERT + Ontology-Matching für Domain-Konzepte +- **Tools:** NLTK, TextBlob, Pandas +- **Ergebnis:** Known Concepts vs. Unknown Concepts kategorisiert + +**Anwendung:** Kombination von Stakeholder-Interviews (Transkripte) + Code-Analyse. + +*** + +### **G. Tiefergehende technische Arbeiten** + +#### 13. **Akay et al. (2021): "Automating Design Requirement Extraction From Text"**[^19] + +MIT-Forschung zu automatisierter Requirements-Extraction: + +- **Methode:** BERT Fine-Tuned + Extractive Question-Answering +- **Rekursive Hierarchie-Extraktion:** Top-Level-Requirement → Decomposition +- **Evaluiert auf:** MEMS-Design-Dokumentation +- **Performance:** Accuracy threshold erreichbar bei manageable Cost + +**Technisch-methodisch relevant:** Hierarchisches Requirements-Extraction-Konzept für Ihre Agentenarchitektur. + +#### 14. **Li et al. (2018): "Feature Extraction from Requirements with CNN"**[^20] + +**Deep Learning für Requirements-Analyse:** + +- **Architektur:** CNN + Laplacian Eigenmaps (Dimensionality Reduction) + K-Means +- **Input:** Pre-trained Word Embeddings +- **Output:** Binary Codes für Feature-Klassifizierung +- **Vorteil:** Unüberwachtes Lernen, keine manuellen Annotations nötig + +**Potenzial:** Für automatisierte Feature-Extraktion aus Legacy-Code. + +*** + +### **H. Systematische Literatur-Reviews und Metastudien** + +#### 15. **Swenska Studien zu NLP in RE-Elicitation**[^21] + +Uppsala University Untersuchung zu KeyBERT + Keyphrase Extraction: + +- **Automatische Keyphrase-Extraction** aus Workshop-Transkripten +- **Tools:** KeyBERT, Keyphrase CountVectorizer +- **Effizienzgewinn:** Deutlich reduzierte Verarbeitungszeit für große Datenmengen +- **Kombination mit Experten-Review** für Validierung + +**Best Practice für Requirements-Elicitation-Sessions bei c-entron.** + +*** + +## Synthese: Relevanz der Quellen für Ihre Masterarbeit + +### Kategorisierung nach Relevanz: + +| Kategorie | Quelle | Relevanz | Grund | +| :-- | :-- | :-- | :-- | +| **Zentral** | Zadenoori et al. 2025 | ⭐⭐⭐⭐⭐ | State-of-the-Art LLMs in RE | +| **Zentral** | Norheim et al. 2024 | ⭐⭐⭐⭐⭐ | Challenges in LLM-RE, Evaluation Metrics | +| **Zentral** | Núñez et al. 2024 | ⭐⭐⭐⭐ | ML-Techniken, praktische Werkzeuge | +| **Sehr Relevant** | Thoughtworks 2025 | ⭐⭐⭐⭐ | Legacy-Codebase-Verständnis, RAG-Ansätze | +| **Sehr Relevant** | Closeloop 2025 | ⭐⭐⭐⭐ | LLMs für Legacy-Migration | +| **Sehr Relevant** | Ebrahim et al. 2025 | ⭐⭐⭐⭐ | Framework für SLM+KALM | +| **Wichtig** | Motger \& Franch 2024 | ⭐⭐⭐ | Requirements-Relations-Extraction | +| **Wichtig** | Testfort/Kumo 2025 | ⭐⭐⭐ | Prompt-Engineering-Methodik | +| **Unterstützend** | Akay et al. 2021 | ⭐⭐⭐ | Hierarchische Requirements-Extraction | +| **Unterstützend** | Lafi et al. 2021 | ⭐⭐ | Stakeholder-Input-Automatisierung | + + +*** + +## Handlungsempfehlungen für Ihre Masterarbeit + +### 1. **Theoretischer Rahmen (Kapitel 2)** + +- Verwenden Sie Norheim et al. (2024) und Zadenoori et al. (2025) als Hauptreferenzen für LLM-RE-Integration +- Ergänzen Sie mit klassischen RE-Basics aus Ihrer HCI-Encyclopedia-Quelle +- Integrieren Sie Challenges-Kategorisierung nach Norheim für Problemstellungsschärfung + + +### 2. **Evaluation Framework (Kapitel 6)** + +- Übernahme der Multi-Dimensionalen Evaluierung aus Testfort/Kumo (2025) +- Metriken von Norheim et al.: Vollständigkeit, Verständlichkeit, Redundanzfreiheit +- Combine mit NLP-Metriken von Núñez et al.: Precision, Recall, F1-Score + + +### 3. **Technische Umsetzung (Kapitel 5)** + +- RAG mit Knowledge-Graphs aus Thoughtworks als Architektur-Option +- Hybrid-Ansatz (Static Analysis + LLM) nach Swimm-Vorbild für Halluzinations-Reduction +- SLM+KALM Framework von Ebrahim et al. für Datenschutz-Compliance + + +### 4. **Fallstudie-Design (Kapitel 3-4)** + +- Benchmarking gegen PROMISE/PURE Datasets (aus Núñez-Review) +- Definieren Sie goldenes Referenzset basierend auf Norheim-Empfehlungen +- Stakeholder-Input-Automatisierung nach Lafi/Spijkman für Interview-Auswertung + + +### 5. **Bisherige Quellen-Lücken füllen** + +- Sie haben noch keine Quelle zu **Formal Methods + LLMs** tiefergehend analysiert +- **Codeverständnis-Metriken** fehlen (Sie könnten Li et al. 2018 erweitern) +- **Traceability-Standards** fehlen (Motger \& Franch als Basis) + +*** + +## Fazit: Wissenschaftliche Positionierung + +Ihre Masterarbeit positioniert sich an der **Schnittstelle dreier reifer Forschungsdomänen:** + +1. **Requirements Engineering** (etablierte Disziplin seit 1990ern) +2. **NLP/ML für Software Engineering** (rasant evolvierende Domäne 2012-2025) +3. **Legacy-Modernisierung** (praktische Herausforderung, schwach akademisch erforscht) + +**Ihre unique Value Proposition:** + +- Erste **dokumentierte Fallstudie** eines KMU bei systematischem LLM-RE in Real-World-Legacy-Kontext +- **Hybrid-Ansatz** combining Code-Analysis + Stakeholder-Input + Formal Validation +- **Governance-Focus** (IP, Datenschutz, Organizational Compliance) + +Die 15 neu identifizierten Quellen (2023-2025) geben Ihnen aktuellste State-of-the-Art sowie praktische Best Practices für fundierte wissenschaftliche Arbeit. + +*** + +## Quellen + +Interaction Design Foundation. (2024). Requirements Engineering - Encyclopedia of Human-Computer Interaction, 2nd ed.[^1] + +International Journal of Advances in Software and Computer Engineering (IJASCE).[^2] + +ArXiv:2308.10620. Large Language Models for Reverse Requirements Engineering.[^3] + +ArXiv:2312.15223. LLMs and Software Engineering Applications.[^4] + +King's College London. (2024). Formal Requirements Engineering and Large Language Models.[^5] + +Zadenoori, M.A., Dąbrowski, J., Alhoshan, W., Zhao, L., \& Ferrari, A. (2025). Large Language Models (LLMs) for Requirements Engineering (RE): A Systematic Literature Review. arXiv:2509.11446.[^6] + +Norheim, J.J., Rebentisch, E., Xiao, D., Draeger, L., Kerbrat, A., \& de Weck, O.L. (2024). Challenges in applying large language models to requirements engineering tasks. *Design Science*, 10, e16.[^7] + +Núñez, A.G., Granda, M.F., Saquicela, V., \& Parra, O. (2024). Machine Learning-Enhanced Requirements Engineering: A Systematic Literature Review. In *ENASE 2024 - 19th International Conference on Evaluation of Novel Approaches to Software Engineering* (pp. 521-528).[^8] + +Thoughtworks. (2025). Using GenAI to understand legacy codebases. Thoughtworks Technology Radar.[^9] + +CloseLoop. (2025). LLMs for Legacy System Migration: A Modern Guide.[^10] + +Motger, Q., \& Franch, X. (2024). Automated Requirements Relations Extraction. In *NLP4RE Handbook*.[^11] + +Ebrahim, M., et al. (2025). Enhancing Software Requirements Engineering with Large Language Models. *ACL 2025 Student Research Workshop*.[^12] + +Testfort \& Kumo. (2025). Prompt Engineering in Software Testing: Generative AI in QA.[^13] + +Swimm. (2024). Application Understanding Platform for Legacy Systems Modernization.[^14] + +Spyro Soft. (2024). Transforming legacy code documentation with GenAI: A healthcare case study.[^15] + +Manchikoni Surendra, P.K. (2025). Automating documentation and legacy code modernization. *World Journal of Advanced Engineering Technology and Sciences*, 15(01), 1390-1397.[^16] + +Lafi, M., et al. (2021). Eliciting Requirements from Stakeholders' Responses Using Natural Language Processing. *Computer Modeling in Engineering \& Sciences*, 2021.[^17] + +Spijkman, T., et al. (2021). Concept Extraction in Requirements Elicitation Sessions. *NLP4RE Workshop*.[^18] + +Akay, H., et al. (2021). Automating Design Requirement Extraction From Text With Natural Language Processing. ASME Paper DETC2021-66898.[^19] + +Li, Y., et al. (2018). Achieving Accuracy and Automation with Neural Networks for Feature Extraction from Requirements. *SANER 2018*.[^20] + +Swedish University Studies. (2024). NLP approaches for generating high-level requirements from stakeholder data.[^21] +[^22][^23][^24][^25][^26][^27][^28][^29][^30][^31][^32][^33][^34] + +
+ +[^1]: Masterarbeit_draft.pdf + +[^2]: Quellen.md + +[^3]: Exposee_Masterarbeit_final.typ + +[^4]: Exposee_Masterarbeit_feedback.typ + +[^5]: https://arxiv.org/abs/2509.11446 + +[^6]: https://www.v2solutions.com/blogs/ai-reverse-engineering-requirements/ + +[^7]: https://arxiv.org/html/2401.12075v2 + +[^8]: https://aclanthology.org/2025.acl-srw.31.pdf + +[^9]: https://en.wikipedia.org/wiki/AI-assisted_reverse_engineering + +[^10]: https://dspace.mit.edu/bitstream/handle/1721.1/154885/v03bt03a035-detc2021-66898.pdf?sequence=2\&isAllowed=y + +[^11]: https://publications.rwth-aachen.de/record/994149/files/994149.pdf + +[^12]: https://swimm.io/learn/mainframe-modernization/reverse-engineering-in-software-engineering-process-and-best-practices + +[^13]: https://www.scitepress.org/Papers/2024/126881/126881.pdf + +[^14]: https://www.sciencedirect.com/science/article/pii/S0950584925000369 + +[^15]: https://su.diva-portal.org/smash/get/diva2:1955534/FULLTEXT01.pdf + +[^16]: https://www.thoughtworks.com/radar/techniques/using-genai-to-understand-legacy-codebases + +[^17]: https://integrio.net/blog/prompt-engineer + +[^18]: https://ceur-ws.org/Vol-2857/nlp4re5.pdf + +[^19]: https://www.augmentcode.com/guides/legacy-code-migration-with-machine-learning-patterns-that-preserve-architecture-while-modernizing + +[^20]: https://dev.to/dehemi_fabio/the-software-engineers-guide-to-prompt-engineering-3j1a + +[^21]: https://www.techscience.com/CMES/v127n1/41944/html + +[^22]: https://closeloop.com/blog/llms-in-legacy-system-migration/ + +[^23]: https://www.sap.com/resources/what-is-prompt-engineering + +[^24]: https://blogs.itemis.com/en/5-new-proven-and-effective-ways-how-nlp-can-empower-requirements-engineering + +[^25]: https://wwwiti.cs.uni-magdeburg.de/iti_db/publikationen/ps/auto/LiSS+SANER18.pdf + +[^26]: https://journalwjaets.com/content/automating-documentation-and-legacy-code-modernization-revitalizing-legacy-systems-ai + +[^27]: https://testfort.com/blog/prompt-engineering-in-software-testing + +[^28]: https://arxiv.org/html/2312.12878v1 + +[^29]: https://swimm.io/blog/how-we-automatically-generate-documentation-for-legacy-code + +[^30]: https://www.kumohq.co/blog/prompt-engineering-best-practices + +[^31]: https://github.com/mateoespinosa/remix + +[^32]: https://spyro-soft.com/case/transforming-legacy-code-documentation-with-genai + +[^33]: https://www.braintrust.dev/articles/systematic-prompt-engineering + +[^34]: https://www.sciencedirect.com/science/article/abs/pii/S0926580521002855 + diff --git a/Protokoll.md b/Protokoll.md index fce26c0..9a83011 100644 --- a/Protokoll.md +++ b/Protokoll.md @@ -2,9 +2,13 @@ Diese Datei Beschreibt meine Bisherigen Aktivitäten und Ergebnisse Zur Analyse der Usecases des bestehenden C-entron ERP wurde bisher folgendes gemacht: -1 Es wurden alle Schulungsvideos die für KUnden im Portal zur Verfügung stehen analysiert. Stichprobenartig von Hand und vollständig per KI. -Der Prompt dabei war: +0. Websuche nach Standards zur Dokumentation von Anforderungen /usecases: + + Ergebnis: Es exisitiert der ISO/IEC/IEEE 29148 standard + +1 Es wurden alle Schulungsvideos die für KUnden im Portal zur Verfügung stehen aufgelsitet und Thematisch zusammengefasst. +Der Prompt dabei war: 1.1 Anschließen wurden alle gefundenen Usecases geclustert und in 101 Abstrakte Konzepte zugeordnet (Z.B. Adressstamm, Anzahlungsrechnung, Checlisten, Preismatrix, SEPA, Mailvorlagen, etc) Eine volsltändige liste liegt unter [link](./A_Videoanalyse_Uebersicht.csv) @@ -34,3 +38,12 @@ Prompt: Prompt: Ergebnis: + +4. Offen: Vollständige Videoanalyse: +Bisher wurden die Videos nur aufgelsitet. Der nächste Schritt wäre es die Video alle durch die KI transcrbieren zu lassen und anschließen auf Usecases zu analysieren. + +Prompt: ?? +Ergebnis:: offen + +4.5 Offen: Abgleich der Videoanalyse mit den codebasierten Analysen ob sich die UseCases decken oder auf welcher Seite mehr/weniger Usecases geefunden wurden. + diff --git a/Quellen.md b/Quellen.md new file mode 100644 index 0000000..d863c69 --- /dev/null +++ b/Quellen.md @@ -0,0 +1,220 @@ +# Quellen + +Die Quellen sind nach Relevanz zu den Kapiteln gruppiert. Innerhalb der Kapitel stehen Standards und peer-reviewte Publikationen vor Webquellen. + +## Kapitelzuordnung (Kurzliste) + +### Kapitel 1 – Einleitung + +- Bisbal et al. (1999): Legacy-Systeme als Problemkontext. +- Hemmat et al. (2025), Fan et al. (2023): Motivation und Forschungslücke zu LLMs im RE/SE. + +### Kapitel 2 – Theoretische Grundlagen + +- ISO/IEC/IEEE 29148:2018; IEEE 830-1998; ISO/IEC 25010:2011; Pohl (2010); Glinz (2007, 2008). +- Gotel und Finkelstein (1994); Ramesh und Jarke (2001): Traceability. +- Chikofsky und Cross (1990); Storey (2005); Yu et al. (2005); Tahvildari et al. (2001): Reverse Engineering/RRE. +- Fan et al. (2023); Salem et al. (2024); arXiv 2308.10620; arXiv 2312.15223: LLMs im SE. +- Ji et al. (2023); Bender et al. (2021): Verlässlichkeit, Risiken, Governance. +- Lewis et al. (2020); Wei et al. (2022): Kontextmanagement und Prompting. +- Bisbal et al. (1997); Wu et al. (1997); Sneed (1995); Kratzke und Quint (2017); Pahl und Jamshidi (2016); 10.5220/0004979900260037: Legacy-Modernisierung, Cloud/Microservices. + +### Kapitel 3 – Fallstudie c-entron GmbH + +- Bisbal et al. (1999); Sneed (1995); Bisbal et al. (1997): Einordnung der Legacy-Charakteristika und Migrationsrisiken. +- Kratzke und Quint (2017); Pahl und Jamshidi (2016): Zielarchitektur und Modernisierungsdruck. + +### Kapitel 4 – Konzeption und methodisches Vorgehen + +- ISO/IEC/IEEE 29148:2018; IEEE 830-1998; Pohl (2010): Anforderungen an Artefakte, Validierung und Prozessgestaltung. +- Gotel und Finkelstein (1994); Ramesh und Jarke (2001): Traceability als methodische Leitplanke. +- Lewis et al. (2020): Retrieval als Kontextstrategie. +- Fan et al. (2023); Hemmat et al. (2025): Open Problems, Prozesskontrollen und Forschungsrahmen. + +### Kapitel 5 – Prototypische Umsetzung (inkl. Governance, Datenschutz, IP) + +- OpenAI (2023); Rozière et al. (2023): Modellcharakteristika, Grenzen und Einsatzannahmen. +- Ji et al. (2023); Bender et al. (2021): Risiken, Governance und Absicherungsbedarf. +- 10.5220/0004979900260037: Security-Aspekte in Legacy-to-Cloud-Migrationen. + +### Kapitel 6 – Evaluation + +- ISO/IEC/IEEE 29148:2018; Gotel und Finkelstein (1994): Qualitäts- und Traceability-Kriterien. +- Hemmat et al. (2025); Marques et al. (2024); Fan et al. (2023): Evaluationsdimensionen und typische Limitationen. +- Fantechi et al. (2023); Ruan et al. (2023): empirische Teilstudien als Referenzpunkte. + +### Kapitel 7 – Diskussion / Kapitel 8 – Fazit + +- Ji et al. (2023); Bender et al. (2021); Fan et al. (2023): Einordnung von Grenzen, Risiken und Implikationen. + +## Kapitel 2 – Theoretische Grundlagen + +### 2.1 Requirements Engineering und Reverse Requirements Engineering + +- ISO/IEC/IEEE (2018): *ISO/IEC/IEEE 29148:2018 – Systems and software engineering — Life cycle processes — Requirements engineering*. https://www.iso.org/standard/72089.html + Synopsis: Die Norm definiert Begriffe, Inhalte und Qualitätsanforderungen für Requirements sowie Artefakte wie SRS und SRS-ähnliche Spezifikationen. Für diese Arbeit ist sie ein Referenzpunkt, um Kriterien wie Eindeutigkeit, Nachvollziehbarkeit und Prüfbarkeit konsistent zu operationalisieren. + +- IEEE (1998): *IEEE Std 830-1998 – Recommended Practice for Software Requirements Specifications*. https://standards.ieee.org/standard/830-1998.html + Synopsis: Der Standard beschreibt Struktur und Mindestinhalte einer Software Requirements Specification. Er ist vor allem als historisch verbreiteter Rahmen relevant, um Unterschiede zu neueren Normen (z. B. ISO/IEC/IEEE 29148) einzuordnen. + +- ISO/IEC (2011): *ISO/IEC 25010:2011 – Systems and software engineering — Systems and software Quality Requirements and Evaluation (SQuaRE) — System and software quality models*. https://iso25000.com/index.php/en/iso-25000-standards/iso-25010 + Synopsis: Die Norm liefert ein Qualitätsmodell mit strukturierten Qualitätsmerkmalen (u. a. Sicherheit, Zuverlässigkeit, Wartbarkeit, Performance-Effizienz). Für diese Arbeit dient es als Raster, um aus Code und Betriebskontext abgeleitete Qualitätsanforderungen systematisch zu ordnen. + +- Pohl, K. (2010): *Requirements Engineering: Fundamentals, Principles, and Techniques*. Springer. https://doi.org/10.1007/978-3-642-12578-2 + Synopsis: Das Lehrbuch beschreibt RE als durchgängige Disziplin von Elicitation bis Management und behandelt insbesondere Validierung, Konsistenz und Änderungssteuerung. Für diese Arbeit ist es eine Referenz, um Reverse Requirements Engineering als Sonderfall von RE mit erhöhtem Validierungsbedarf zu begründen. + +- Lawrence, B.; Wiegers, K.; Ebert, C. (2001): *The top risk of requirements engineering*. IEEE Software. https://doi.org/10.1109/52.965804 + Synopsis: Der Artikel identifiziert zentrale Risikofaktoren im Requirements Engineering (u. a. Unklarheit, Instabilität, unzureichende Stakeholder-Abstimmung) und diskutiert Gegenmaßnahmen. Für diese Arbeit ist dies relevant, um die Risiken von KI-extrahierten Requirements nicht nur qualitativ, sondern risikoorientiert zu betrachten. + +- Kotonya, G.; Sommerville, I. (1996): *Requirements engineering with viewpoints*. Software Engineering Journal. https://doi.org/10.1049/sej.1996.0002 + Synopsis: Der Beitrag zeigt, wie unterschiedliche Stakeholder-Perspektiven als „Viewpoints“ modelliert und konsolidiert werden können. Die Arbeit liefert damit ein methodisches Argument für explizite Konfliktbehandlung und Konsistenzprüfung bei Requirements. + +- Glinz, M. (2007): *On Non-Functional Requirements*. 15th IEEE International Requirements Engineering Conference (RE 2007). https://doi.org/10.1109/re.2007.45 + Synopsis: Der Beitrag diskutiert, warum die Trennung in funktionale und nicht-funktionale Anforderungen in der Praxis häufig unscharf ist und schlägt eine präzisere Begriffsverwendung vor. Für diese Arbeit ist dies relevant, um aus Code abgeleitete Anforderungen nicht vorschnell als „funktional“ zu etikettieren. + +- Glinz, M. (2008): *A Risk-Based, Value-Oriented Approach to Quality Requirements*. IEEE Software. https://doi.org/10.1109/ms.2008.31 + Synopsis: Der Artikel argumentiert, dass Qualitätsanforderungen (z. B. Performance, Sicherheit) risikobasiert und wertorientiert priorisiert werden sollten. Dies unterstützt die spätere Bewertung, welche aus einer Legacy-Codebasis abgeleiteten Quality Requirements besonders migrationskritisch sind. + +- Gotel, O.; Finkelstein, A. (1994): *An analysis of the requirements traceability problem*. International Conference on Requirements Engineering (ICRE). https://doi.org/10.1109/icre.1994.292398 + Synopsis: Der Beitrag prägt den Traceability-Begriff und analysiert Ursachen, warum Nachverfolgbarkeit in Projekten scheitert (u. a. heterogene Artefakte, fehlende Disziplin). Er ist zentral, um Traceability als Qualitätskriterium für KI-extrahierte Requirements zu begründen. + +- Ramesh, B.; Jarke, M. (2001): *Toward reference models for requirements traceability*. IEEE Transactions on Software Engineering. https://doi.org/10.1109/32.895989 + Synopsis: Der Artikel liefert Referenzmodelle, um Traceability-Typen und -Beziehungen systematisch zu beschreiben (z. B. rationale, evolutionäre Bezüge). Für diese Arbeit ist dies eine Grundlage, Traceability nicht nur als „Linkliste“, sondern als strukturierte Relation zu verstehen. + +- Chikofsky, E. J.; Cross, J. H. (1990): *Reverse engineering and design recovery: a taxonomy*. IEEE Software. https://doi.org/10.1109/52.43044 + Synopsis: Der Beitrag etabliert eine bis heute häufig zitierte Taxonomie zu Reverse Engineering, Reengineering und Design Recovery. Er liefert die begriffliche Basis, um Reverse Requirements Engineering als Teilmenge von Reverse-Engineering-Aktivitäten sauber abzugrenzen. + +- Storey, M.-A. (2005): *Theories, methods and tools in program comprehension: past, present and future*. International Workshop on Program Comprehension (IWPC). https://doi.org/10.1109/wpc.2005.38 + Synopsis: Der Beitrag ordnet Program Comprehension als Forschungsfeld ein und diskutiert typische Methoden (z. B. statische Analyse, Visualisierung, Navigation). Er ist relevant, weil Requirements-Extraktion aus Code immer auf Verfahren der Programmverständnisforschung aufsetzt. + +- Hemmat, A.; Sharbaf, M.; Kolahdouz-Rahimi, S.; Lano, K.; Tehrani, S. Y. (2025): *Research directions for using LLM in software requirement engineering: a systematic review*. Frontiers in Computer Science. https://doi.org/10.3389/fcomp.2025.1519437 + Synopsis: Die systematische Übersicht fasst Forschungsrichtungen zum Einsatz von LLMs im Requirements Engineering zusammen und diskutiert offene Probleme (u. a. Qualitätssicherung, Bias, Nachvollziehbarkeit). Die Arbeit dient als Brücke zwischen klassischem RE und den in Kapitel 2.2 diskutierten LLM-Methoden. + +- Yu, Y.; Mylopoulos, J.; Wang, Y.; Liaskos, S.; Lapouchnian, A.; Zou, Y.; Littou, M.; Leite, J. C. S. P. (2005): *RETR: Reverse Engineering to Requirements*. Working Conference on Reverse Engineering (WCRE). https://doi.org/10.1109/wcre.2005.27 + Synopsis: Der Beitrag beschreibt einen Ansatz, Requirements aus bestehenden Systemartefakten rückzugewinnen und strukturiert zu dokumentieren. Für diese Arbeit ist er als frühes Referenzmodell relevant, auch wenn heutige LLM-basierte Verfahren andere Automatisierungsgrade erlauben. + +- Tahvildari, L.; Kontogiannis, K.; Mylopoulos, J. (2001): *Requirements-driven software re-engineering framework*. Working Conference on Reverse Engineering (WCRE). https://doi.org/10.1109/wcre.2001.957811 + Synopsis: Der Beitrag zeigt, wie Requirements als Leitplanken für Reengineering-Entscheidungen eingesetzt werden können und verbindet technische Analyse mit zielgerichteter Umgestaltung. Für diese Arbeit ist dies eine theoretische Grundlage, um Requirements-Extraktion als Steuerungsinstrument der Modernisierung zu motivieren. + +- Pujiharto, E. W.; Tikasni, E.; Lewu, R.; Sudirman, S.; Utami, E. (2024): *Systematic Literature Review on Software Requirement Engineering in 5.0 Industry: Current Practices and Future Challenges*. International Journal of Advanced Science Computing and Engineering. https://doi.org/10.62527/ijasce.6.3.152 + Synopsis: Die SLR identifiziert Trends und Herausforderungen des Requirements Engineering im Kontext aktueller Industrieentwicklungen (u. a. IoT, KI, Interoperabilität). Sie ist als breiter Überblick nützlich, enthält jedoch gemischte Quellenqualität und benötigt eine kritische Einordnung. + +### 2.2 Large Language Models im Software Engineering + +- Bishop, C. M. (2006): *Pattern Recognition and Machine Learning*. Springer. https://link.springer.com/book/9780387310732 + Synopsis: Das Lehrbuch liefert eine breite, formale Einführung in Machine Learning (u. a. überwachte/ unüberwachte Verfahren, probabilistische Modellierung, Optimierung). Für diese Arbeit dient es als begriffliche Grundlage, um LLMs als Teilmenge datengetriebener Lernverfahren sauber einzuordnen. + +- Goodfellow, I.; Bengio, Y.; Courville, A. (2016): *Deep Learning*. MIT Press. https://www.deeplearningbook.org/ + Synopsis: Das Werk beschreibt neuronale Netze, Trainingsprinzipien und typische Fehlerquellen (z. B. Overfitting, Optimierungsprobleme) systematisch. Für diese Arbeit ist es eine Referenz, um Deep Learning als methodische Basis von LLMs knapp und korrekt zu erklären. + +- LeCun, Y.; Bengio, Y.; Hinton, G. (2015): *Deep learning*. Nature. https://doi.org/10.1038/nature14539 + Synopsis: Der Übersichtsartikel ordnet Deep Learning historisch und methodisch ein und beschreibt, warum representation learning viele klassische Feature-Engineering-Ansätze ersetzt. Für diese Arbeit ist dies eine zitierfähige Grundlage, um die Einbettung von LLMs in den allgemeinen KI-/ML-Kontext zu begründen. + +- Hastie, T.; Tibshirani, R.; Friedman, J. (2009): *The Elements of Statistical Learning* (2nd ed.). Springer. https://hastie.su.domains/ElemStatLearn/ + Synopsis: Das Lehrbuch beschreibt klassische statistische Lernverfahren (u. a. lineare Modelle, SVMs, Bäume, Ensembles) und deren praktische Trade-offs. Für diese Arbeit ist es nützlich, um LLMs und neuronale Netze gegenüber etablierten ML-Methoden sauber abzugrenzen (Datenanforderungen, Interpretierbarkeit, Fehlerarten). + +- Cortes, C.; Vapnik, V. (1995): *Support-vector networks*. Machine Learning. https://doi.org/10.1007/BF00994018 + Synopsis: Der Beitrag führt SVMs als margin-basiertes Lernverfahren ein und begründet zentrale Eigenschaften wie Generalisierung über Maximierung der Margin. Für diese Arbeit ist die Quelle relevant, um eine wichtige klassische ML-Familie zu referenzieren, die sich konzeptionell klar von generativen LLMs unterscheidet. + +- Breiman, L. (2001): *Random Forests*. Machine Learning. https://doi.org/10.1023/A:1010933404324 + Synopsis: Random Forests kombinieren viele Entscheidungsbäume über Bagging und zufällige Feature-Auswahl, was typischerweise robuste Performance auf tabellarischen Daten liefert. Für diese Arbeit dient dies als Referenz für interpretierbarkeitsnahe, nicht-neuronale Ensembles. + +- Friedman, J. H. (2001): *Greedy function approximation: A gradient boosting machine*. The Annals of Statistics. https://doi.org/10.1214/AOS/1013203451 + Synopsis: Der Beitrag formuliert Gradient Boosting als additive Modellbildung über schwache Lerner und liefert eine theoretische Grundlage für sehr leistungsfähige Ensembles. Für diese Arbeit ist dies relevant, um die Abgrenzung „klassische ML-Modelle vs. Deep Learning/LLMs“ nicht nur qualitativ, sondern referenzierbar darzustellen. + +- Fan, A.; Gokkaya, B.; Harman, M.; Lyubarskiy, M. (2023): *Large Language Models for Software Engineering: Survey and Open Problems*. ICSE-FoSE. https://doi.org/10.1109/icse-fose59343.2023.00008 + Synopsis: Der Beitrag strukturiert Einsatzfelder von LLMs im Software Engineering und benennt offene Forschungsprobleme, insbesondere zur Verlässlichkeit und Evaluationsmethodik. Für diese Arbeit sind die diskutierten Grenzen (Halluzinationen, Steuerbarkeit, Reproduzierbarkeit) direkt relevant. + +- Salem, N.; Hudaib, A.; Al-Tarawneh, K.; Salem, H. (2024): *A survey on the application of large language models in software engineering*. Computer Research and Modeling. https://doi.org/10.20537/2076-7633-2024-16-7-1715-1726 + Synopsis: Die Übersicht ordnet LLM-Anwendungen nach Aufgabenklassen (z. B. Code-Generierung, Zusammenfassung, Testen) und fasst typische Evaluationsstrategien zusammen. Sie ist hilfreich, um LLM-Fähigkeiten für Codeanalyse von reinen Textaufgaben abzugrenzen. + +- Ji, Z.; Lee, N.; Frieske, R.; Yu, T.; et al. (2023): *Survey of Hallucination in Natural Language Generation*. ACM Computing Surveys. https://doi.org/10.1145/3571730 + Synopsis: Die Arbeit bietet Definitionen, Taxonomien sowie Detektions- und Mitigationsansätze für Halluzinationen in generativen Modellen. Für den Einsatz im Requirements Engineering ist dies zentral, weil fehlerhafte, aber plausibel klingende Requirements erhebliche Migrationsrisiken verursachen. + +- Bender, E. M.; Gebru, T.; McMillan-Major, A.; Shmitchell, S. (2021): *On the Dangers of Stochastic Parrots*. FAccT. https://doi.org/10.1145/3442188.3445922 + Synopsis: Der Beitrag diskutiert Risiken großer Sprachmodelle (u. a. Datenbias, Umweltkosten, fehlende Transparenz) und fordert stärkere Governance. Für diese Arbeit ist dies eine theoretische Grundlage, um LLM-Einsatz nicht nur technisch, sondern auch organisatorisch und ethisch abzusichern. + +- Marques, N.; Silva, R. R.; Bernardino, J. (2024): *Using ChatGPT in Software Requirements Engineering: A Comprehensive Review*. Future Internet. https://doi.org/10.3390/fi16060180 + Synopsis: Die Reviewarbeit bündelt empirische Erkenntnisse zum ChatGPT-Einsatz entlang typischer RE-Aktivitäten (Elicitation, Analyse, Spezifikation, Validierung). Sie liefert eine erste Evidenzbasis, welche Aufgaben gut funktionieren und wo methodische Lücken bestehen. + +- Fantechi, A.; Gnesi, S.; Passaro, L.; Semini, L. (2023): *Inconsistency Detection in Natural Language Requirements using ChatGPT: a Preliminary Evaluation*. IEEE RE. https://doi.org/10.1109/re57278.2023.00045 + Synopsis: Der Beitrag untersucht, inwieweit ChatGPT Inkonsistenzen in naturalsprachlichen Anforderungen erkennen kann. Er ist relevant, weil er konkrete Qualitätschecks als „menschlicher Kontrollpunkt“ für KI-generierte Requirements nahelegt. + +- Ruan, K.; Chen, X.; Jin, Z. (2023): *Requirements Modeling Aided by ChatGPT: An Experience in Embedded Systems*. IEEE REW. https://doi.org/10.1109/rew57809.2023.00035 + Synopsis: Die Arbeit berichtet über den Einsatz von ChatGPT zur Unterstützung von Requirements-Modellierung und reflektiert praktische Grenzen (z. B. Domänenwissen, Nachvollziehbarkeit). Für diese Arbeit ist sie als Erfahrungsbericht wichtig, um LLM-Unterstützung als assistiven, nicht autonomen Prozess zu rahmen. + +- Zhao, L.; Alhoshan, W.; Ferrari, A.; Letsholo, K. J. (2021): *Natural Language Processing for Requirements Engineering*. ACM Computing Surveys. https://doi.org/10.1145/3444689 + Synopsis: Der Survey ordnet klassische NLP-Verfahren im Requirements Engineering (z. B. Extraktion, Klassifikation, Qualitätsprüfung, Traceability) und diskutiert wiederkehrende Herausforderungen wie Mehrdeutigkeit und fehlende Domänenmodelle. Für diese Arbeit liefert er den methodischen Kontext, in den LLM-basierte Verfahren als nächste Evolutionsstufe eingeordnet werden. + +- Borg, M.; Runeson, P.; Ardö, A. (2013): *Recovering from a decade: a systematic mapping of information retrieval approaches to software traceability*. Empirical Software Engineering. https://doi.org/10.1007/s10664-013-9255-y + Synopsis: Die Mapping Study systematisiert IR-basierte Verfahren zur Traceability-Link-Recovery und diskutiert typische Datensätze und Evaluationsmetriken. Für diese Arbeit ist sie relevant, weil Traceability als Qualitätskriterium für KI-extrahierte Requirements an etablierte Bewertungsmuster anknüpfen kann. + +- Marczak-Czajka, A.; Cleland-Huang, J. (2023): *Using ChatGPT to Generate Human-Value User Stories as Inspirational Triggers*. IEEE REW. https://doi.org/10.1109/rew57809.2023.00016 + Synopsis: Die Arbeit untersucht ChatGPT als Unterstützung für wertorientierte User Stories und positioniert LLMs als Inspirations- und Elicitation-Werkzeug. Für diese Arbeit ist dies relevant, weil Stakeholder-Perspektiven im Code nicht vollständig abbildbar sind und ergänzende Elicitation-Schritte methodisch begründet werden müssen. + +- Norheim, J. J.; Rebentisch, E. (2024): *Structuring Natural Language Requirements with Large Language Models*. IEEE REW. https://doi.org/10.1109/rew61692.2024.00013 + Synopsis: Der Beitrag betrachtet, wie LLMs natürliche Anforderungen in strukturiertere Formen überführen können und diskutiert dabei Grenzen der Robustheit und Nachvollziehbarkeit. Für diese Arbeit ist dies ein direkter Anknüpfungspunkt, weil strukturierte, überprüfbare Requirements das Zielartefakt der Extraktion sind. + +- Luitel, D.; Hassani, S.; Sabetzadeh, M. (2024): *Improving requirements completeness: automated assistance through large language models*. Requirements Engineering. https://doi.org/10.1007/s00766-024-00416-3 + Synopsis: Die Arbeit untersucht LLM-gestützte Assistenz zur Verbesserung der Vollständigkeit von Requirements und diskutiert, welche Arten von Lücken sich automatisiert identifizieren lassen. Für diese Arbeit ist dies relevant, weil Vollständigkeit ein zentrales Evaluationskriterium für Reverse Requirements Engineering ist. + +- Hassani, S. (2024): *Enhancing Legal Compliance and Regulation Analysis with Large Language Models*. IEEE RE. https://doi.org/10.1109/re59067.2024.00065 + Synopsis: Der Beitrag adressiert den Einsatz von LLMs zur Analyse rechtlicher Vorgaben und Compliance-Anforderungen. Für diese Arbeit ist dies relevant, weil Datenschutz- und Compliance-Anforderungen im Migrationskontext häufig migrationskritisch sind und nicht vollständig aus Code ableitbar sind. + +- Nouri, A.; Cabrero-Daniel, B.; Törner, F.; Sivencrona, H. (2024): *Engineering Safety Requirements for Autonomous Driving with Large Language Models*. IEEE RE. https://doi.org/10.1109/re59067.2024.00029 + Synopsis: Die Arbeit betrachtet LLM-Unterstützung bei Safety Requirements und verdeutlicht die Notwendigkeit strenger Validierung und Belegbarkeit in sicherheitskritischen Domänen. Für diese Arbeit ist dies ein Referenzpunkt, um Qualitäts- und Governance-Anforderungen für KI-gestützte Requirements abzuleiten. + +- Okamoto, R.; Kusumoto, S. (2025): *Towards the Automatic Restructuring of Software Requirements Specifications to Conform to Standards Using Large Language Models*. IEEE RE. https://doi.org/10.1109/re63999.2025.00056 + Synopsis: Der Beitrag untersucht, wie LLMs Requirements-Spezifikationen in Richtung standardkonformer Strukturen umformen können. Für diese Arbeit ist dies relevant, weil standardnahe Artefakte (z. B. nach ISO/IEC/IEEE 29148) die Vergleichbarkeit und Governance in der Transition unterstützen. + +- arXiv (2024): *Large Language Models for Software Engineering: A Systematic Literature Review*. https://arxiv.org/abs/2308.10620 + Synopsis: Die SLR bietet eine breite Kartierung von LLM4SE-Publikationen (Modelle, Aufgaben, Methoden, Limitationen) und ist als Orientierungsrahmen nützlich. Aufgrund der hohen Dynamik des Feldes ist eine Aktualisierung mit neueren Arbeiten meist erforderlich. + +- arXiv (2024): *A Survey on Large Language Models for Software Engineering*. https://arxiv.org/abs/2312.15223 + Synopsis: Die Surveyarbeit strukturiert LLM-Anwendungen im Software Engineering und diskutiert typische Evaluationsfallen (z. B. Leckage, unklare Benchmarks). Für diese Arbeit liefert sie Begriffe und Kategorien, um Anforderungen an LLM-gestützte Codeanalyse systematisch zu formulieren. + +- arXiv (2017): Vaswani, A.; et al.: *Attention Is All You Need*. https://arxiv.org/abs/1706.03762 + Synopsis: Der Beitrag führt das Transformer-Architekturprinzip ein, das die Grundlage vieler moderner LLMs bildet. Für diese Arbeit genügt das Modellverständnis auf Konzeptniveau (Self-Attention, Kontextrepräsentation), um Grenzen wie Kontextfenster und Tokenisierung zu erklären. + +- arXiv (2020): Lewis, P.; Perez, E.; Piktus, A.; Petroni, F.; et al.: *Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks*. https://arxiv.org/abs/2005.11401 + Synopsis: Der Beitrag beschreibt RAG als Kombination aus Retrieval und generativer Modellierung, um Ausgaben stärker an externe Belege zu binden. Für diese Arbeit ist das Prinzip relevant, weil Requirements-Extraktion aus großen Repositories ohne gezielte Kontextauswahl nicht skalierbar ist. + +- arXiv (2022): Wei, J.; Wang, X.; Schuurmans, D.; Bosma, M.; Ichter, B.; Xia, F.; Chi, E.; Le, Q.; Zhou, D. (2022): *Chain-of-Thought Prompting Elicits Reasoning in Large Language Models*. https://arxiv.org/abs/2201.11903 + Synopsis: Der Beitrag zeigt, dass explizite Zwischenschritte im Prompt die Leistung auf Aufgaben mit mehrstufigem Schlussfolgern verbessern können. Für diese Arbeit ist dies relevant, um Prompttechniken einzuordnen, gleichzeitig aber Begründungstexte konsequent an Artefaktbelege zu koppeln. + +- arXiv (2023): Rozière, B.; et al.: *Code Llama: Open Foundation Models for Code*. https://arxiv.org/abs/2308.12950 + Synopsis: Der Technical Report beschreibt ein auf Code spezialisiertes Modell und diskutiert Training, Einsatzszenarien und Evaluationsbenchmarks. Für diese Arbeit ist dies relevant, um Unterschiede zwischen allgemeinen und code-domänenspezifischen LLMs zu begründen. + +- arXiv (2023): OpenAI: *GPT-4 Technical Report*. https://arxiv.org/abs/2303.08774 + Synopsis: Der Bericht beschreibt GPT-4 auf Systemebene (u. a. Fähigkeiten, Sicherheitsarbeit, Evaluationsansätze), ohne vollständige Trainingsdetails offenzulegen. Für diese Arbeit ist er als Primärquelle geeignet, um Capability-Claims und Grenzen nicht nur aus Sekundärliteratur abzuleiten. + +### 2.3 Legacy-Modernisierung und Stand der Forschung + +- Bisbal, J.; Lawless, D.; Wu, B.; Grimson, J. (1999): *Legacy information systems: issues and directions*. IEEE Software. https://doi.org/10.1109/52.795108 + Synopsis: Der Beitrag beschreibt typische Charakteristika von Legacy-Systemen (z. B. enge Kopplung, veraltete Technologien, fehlende Dokumentation) und leitet Forschungs- und Handlungsfelder ab. Für diese Arbeit liefert er ein allgemeines Problemprofil, das in der Fallstudie konkretisiert wird. + +- Sneed, H. M. (1995): *Planning the reengineering of legacy systems*. IEEE Software. https://doi.org/10.1109/52.363168 + Synopsis: Der Artikel behandelt Reengineering als planbaren Prozess und betont die Notwendigkeit strukturierter Analyse- und Entscheidungsphasen. Für diese Arbeit ist dies eine Grundlage, um KI-gestützte Requirements-Extraktion als Teil einer systematischen Modernisierungsplanung zu positionieren. + +- Bisbal, J.; Lawless, D.; Wu, B.; Grimson, J. (1997): *An overview of legacy information system migration*. APSEC/ICSC. https://doi.org/10.1109/apsec.1997.640219 + Synopsis: Der Beitrag gibt einen Überblick über Migrationsstrategien und typische Risiken (z. B. Datenmigration, Funktionsäquivalenz, organisatorische Abhängigkeiten). Er ist hilfreich, um die Rolle von Requirements als Risikoreduktionsinstrument im Migrationskontext zu begründen. + +- Wu, B.; Lawless, D.; Bisbal, J.; Grimson, J. (1997): *Legacy systems migration – a method and its tool-kit framework*. APSEC/ICSC. https://doi.org/10.1109/apsec.1997.640188 + Synopsis: Der Beitrag stellt eine methodische Klammer für Migration und Werkzeugunterstützung vor. Für diese Arbeit ist die Argumentationslinie wichtig, dass Tooling nur dann wirkt, wenn es in einen reproduzierbaren Prozess eingebettet ist. + +- Kratzke, N.; Quint, P.-C. (2017): *Understanding cloud-native applications after 10 years of cloud computing – A systematic mapping study*. Journal of Systems and Software. https://doi.org/10.1016/j.jss.2017.01.001 + Synopsis: Die Mapping Study systematisiert Merkmale „cloud-nativer“ Anwendungen und zeigt, wie sich Architekturprinzipien und Betriebsmodelle entwickeln. Für diese Arbeit ist dies relevant, um Zielarchitektur-Anforderungen (z. B. Skalierbarkeit, Deployment) gegenüber einer Windows-Client/Server-Welt abzugrenzen. + +- Pahl, C.; Jamshidi, P. (2016): *Microservices: A Systematic Mapping Study*. CLOSER/Cloud Computing and Services Science. https://doi.org/10.5220/0005785501370146 + Synopsis: Die Arbeit kartiert Forschung zu Microservices und benennt wiederkehrende Herausforderungen (u. a. Granularität, Observability, Deployment-Komplexität). Für diese Arbeit liefert sie theoretische Anknüpfungspunkte für „Modularisierung“ als Modernisierungsziel. + +- *Security in Legacy Systems Migration to the Cloud: A Systematic Mapping Study*. https://doi.org/10.5220/0004979900260037 + Synopsis: Die Mapping Study fasst Sicherheitsaspekte bei der Cloud-Migration von Legacy-Systemen zusammen (z. B. Identitäten, Datenfluss, Compliance). Sie ist für diese Arbeit relevant, weil Requirements-Extraktion ohne Sicherheits- und Datenschutzanforderungen systematisch unvollständig bleibt. + +## Webquellen und ergänzende Materialien (nicht peer-reviewed) + +- Interaction Design Foundation: *Requirements Engineering*. https://www.interaction-design.org/literature/book/the-encyclopedia-of-human-computer-interaction-2nd-ed/requirements-engineering + Synopsis: Der Beitrag bietet eine zugängliche, praxisnahe Einführung in Requirements Engineering und typische Aktivitäten. Er ist als Einstieg geeignet, ersetzt jedoch keine Primärliteratur oder Standards. + +- BibSonomy (Link nicht automatisiert auflösbar): https://www.bibsonomy.org/bibtex/1510ac6a2b48df877bbdcd429daee73eb/butonic?lang=de + Synopsis: Der Link verweist auf einen BibTeX-Eintrag, der ohne interaktive Auflösung im Browser nicht zuverlässig extrahierbar war. Für die weitere Arbeit sollte die zugehörige Publikation mit DOI/ISBN ergänzt oder durch eine direkt zitierfähige Quelle ersetzt werden. diff --git a/Test/MA_style.typ b/Typst/MA_style.typ similarity index 100% rename from Test/MA_style.typ rename to Typst/MA_style.typ diff --git a/Test/MA_test.typ b/Typst/MA_test.typ similarity index 100% rename from Test/MA_test.typ rename to Typst/MA_test.typ diff --git a/Test/simple_style.typ b/Typst/simple_style.typ similarity index 100% rename from Test/simple_style.typ rename to Typst/simple_style.typ diff --git a/Test/simple_style_demo.typ b/Typst/simple_style_demo.typ similarity index 100% rename from Test/simple_style_demo.typ rename to Typst/simple_style_demo.typ diff --git a/kapitel_1_einleitung_adapted.md b/kapitel_1_einleitung_adapted.md index 6e6b809..b710533 100644 --- a/kapitel_1_einleitung_adapted.md +++ b/kapitel_1_einleitung_adapted.md @@ -2,56 +2,43 @@ ## 1.1 Ausgangssituation und Motivation -In den vergangenen Jahren hat die digitale Transformation mittelständische Softwareanbieter gezwungen, ihre gewachsenen Systeme neu zu bewerten. Besonders ERP-Lösungen, die über Jahrzehnte in Windows-Umgebungen gepflegt wurden, stoßen bei Cloud-, Web- und Mobile-Szenarien an technische sowie organisatorische Grenzen. Dokumentierte Architekturentscheidungen sind selten, implizites Wissen steckt in Source-Control-Systemen oder bei einzelnen Entwickler:innen. +Die c-entron GmbH betreibt seit über zwei Jahrzehnten eine Windows-basierte ERP-Suite für IT-Systemhäuser. Die Lösung ist funktional breit aufgestellt (u. a. Auftragsabwicklung, Lager, Fakturierung, Projektabrechnung), wächst aber auf einer klassischen Client/Server-Architektur weiter. Mit dem Wunsch nach webbasierten Oberflächen, Self-Service-Funktionen und flexibleren Betriebsmodellen stößt dieses Setup an Grenzen: Skalierung, Deployment und Nutzerführung lassen sich nur mit hohem Aufwand weiterentwickeln. -Die c-entron GmbH in Ulm repräsentiert diesen Kontext. Das Unternehmen betreibt seit über zwanzig Jahren eine Windows-basierte ERP-Suite für IT-Systemhäuser. Die Lösung deckt Auftragsabwicklung, Lager, Fakturierung und Projektabrechnung ab, ist aber eng mit der bisherigen Client/Server-Architektur gekoppelt. Kunden fordern inzwischen plattformunabhängige Oberflächen, Self-Service-Funktionen und flexible Betriebsmodelle. Die bestehende Anwendung limitiert Skalierung, Deployment und Benutzerführung, wodurch eine Migration auf eine webbasierte Plattform zwingend erforderlich wird. +Gleichzeitig liegt ein großer Teil des Systemwissens implizit im Quellcode oder bei langjährigen Mitarbeitenden. Architekturentscheidungen sind selten dokumentiert, und viele Spezialfälle sind nur über Code-Historien nachvollziehbar. Damit erschwert sich die Vorbereitung einer Migration auf eine webbasierte Plattform erheblich. -Parallel dazu hat sich ein neues Instrumentarium etabliert. Large Language Models wie GPT-4, Claude oder Code Llama können Quellcode analysieren, Muster erkennen und textuell beschreiben. Damit entsteht die Chance, fehlende Anforderungsdokumentationen zumindest teilweise aus dem Code heraus zu rekonstruieren. Die praktische Nutzung dieses Potenzials ist bislang kaum erforscht – insbesondere nicht in mittelständischen Legacy-Projekten. Diese Arbeit adressiert genau diese Lücke und untersucht, wie KI-gestützte Verfahren für eine systematische Anforderungsextraktion eingesetzt werden können. +Aktuelle Large Language Models (LLMs) wie GPT-4, Claude oder Code Llama können Code analysieren und beschreiben. Sie eröffnen die Möglichkeit, aus einer Legacy-Codebasis zumindest einen Teil der Requirements zu rekonstruieren. Wie tragfähig diese Unterstützung in einem mittelständischen Umfeld tatsächlich ist, ist bislang kaum erprobt. Genau hier setzt die Arbeit an. ## 1.2 Problemstellung -Im Projektumfeld der c-entron GmbH fehlen strukturierte Requirements für die bestehende ERP-Lösung. Die Analyse der Legacy-Codebasis ist zeitintensiv, personengebunden und anfällig für Auslassungen. Daraus ergeben sich mehrere Risiken: +Für die bestehende ERP-Lösung fehlen strukturierte Requirements. Die Codebasis ist groß, historisch gewachsen und nur teilweise dokumentiert. Die Analyse bindet erfahrene Entwickler, ist fehleranfällig und lässt sich kaum skalieren. Daraus ergeben sich wesentliche Risiken für die Migration: -- **Re-Implementationsfehler:** Edge Cases, Workarounds und kundenindividuelle Anpassungen sind nur im Code sichtbar. Ohne vollständige Erfassung drohen Funktionsverluste nach der Migration. -- **Technische Schuld:** Entwickler:innen investieren viel Zeit in das Verständnis historischer Strukturen, statt aktiv an der neuen Plattform zu arbeiten. Veraltete Muster werden unreflektiert übernommen. -- **Implizites Wissen:** Domänenwissen liegt bei wenigen langjährigen Mitarbeitenden. Personalwechsel führen zu Wissensverlust und Verzögerungen. -- **Komplexität der Codebasis:** Verschachtelte Abhängigkeiten, unterschiedliche Stile und technologiebedingte Zwänge erschweren eine modulare Anforderungsableitung. -- **Fehlende Traceability:** Ohne Zuordnung zwischen Code und Geschäftsprozess fehlt die Grundlage für Priorisierung, Testkonzeption und spätere Wartung. +- Funktionen oder Edge Cases gehen bei der Neuimplementierung verloren, weil sie nur im Code sichtbar sind. +- Zeit fließt in das Entziffern alter Strukturen, statt in die neue Plattform; technische Schulden werden mitgeschleppt. +- Domänenwissen konzentriert sich auf wenige Personen, wodurch Personalwechsel zu Wissensverlust führen. +- Ohne eindeutige Traceability fehlt die Grundlage für Priorisierung, Tests und spätere Wartung. -Eine rein manuelle Rekonstruktion aller Anforderungen wäre wirtschaftlich kaum tragbar. Deshalb soll geprüft werden, ob KI-gestützte Verfahren Requirements so extrahieren können, dass sie als belastbare Basis für die Modernisierung dienen. +Eine rein manuelle Rekonstruktion aller Anforderungen ist wirtschaftlich schwer darstellbar. Es soll daher geprüft werden, ob KI-gestützte Verfahren einen belastbaren Anteil dieser Arbeit übernehmen können. ## 1.3 Zielsetzung -Diese Arbeit verfolgt das Ziel, ein vollständiges Vorgehen für KI-gestütztes Reverse Requirements Engineering im Umfeld eines mittelständischen ERP-Herstellers zu entwickeln und zu bewerten. Die Teilziele lauten: +Die Arbeit entwickelt und bewertet ein Vorgehen für KI-gestütztes Reverse Requirements Engineering in einem mittelständischen ERP-Kontext. Kernergebnisse sollen sein: -- Entwicklung eines Prozessmodells, das Vorbereitung, Analyse, Validierung und Übergabe strukturiert. -- Evaluation aktueller LLMs hinsichtlich Kontextfenster, Codeverständnis, Steuerbarkeit, Kosten und Datenschutz. -- Prototypische Umsetzung eines Agenten, der Quellcode verarbeitet, Requirements formuliert und Traceability-Informationen hinterlegt. -- Integration von Stakeholder-Wissen durch Interviews, um nicht direkt aus dem Code ableitbare Anforderungen zu ergänzen. -- Definition eines Evaluationsrahmens mit quantitativen und qualitativen Kriterien (Vollständigkeit, Verständlichkeit, Redundanzfreiheit, Aufwandseinsparung). -- Ableitung von Governance- und Compliance-Leitlinien für den sicheren Umgang mit sensiblen Kundendaten. -- Formulierung konkreter Handlungsempfehlungen für die c-entron GmbH sowie Übertragbarkeit auf ähnliche Unternehmen. +- ein praxistaugliches Prozessmodell mit klaren Phasen für Vorbereitung, Analyse, Validierung und Übergabe, +- eine evaluierte Auswahl geeigneter LLMs (u. a. Kontextfenster, Codeverständnis, Kosten, Datenschutz), +- ein Prototyp, der Code analysiert, Requirements formuliert und Traceability-Informationen erfasst, +- eine Ergänzung der KI-Ergebnisse durch Stakeholder-Interviews, wo Code allein nicht reicht, +- ein Evaluationsrahmen (quantitativ und qualitativ) sowie Governance-Empfehlungen für den Umgang mit sensiblen Daten, +- Handlungsempfehlungen für die c-entron GmbH und Hinweise zur Übertragbarkeit auf ähnliche Unternehmen. ## 1.4 Forschungsleitfragen -Die Zielsetzung wird über vier Forschungsleitfragen strukturiert: +Die Arbeit beantwortet vier Leitfragen: -- **F1 – Einsatz von LLMs im Reverse Requirements Engineering:** Welche Prozessschritte, Steuerungsmechanismen und Kontrollpunkte sind notwendig, um LLMs reproduzierbar einzusetzen? -- **F2 – Kombination von KI-Analyse und Stakeholder-Input:** Welche funktionalen und nicht-funktionalen Anforderungen lassen sich aus Code extrahieren, und welche Informationen müssen über Interviews ergänzt werden? -- **F3 – Qualitätsbewertung der generierten Requirements:** Wie beurteilen Fachexpert:innen Vollständigkeit, Verständlichkeit, Nützlichkeit und Aufwandseinsparung der KI-Ergebnisse? -- **F4 – Chancen und Grenzen des Ansatzes:** Welche Effizienzgewinne sind realistisch, wo liegen technische oder organisatorische Limitierungen, und welche Risiken (z.B. Halluzinationen, Datenschutz) müssen adressiert werden? +- **F1:** Welche Prozessschritte, Steuerungsmechanismen und Kontrollpunkte braucht es, um LLMs reproduzierbar für Reverse Requirements Engineering einzusetzen? +- **F2:** Welche funktionalen und nicht-funktionalen Anforderungen lassen sich direkt aus Code ableiten, und wo müssen Interviews und vorhandene Dokumentation ergänzen? +- **F3:** Wie bewerten Fachexperten Vollständigkeit, Verständlichkeit und Nutzen der KI-Ergebnisse im Vergleich zu manuellen Ansätzen? +- **F4:** Welche Chancen (Effizienz, Systematisierung) und Grenzen (Halluzinationen, Datenschutz, Kontextgröße) sind beim KI-gestützten Requirements Engineering in Legacy-Umgebungen zu erwarten? ## 1.5 Aufbau der Arbeit -Die Arbeit ist in acht Kapitel gegliedert und folgt dem in den Vorlagen üblichen Aufbau: - -1. **Einleitung:** Kontext, Problemstellung, Ziele und Forschungsfragen. -2. **Theoretische Grundlagen:** Requirements Engineering, Reverse Engineering, Large Language Models sowie Qualitätssicherungskriterien. -3. **Fallstudie c-entron GmbH:** Unternehmensprofil, Produktarchitektur, Migrationsdruck und Rahmenbedingungen. -4. **Konzeption und methodisches Vorgehen:** Prozessmodell, Technologieauswahl, Stakeholder-Einbindung und Datenbasis. -5. **Prototypische Umsetzung:** Architektur und Funktionsweise des LLM-Agenten sowie Integration in bestehende Toolchains. -6. **Evaluation:** Vorgehen, Metriken, Ergebnisse und Expertenfeedback. -7. **Diskussion:** Interpretation der Resultate, Limitationen und Implikationen für Forschung und Praxis. -8. **Fazit und Ausblick:** Zusammenfassung, Beantwortung der Forschungsfragen und Perspektiven für weitere Arbeiten. - -Damit entsteht eine nachvollziehbare Linie von der Ausgangssituation über das Konzept bis zur Validierung. +Die acht Kapitel folgen einer durchgängigen Linie: Einleitung (Kap. 1), theoretische Grundlagen zu Requirements Engineering, Reverse Engineering und LLMs (Kap. 2), Fallstudie c-entron GmbH (Kap. 3), Konzept und methodisches Vorgehen (Kap. 4), prototypische Umsetzung des LLM-Agenten (Kap. 5), Evaluation (Kap. 6), Diskussion der Ergebnisse (Kap. 7) sowie Fazit und Ausblick (Kap. 8). Damit entsteht ein klarer Bogen von der Ausgangslage bis zur Validierung des Ansatzes. diff --git a/kapitel_2_Theoretische_Grundlagen.md b/kapitel_2_Theoretische_Grundlagen.md new file mode 100644 index 0000000..0528446 --- /dev/null +++ b/kapitel_2_Theoretische_Grundlagen.md @@ -0,0 +1,380 @@ +# 2. Theoretische Grundlagen + +Dieses Kapitel beschreibt die theoretischen Grundlagen, die für die Konzeption und Bewertung eines KI-gestützten Reverse Requirements Engineering in Legacy-Umgebungen benötigt werden. Zunächst werden zentrale Begriffe des Requirements Engineering sowie die Idee der rückwärtsgerichteten Anforderungsgewinnung aus bestehenden Systemen eingeordnet. Anschließend werden Large Language Models als Werkzeugklasse im Software Engineering beschrieben, inklusive typischer Leistungsgrenzen und Absicherungsmechanismen. Abschließend werden Grundlagen der Legacy-Modernisierung sowie etablierte Migrationsstrategien zusammengefasst, um den Kontext der Fallstudie und die Zielrichtung einer webbasierten Modernisierung einzuordnen. + +## 2.1 Requirements Engineering und Reverse Requirements Engineering + +### 2.1.1 Begriff und Zielsetzung des Requirements Engineering + +Requirements Engineering (RE) umfasst die systematische Erhebung, Analyse, Spezifikation, Validierung und Verwaltung von Anforderungen an ein System über dessen Lebenszyklus. In Standards und Lehrwerken wird RE als eigenständiger Prozess verstanden, der sowohl fachliche Ziele (z. B. unterstützte Geschäftsprozesse) als auch technische und organisatorische Randbedingungen (z. B. Sicherheitsvorgaben, Betriebsmodelle) in überprüfbare Aussagen überführt (ISO/IEC/IEEE 29148:2018; IEEE 830-1998). + +Im Kern adressiert RE zwei Spannungsfelder: + +* **Kommunikation zwischen Domäne und Technik:** Anforderungen müssen fachlich verständlich und gleichzeitig so präzise sein, dass sie implementiert, getestet und geändert werden können. +* **Umgang mit Unsicherheit und Wandel:** Anforderungen sind zu Projektbeginn selten vollständig. RE ist daher nicht nur Dokumentation, sondern ein iterativer Klärungs- und Abstimmungsprozess. + +Ein etablierter Ansatz zur Strukturierung heterogener Sichtweisen ist das Viewpoint-Konzept, bei dem Anforderungen aus unterschiedlichen Perspektiven modelliert und anschließend konsolidiert werden (Kotonya und Sommerville 1996). Für die vorliegende Arbeit ist diese Perspektivenorientierung relevant, weil eine Codebasis typischerweise keine expliziten Stakeholder-Sichten enthält, diese aber für eine Migration wieder sichtbar gemacht werden müssen (z. B. Nutzerrollen, kundenspezifische Varianten, regulatorische Vorgaben). + +### 2.1.2 Arten von Requirements und Qualitätskriterien + +In der Literatur wird häufig zwischen funktionalen Anforderungen (Was soll das System tun?) und Qualitäts- bzw. nicht-funktionalen Anforderungen (Welche Eigenschaften und Randbedingungen gelten?) unterschieden. Die Praxis zeigt jedoch, dass diese Trennung nicht immer trennscharf ist: Eigenschaften können sowohl als Systemverhalten (z. B. „Audit-Log erzeugen“) als auch als Qualitätsziel (z. B. „Nachvollziehbarkeit“) formuliert werden (Glinz 2007). Für Reverse Requirements Engineering ist diese Unschärfe besonders relevant, weil Quellcode meist Verhalten konkretisiert, Qualitätsziele aber häufig implizit bleiben (z. B. Performance-Workarounds, Sicherheitsannahmen). + +Für die Qualität einzelner Requirements sind in Standards und RE-Forschung wiederkehrende Kriterien etabliert. ISO/IEC/IEEE 29148:2018 nennt unter anderem Eindeutigkeit, Konsistenz, Vollständigkeit, Verifizierbarkeit und Nachvollziehbarkeit als zentrale Eigenschaften. IEEE 830-1998 formuliert ähnliche Prinzipien für Software Requirements Specifications, mit stärkerem Fokus auf Dokumentstruktur und Lesbarkeit. + +Für die Bewertung von KI-extrahierten Requirements sind drei Kriterien unmittelbar handhabbar: + +* **Verifizierbarkeit:** Ein Requirement ist so formuliert, dass eine Testidee oder Prüfmethode ableitbar ist (z. B. Messkriterium, Akzeptanzbedingung). +* **Eindeutigkeit:** Formulierungen vermeiden Mehrdeutigkeiten und definieren Begriffe, die in der Domäne unterschiedlich interpretiert werden können. +* **Nachvollziehbarkeit (Traceability):** Es ist erkennbar, aus welchem Artefakt (Code, Konfiguration, Datenbank, Ticket, Interview) das Requirement abgeleitet wurde. + +Qualitätsanforderungen verdienen im Modernisierungskontext eine gesonderte Betrachtung, weil sie über die reine Funktionsgleichheit hinaus die Zielarchitektur motivieren. Glinz (2008) argumentiert, dass Qualitätsanforderungen risikobasiert und wertorientiert priorisiert werden sollten. Für Legacy-Migrationen ist dies plausibel: Ein „vollständiges“ Requirements-Set ist praktisch schwer erreichbar, gleichzeitig sind bestimmte Quality Requirements (z. B. Datenschutz, Verfügbarkeit, Rollout-Fähigkeit) hochkritisch, weil sie Architekturentscheidungen dominieren. + +Für die inhaltliche Strukturierung von Qualitätsanforderungen ist das Qualitätsmodell ISO/IEC 25010:2011 verbreitet, das Qualitätsmerkmale wie Performance-Effizienz, Zuverlässigkeit, Sicherheit oder Wartbarkeit systematisch ordnet. Für Reverse Requirements Engineering ist dies hilfreich, weil aus Code häufig nur Teilaspekte sichtbar werden (z. B. Caching-Mechanismen als Hinweis auf Performance-Annahmen), während andere Qualitätsziele (z. B. „Maintainability“) eher indirekt über Architekturentscheidungen und Entwicklungspraktiken wirksam werden. + +Die Relevanz sauberer Requirements-Qualität zeigt sich auch in der Risikoperspektive. Lawrence, Wiegers und Ebert (2001) beschreiben Requirements Engineering als primäre Risikozone, wenn Anforderungen unklar, instabil oder unvollständig sind. Für diese Arbeit folgt daraus, dass KI-gestützte Requirements-Extraktion nicht nur „mehr Text“ erzeugen darf, sondern gezielt die Risiken der Unklarheit und der Fehlinterpretation reduzieren muss. + +### 2.1.3 Spezifikationsformen und Grad der Formalisierung + +Requirements werden in der Praxis in unterschiedlichen Repräsentationsformen dokumentiert. Standards wie IEEE 830-1998 und ISO/IEC/IEEE 29148:2018 fokussieren auf strukturierte Spezifikationen (z. B. SRS) und definieren typische Kapitel (Zweck, Systemkontext, funktionale Anforderungen, Schnittstellen, Qualitätsanforderungen, Annahmen). Daneben existieren weniger formale Formen wie User Stories, Use-Case-Beschreibungen oder Backlog-Einträge, die vor allem in agilen Settings verbreitet sind. + +Für Reverse Requirements Engineering sind zwei Punkte entscheidend: + +* **Form beeinflusst Interpretierbarkeit:** Eine knappe User Story („Als Nutzer möchte ich …“) ist leicht verständlich, transportiert aber selten Randbedingungen, Datenregeln oder Fehlerfälle. Eine SRS-Formulierung kann präziser sein, erfordert aber mehr Kontext und Definitionen. +* **Grad der Formalisierung beeinflusst Prüfbarkeit:** Je stärker Requirements mit Akzeptanzkriterien, Beispielen oder Messgrößen verknüpft sind, desto einfacher sind Reviews und Tests. Pohl (2010) betont Anforderungen-Validierung als eigene Disziplin, die ohne prüfbare Formulierungen methodisch kaum belastbar ist. + +Im Kontext dieser Arbeit bietet sich daher ein hybrider Stil an: Requirements werden als kurze, klare Soll-Aussagen formuliert und jeweils um Kontext (Akteur/Prozess), Randbedingungen (Vorbedingungen, Datenobjekte) und mindestens eine Prüfidee ergänzt. LLMs können die sprachliche Konsistenz unterstützen, die notwendige Präzisierung muss jedoch durch Belege und Validierung abgesichert werden. + +### 2.1.4 Traceability als Verbindung zwischen Code und Requirement + +Traceability bezeichnet die Möglichkeit, Beziehungen zwischen Requirements und anderen Artefakten herzustellen und über den Lebenszyklus zu pflegen. Gotel und Finkelstein (1994) analysieren Traceability als wiederkehrendes Problem, insbesondere dort, wo Artefakte heterogen sind und die Disziplin zur Pflege fehlt. Ramesh und Jarke (2001) schlagen Referenzmodelle vor, die Traceability-Typen und -Ziele strukturieren, etwa die Rückverfolgbarkeit zur Begründung (Rationale), zu Designentscheidungen oder zur Evolution eines Requirements. + +Für Reverse Requirements Engineering ist Traceability nicht nur ein „Nice-to-have“, sondern eine Sicherheitsmaßnahme: + +* **Plausibilisierung:** Ein Requirement lässt sich gegen konkrete Codeausschnitte oder Laufzeitbeobachtungen prüfen. +* **Abgrenzung:** Es wird klar, ob eine Aussage wirklich aus der Codebasis folgt oder aus Interpretationen und Ergänzungen entsteht. +* **Änderungsmanagement:** Bei Codeänderungen lässt sich ermitteln, welche Requirements betroffen sein könnten. + +In Legacy-Systemen ist Traceability typischerweise fragmentiert: Hinweise finden sich in Commit-Messages, Branch-Namen, Datenbankskripten, Konfigurationsdateien, UI-Texten oder in impliziten Konventionen. Der methodische Anspruch dieser Arbeit besteht daher nicht darin, „perfekte“ Traceability wiederherzustellen, sondern eine minimal belastbare, reproduzierbare Verknüpfung zwischen extrahierten Requirements und Belegen zu etablieren. + +### 2.1.5 Reverse Engineering und Reverse Requirements Engineering + +Reverse Engineering wird klassisch als Analyseprozess verstanden, der aus einem bestehenden System Wissen über Struktur, Verhalten und Designentscheidungen rekonstruiert. Chikofsky und Cross (1990) prägen hierfür eine Taxonomie und grenzen Reverse Engineering von Reengineering sowie Design Recovery ab. Für Requirements-nahe Fragestellungen ist hier relevant, dass Reverse Engineering nicht automatisch „Anforderungen“ liefert, sondern zunächst technische Fakten (z. B. Abhängigkeiten, Datenflüsse, Zustandsautomaten). + +Reverse Requirements Engineering (RRE) fokussiert auf die rückwärtsgerichtete Gewinnung von Anforderungen aus bestehenden Artefakten. Dabei kann das Ziel unterschiedlich interpretiert werden: + +* **Rekonstruktion eines Soll-Zustands:** Welche fachlichen Anforderungen werden durch die aktuelle Implementierung implizit erfüllt? +* **Rekonstruktion eines Ist-Zustands:** Welche Funktionen und Regeln sind tatsächlich implementiert, unabhängig davon, ob sie intendiert waren? + +Gerade im Migrationskontext ist diese Unterscheidung entscheidend. Die Codebasis enthält oft historisch entstandene Workarounds oder kundenspezifische Anpassungen. Diese können fachlich gewollt, technisch opportunistisch oder schlicht „mitgewachsen“ sein. Ohne zusätzliche Validierung besteht das Risiko, dass RRE den Ist-Zustand als Soll-Zustand fehlinterpretiert. + +Frühe Ansätze zur Brücke zwischen Reverse Engineering und Requirements liefern beispielsweise Yu et al. (2005) mit „RETR: Reverse Engineering to Requirements“. Der Beitrag betont, dass Requirements-Rückgewinnung eine methodische Kette aus Artefaktsichtung, Strukturierung und Validierung benötigt. In ähnlicher Richtung beschreibt ein requirementsgetriebenes Reengineering-Framework, wie Requirements als Leitplanken für Reengineering-Entscheidungen genutzt werden können (Tahvildari, Kontogiannis und Mylopoulos 2001). + +Methodisch lassen sich dabei grob zwei Analysestränge unterscheiden: + +* **Statische Analyse:** Ableitung von Struktur- und Datenflussinformationen aus Code und Artefakten ohne Ausführung (z. B. Abhängigkeiten, SQL-Statements, Aufrufketten). Statische Analyse ist skaliert gut, erkennt aber nicht zuverlässig Laufzeitbedingungen (z. B. Feature Flags, Konfigurationsvarianten). +* **Dynamische Analyse:** Beobachtung von Laufzeitverhalten durch Logging, Tracing oder instrumentierte Tests (z. B. welche Regeln bei bestimmten Eingaben greifen). Dynamische Analyse ist näher am realen Verhalten, benötigt aber reproduzierbare Szenarien und Testdaten. + +Reverse Requirements Engineering in einem Migrationsprojekt profitiert typischerweise von einer Kombination beider Stränge. Ohne dynamische Belege steigt das Risiko, dass nicht offensichtliche Bedingungen (z. B. kundenspezifische Schalter) übersehen werden; ohne statische Analyse bleibt die Abdeckung häufig zu gering. + +### 2.1.6 Typische Methodenkette für Requirements-Rückgewinnung aus Code + +Aus Sicht dieser Arbeit lässt sich Reverse Requirements Engineering in einer Legacy-Codebasis als wiederholbarer Ablauf strukturieren. Die konkrete Ausgestaltung hängt vom System und den verfügbaren Artefakten ab, die grundlegenden Schritte sind jedoch weitgehend stabil: + +1. **Scope und Domänenabgrenzung:** Auswahl relevanter Module, Datenobjekte und Prozesse (z. B. Auftragsabwicklung, Fakturierung). +2. **Artefakterhebung:** Quellcode, Konfiguration, UI-Texte, Datenbankschemata, Schnittstellenbeschreibungen, Change-Historie. +3. **Technische Analyse:** Struktur- und Abhängigkeitsanalyse, Identifikation von Kernkomponenten, Regeln und Integrationspunkten. +4. **Semantische Interpretation:** Ableitung fachlicher Aussagen aus technischen Implementierungen (z. B. Statusübergänge, Berechtigungsprüfungen). +5. **Formalisierung als Requirements:** Überführung in klare, testbare Anforderungen mit Kontext (Akteur, Vorbedingung, Ergebnis). +6. **Traceability-Anreicherung:** Verknüpfung jedes Requirements mit Belegen (Datei, Klasse, Methode, SQL-Statement, UI-String). +7. **Validierung:** Review durch Fachexperten und Abgleich mit Laufzeitverhalten, Tickets oder Kundenwissen. + +In der Praxis unterscheiden sich Artefakte darin, wie direkt sie fachliche Aussagen stützen. Quellcode, der eine Regel hart erzwingt (z. B. „Update nur bei Status X“), ist als Beleg stärker als Kommentare oder UI-Texte, die lediglich Absichten ausdrücken. Für eine belastbare Requirementsbasis ist es daher sinnvoll, Belege zu klassifizieren und die Aussagekraft zu kennzeichnen, beispielsweise: + +* **Primärbelege:** Durchgesetzte Regeln im Code oder in Datenbankconstraints (z. B. Statusmaschinen, Validierungslogik, Berechtigungschecks). +* **Sekundärbelege:** Indirekte Hinweise wie UI-Labels, Fehlermeldungen, Report-Layouts, Mappingtabellen oder Konfigurationsschalter. +* **Kontextbelege:** Ticketbeschreibungen, Commit-Messages oder Interviewaussagen, die Motivation und Ausnahmen erklären, aber nicht zwingend im Code sichtbar sind. + +Diese Einteilung ist kein Selbstzweck. Sie hilft, Risiken sichtbar zu machen: Requirements, die überwiegend auf Sekundär- oder Kontextbelegen beruhen, sind anfälliger für Fehlinterpretation und sollten priorisiert validiert werden. Gerade in ERP-Systemen sind Datenbankschemata und SQL-Statements häufig besonders aussagekräftig, weil sie Domänenobjekte, Kardinalitäten und Geschäftsregeln (z. B. referentielle Integrität, historisierte Tabellen) sichtbar machen, die in UI- oder Servicecode nur indirekt erscheinen. + +Ein weiterer Hebel ist das Mining der Änderungshistorie. Commit-Messages, Diff-Hotspots oder Branch-Konventionen können Hinweise liefern, welche Bereiche besonders volatil sind, welche Kundenvarianten existieren und wo in der Vergangenheit Fehler oder Workarounds eingeführt wurden. Für Reverse Requirements Engineering folgt daraus, dass Requirements nicht nur „aus dem aktuellen Code“, sondern idealerweise auch aus der Evolution des Codes abgeleitet werden, um implizite Stabilitätsannahmen und technische Schulden zu erkennen. + +Der kritische Schritt ist die semantische Interpretation. Program Comprehension ist hierfür das methodische Fundament: Storey (2005) zeigt, dass Programmverständnis in der Praxis aus einer Kombination von statischer Analyse, Navigation, Visualisierung und Hypothesenbildung besteht. RRE übernimmt diesen kognitiven Prozess, erweitert ihn jedoch um das Ziel, Aussagen als Requirements zu formulieren, die unabhängig vom Code als Spezifikation nutzbar sind. + +### 2.1.7 Zwischenfazit zu 2.1 + +Requirements Engineering liefert Kriterien und Artefaktformen, um Anforderungen präzise, prüfbar und nachvollziehbar zu beschreiben (ISO/IEC/IEEE 29148:2018; IEEE 830-1998). Reverse Requirements Engineering überträgt diese Zielsetzung in einen Kontext, in dem Requirements nicht vorliegen, sondern aus technischen Artefakten rekonstruiert werden. Für die vorliegende Arbeit folgt daraus, dass Automatisierung (z. B. durch KI) nur dann praktikabel ist, wenn Traceability und Validierung als feste Prozessbestandteile mitgeführt werden. + +## 2.2 Large Language Models im Software Engineering + +### 2.2.1 Künstliche Intelligenz, Machine Learning und Einordnung von LLMs + +Künstliche Intelligenz (KI) ist ein Oberbegriff für Verfahren, die Aufgaben bearbeiten, die in der Praxis typischerweise kognitive Fähigkeiten erfordern (z. B. Klassifikation, Planung, Sprachverarbeitung). Machine Learning (ML) ist dabei ein Teilgebiet, das Modelle aus Daten lernt, anstatt Regeln vollständig manuell zu spezifizieren. In der gängigen Einordnung wird zwischen überwachtem Lernen (mit Zielwerten), unüberwachtem Lernen (Struktur in Daten) und Reinforcement Learning (Lernen über Rückmeldesignale) unterschieden (Bishop 2006; Goodfellow, Bengio und Courville 2016). + +Deep Learning bezeichnet ML-Verfahren, die neuronale Netze mit vielen Parametern und mehreren Verarbeitungsebenen nutzen, um geeignete Repräsentationen aus Rohdaten zu lernen. Charakteristisch ist, dass Merkmalsextraktion und Modellanpassung gemeinsam über Optimierung (typischerweise Gradientenverfahren) erfolgen. LeCun, Bengio und Hinton (2015) beschreiben Deep Learning als zentrale Entwicklungslinie moderner KI, insbesondere für Wahrnehmungs- und Sprachaufgaben. + +Neuronale Netze lassen sich dabei vereinfacht als parametrisierte Funktionsketten aus Schichten beschreiben, die Eingaben in zunehmend abstrakte Repräsentationen überführen. Das Training erfolgt über eine Zielfunktion (Loss) und Gradientenberechnung, praktisch meist über Backpropagation und Varianten des Gradientenabstiegs (Goodfellow, Bengio und Courville 2016). + +![Abbildung 2-1: Schematische Darstellung eines vollständig verbundenen Feedforward-Netzes.](Abbildungen/abb_2_1_feedforward_nn.png) + +Ein einzelnes Neuron lässt sich als affine Transformation mit nachgeschalteter Aktivierungsfunktion formulieren: + +$$ +z = \sum_{i=1}^{d} w_i x_i + b,\quad a = \varphi(z) +$$ + +Typische Aktivierungsfunktionen sind die Sigmoid-Funktion und ReLU (Goodfellow, Bengio und Courville 2016): + +$$ +\sigma(z)=\frac{1}{1+e^{-z}},\quad \mathrm{ReLU}(z)=\max(0,z) +$$ + +![Abbildung 2-2: Beispielhafte Aktivierungsfunktionen (Sigmoid, tanh, ReLU).](Abbildungen/abb_2_2_aktivierungsfunktionen.png) + +Die Optimierung erfolgt üblicherweise iterativ. Für Gradientenabstieg gilt in kompakter Form: + +$$ +\theta^{(t+1)}=\theta^{(t)}-\eta \nabla_\theta \mathcal{L}(\theta^{(t)}) +$$ + +#### 2.2.1.1 Abgrenzung neuronaler Netze und LLMs zu anderen ML-Methoden + +Neuronale Netze sind ein Teilbereich von ML, sie ersetzen jedoch nicht automatisch klassische Verfahren. In der Praxis hängt die Methodenauswahl von Datenart, Datenmenge, Interpretierbarkeit und Betriebsvorgaben ab (Bishop 2006; Hastie, Tibshirani und Friedman 2009). + +Tabelle 2-1 fasst die Abgrenzung zu häufigen ML-Familien zusammen: + +| Methodik | Typischer Einsatz | Stärken | Grenzen | +|---|---|---|---| +| Lineare/GLM-Modelle | Strukturierte Daten, Baselines | schnell, gut interpretierbar | begrenzte Nichtlinearität (ohne Feature Engineering) | +| Support Vector Machines (SVM) | Klassifikation/Regression, mittlere Datenmengen | starke Theorie, robuste Margin-Idee | Skalierung/Kernelwahl, eingeschränkte Erklärbarkeit (Cortes und Vapnik 1995) | +| Entscheidungsbäume/Ensembles | Tabellarische Daten | nichtlinear, oft gute Performance | Overfitting ohne Regularisierung; Ensembles weniger interpretierbar | +| Random Forests | Tabellarische Daten, robuste Defaults | stabil, gute Generalisierung | begrenzte Extrapolation, Erklärbarkeit indirekt (Breiman 2001) | +| Gradient Boosting | Tabellarische Daten, hohe Genauigkeit | sehr starke Praxisleistung | Hyperparameter-sensitiv, Trainingskosten (Friedman 2001) | +| Neuronale Netze (Deep Learning) | Unstrukturierte Daten (Text, Bild), große Datenmengen | Representation Learning, End-to-End | hoher Daten-/Rechenbedarf, schwerer zu erklären (LeCun, Bengio und Hinton 2015) | +| LLMs (Transformers) | Text- und Codeaufgaben, generative Assistenz | Vortraining nutzt große Korpora; flexible Transferleistung | Halluzinationen, Kontextlimit, Governance-Aufwand (Vaswani et al. 2017; Ji et al. 2023) | + +LLMs unterscheiden sich dabei von vielen klassischen Verfahren nicht nur durch Modellgröße, sondern auch durch Zielsetzung: Häufig wird ein generatives, autoregressives Sprachmodell trainiert, das die nächste Tokenwahrscheinlichkeit modelliert: + +$$ +\max_\theta \sum_{t=1}^{T} \log p_\theta(x_t \mid x_{