QueryMe Pflichtenheft

18
QueryMe QueryMe : Pflichtenheft Erstellt im Rahmen von PSE am KIT Erstellt von: Györfi, Tobias Kopf, Michael Christian Rettenmayr, Stefan Rubinshteyn, Alexander Thore, Maximilian Walocha, Jennifer Version: 1.0 8. November 2013 Firmenname Musterstr. 123 PLZ Musterstadt T (012) 345678 F (012) 3456789 [email protected] www.apple.com/de/

Transcript of QueryMe Pflichtenheft

QueryMe

!!!!!!!!!!!!QueryMe : Pfl ichtenheft

Erstellt im Rahmen von PSE am KIT Erstellt von: Györfi, Tobias Kopf, Michael Christian Rettenmayr, Stefan Rubinshteyn, Alexander Thore, Maximilian Walocha, Jennifer

Version: 1.0 8. November 2013

Firmenname Musterstr. 123 PLZ Musterstadt T (012) 345678 F (012) 3456789 [email protected] www.apple.com/de/

QueryMe

Inhalt

0. Einleitung 2

1. Zielbestimmung 3 1.1 Musskriterien 3

1.2 Wunschkriterien 3

1.3 Abgrenzungskriterien 3

2. Produkteinsatz 4 2.1 Einsatzgebiete 4

2.2 Zielgruppe 4

2.3 Betriebsbedingungen 4

3. Produktumgebung 5 3.1 Webapplikation 5

3.2 Lokale Anwendung 5

4. Produktfunktionen 6 4.1 Grundfunktionen 6

4.2 Optionale Funktionen 6

5. Produktdaten 7

6. Systemmodell 8 6.1 Szenarien 8

6.2 Anwendungsfälle 9

6.3 Objektmodell 10

6.4 Dynamische Modelle 10

10

6.5 Benutzeroberfläche 11

7. Nichtfunktionale Anforderungen 12 7.1 Leistung und Effizienz 12

7.2 Benutzbarkeit 12

7.3 Zuverlässigkeit 12

7.4 Erweiterbarkeit 12

8. Globale Testfälle 13

9. Entwicklungsumgebung 16

10. Glossar 17

QueryMe - Pflichtenheft " 1

QueryMe

0. Einleitung

Im Rahmen dieses Projekts soll eine Software entwickelt werden, die unterschiedliche Materialien anhand ihrer multispektralen Signatur klassifiziert und unbekannte Materialien über ein web-basiertes sowie ein lokales System identifiziert.

Das Ziel soll sein, eine Basis zu schaffen, mit der man in naher Zukunft Nahrungsmittel auf ihre Bestandteile untersuchen und somit Qualitätssicherungen einfacher mit Hilfe von tragbaren Messgeräten durchführen kann.

QueryMe - Pflichtenheft " 2

QueryMe

1. Zielbestimmung

1.1 Musskriterien • Automatisiertes Abrufen von Materialeigenschaften aus der msidb • Lokales Speichern der Signaturinformationen  • Extraktion charakteristischer Merkmale • Training des Klassifikators oder Online-Suche • Identifikation unbekannter Signaturen • Einschränkung der in Frage kommenden Materialien (z.B. nur Reinmaterialien) • Angabe der n passendsten Materialien mit dazugehöriger Wahrscheinlichkeit • Implementierung als C#-DLL • Entwickeln einer Windows-Forms-Applikation für Test und Lokale Ausführung  • Integration der Bibliothek in die Web-Anwendung ViMuDat • Bei Einsatz externer Bibliotheken sollen diese entweder lizenzfrei sein oder explizit auch für

kommerziellen Einsatz freigegeben sein !1.2 Wunschkriterien

• Anbindung von MATLAB z.B. über COM-Schnittstelle • Bereitstellung der Funktionalität als web service / web API • Identifikation von Hyperspektral-Bildern: Ausgabe eines eingefärbten Klassifikationsbildes • Feedback über falsche Klassifikation an das Frauenhofer IOSB schicken • Konvertierung verschiedener Datenformate, sodass diese verwendet werden können • Erkennung mehrerer Materialien innerhalb eines Materialgemisches • Erweiterbarkeit um eines Moduls dass die Eingabedateien von Rauschen befreit !

1.3 Abgrenzungskriterien • Sprache: Englisch • Keine Optimierung für mobile Geräte • Kein Lernen aus Eingabe (csv-Dateien) • Keine Barrierefreiheit • Kein Logbuch/Verlauf • Keine Erweiterung der vorhandenen DB

QueryMe - Pflichtenheft " 3

QueryMe

2. Produkteinsatz Die Software soll zunächst im universitären Umfeld bzw. innerhalb des Fraunhofer IOSB zur Unter-stützung bei der Entwicklung von Anwendungen im Bereich der multispektralen Datenverarbeitung, z.B. für Sortier-Anwendungen oder Aufgaben der Qualitätsprüfung eingesetzt werden. Zusätzlich wird das Produkt für Präsentationen auf Konferenzen und Messen eingesetzt werden. !2.1 Einsatzgebiete

• Unterstützung bei der Entwicklung von Anwendungen im Bereich der multispektralen Daten-verarbeitung

• Messen und Präsentationen !2.2 Zielgruppe

• Fraunhofer IOSB • Lebensmittelindustrie • Geologen !

2.3 Betriebsbedingungen Webapplikation: !

• DB des Fraunhofer IOSB muss erreichbar sein • Webbrowser • Internetverbindung (dauerhaft) !

Lokale Anwendung: !• C# Runtime Environment muss installiert sein • Rechner muss ausreichend Leistung/Speicher haben • Windows Betriebssystem

QueryMe - Pflichtenheft " 4

QueryMe

3. Produktumgebung Das Produkt besteht aus einer web-basierten Softwarekomponente, die auf dem Server des IOSB läuft, sowie einer getrennt nutzbaren lokalen Variante: !3.1 Webapplikation

• Intel Pentium Dual-Core E2140 1,60 GHz oder besser  • 2 GB Arbeitsspeicher • Farbdisplay mit mindestens 1024 * 768 Pixel Auflösung  !

3.2 Lokale Anwendung • Genügend Festplattenspeicher • Multicore Prozessor • Farbdisplay mit mindestens 1024 * 768 Pixel Auflösung  • Das Produkt läuft auf einem Server des IOSB. Die Daten sind in der zugehörigen Datenbank

zu finden. • Datenbankserver: SQL-Server 2008 • Betriebssystem: Windows Server • Datenbank: SQL-Server 2008 • Webserver: Microsoft Internet Information Services IIC 7.0

QueryMe - Pflichtenheft " 5

QueryMe

4. Produktfunktionen

4.1 Grundfunktionen Auf dem Server: !

• /FA00/ Abrufen von Helligkeits- und Metadaten zu einer Messung aus der msidb • /FA10/ Extraktion charakteristischer Merkmale eines Materials aus den mit /FA00/ erhaltenen

Messdaten durch statistische Methoden • /FA20/ Vergleichen von in /FA10/ extrahierten charakteristischen Merkmalen mit verschiede-

nen Ähnlichkeitskriterien • /FA30/ Aufbereitung der in /FA00/ - /FA20/ gewonnenen Daten durch maschinelle Lernverfah-

ren • /FA40/ Speichern der in /FA30/ aufbereiteten Daten in einer Datei (/PD00/) !

Bei lokaler Anwendung: !• /FA50/ Synchronisieren von /PD00/ vom Server mit lokaler Anwendung • /FA60/CSV-Datei importieren (/PD10/) • /FA61/ In Webapplikation: Datei hochladen • /FA62/ In lokaler Anwendung: Datei einlesen • /FA70/ Extraktion charaktaristischer Merkmale aus /PD10/ genauso wie bei /FA10/ • /FA80/ Einschränkung der in Frage kommenden Materialien anhand der Suchkriterien • /FA90/Klassifikation des unbekannten Eingabematerials mithilfe der extrahierten Merkmale

aus /FA10/ und /FA70/ und den aufbereiteten Daten aus /FA30/ • /FA100/ Auslieferung der Ergebnisse aus /FA80/ • /FA110/ Ergebnisse einschränken ( Schwellwert für Anzahl o. Prozent) • /FA120/ Der Lernprozess aus /FA00/ - /FA40/ kann automatisiert regelmäßig ausgeführt wer-

den !4.2 Optionale Funktionen Auf dem Server: !

• /FA130/ Auslösung des Lernprozesses durch die Webanwendung • /FA140/ Speichern von Einstellungen in Config-Datei (/PD20/und /PD30/) • /FA150/  Senden des Feedbacks über fehlerhafte Klassifizierungen an das Frauenhofer IOSB

QueryMe - Pflichtenheft " 6

QueryMe

5. Produktdaten • /PD00/ Ansammlung aller aus der Datenbank extrahierten, charakteristischen Merkmale pro mul-

tispektraler Messung • /PD10/ Eingabespektrum • /PD20/ Konfigurationsdatei, die die vergangene Sucheinschränkung beinhaltet • /PD30/ Konfigurationsdatei, die die Aktualisierungshäufigkeit beinhaltet

QueryMe - Pflichtenheft " 7

QueryMe

6. Systemmodell

6.1 Szenarien Lokale Anwendung:      I. Höhlenforscher Siegbert erkundet einen Mondkrater. Dabei findet er ein ihm unbekanntes Ge-

stein. Da Siegbert eine exzellente Ausrüstung besitzt, trägt er einen Laptop (auf dem die neus-te lokale QueryMe-Applikation läuft), sowie ein Spektrometer mit sich. Um das unbekannte Gestein zu klassifizieren, scannt er die Materialoberfläche mit dem Spektrometer und expor-tiert das Frequenzspektrum auf den Laptop. Siegbert lädt die Datei in QueryMe und startet die Klassifikation. Diese gibt ihm nach kurzer Bearbeitungszeit eine Liste der am Wahrscheinlichs-ten zutreffenden, der Software bekannten, Stoffe aus.        !

II. Dieses Mal hat Siegbert auf dem Heimweg ein Stück Holz gefunden. Er möchte zudem her-ausfinden ob es sich um Eichen-, Birken- oder Buchenholz handelt. Sigbert scannt wiederrum mit seinem Handspektrometer das Material und lädt die Ergebnisdatei im csv-Format in Que-ryMe. Da er sich aber sicher ist, dass es sich um Holz handelt, grenzt der den Suchraum auf die Kategorie 'Holz' ein. Anschließend gibt QueryMe aus, dass es sich bei der Holzprobe zu 90% um Buchenholz handelt.        !

Webapplikation: !I. Am Fraunhofer IOSB wird eine noch nicht klassifizierte Gesteinsprobe des Meteors von Tschel-

jabinsk untersucht. Hierbei wird eine Spektralmessung im csv-Format in die Webapplikation hochgeladen und von QueryMe klassifiziert. Anschließend gibt die Webapplikation eine Wahr-scheinlichkeit von 95%  für verschiedene Superbolide aus. !!

!!!!!QueryMe - Pflichtenheft " 8

QueryMe

6.2 Anwendungsfälle Lokale Anwendung: !

" !Webapplikation: !

" QueryMe - Pflichtenheft " 9

QueryMe

6.3 Objektmodell -

6.4 Dynamische Modelle !

� - 

QueryMe - Pflichtenheft " 10

QueryMe

6.5 Benutzeroberfläche !

" !!!6.6 Einbettung des Systems !

QueryMe - Pflichtenheft " 11

QueryMe

7. Nichtfunktionale Anforderungen • C#-Bibliothek / C#-Web-Anwendung(ASP.NET) • Weniger als 10000 Codezeilen • Integration der Bibliothek in die Web-Anwendung ViMuDat

7.1 Leistung und Effizienz • Die Klassifizierung dauert auf der lokalen Anwendung etwa gleich lang wie über die Weban-

wendung • Die Website soll auch mit einem fünf Jahre alten Laptop bedienbar sein. • Die Klassifikation soll bei Hinzufügen von 1000 weiteren charakteristischen Merkmalen nicht

mehr als 5 Sekunden länger brauchen.         

7.2 Benutzbarkeit • Die Struktur der Website soll prozessorientiert aufgebaut sein • Mehrere Benutzer können die Webanwendung gleichzeitig verwenden • Die Webanwendung funktioniert auf den gängigsten Browsern

        

7.3 Zuverlässigkeit • Während des Lernprozesses ist die Software uneingeschränkt bedienbar

       

7.4 Erweiterbarkeit • Hinzufügen eines Optimierungmoduls für die eingelesenen Daten (Datenreiniger für Rauschef-

fekte) • Hinzufügen von weiteren Klassifikationsalgorithmen und -merkmalen • Erkennung von mehreren Materialien  innerhalb eines Materialgemisches • Hinzufügen von mehreren Dateikonvertern

QueryMe - Pflichtenheft " 12

QueryMe

8. Globale Testfälle • /GT00/

Vorbedingungen: • Klassifikator ist trainiert, Lernvorgang evtl. aktiv !

Eingabe: • Spektrale Signatur eines bekannten Materials wird aus der Datenbank kopiert • Klassifikationsanfrage für diese Signatur an QueryMe !

Erwartete Ausgabe: • Korrekte Klassifikation der Signatur mit 100%er Übereinstimmung !

Nachbedingungen: • Klassifikator unverändert !

• /GT10/ Vorbedingungen: • Klassifikator ist trainiert, Lernvorgang evtl. aktiv !

Eingabe: • Unbekannte Messung eines Bekannten Materials (unterscheidet sich nur durch Messfeh-

ler - daher geringe Abweichung) • Klassifikationsanfrage für diese Signatur an QueryMe !

Erwartete Ausgabe: • Korrekte Klassifikation des Materials mit sehr hoher Wahrscheinlichkeit !

Nachbedingungen: • Klassifikator unverändert !!!!!!!

QueryMe - Pflichtenheft " 13

QueryMe

• /GT20/ Vorbedingungen: • Klassifikator ist trainiert, Lernvorgang evtl. aktiv !

Eingabe: • Unbekannte Messung eines Unbekannten Materials • Klassifikationsanfrage für diese Signatur an QueryMe !

Erwartete Ausgabe: • QueryMe gibt zu keinem Material eine hohe Wahrscheinlichkeit an !

Nachbedingungen: • Klassifikator unverändert !

• /GT30/ Vorbedingungen: • QueryMe lernt gerade nicht !

Eingabe: • Lernvorgang wird gestartet !

Erwartete Ausgabe: • - !

Nachbedingungen: • Klassifikator ist nun trainiert !

• /GT40/ Vorbedingungen: • Lokale Anwendung: Aktueller Datensatz vorhanden • Webapplikation: Internetverbindung ausreichend schnell !

Eingabe: • Klassifikationsanfrage an QueryMe sowohl über die Webapplikation als auch in der loka-

len Anwendung ! !!!QueryMe - Pflichtenheft " 14

QueryMe

Ausgabe: • Gleiche Ausgabe bei Webapplikation und lokaler Anwendung • Antwortzeiten beider Anfragen unterscheiden sich nur gering !

Nachbedingungen: • Klassifikator jeweils unverändert !

• /GT50/ Vorbedingungen: • Klassifikator ist trainiert, Lernvorgang evtl. aktiv !

Eingabe: • Messung eines beliebigen Materials • Angabe von Sucheinschränkungen • Klassifikationsanfrage für diese Signatur an QueryMe !

Erwartete Ausgabe: • QueryMe gibt nur Ergebnisse aus die den Sucheinschränkungen entsprechen !

Nachbedingungen: • Klassifikator unverändert

QueryMe - Pflichtenheft " 15

QueryMe

9. Entwicklungsumgebung • Visual Studio 2012

QueryMe - Pflichtenheft " 16

QueryMe

10. Glossar • /GL00/ Multispektrale Messdaten:

Multispektrale Messdaten sind das Ergebnis der Vermessung der optischen Eigenschaften eines Materials in Abhängigkeit von der Wellenlänge des einfallenden Lichts. Zusätzlich wer-den Metadaten zum Messvorgang erfasst. !

• /GL10/ Metadaten: Metadaten beinhalten die Skalierungs- und Registrierungsinformationen zu einer Messung !

• /GL20/ (multispektrale) Signatur: Die multispektrale Signatur eines Materials beinhaltet die optischen Reflektionseigenschaf-ten eines Materials. Sie ist eine Art optischer Fingerabdruck. !

• /GL30/ Lernprozess: Ermitteln von zusätzlichen Informationen aus den Signaturen aus der Datenbank mit denen später effizienter klassifiziert werden kann. !

• /GL40/ charakteristische Merkmale: Signifikante Eigenschaften, die aus der Signatur eines Materials extrahiert wurden. Sie sind ein Zwischenergebnis des Lernprozesses. !

• /GL50/ Klassifikation: Identifikation des Eingabematerials. !

• /GL60/ Hyperspektral-Bilder: Mehrschichtige Bild-Datei, die zu jedem Pixel die Reflexionsintensität in Abhängigkeit der Wellenlänge speichert.

QueryMe - Pflichtenheft " 17