# Von der Problemstellung zum Lösungskonzept
Um ein Softwaresystem für das Transparenzregister implementieren zu können, ist es notwendig Anforderungen zu formulieren. Diese legen die Eigenschaften der Software fest und werden benötigt, um die fachliche und technische Lösung zu modellieren / entwerfen und ein Produkt zu implementieren. 

Zu Beginn sind die Anforderungen wenig eingeschränkt ("Benötigt wird eine Möglichkeit Daten zu speichern."), im Verlauf der Modellierung wird der Lösungsraum eingeschränkt ("Es bietet sich eine Datenbanklösung oder Dateiablage an.") und abschließend auf eine zu implementierende Lösung festgelegt ("Die Software verwendet ein relationales Modell unter Verwendung einer SQLite Datenbank.").

## Requirements Engineering Transparenzregister
Unser Weg zum Pflichtenheft und zur Spezifikation der Systemanforderungen ist folgend dargestellt. 
Von unspezifizierten Anforderungen werden wir immer konkreter und beantworten iterativ die Fragen *Was ist das Problem/Anforderung?* und *Wie lösen wir das Problem/Anforderung?*.

### 1. Anforderungen aus Projektvorstellung

- Entwicklung einer Software zur Darstellung von Unternehmenskennzahlen und Verbindungen.
- Ermittlung der 100 größten deutschen und europäischen Unternehmen
- Auswahl geeigneter Metriken
- Auswahl geeigneter Quellen
- Die erhobenen Daten müssen visualisiert werden (evtl. durch ein Netz, wenn es Verbindungen sind)
- Die erhobenen Daten müssen nach Unternehmen und Personen durchsuchbar sein.

### 2. Identifikation von Anforderungen innerhalb der Gruppe

- Es werden Datenquellen benötigt, um Unternehmenskennzahlen ermitteln zu können.
- Es werden Datenquellen benötigt, um über die öffentliche Darstellung der Unternehmen zu erfahren.
- Es werden Werkzeuge benötigt, um Sentimentanalyse über Unternehmen durchzuführen. 
- Die rechtmäßige Verwendung der Daten muss geklärt werden.
- Die ermittelten Daten müssen gespeichert werden.
- Es werden Werkzeuge benötigt, um Text Mining zu betreiben.

### 3. Identifikation von Domänen zur Lösungsfindung
Aus den Anforderungen der Projektvorstellung und der Projektgruppe wurden sechs Domänen identifiziert, welche benötigt werden, um ein Softwaresystem für Transparenzregister zu erarbeiten. 
Um das benötigte Domänenwissen zu vertiefen, bearbeitet jedes Mitglied ein Cluster.

### 4. technische/fachliche Lösungen
Mit dem Domänenwissen können technische und fachliche Lösungen definiert werden ("Zur Datenspeicherung von Unternehmenskennzahlen ist *xy* notwendig, weil *abc*.") und erste Modelle (z.B. GUI-Modell) erstellt werden.

### 5. Priorisierung von Anforderungen
Die Gruppe diskutiert die Anforderungen und legt eine Priorisierung fest. 

### 6. Pflichtenheft 
Das Team legt sich mit dem Pflichtenheft auf einen definierten Umfang und konkrete Inhalte der Lösung fest. Es wird in *Muss-* und *Kann-*Anforderungen unterschieden.
Das Pflichtenheft ist das **Project Proposal**.