03 - Entwicklung einer App mit KI per Spezifikation, Projektanlage

Feb. 16, 2026·
Eugen [WebDucer] Richter
Eugen [WebDucer] Richter
· 7 Min Lesezeit
Start der Spezifikation mit OpenSpec
blog Specification Driven Development

Nachdem alle Tools eingerichtet sind, starten wir nun mit der Nutzung der KI.

Projektgrundgerüst

Als erste Spezifikation, lassen wir das Grundgerüst der App anlegen. Dabei fragen wir auch KI uns zu helfen, die Spezifikation zu erstellen. Wenn Sie nicht direkt mit “Schreiboperationen” starten wollen, lässt sich die Vorarbeit auch in “Plan”-Mode ausführen, bei dem die KI keine Dateien schreiben darf.

Folgendes wissen wir bereits zu unserem Projekt und wollen es auch in der Spezifikation finden:

  • Framework: .Net MAUI mit .Net 10
  • Betriebssysteme: min. Android und iOS (Windows / macOS eventuell)
  • Sprachen: Deutsch und Englisch für den Anfang
  • Datenspeicherung: Local First (Daten bleiben auf unserem Gerät)
  • Tests: Testprojekt sollte auch da sein und von der KI später gefüllt werden
  • App ID: page.eugen.maui.ai.bodymeasurement

Ablauf der Spezifikationserstellung

Starten Sie OpenSpec durch die VS-Code-Erweiterung oder direkt im Terminal über opencode.

Mit dem Befehl /opsx-new kann eine Spezifikation gestartet werden.

/opsx-new projekt-grundgeruest

Start der Spezifikation in OpenCode

KI Antwort (kann bei Ihnen ein wenig anders aussehen)
Perfect! I've created a new change called projekt-grundgeruest using the experimental workflow.
---
Change Summary
- Name: projekt-grundgeruest
- Location: openspec/changes/projekt-grundgeruest/
- Schema: spec-driven
- Artifact sequence: proposal → design → specs → tasks
- Current status: 0/4 artifacts complete
---
Next Artifact: proposal
The first artifact is proposal.md - this establishes the "why" behind your change.
Template sections:
- Why: 1-2 sentences on the problem or opportunity
- What Changes: Bullet list of specific changes (mark breaking changes)
- Capabilities: 
  - New Capabilities: List what's being introduced (each becomes a spec)
  - Modified Capabilities: Existing specs whose requirements are changing
- Impact: Affected code, APIs, dependencies, or systems
Output file: openspec/changes/projekt-grundgeruest/proposal.md
Unlocks: Once complete, this enables the design and specs artifacts.
---
Ready to create the first artifact? Run /opsx-continue or just describe what this change is about and I'll draft the proposal for you.

Proposal / Vorschlag

Nun bitte ich die KI, mir bei der Erstellung des ersten Spezifikation-Artefaktes zu helfen.

Bitte hilf mir das “proposal” zu erstellen. Ich habe folgende Informationen bereits parat:

Gerne helfe ich dir beim Erstellen des Proposals! 
Bitte teile mir die Informationen mit, die du bereits parat hast. Was möchtest du mit dieser Änderung erreichen? 
Erzähl mir einfach:
- Was ist das Problem oder die Gelegenheit?
- Was soll sich ändern?
- Welche neuen Funktionen oder Fähigkeiten sollen entstehen?
Ich erstelle dann daraus ein strukturiertes Proposal-Dokument für dich.

Nun liste ich die Anforderungen, die wir bereits definiert haben.

Tipp

Sie können in OpenCode mit Alt + Enter mehrzeilige Prompts schreiben. Oder einfach aus einem Editor-Fenster den vorgefertigten Text reinkopieren.

  • Eine App mit .Net MUI Framework (.Net 10)
  • App zur Aufzeichnung des eigenen Körpergewichtes
  • Mehrsprachig (Deutsch und Englisch)
  • Lokale Datenspeicherung (Local First)
  • App Logik soll durch Test sichergestellt werden
  • App ID soll page.eugen.maui.ai.bodymeasurement sein

Stell mir weitere Fragen, wenn etwas noch fehlt.

Antwort der KI nach Erstellung des Proposals (Vorschlags)
Perfekt! Ich habe das proposal.md für dich erstellt. 
Was ich erstellt habe:
Das Proposal beschreibt:
- Why: Plattformübergreifende Gewichts-Tracking App mit Local First Ansatz
- What Changes: .NET MAUI App mit allen Features (Erfassung, Verlauf, Statistiken, Export, Mehrsprachigkeit)
- Capabilities: 6 neue Capabilities definiert:
  - weight-tracking - Kernfunktionalität für Gewichtsmessungen
  - data-visualization - Verlaufsanzeige und Grafiken
  - statistics-analytics - Trends und Auswertungen
  - data-export - Export nach CSV/JSON
  - localization - Deutsch/Englisch
  - local-storage - SQLite Datenspeicherung
- Impact: Dependencies, Plattformen, zukünftige Erweiterbarkeit
Status Update:
-  proposal - Abgeschlossen (1/4)
- ⏭️ design - Jetzt verfügbar
- ⏭️ specs - Jetzt verfügbar  
- 🔒 tasks - Noch blockiert (wartet auf design + specs)
---
Nächste Schritte: 
Du kannst jetzt entweder mit design oder specs fortfahren. Möchtest du mit /opsx-continue weitermachen? Ich würde dir empfehlen, zunächst die technischen Details im Design zu klären.

Der Vorschlag enthält bereits die Üblichen Pattern und technische Details, die wir nicht mit angegeben haben, z.B.:

  • MVVM: Model View ViewModel Pattern, das bei MAUI (und WPF, WinUI, Angular) üblich ist
  • SQLite: Als Speicher mit einem Repository-Pattern
  • CI/CD Pipeline
Tipp

Sie sollten den Vorschlag durchlesen und auf die Korrektheit prüfen, da dieser als Basis für das nun zu erstellende Design-Dokument und Aufgabenliste (Tasks) herangezogen wird.

Design / technische Details

Ich gehe auf den Vorschlag ein und starte mit der Klärung der technischen Details:

Nächste Schritte: 
Du kannst jetzt entweder mit design oder specs fortfahren. Möchtest du mit /opsx-continue weitermachen? Ich würde dir empfehlen, als nächstes die technischen Details im Design zu klären.

OK. Lass uns die technischen Details klären. Was willst du genau wissen? Welche Informationen fehlen dir.

Fragen der KI zu technischen Details

Auf die gestellten Fragen, habe ich wie folgt geantwortet:

  • Architektur: MVVM
  • Datenbank-Bibliothek: sqlite-net-pcl (wird uns bestimmt später noch Probleme bei Android machen - gespannt auf KI-Lösung)
  • Charts: Syncfusion Community Toolkit (manuelle Angabe, vorgeschlagen war nur die kommerzielle Version)
  • Localization: RESX (Standard in Microsoft Universum, keine Bibliotheken notwendig)
  • Dependency Injection: Eingebautes DI
  • Test Framework: xUnit (hoffe KI wählt das aktuelle in Version 3)
Review
Architektur: MVVM (Model-View-ViewModel)
Datenbank Library: sqlite-net-pcl
Charts: Syncfusion hat auch Open-Source-MAUI-Controls. Prüfe, ob diese Version für uns ausreichend wäre
Localization: RESX Resource Files
Dependency Injection: Built-in .NET MAUI DI
Testing Framework: xUnit

Die Antworten führten nun zu weiteren Nachfragen seitens der KI.

Weitere Klarstellungen für KI

Review
Projektstruktur: Single Project
Gewichtseinheiten: kg und lbs (Pfund)
Onboarding: Ja, kurzes Onboarding
Export-Formate: Beide (CSV + JSON)

Bei der Generierung sind noch ein paar offene Fragen übrig geblieben, die ich nun mit der KI beantworten werde.

Offene Fragen:
- Dark Mode Support?
- Welche Statistiken priorisieren?
- Wie detailliert sollen Charts sein?
- Test-Coverage Ziele?

Lass uns zuerst die offenen Fragen klären

Review
Dark Mode: Ja, Dark Mode Support
Statistiken Priorität: Gewichtsveränderung
Chart-Funktionalität: Zeitraum-Filter
Erinnerungen: Nein, erst in V2
Test-Coverage: 80%+ ViewModels/Services
Tipp

Sie sollten das Design-Dokument durchsehen (Review), um frühzeitig auf mögliche Fehlentscheidungen reagieren zu können.

In dem generierten Design-Dokument ist mir aufgefallen, dass für “Benutzer-Einstellungen” eine Tabelle vorgesehen ist. Das ist unüblich. MAUI stellt einen Service für “Einstellungen” bereit, der Betriebssystem-spezifische Speicherung (Key-Value Stores) ermöglicht. Aus diesem Grund lasse ich die KI diese Entscheidung korrigieren, bevor ich mit der Spezifikation fortfahre.

Bitte mach folgende Korrekturen an dem Design-Dokument:

  • Nutze Preferences Service von MAUI, um Benutzer-Einstellungen zu speichern
  • Test und App-Projekt sind getrennt

Spezifikationen und Aufgaben

Nach der Korrektur kann die KI nun mit dem Spezifikationsdokument fortfahren. Bei mir hat die KI aus den Anforderungen insgesamt 6 Spezifikationen (getrennt nach Themenbereichen) erstellt.

Erstellte Spezifikationsthemen

Anschließend (nach Review) wurde auch die Liste der Aufgaben (Tasks) erstellt.

Die gesamte Spezifikation hat bei mir 2,08€ an KI-Kosten (mit Anthropic Claude Sonnet 4.5) verschlungen.

KI Zusammenfassung der Task Erstellung
Perfect! 🎉
---
 All Artifacts Complete!
I've successfully created the tasks artifact with a comprehensive implementation checklist.
Tasks Artifact Summary:
Created 29 task groups with 217 individual tasks covering:
1. Project Setup (6 tasks) - Solution structure, NuGet packages, DI configuration
2. Data Models (4 tasks) - WeightEntry, Statistics, unit conversion
3. Local Storage (11 tasks) - SQLite database with full CRUD operations
4. Settings Service (6 tasks) - MAUI Preferences for app settings
5. Localization (9 tasks) - German/English RESX resources
6. Statistics Service (8 tasks) - Weight change calculations for multiple periods
7. Export Service (10 tasks) - CSV/JSON export with proper formatting
8. ViewModels (30 tasks) - Main, Add/Edit, Statistics, Chart ViewModels
9. UI Pages (45 tasks) - All pages with dark mode and localization
10. Navigation & Shell (5 tasks) - Tab-based navigation structure
11. Styling & Theming (7 tasks) - Light/dark mode color palettes
12. Platform-Specific (7 tasks) - iOS, Android, Windows, macOS configuration
13. Unit Tests (15 tasks) - 80%+ coverage for Services and ViewModels
14. Integration Testing (7 tasks) - End-to-end flow testing
15. Manual Testing (9 tasks) - All platforms validation
16. Bug Fixes & Polish (6 tasks) - Quality improvements
17. Documentation (5 tasks) - API docs, README, schema docs
18. CI/CD Setup (5 tasks) - Automated builds and testing
19. Final Verification (7 tasks) - Complete validation checklist
---
🎯 Change Status:
Schema: spec-driven  
Progress: 4/4 artifacts complete 
-  proposal - Complete
-  design - Complete
-  specs - Complete (6 capability specs)
-  tasks - Complete (217 implementation tasks)
---
🚀 Next Steps:
All artifacts created! You can now:
1. Start implementation: Run /opsx-apply to begin working through the tasks
2. Review the plan: Check the tasks.md file to see the full implementation roadmap
3. Archive when done: Use /opsx-archive when implementation is complete to merge specs to main
The change is fully planned and ready for implementation! 🎉
Hinweis

Vollständiges Traskript der KI Session finden Sie in dem Projekt unter GitHub - Projekt Grundgerüst Session.

Xing
Eugen [WebDucer] Richter
Autoren
Software Ingenieur
Software Ingenieur, Ausbilder, Dozent. In dem Startup arbeite ich an der Authentifizierung für die gesamte Platform, primär mit TypeScript. In meiner Freizeit folge ich meiner Leidenschaft für das Lernen und Lehren und verwirkliche diese als Dozent an der Münchner Volkshochschule und als IHK-Prüfer.