Sie sind auf Seite 1von 79

Pflichtenheft

COUNTING HUMANS

Ver. Autor QS Datum Status Kommentar


0.1 Hammer, 24.10.2018 Draft Bestehende Teile aus Lastenheft
Halbritter und Machbarkeitsstudie übertra-
gen, Formatvorlagen, Zielbestim-
mung
0.2 Pöschl 30.10.2018 Draft Produktfunktionen
0.3 Halbritter 30.10.2018 Draft Globale Testfälle
0.4 Halbritter 31.10.2018 Draft Produktfunktionen
1.0 Bartak Ferris Bartak 2.11.2018 Globale Testfälle
+ Kleine Änderungen
Pflichtenheft: Counting Humans v1.0

Inhaltsverzeichnis

1 EINFÜHRUNG ......................................................................................................................... 3

2 ZIELBESTIMMUNG .................................................................................................................. 3
2.1 MUSSKRITERIEN............................................................................................................................... 3
2.2 OPTIONALE KRITERIEN ...................................................................................................................... 4
2.3 NICHTKRITERIEN .............................................................................................................................. 5
3 PRODUKTEINSATZ .................................................................................................................. 5

4 PRODUKTUMGEBUNG ............................................................................................................ 5
4.1 SOFTWARE UND HARDWARE .............................................................................................................. 5
4.2 ORGANISATORISCHE RAHMENBEDINGUNGEN ........................................................................................ 5
4.3 PRODUKT-SCHNITTSTELLEN ................................................................................................................ 5
5 ENTWICKLUNGSUMGEBUNGEN .............................................................................................. 6
5.1 HARDWARE .................................................................................................................................... 6
5.2 SOFTWARE ..................................................................................................................................... 6
5.3 ORGANISATORISCHE RAHMENBEDINGUNGEN ........................................................................................ 6
6 PRODUKTFUNKTIONEN .......................................................................................................... 7

7 PRODUKTDATEN .................................................................................................................. 47
7.1 GRAFISCHE DARSTELLUNG DER DATENSTRUKTUR ................................................................................. 48
8 PRODUKTLEISTUNGEN.......................................................................................................... 49

9 BENUTZERSCHNITTSTELLE .................................................................................................... 50

10 QUALITÄTSBESTIMMUNGEN ................................................................................................ 59

11 GLOBALE TESTFÄLLE ............................................................................................................. 60

12 VERTRAGSGEGENSTAND ...................................................................................................... 72
12.1 RECHTE/LIZENZEN ..................................................................................................................... 72
12.2 LIEFERUMFANG ......................................................................................................................... 72
12.3 PRODUKTBEZOGENE LEISTUNGEN ................................................................................................. 72
13 PROJEKTPLANUNG ............................................................................................................... 73
13.1 PROJEKTSTRUKTURPLAN ............................................................................................................. 73
13.2 MEILENSTEINTERMINE................................................................................................................ 74
13.3 BALKENPLAN ............................................................................................................................ 75
14 SONSTIGES ........................................................................................................................... 76
14.1 DATENSCHUTZ .......................................................................................................................... 76
14.2 GLOSSAR ................................................................................................................................. 76

Seite 2 von 79
Pflichtenheft: Counting Humans v1.0

1. Einführung
Die ITSV braucht eine Software zur dynamischen Zählung von Menschen in einem Raum. Sie
soll mithilfe einer Kamera, die das Geschehen auf einen Controller überträgt, arbeiten. Dazu
wird Machine-Learning und Bildverarbeitung verwendet.

Die aufgezeichneten Daten können dann über ein Web-Interface aufgerufen, dargestellt und
genauer angesehen werden oder über eine Daten-Schnittstelle abgerufen und in anderen
Programmen weiterverwendet werden.

Die Software soll Aufgabenbereiche vereinfachen, wo es notwendig ist Menschen zu zählen


Sie kann zum Beispiel eingesetzt werden um bei einer Veranstaltung die Besucherzahlen zu
ermitteln oder die Personen im Wartezimmer eines Krankenhauses oder einer Arztkanzlei zu
zählen.

Das Team der ITSV möchte das System als Showcase für ihr eigenes Büro und als Basis für
Weiterentwicklungen verwenden.

2. Zielbestimmung
Im Rahmen des Projektes „Counting Humans“ soll eine Software zur dynamischen Zählung von
Menschen an einem bestimmten Ort entwickelt werden. Diese wird mithilfe von Machine
Learning erstellt und mit diversen Schnittstellen werden die Daten weiterverarbeitet. Dabei
soll es möglich sein auf einem grafischen Web-Interface die Daten von einem Ort zu einem
bestimmten Zeitpunkt als Statistik darzustellen.
Die Videos werden automatisch von einer Kamera auf einen Raspberry PI 3 übertragen und in
Frames umgewandelt und dann von dem bereits trainiertem Machine Learning Modell verar-
beitet.

2.1 Musskriterien

2.1.1 Hardware eingerichtet


Die Hardware muss komplett eingerichtet sein, damit ist gemeint:
• Den Microcontroller in die Arbeitsumgebung integrieren und Updates, sowie die für un-
sere Software nötigen Softwarepakete und Tools installieren.
• Eine Software entwickeln, welche die Daten der Kamera ausliest und in ein geeignetes
Format umwandelt

2.1.2 Datasets für die Grundanforderungen erzeugt


Die Datasets zum „Menschen erkennen“ und „Menschen zählen“ müssen fertig erstellt wer-
den, damit sie zum Training des Modells verwendet werden können. Dazu gehört auch das
Beschriften der Frames (z.B. ist ein Mensch in dem Frame zu sehen, wäre die Beschriftung
„Mensch“; wenn nicht „kein Mensch“) Damit ist gemeint:

Seite 3 von 79
Pflichtenheft: Counting Humans v1.0

• Es müssen 50 Minuten Videomaterial zu jedem Dataset erzeugt werden und die Fra-
mes richtig beschriftet werden

2.1.3 Modell ausgewählt


Es muss ein passendes Modell ausgewählt werden. Dazu gehören folgende Phasen:
• Verschiedene Modelle müssen auf ein Dataset aus dem Internet trainiert und validiert
werden.
• Das Modell, das die höchste Erfolgsrate aufgewiesen hat wird ausgewählt.

2.1.4 Module und Schnittstellen designen und programmieren


Um die Module und Schnittstellen erfolgreich zu nutzen, muss erstmal das Grundgerüst für
den Code von diesen erstellt werden. Sobald die Grundgerüste erstellt wurden müssen die
Module und Schnittstellen noch ausprogrammiert werden. Die Module beinhalten:
• Eine MySQL-Datenbank zum Speichern und Abrufen der vom Modell erhaltenen Daten
• Eine REST-Implementierung zur Datenabfrage über einen Webserver
• Eine grafische Oberfläche für den Webserver, um Statistiken anzuzeigen
• Die Software, die Kameradaten einliest
• Das Machine-Learning-Modell, dass die Bilder analysiert
Und die Schnittstellen beinhalten:
• Bilder-Austausch zwischen dem Kamera-Modul und dem Modul, dass die Bilder analy-
siert
• Daten-Speicherung in die Datenbank (vom Machine-Learning-Modul)
• Daten einlesen (von den beiden Webserver-Modulen)
• Die Kamerabilder an die GUI übertragen
• Die Datenabfrage, um die gespeicherten Daten auf der grafischen Oberfläche anzeigen
zu können

2.1.5 Statistiken erstellen und die Daten anzeigen


Es muss möglich sein, auf der grafischen Oberfläche die Daten zu einem bestimmten Zeit-
punkt an einem bestimmten Ort anzeigen zu lassen. Es soll außerdem eine Statistik ange-
zeigt werden, welche automatisch von der Software erstellt wird.

2.2 Optionale Kriterien

2.2.1 Menschen identifizieren


Sollten die Musskriterien erfüllt sein und noch genug Zeit vorhanden sein, wäre eine weitere
Option für die Software, das einspeichern und Wiedererkennen von Personen. Dazu gehört:
• Ein Dataset von verschiedenen Personen erzeugen und beschriften
• Das Modell darauf trainieren

Seite 4 von 79
Pflichtenheft: Counting Humans v1.0

• Die grafische Oberfläche so anzupassen, dass man abfragen kann welche Person sich im
Bild befand.
• Personen sollen hinzugefügt werden können.
• Die Software benachrichtigt die Nutzer, wenn eine unbekannte Person im Bild ist.

2.3 Nichtkriterien

2.3.1 Zählung anderer Objekte


Die Software soll ausschließlich Menschen zählen können, somit wird kein Trainingsprozess
für andere Objekte benötigt.

3. Produkteinsatz
Das Team der ITSV möchte das System als Showcase für ihr eigenes Büro und als Basis für
Weiterentwicklungen verwenden.

4. Produktumgebung

4.1 Software und Hardware


Die Hardware, auf der das Counting-Humans-Programm läuft, ist ein eigenständiges System.
Der Controller und die angeschlossene USB-Kamera werden an dem Ort, an dem die Men-
schen gezählt werden sollen, aufgestellt und die Kamera so ausgerichtet, dass sie den ge-
samten zu überwachenden Bereich im Blick hat. Eine Stromversorgung für den Controller
wird benötigt.

4.2 Organisatorische Rahmenbedingungen


Organisatorische Rahmenbedingungen sind keine nötig.

4.3 Produkt-Schnittstellen
Um das Webinterface und die Daten-Abfrage verwenden zu können, muss der Controller an
das lokale Netzwerk angebunden sein und eine IP-Adresse erhalten. Dann kann beides über
diese Adresse erreicht werden.

Seite 5 von 79
Pflichtenheft: Counting Humans v1.0

5. Entwicklungsumgebungen

5.1 Hardware
Jedes Teammitglied hat einen eigenen Laptop, auf der eine virtuelle Maschine läuft. Auf der
wird gearbeitet und die Software entwickelt. Zum Trainieren wird ein Desktop-PC, auf dem
das selbe Betriebssystem wie auf den Laptops, nur als Host-Betriebssystem, läuft, verwen-
det.
Sämtliches Trainingsmaterial (Bilder/Videos, Labels, eventuell serialisierte Objekte) werden
auf einer externen Festplatte gespeichert, um sie einfacher von den Entwicklungs-Laptops
auf den Trainings-PC zu übertragen. Außerdem gehört zur Hardware noch der Raspberry Pi
3 samt Zubehör, auf dem das Gesamtsystem getestet wird.

5.2 Software
Auf den virtuellen Maschinen der Laptops und auf dem Testing-PC ist das Betriebssystem
Ubuntu 16.4 Desktop installiert. Auf dem Raspberry Pi läuft Raspbian. Des Weiteren ist auf
allen genannten Systemen Python 3.6 installiert. Keras 2 ist mit dem Backend Tensorflow
installiert. Sonstige benötigte Libraries können mit Packet-Managern nachinstalliert werden.
Als IDE wird PyCharm verwendet.

5.3 Organisatorische Rahmenbedingungen


Das Team arbeitet gemeinsam in der Schule. Die Laptops verbleiben bei den einzelnen Team-
mitgliedern. Der Testing-PC ist an einem anderen Standort als der Arbeitsplatz der Teammit-
glieder. Sonstige Hardware (Festplatte, Raspberry Pi und Zubehör) wird in den Schulspinden
aufbewahrt.

Seite 6 von 79
Pflichtenheft: Counting Humans v1.0

6. Produktfunktionen

6.1 Must-Have

6.1.1 /F11/ Kamera-Bilder aufnehmen

Funktion Nutzen Aufwand

hoch mittel
Name /F11/ Kamera-Bilder aufnehmen

Kurzbeschreibung Das System muss die Funktion haben,


Kamerabilder aufzunehmen und so
umzuwandeln, dass sie analysiert
werden können. Die Software muss
immer nur die Daten von einer einzi-
gen Kamera verarbeiten können.

Auslöser Aktivierung der Software / Starten


des Systems, wenn die Autostart-Op-
tion an ist, ansonsten, wenn Start-
Button im Webinterface betätigt wird

Ergebnis Die Software hat Zugriff auf die Ka-


merabilder

Akteure System, Kamera

Eingehende Infor- Kamerabilder


mationen

Ausgehende Infor- Kamerabilder


mationen

Vorbedingungen Das System ist gestartet

Nachbedingungen Kamerabilder wurden übertragen

Priorität Hoch

Seite 7 von 79
Pflichtenheft: Counting Humans v1.0

6.1.2 /F12/ Menschen zählen

Funktion Nutzen Aufwand

hoch hoch
Name /F12/ Menschen zählen

Kurzbeschreibung Die Software soll die Menschen, die


sich je Frame im Blickfeld der Kamera
befinden, zählen können.

Auslöser Aktivierung der Software / Starten


des Systems, wenn die Autostart-Op-
tion an ist, ansonsten, wenn Start-
Button im Webinterface betätigt wird

Ergebnis Alle 5 Sekunden eine Zahl, wie viele


Menschen sich im Raum befinden

Akteure System

Eingehende Infor- Kamerabilder


mationen

Ausgehende Infor- Anzahl der Menschen


mationen

Vorbedingungen Laufendes System, verbundene Ka-


mera, Bilder werden übertragen

Nachbedingungen Menschenanzahl wurde gespeichert


und das System ist bereit für den
nächsten Frame

Priorität Hoch

Seite 8 von 79
Pflichtenheft: Counting Humans v1.0

6.1.3 /F21/ Kamera auswählen

Funktion Nutzen Aufwand

hoch mittel
Name /F21/ Kamera auswählen

Kurzbeschreibung Es soll einen Mechanismus geben, um


beim Starten der Software auszuwäh-
len, welche Kamera verwendet wer-
den soll. Unterstützung für mehrere
Kameras gleichzeitig soll es nicht ge-
ben.

Auslöser Die Software wird gestartet

Ergebnis Das richtige Kamera-Modul ist gela-


den

Akteure System, User

Eingehende Infor- Welches Kameramodul


mationen

Ausgehende Infor- Ob die Kamera ansprechbar ist


mationen

Vorbedingungen Die Software ist nicht gestartet

Nachbedingungen Die Kamera kann verwendet werden

Priorität Hoch

Seite 9 von 79
Pflichtenheft: Counting Humans v1.0

6.1.4 /F26/ Error-Log auf dem Webinterfache anzeigen

Funktion Nutzen Aufwand

hoch mittel
Name /F26/ Error-Log auf dem Webinterfa-
che anzeigen

Kurzbeschreibung Alle auftretenden Fehler und sonstige


wichtige Ereignisse im Betrieb der
Software müssen in einem Log-File
abgelegt werden. Des Weiteren muss
dieses über das Webinterface aufruf-
bar sein.

Auslöser Der User möchte das Log sehen

Ergebnis Der Inhalt des Log-Files wird am We-


binterface angezeigt

Akteure User, System

Eingehende Infor- Fehler, Warnungen, Ereignisse


mationen

Ausgehende Infor- Log-File


mationen

Vorbedingungen keine

Nachbedingungen keine

Priorität Mittel

Seite 10 von 79
Pflichtenheft: Counting Humans v1.0

6.1.5 /F41/ Aktuelle Personenanzahl als xml abrufen

Funktion Nutzen Aufwand

hoch niedrig
Name /F41/ Aktuelle Personenanzahl als
xml abrufen

Kurzbeschreibung Die zuletzt ermittelte Menschenanz-


ahl soll als xml-File abgerufen werden
können.

Auslöser Gesendete Anfrage

Ergebnis Aktuelle Menschenanzahl als xml-File


wurde gesendet

Akteure Client, System

Eingehende Infor- Die Anfrage nach der aktuellen Men-


mationen schenanzahl

Ausgehende Infor- Die zuletzt ermittelte Menschenanz-


mationen ahl

Vorbedingungen Die Software hat zumindest bereits


ein Frame verarbeitet

Nachbedingungen keine

Priorität Hoch

Seite 11 von 79
Pflichtenheft: Counting Humans v1.0

6.1.6 /F46/ Gesamt-Menschenanzahl in einem Zeitraum als xml abrufen

Funktion Nutzen Aufwand

hoch niedrig
Name /F46/ Gesamt-Menschenanzahl in ei-
nem Zeitraum als xml abrufen

Kurzbeschreibung Die Software soll die Gesamt-Men-


schenanzahl zu allen gemessenen
Zeitpunkten in einem angegebenen
Zeitraum zurückgeben. ‚now‘ ist als
Zeitgrenze auch erlaubt.

Auslöser Gesendete Anfrage

Ergebnis Ort und Personenanzahl sowie Zeit-


punkt von jeder Messung im angege-
benen Zeitraum wurden als xml-File
versendet

Akteure Client, System

Eingehende Infor- Startzeitpunkt, Endzeitpunkt


mationen

Ausgehende Infor- Ort, Personenanzahl und Zeitpunkt al-


mationen ler Messungen zwischen Start- und
Endzeitpunkt

Vorbedingungen keine

Nachbedingungen keine

Priorität Hoch

Seite 12 von 79
Pflichtenheft: Counting Humans v1.0

6.1.7 /F51/ Aktuelle Personenanzahl als json abrufen

Funktion Nutzen Aufwand

hoch niedrig
Name /F51/ Aktuelle Personenanzahl als
json abrufen

Kurzbeschreibung Die zuletzt ermittelte Menschenanz-


ahl soll als json-File abgerufen wer-
den können.

Auslöser Gesendete Anfrage

Ergebnis Aktuelle Menschenanzahl als json-File


wurde gesendet

Akteure Client, System

Eingehende Infor- Die Anfrage nach der aktuellen Men-


mationen schenanzahl

Ausgehende Infor- Die zuletzt ermittelte Menschenanz-


mationen ahl

Vorbedingungen Die Software hat zumindest bereits


ein Frame verarbeitet

Nachbedingungen keine

Priorität Hoch

Seite 13 von 79
Pflichtenheft: Counting Humans v1.0

6.1.8 /F56/ Gesamt-Menschenanzahl in einem Zeitraum als json abrufen

Funktion Nutzen Aufwand

hoch niedrig
Name /F56/ Gesamt-Menschenanzahl in ei-
nem Zeitraum als json abrufen

Kurzbeschreibung Die Software soll die Gesamt-Men-


schenanzahl zu allen gemessenen
Zeitpunkten in einem angegebenen
Zeitraum zurückgeben. ‚now‘ ist als
Zeitgrenze auch erlaubt.

Auslöser Gesendete Anfrage

Ergebnis Ort und Personenanzahl sowie Zeit-


punkt von jeder Messung im angege-
benen Zeitraum wurden als json-File
versendet

Akteure Client, System

Eingehende Infor- Startzeitpunkt, Endzeitpunkt


mationen

Ausgehende Infor- Ort, Personenanzahl und Zeitpunkt al-


mationen ler Messungen zwischen Start- und
Endzeitpunkt

Vorbedingungen keine

Nachbedingungen keine

Priorität Hoch

Seite 14 von 79
Pflichtenheft: Counting Humans v1.0

6.2 Should-Have

6.2.1 /F23/ Ort einlesen

Funktion Nutzen Aufwand

niedrig mittel
Name /F23/ Ort einlesen

Kurzbeschreibung Die Software soll die Möglichkeit bie-


ten, den Ort, an dem gerade die Men-
schen gezählt werden, einzugeben,
um später übersichtliche Statistiken
und Datenspeicherung ermöglichen
zu können.

Auslöser Betätigen des Buttons

Ergebnis Neuer Ort wurde hinzugefügt

Akteure System, User

Eingehende Infor- Name des Ortes


mationen

Ausgehende Infor- Ob der Ort angelegt wurde


mationen

Vorbedingungen Es existiert noch kein Ort mit dem ge-


wünschten Namen

Nachbedingungen Ort ist gespeichert und Daten können


in Bezug auf diesen Ort gespeichert
werden

Priorität Mittel

Seite 15 von 79
Pflichtenheft: Counting Humans v1.0

6.2.2 /F24/ Ort umbenennen

Funktion Nutzen Aufwand

mittel niedrig
Name /F24/ Ort umbenennen

Kurzbeschreibung Es soll möglich sein, eingelesene Orts-


namen mittels GUI zu ändern.

Auslöser Betätigen eines Buttons in der GUI

Ergebnis Der Ort hat einen anderen Namen

Akteure System, User

Eingehende Infor- Name


mationen

Ausgehende Infor- Neuer Name des Ortes


mationen

Vorbedingungen Der Ort existiert bereits

Nachbedingungen Der Ort wird neu gespeichert

Priorität Mittel

Seite 16 von 79
Pflichtenheft: Counting Humans v1.0

6.2.3 /F25/ Ort löschen

Funktion Nutzen Aufwand

niedrig mittel
Name /F25/ Ort löschen

Kurzbeschreibung Die Software soll die Möglichkeit bie-


ten, gespeicherte Orte mithilfe des
Webinterfaces aus der Datenbank zu
löschen. Dabei wird der User nach Be-
stätigung gefragt, da dadurch auch
Statistiken verloren gehen.

Auslöser Betätigen des Buttons

Ergebnis Ausgewählte(r) Ort/e wurden ge-


löscht

Akteure System, User

Eingehende Infor- Auswahl an Orten


mationen

Ausgehende Infor- Ort ist nicht mehr abrufbar


mationen

Vorbedingungen Der Ort existiert

Nachbedingungen Der Ort ist nicht mehr auf der Liste


sichtbar und auch nicht mehr abruf-
bar

Priorität Mittel

Seite 17 von 79
Pflichtenheft: Counting Humans v1.0

6.2.3 /F27/ Passwort ändern

Funktion Nutzen Aufwand

Mittel Mittl
Name /F27/ Passwort ändern

Kurzbeschreibung Es muss die Möglichkeit geben, das


Passwort, das man benötigt, um das
Webinterface abzurufen (und die Da-
ten per SQL abzurufen) anzupassen.

Auslöser Ein User gibt ein neues Passwort auf


der Passwort-Ändern-Seite im Webin-
terface ein

Ergebnis Das Passwort wurde geändert

Akteure User, System

Eingehende Infor- Neues Passwort


mationen

Ausgehende Infor- Ob das Passwort erfolgreich gespei-


mationen chert wurde

Vorbedingungen Der User muss Zugriff auf das Webin-


terface haben (d.h. er muss das aktu-
elle Passwort kennen)

Nachbedingungen Das Webinterface ist nun nur noch


über das neue Passwort erreichbar,
die SQL-Schnittstelle ebenso

Priorität Mittel

Seite 18 von 79
Pflichtenheft: Counting Humans v1.0

6.2.4 /F31/ Passwort abfragen

Funktion Nutzen Aufwand

mittel mittel
Name /F31/ Passwort abfragen

Kurzbeschreibung Die Software soll beim Aufruf des


Webinterfaces ein Passwort abfragen.

Auslöser User ruft das Web-Interface auf

Ergebnis Passwort-Eingabe des Users wurde an


den Server gesendet und ausgewertet

Akteure User, System

Eingehende Infor- Das eingegebene Passwort


mationen

Ausgehende Infor- Ob der User das richtige Passwort


mationen eingegeben hat

Vorbedingungen User hat Zugriff auf die Adresse des


Web-Interfaces und greift zum ersten
Mal darauf zu / seine Session ist vor-
bei

Nachbedingungen Der User hat Zugriff auf das Web-In-


terface, sollte das Passwort korrekt
gewesen sein.

Priorität Mittel

Seite 19 von 79
Pflichtenheft: Counting Humans v1.0

6.2.5 /F32/ Menschenanzahl-Statistiken erstellen

Funktion Nutzen Aufwand

mittel mittel
Name /F32/ Menschenanzahl-Statistiken er-
stellen

Kurzbeschreibung Die Software soll in der Lage sein, Sta-


tistiken aus den gespeicherten Daten
zu erstellen und über ein grafisches
Webinterface anzuzeigen. Die Anzahl
der Personen soll über den Zeitver-
lauf dargestellt werden.

Auslöser User ruft die Menschenanzahl-Statis-


tik am Webinterface auf

Ergebnis Statistiken werden angezeigt

Akteure System, User

Eingehende Infor- Die Daten, die dargestellt werden sol-


mationen len

Ausgehende Infor- Eine Statistik, die die Gesamt-Men-


mationen schenanzahl im Zeitverlauf anzeigt

Vorbedingungen Es sind Daten vorhanden und der U-


ser kann das Web-Interface aufrufen
(richtiges Passwort wurde eingege-
ben)

Nachbedingungen Die Statistiken werden angezeigt

Priorität Mittel

Seite 20 von 79
Pflichtenheft: Counting Humans v1.0

6.2.6 /F35/ Statistik anpassen

Funktion Nutzen Aufwand

mittel hoch
Name /F35/ Statistik anpassen

Kurzbeschreibung Statistiken sollen ein- und ausge-


zoomt werden können bzw. soll ein
Zeitraum und die anzuzeigenden
Orte, Personen angepasst werden
können.

Auslöser Der User verändert Startzeitpunkt,


Endzeitpunkt, anzuzeigenden Ort o-
der Menschen (letzteres nur bei Iden-
tifikations-Statistiken)

Ergebnis Eine aktualisierte Grafik

Akteure System, User

Eingehende Infor- Zeitraum, Ort, Menschen (letzteres


mationen nur bei Identifikations-Statistiken)

Ausgehende Infor- Die Daten, die dargestellt werden sol-


mationen len

Vorbedingungen Es sind Daten zu den Einstellungen


verfügbar

Nachbedingungen Die Statistik wird angezeigt

Priorität Mittel

Seite 21 von 79
Pflichtenheft: Counting Humans v1.0

6.2.7 /F36/ Testbild anzeigen

Funktion Nutzen Aufwand

mittel mittel
Name /F36/ Testbild anzeigen

Kurzbeschreibung Um beim Positionieren der Kamera


besser sagen zu können, ob diese den
Raum gut überblickt, soll die Software
einen Testframe auf dem Webinter-
face anzeigen können.

Auslöser User drück einen Button im Interface

Ergebnis Es wird ein Vorschaubild der Kamera


gezeigt

Akteure System, User

Eingehende Infor- Keine


mationen

Ausgehende Infor- Kamerabild


mationen

Vorbedingungen Die Kamera ist aktiviert und funktio-


niert

Nachbedingungen Kamerabild wird dem User angezeigt

Priorität Mittel

Seite 22 von 79
Pflichtenheft: Counting Humans v1.0

6.2.8 /F39/ Daten über SQL-Server abrufen

Funktion Nutzen Aufwand

hoch niedrig
Name /F39/ Daten über SQL-Server abrufen

Kurzbeschreibung Das Datenmodell der abgelegten Da-


ten soll bekannt sein und es soll mög-
lich sein, Lesezugriffe mittels SQL zu
machen.

Auslöser Eine Anfrage wird an den SQL-Server


geschickt.

Ergebnis Das Ergebnis der Verarbeitung wurde


zurückgeschickt.

Akteure Client, System

Eingehende Infor- SQL-Anfrage


mationen

Ausgehende Infor- Ergebnis der Anfrage


mationen

Vorbedingungen Der Client kennt das Passwort und


hat eine Verbindung zum Server auf-
gebaut.

Nachbedingungen keine

Priorität Mittel

Seite 23 von 79
Pflichtenheft: Counting Humans v1.0

6.2.9 /F42/ Aktuellen Ort als xml abrufen

Funktion Nutzen Aufwand

mittel niedrig
Name /F42/ Aktuellen Ort als xml abrufen

Kurzbeschreibung Der in der letzten Messung verwen-


dete Ort soll als xml-File abgerufen
werden können.

Auslöser Gesendete Anfrage

Ergebnis Der aktuelle Ort wurde als xml-File


gesendet

Akteure Client, System

Eingehende Infor- Die Anfrage nach dem aktuellen Ort


mationen

Ausgehende Infor- Der zuletzt verwendete Ort


mationen

Vorbedingungen Die Software hat zumindest bereits


ein Frame verarbeitet

Nachbedingungen keine

Priorität Mittel

Seite 24 von 79
Pflichtenheft: Counting Humans v1.0

6.2.10 /F44/ Alle gespeicherten Orte als xml abrufen

Funktion Nutzen Aufwand

mittel niedrig
Name /F44/ Alle gespeicherten Orte als xml
abrufen

Kurzbeschreibung Ein xml-File mit allen gespeicherten


Orten soll abgerufen werden können.

Auslöser Gesendete Anfrage

Ergebnis xml-File mit allen Orten wurde gesen-


det

Akteure Client, System

Eingehende Infor- Die Anfrage, dass alle Orte gesendet


mationen werden sollen

Ausgehende Infor- Alle gespeicherten Orte


mationen

Vorbedingungen keine

Nachbedingungen keine

Priorität Mittel

Seite 25 von 79
Pflichtenheft: Counting Humans v1.0

6.2.11 /F47/ Menschenanzahl an einem bestimmten Ort in einem Zeit-


raum als xml abrufen

Funktion Nutzen Aufwand

mittel hoch
Name /F47/ Menschenanzahl an einem be-
stimmten Ort in einem Zeitraum als
xml abrufen

Kurzbeschreibung Die Software soll die Menschenanzahl


an einem angegebenen Ort zu allen
gemessenen Zeitpunkten in einem
angegebenen Zeitraum zurückgeben.
‚now‘ ist als Zeitgrenze auch erlaubt.

Auslöser Gesendete Anfrage

Ergebnis Personenanzahl sowie Zeitpunkt von


jeder Messung des angegebenen Or-
tes im angegebenen Zeitraum wur-
den als xml-File versendet

Akteure Client, User

Eingehende Infor- Ort, Startzeitpunkt, Endzeitpunkt


mationen

Ausgehende Infor- Menschenanzahl sowie genauen Zeit-


mationen punkt jeder Messung am angegebe-
nen Ort im angegebenen Zeitintervall

Vorbedingungen keine

Nachbedingungen keine

Priorität Mittel

Seite 26 von 79
Pflichtenheft: Counting Humans v1.0

6.2.12 /F52/ Aktuellen Ort als json abrufen

Funktion Nutzen Aufwand

mittel niedrig
Name /F52/ Aktuellen Ort als json abrufen

Kurzbeschreibung Der in der letzten Messung verwen-


dete Ort soll als json-File abgerufen
werden können.

Auslöser Gesendete Anfrage

Ergebnis Der aktuelle Ort wurde als json-File


gesendet

Akteure Client, System

Eingehende Infor- Die Anfrage nach dem aktuellen Ort


mationen

Ausgehende Infor- Der zuletzt verwendete Ort


mationen

Vorbedingungen Die Software hat zumindest bereits


ein Frame verarbeitet

Nachbedingungen keine

Priorität Mittel

Seite 27 von 79
Pflichtenheft: Counting Humans v1.0

6.2.13 /F54/ Alle gespeicherten Orte als json abrufen

Funktion Nutzen Aufwand

mittel niedrig
Name /F54/ Alle gespeicherten Orte als json
abrufen

Kurzbeschreibung Ein json-File mit allen gespeicherten


Orten soll abgerufen werden können.

Auslöser Gesendete Anfrage

Ergebnis json-File mit allen Orten wurde ge-


sendet

Akteure Client, System

Eingehende Infor- Die Anfrage, dass alle Orte gesendet


mationen werden sollen

Ausgehende Infor- Alle gespeicherten Orte


mationen

Vorbedingungen keine

Nachbedingungen keine

Priorität Mittel

Seite 28 von 79
Pflichtenheft: Counting Humans v1.0

6.2.14 /F57/ Menschenanzahl an einem bestimmten Ort in einem Zeit-


raum als json abrufen

Funktion Nutzen Aufwand

mittel hoch
Name /F57/ Menschenanzahl an einem be-
stimmten Ort in einem Zeitraum als
json abrufen

Kurzbeschreibung Die Software soll die Menschenanzahl


an einem angegebenen Ort zu allen
gemessenen Zeitpunkten in einem
angegebenen Zeitraum zurückgeben.
‚now‘ ist als Zeitgrenze auch erlaubt.

Auslöser Gesendete Anfrage

Ergebnis Personenanzahl sowie Zeitpunkt von


jeder Messung des angegebenen Or-
tes im angegebenen Zeitraum wur-
den als json-File versendet

Akteure Client, User

Eingehende Infor- Ort, Startzeitpunkt, Endzeitpunkt


mationen

Ausgehende Infor- Menschenanzahl sowie genauen Zeit-


mationen punkt jeder Messung am angegebe-
nen Ort im angegebenen Zeitintervall

Vorbedingungen keine

Nachbedingungen keine

Priorität Mittel

Seite 29 von 79
Pflichtenheft: Counting Humans v1.0

6.3 Nice-to-Have

6.3.1 /F13/ Menschen identifizieren

Funktion Nutzen Aufwand

mittel hoch
Name /F13/ Menschen identifizieren

Kurzbeschreibung Die Software soll unter den Personen


im Kamerabild alle bekannten Perso-
nen identifizieren.

Auslöser Aktivierung der Software / Starten


des Systems, wenn die Autostart-Op-
tion an ist, ansonsten, wenn Start-
Button im Webinterface betätigt wird

Ergebnis Mensch wurde erkannt/nicht erkannt


und, falls erkannt, und identifiziert

Akteure System

Eingehende Infor- Kamerabild


mationen

Ausgehende Infor- Ob der Mensch erkannt wurde und


mationen falls dem so war, wer es war

Vorbedingungen Der Mensch muss der Software be-


kannt sein

Nachbedingungen Mensch wurde erkannt/nicht erkannt

Priorität Niedrig

Seite 30 von 79
Pflichtenheft: Counting Humans v1.0

6.3.2 /F22/ Autostart-Option auswählen

Funktion Nutzen Aufwand

mittel mittel
Name /F22/ Autostart-Option auswählen

Kurzbeschreibung Auf der GUI soll es die Möglichkeit ge-


ben, umzustellen, ob bei einem Neu-
start der Software der zuletzt ver-
wendete Ort weiter verwendet wer-
den soll, oder ob die Software warten
soll, bis ein Ort eingelesen wird und
dann die Bilderanalyse mit diesem
starten soll.

Auslöser Der Autostart-Button wird gedrückt

Ergebnis Die Autostart-Option wurde umge-


schaltet

Akteure User, System

Eingehende Infor- Ob die Autostart-Option an- oder aus-


mationen geschalten wurde

Ausgehende Infor- Ob das Speichern der Option erfolg-


mationen reich war

Vorbedingungen Das Webinterface wurde aufgerufen

Nachbedingungen Beim nächsten Start der Software


verhält sich die Kamera anders

Priorität Niedrig

Seite 31 von 79
Pflichtenheft: Counting Humans v1.0

6.3.3 /F28/ Person hinzufügen

Funktion Nutzen Aufwand

mittel Hoch
Name /F28/ Person hinzufügen

Kurzbeschreibung Die Software soll die Fähigkeit haben,


eine neue Person kennen zu lernen.

Auslöser Betätigen eines Buttons in der GUI

Ergebnis Eine neue Person wurde hinzugefügt

Akteure System, User

Eingehende Infor- Name, Bild/er


mationen

Ausgehende Infor- Ob die Person erfolgreich gespeichert


mationen werden konnte

Vorbedingungen Die Person ist noch nicht abgespei-


chert

Nachbedingungen Die Person ist abgespeichert

Priorität Niedrig

Seite 32 von 79
Pflichtenheft: Counting Humans v1.0

6.3.4 /F29/ Person bearbeiten

Funktion Nutzen Aufwand

mittel niedrig
Name /F29/ Person bearbeiten

Kurzbeschreibung Es soll möglich sein, eingelesene Per-


sonen mittels GUI zu bearbeiten. Man
soll den Namen ändern können, so-
wie neue Bilder hochladen können.

Auslöser Betätigen eines Buttons in der GUI

Ergebnis Eine existierende Person erhält neue


Informationen

Akteure System, User

Eingehende Infor- Name, Bild/er


mationen

Ausgehende Infor- Ob die Person einen anderen Namen


mationen hat oder neu(e) Bild/er besitzt

Vorbedingungen Die Person existiert bereits

Nachbedingungen Die Person wird neu gespeichert

Priorität Niedrig

Seite 33 von 79
Pflichtenheft: Counting Humans v1.0

6.3.5 /F291/ Person löschen

Funktion Nutzen Aufwand

niedrig mittel
Name /F291/ Person löschen

Kurzbeschreibung Die Software soll die Möglichkeit bie-


ten, gespeicherte Personen mithilfe
des Webinterfaces aus der Datenbank
zu löschen. Dabei wird der User nach
Bestätigung gefragt, da dadurch auch
Statistiken verloren gehen.

Auslöser Betätigen des Buttons

Ergebnis Ausgewählte Person/en wurden ge-


löscht

Akteure System, User

Eingehende Infor- Auswahl an Person/en


mationen

Ausgehende Infor- Person ist nicht mehr abrufbar


mationen

Vorbedingungen Die Person/en existiert/existieren

Nachbedingungen Die Person/en ist/sind nicht mehr auf


der Liste sichtbar und auch nicht
mehr abrufbar

Priorität Niedrig

Seite 34 von 79
Pflichtenheft: Counting Humans v1.0

6.3.6 /F33/ Menschen-Identifikations-Statistiken erstellen

Funktion Nutzen Aufwand

niedrig mittel
Name /F33/ Menschen-Identifikations-Sta-
tistiken erstellen

Kurzbeschreibung Die Software soll auch die identifizier-


ten Personen über einen Zeitraum an-
zeigen können.

Auslöser User ruft die Mensch-Identifikations-


Statistik am Webinterface auf

Ergebnis Statistiken werden angezeigt

Akteure System, User

Eingehende Infor- Die Daten, die dargestellt werden sol-


mationen len

Ausgehende Infor- Eine Statistik, die die alle anwesen-


mationen den Menschen an allen Orten im Zeit-
verlauf anzeigt

Vorbedingungen Es sind Daten vorhanden und der U-


ser kann das Web-Interface aufrufen
(richtiges Passwort wurde eingege-
ben)

Nachbedingungen Die Statistiken werden angezeigt

Priorität Niedrig

Seite 35 von 79
Pflichtenheft: Counting Humans v1.0

6.3.7 /F34/ Statistiken automatisch aktualisieren

Funktion Nutzen Aufwand

mittel hoch
Name /F34/ Statistiken automatisch aktuali-
sieren

Kurzbeschreibung Werden neue Daten aufgenommen,


soll sich die angezeigte Statistik auch
entsprechend aktualisieren und diese
anzeigen.

Auslöser Neue Daten werden aufgenommen

Ergebnis Die Daten werden bei allen Clients,


die gerade eine Statistik am Webin-
terface geöffnet haben, aktualisiert.

Akteure System, Client

Eingehende Infor- Die aktuellen Daten


mationen

Ausgehende Infor- Die neuen Statistiken


mationen

Vorbedingungen Mindestens ein Client hat eine Statis-


tik am Webinterface geöffnet.

Nachbedingungen keine

Priorität Niedrig

Seite 36 von 79
Pflichtenheft: Counting Humans v1.0

6.3.8 /F37/ Testbild automatisch aktualisieren

Funktion Nutzen Aufwand

mittel hoch
Name /F37/ Testbild automatisch aktualisie-
ren

Kurzbeschreibung Das Testbild im Webinterface soll sich


automatisch aktualisieren, sobald ein
neues vorhanden ist.

Auslöser Ein neues Kamerabild wurde aufge-


nommen.

Ergebnis Das Bild wurde bei allen Clients, die


die Testbild-Seite anzeigen, aktuali-
siert.

Akteure System, Client

Eingehende Infor- Das neue Kamerabild


mationen

Ausgehende Infor- Die aktualisierte Testbild-Seite des


mationen Webinterfaces

Vorbedingungen Mindestens ein Client zeigt die Test-


bild-Seite des Webinterfaces an.

Nachbedingungen keine

Priorität Niedrig

Seite 37 von 79
Pflichtenheft: Counting Humans v1.0

6.3.9 /F38/ Über unbekannte Person benachrichtigen

Funktion Nutzen Aufwand

mittel hoch
Name /F38/ Über unbekannte Person be-
nachrichtigen

Kurzbeschreibung Es soll auf der grafischen Oberfläche


eine Benachrichtigung geben, wenn
eine unbekannte Person im Bild ist. Es
soll eine Benachrichtigung für jede
unbekannte Person geben, aber nicht
pro Frame, sondern immer dann,
wenn die unbekannte Person neu
auftaucht.

Auslöser Eine unbekannte Person taucht neu


im Kamerabild auf.

Ergebnis Eine Warnung wurde am Webinter-


face ausgegeben.

Akteure System

Eingehende Infor- Personen-Identifikationen


mationen

Ausgehende Infor- Warnung am Webinterface


mationen

Vorbedingungen Mindestens ein Client hat das Webin-


terface aufgerufen

Nachbedingungen Die unbekannte Person kann als be-


kannte Person hinzugefügt werden.

Priorität Niedrig

Seite 38 von 79
Pflichtenheft: Counting Humans v1.0

6.3.10 /F43/ Aktuell anwesende Menschen als xml abrufen

Funktion Nutzen Aufwand

mittel mittel
Name /F43/ Aktuell anwesende Menschen
als xml abrufen

Kurzbeschreibung Die Namen aller im letzten Frame an-


wesenden Menschen sollen als xml-
File abgefragt werden können.

Auslöser Gesendete Anfrage

Ergebnis Namen aller zuletzt anwesenden


Menschen wurden als xml-File gesen-
det

Akteure Client, System

Eingehende Infor- Die Anfrage des Users nach allen Na-


mationen men aller zuletzt anwesenden Men-
schen

Ausgehende Infor- Die Namen aller zuletzt anwesenden


mationen Menschen

Vorbedingungen Es wurde bereits mindestens ein


Frame verarbeitet

Nachbedingungen keine

Priorität Niedrig

Seite 39 von 79
Pflichtenheft: Counting Humans v1.0

6.3.11 /F45/ Alle bekannten Personen als xml abrufen

Funktion Nutzen Aufwand

mittel mittel
Name /F45/ Alle bekannten Personen als
xml abrufen

Kurzbeschreibung Es soll möglich sein, die Namen aller


bekannten Personen als xml-File ab-
zurufen.

Auslöser Gesendete Anfrage

Ergebnis Namen aller bekannten Personen


wurden als xml-File gesendet

Akteure Client, System

Eingehende Infor- Die Anfrage nach den Namen aller be-


mationen kannten Personen

Ausgehende Infor- Die Namen aller bekannten Personen


mationen

Vorbedingungen keine

Nachbedingungen keine

Priorität Niedrig

Seite 40 von 79
Pflichtenheft: Counting Humans v1.0

6.3.12 /F48/ Alle identifizierten Menschen in einem Zeitraum als xml ab-
rufen

Funktion Nutzen Aufwand

mittel mittel
Name /F48/ Alle identifizierten Menschen in
einem Zeitraum als xml abrufen

Kurzbeschreibung Es soll möglich sein, die Namen aller


identifizierten Personen zu jedem ge-
messenen Zeitpunkt in einem angege-
benen Zeitintervall zurückzugeben.
Der Ort der Messung soll ebenfalls
angegeben sein.

Auslöser Gesendete Anfrage

Ergebnis Ein xml-File mit Namen aller Personen


sowie dem Ort aller Messungen in
dem angegebenen Zeitintervall

Akteure Client, System

Eingehende Infor- Startzeitpunkt, Endzeitpunkt


mationen

Ausgehende Infor- Namen aller identifizierten Personen


mationen und Ort sowie genauen Zeitpunkt von
jeder Messung im Zeitintervall

Vorbedingungen keine

Nachbedingungen keine

Priorität Niedrig

Seite 41 von 79
Pflichtenheft: Counting Humans v1.0

6.3.13 /F49/ Identifizierten Menschen an einem bestimmten Ort in einem


Zeitraum als xml abrufen

Funktion Nutzen Aufwand

mittel mittel
Name /F49/ Identifizierten Menschen an ei-
nem bestimmten Ort in einem Zeit-
raum als xml abrufen

Kurzbeschreibung Unter Angabe eines Ortes, eines


Start- und eines Endzeitpunktes soll
man alle identifizierten Menschen
und genauer Zeitpunkt jeder Mes-
sung in diesem Zeitraum abrufen kön-
nen.

Auslöser Gesendete Anfrage

Ergebnis Namen aller Menschen und genauer


Zeitpunkt jeder Messung im angege-
benen Zeitintervall am angegebenen
Ort wurden als xml-File versendet

Akteure Client, System

Eingehende Infor- Ort, Startzeitpunkt, Endzeitpunkt


mationen

Ausgehende Infor- Namen aller Menschen und genauer


mationen Zeitpunkt jeder Messung im angege-
benen Zeitintervall am angegebenen
Ort

Vorbedingungen keine

Nachbedingungen keine

Priorität Niedrig

Seite 42 von 79
Pflichtenheft: Counting Humans v1.0

6.3.14 /F53/ Aktuell anwesende Menschen als json abrufen

Funktion Nutzen Aufwand

mittel mittel
Name /F53/ Aktuell anwesende Menschen
als json abrufen

Kurzbeschreibung Die Namen aller im letzten Frame an-


wesenden Menschen sollen als json-
File abgefragt werden können.

Auslöser Gesendete Anfrage

Ergebnis Namen aller zuletzt anwesenden


Menschen wurden als json-File gesen-
det

Akteure Client, System

Eingehende Infor- Die Anfrage des Users nach allen Na-


mationen men aller zuletzt anwesenden Men-
schen

Ausgehende Infor- Die Namen aller zuletzt anwesenden


mationen Menschen

Vorbedingungen Es wurde bereits mindestens ein


Frame verarbeitet

Nachbedingungen

Priorität Niedrig

Seite 43 von 79
Pflichtenheft: Counting Humans v1.0

6.3.15 /F55/ Alle bekannten Personen als json abrufen

Funktion Nutzen Aufwand

mittel mittel
Name /F55/ Alle bekannten Personen als
json abrufen

Kurzbeschreibung Es soll möglich sein, die Namen aller


bekannten Personen als json-File ab-
zurufen.

Auslöser Gesendete Anfrage

Ergebnis Namen aller bekannten Personen


wurden als json-File gesendet

Akteure Client, System

Eingehende Infor- Die Anfrage nach den Namen aller be-


mationen kannten Personen

Ausgehende Infor- Die Namen aller bekannten Personen


mationen

Vorbedingungen keine

Nachbedingungen keine

Priorität Niedrig

Seite 44 von 79
Pflichtenheft: Counting Humans v1.0

6.3.16 /F58/ Alle identifizierten Menschen in einem Zeitraum als json ab-
rufen

Funktion Nutzen Aufwand

mittel mittel
Name /F58/ Alle identifizierten Menschen in
einem Zeitraum als json abrufen

Kurzbeschreibung Es soll möglich sein, die Namen aller


identifizierten Personen zu jedem ge-
messenen Zeitpunkt in einem angege-
benen Zeitintervall zurückzugeben.
Der Ort der Messung soll ebenfalls
angegeben sein.

Auslöser Gesendete Anfrage

Ergebnis Ein json-File mit Namen aller Perso-


nen sowie dem Ort aller Messungen
in dem angegebenen Zeitintervall

Akteure Client, System

Eingehende Infor- Startzeitpunkt, Endzeitpunkt


mationen

Ausgehende Infor- Namen aller identifizierten Personen


mationen und Ort sowie genauen Zeitpunkt von
jeder Messung im Zeitintervall

Vorbedingungen keine

Nachbedingungen keine

Priorität Niedrig

Seite 45 von 79
Pflichtenheft: Counting Humans v1.0

6.3.17 /F59/ Identifizierten Menschen an einem bestimmten Ort in einem


Zeitraum als json abrufen

Funktion Nutzen Aufwand

mittel mittel
Name /F59/ Identifizierten Menschen an ei-
nem bestimmten Ort in einem Zeit-
raum als json abrufen

Kurzbeschreibung Unter Angabe eines Ortes, eines


Start- und eines Endzeitpunktes soll
man alle identifizierten Menschen
und genauer Zeitpunkt jeder Mes-
sung in diesem Zeitraum abrufen kön-
nen.

Auslöser Gesendete Anfrage

Ergebnis Namen aller Menschen und genauer


Zeitpunkt jeder Messung im angege-
benen Zeitintervall am angegebenen
Ort wurden als json-File versendet

Akteure Client, System

Eingehende Infor- Ort, Startzeitpunkt, Endzeitpunkt


mationen

Ausgehende Infor- Namen aller Menschen und genauer


mationen Zeitpunkt jeder Messung im angege-
benen Zeitintervall am angegebenen
Ort

Vorbedingungen keine

Nachbedingungen keine

Priorität Niedrig

Seite 46 von 79
Pflichtenheft: Counting Humans v1.0

7. Produktdaten

7.1 Entitäten

7.1.1 /D10/ Orte


Der Ort, an dem die Messung stattgefunden hat.

7.1.2 /D20/ Datum und Zeitpunkt


Der Zeitpunkt, zu dem gezählt wurde.

7.1.3 /D30/ Menschenanzahl


Die gezählten Menschen zu einem bestimmten Zeitpunkt und an einem bestimmten Ort.

7.1.4 /D40/ Personen


Die nötigen Informationen der Menschen, die identifiziert werden können.

7.1.5 /D50/ Passwort


Das Passwort für das Webinterface und Lesezugriffe auf die Datenbank.

7.1.6 /D60/ Autostart-Option


Ob die Software bei einem Start sofort mit dem zuletzt gespeicherten Ort zu zählen begin-
nen soll oder warten soll, bis ein Ort eingegeben wurde und die Zählung manuell gestartet
wurde.

7.1.7 /D70/ Log-Daten


Die Log-Daten der Software über alle Fehler und sonstige wichtige Ereignisse.

Seite 47 von 79
Pflichtenheft: Counting Humans v1.0

7.2 Grafische Darstellung der Datenstruktur


Folgende Daten werden in folgender Struktur in der Datenbank abgelegt. Alle weiteren Da-
ten (Passwort, Autostart-Option, Log) werden in verschiedenen Files abgelegt.

7.2.1 ERD

Zeitpunkt
Bezeichnung Personen-
Datum anzahl

auf-
Ort 1 genommen N Messung
an

N
Name

Speicherort Person M Anwesenheit


Identifikations-
daten

Notiz: Da immer nur an einem Ort gleichzeitig aufgenommen werden kann, ist die Beziehung
zum Ort kein Teil des Primärschlüssels einer Messung.

7.2.2 Relationenmodell
ort(bezeichn)
messung(datum, zeitpunkt, ort.bezeichn, anzahl)
person(name, speicherort)
anwesenheit(messung.datum, messung.zeitpunkt, person.name)

7.2.3 Datentypen
Orts-Bezeichnung: Text
Messungs-Datum: Datum
Messungs-Zeitpunkt: Zeitpunkt
Messung-Personen-Anzahl: ganze Zahl
Personen-Name: Text
Personen-Daten-Speicherort: Text

Seite 48 von 79
Pflichtenheft: Counting Humans v1.0

8. Produktleistungen

/L10/ Erfolgsrate
Die Software soll in 80% der Fälle/Frames die Anzahl der Menschen korrekt erkennen kön-
nen.

/L20/ Datenumfang
Die gespeicherten Daten sollten immer dann erneuert werden, wenn sich die Anzahl der
Menschen ändert, um Platz zu sparen.

/L30/ Genauigkeit
Die Software sollte, in einem Frame je 5 Sekunden die Menschen zählen.

Seite 49 von 79
Pflichtenheft: Counting Humans v1.0

9. Benutzerschnittstelle
Die Benutzerschnittstelle wird als ein Webinterface / eine Webseite realisiert. Die gezeigten
Mockups sind grobe Entwürfe für die Anordnung der besprochenen UI-Elemente.

/B10/ Passwortabfrage
Sobald man die Webseite aufruft, wird man nach einem Passwort gefragt (/F110W/). Diese
Webseite enthält nur eine Aufforderung, das Passwort einzugeben, gefolgt von einem „Sen-
den“-Button.

Da die dazugehörige Funktion eine Wunschfunktion ist, wird diese Seite auch nur gebraucht,
wenn die Funktion implementiert wird.

Seite 50 von 79
Pflichtenheft: Counting Humans v1.0

/B20/ Startseite
Die Startseite ist die Webseite, auf die man nach Eingabe des Passwor-
Startseite tes oder Zugriff auf die Webschnittstelle kommt — außer der Benutzer
gibt direkt die URL einer Unterseite ein.
• Navigation
Navigation Die Navigation bietet Links zu den Daten, zum Verwalten der Orte
und Personen (falls implementiert) an.
Zählung • Zählung beenden / starten
beenden /
starten
Ein Button, der die Zählung beendet bzw. startet

Ort
• Ort auswählen
auswählen Eine Drop-Down-Liste, die es ermöglicht einen Ort aus zu wählen
oder einen neuen zu erstellen.
Autostart • Autostart
aktivieren / Dieser Toggle-Button aktiviert oder deaktiviert den Start einer
deaktivieren Zählung beim System/Hardware-Start.
• Testbilder
Testbilder
anzeigen Dieser Button leitet den Benutzer auf eine Unterseite weiter in der
ihm die Bilder die aufgenommen angezeigt werden, um die Lage
der Kamera zu justieren.

Dazu gibt es auch einen Graphen (rechts), der die aktuellen Werte der Zählung anzeigt.

Seite 51 von 79
Pflichtenheft: Counting Humans v1.0

/B30/ Testbilder
Auf dieser Unterseite werden die Frames, die die Kamera überträgt an-
Testbilder gezeigt, um die Justierung und Lage der Kamera leichter überprüfen zu
können.
• Navigation
Navigation Die Navigation bietet Links zu den Daten, zum Verwalten der Orte
und Personen (falls implementiert) an.
• Zurück
Zurück Dieser Button leitet den User auf die Startseite zurück.

Seite 52 von 79
Pflichtenheft: Counting Humans v1.0

/B40/ Datenansicht (Zählungen)


Auf die Datenansicht kommt man durch Betätigen des „Aufgezeichnete
Daten Daten“-Buttons in der Navigation oder durch Drücken des „Mehr…“-But-
tons beim Graphen.
• Navigation
Navigation Die Navigation bietet Links zur Startseite, den Daten, zum Verwal-
ten der Orte und Personen (falls implementiert) an.

Art der
• Art der Daten auswählen
Anzeige Eine Drop-Down-Liste zur Auswahl zwischen den Daten der Zäh-
lung und der Personenidentifikation (falls implementiert).
• Ort auswählen
Ort
auswählen Eine Drop-Down-Liste, die es ermöglicht den Ort, von dem man
die Daten sehen will, auszuwählen.
Start-/
• Von-Bis auswählen
Enddatum Auswahl des Zeitraumes, aus dem die Daten angezeigt werden sol-
auswählen len.
• Exportieren
Exportieren Die angezeigten Daten können in einem angebenden Datenformat
heruntergeladen/gespeichert werden.

Seite 53 von 79
Pflichtenheft: Counting Humans v1.0

/B50/ Datenansicht (Personen)


Auf die Datenansicht kommt man durch Betätigen des „Aufgezeichnete
Daten Daten“-Buttons in der Navigation oder durch Drücken des „Mehr…“-But-
tons beim Graphen.
• Navigation
Navigation Die Navigation bietet Links zur Startseite, den Daten, zum Verwal-
ten der Orte und Personen (falls implementiert) an.

Art der • Art der Daten auswählen


Anzeige Eine Drop-Down-Liste zur Auswahl zwischen den Daten der Zäh-
lung und der Personenidentifikation (falls implementiert).
• Ort auswählen
Ort
auswählen Eine Drop-Down-Liste, die es ermöglicht den Ort, von dem man
die Daten sehen will, auszuwählen.
• Person auswählen
Person Sollen die Daten sich auf eine Person beziehen statt auf den Zeit-
auswählen
punkt, kann man hier eine Person auswählen.

Start-/ • Von-Bis auswählen


Enddatum
auswählen
Auswahl des Zeitraumes, aus dem die Daten angezeigt werden sol-
len.
• Exportieren
Exportieren
Die angezeigten Daten können in einem angebenden Datenformat
heruntergeladen/gespeichert werden.

Seite 54 von 79
Pflichtenheft: Counting Humans v1.0

Wenn man eine Person auswählt, dann werden die Zeiträume aufgelistet (von-bis) in denen
diese Person am ausgewählten Ort war:

Seite 55 von 79
Pflichtenheft: Counting Humans v1.0

/B60/ Personen verwalten


Auf diese Unterseite kommt man über die Navigation. Auf dieser Seite
Personen werden die gespeicherten Personen (falls implementiert) angezeigt und
verwalten man kann diese verwalten.
• Navigation
Navigation Die Navigation bietet Links zur Startseite, den Daten, zum Verwal-
ten der Orte und Personen (falls implementiert) an.

Person • Person hinzufügen


hinzufügen Ein Button, der zu einer Unterseite führt, auf der man eine neue
Person abspeichern kann.
• Person/en löschen
Person/en
Diese Funktion kann man sowohl über einen Rechtslick auf eine
löschen
Person als auch über den Button aufrufen.
• Person bearbeiten
Person Diese Funktion kann man über einen Rechtsklick aufrufen und lei-
bearbeiten tet den User auf eine Unterseite weiter.

Seite 56 von 79
Pflichtenheft: Counting Humans v1.0

/B70/ Person hinzufügen/bearbeiten


Person Da diese Unterseiten sich sehr ähnlich sind, werden sie in der Beschrei-
hinzufügen / bung zusammengefasst. Man kommt auf diese Unterseite indem man
bearbeiten „Person hinzufügen“ bzw. „Person bearbeiten“ drückt.
• Navigation
Navigation Die Navigation bietet Links zur Startseite, den Daten, zum Verwal-
ten der Orte und Personen (falls implementiert) an.

[Bild] • [Bild] hinzufügen


hinzufügen Ein Button, der einen Dateiupload der Bilder für die Identifikation
ermöglicht.
• [Bild] löschen
[Bild]
Zuvor hochgeladene/gespeicherte Bilder können per Rechtsklick
löschen
gelöscht werden.
• Person speichern
Person
Dieser Button speichert die Änderungen / die neue Person im Sys-
speichern
tem ab und leitet den User auf die Hauptseite von „Personen ver-
walten“ zurück.

Seite 57 von 79
Pflichtenheft: Counting Humans v1.0

/B80/ Orte verwalten


Auf diese Unterseite kommt man über die Navigation. Auf dieser Seite
Personen werden die gespeicherten Personen (falls implementiert) angezeigt und
verwalten man kann diese verwalten.
• Navigation
Navigation Die Navigation bietet Links zur Startseite, den Daten, zum Verwal-
ten der Orte und Personen (falls implementiert) an.
• Ort hinzufügen
Ort
hinzufügen Ein Button, der einen Alert öffnet, in dem man nur den Namen des
neuen Ortes eintragen muss.
• Ort/e löschen
Ort/e löschen Diese Funktion kann man sowohl über einen Rechtslick auf einen
Ort als auch über den Button aufrufen.
• Ort umbenennen
Ort Diese Funktion kann man über einen Rechtsklick aufrufen. Die Ein-
umbenennen
gabe erfolgt über einen Alert an den User.

Da das Löschen eines Ortes auch alle Daten, die mit dem Ort verbunden sind, entfernt, wird
nachgefragt, ob das System diesen Ort wirklich entfernen soll.

Seite 58 von 79
Pflichtenheft: Counting Humans v1.0

10. Qualitätsbestimmungen
Nicht
Produktqualität Sehr gut Gut Normal
relevant
Funktionalität x
Angemessenheit x
Richtigkeit x
Interoperabilität x
Ordnungsmäßigkeit x
Sicherheit x
Zuverlässigkeit x
Reife x
Fehlertoleranz x
Wiederherstellbarkeit x
Benutzbarkeit x
Verständlichkeit x
Erlernbarkeit x
Bedienbarkeit x
Effizienz x
Zeitverhalten x
Verbrauchsverhalten x
Änderbarkeit x
Analysierbarkeit x
Modifizierbarkeit x
Stabilität x
Prüfbarkeit x
Übertragbarkeit x
Anpassbarkeit x
Installierbarkeit x
Konformität x
Austauschbarkeit x

Seite 59 von 79
Pflichtenheft: Counting Humans v1.0

11. Globale Testfälle

/T10/ Zählung starten


Die Zählung wird über den Button „Zählung beenden/starten“ auf dem Webinterface vom
User gestartet.

Button clicken

Benutzer Backend
Information über
geclickten Button
an Software
weitergeben

Machine Learning
Modell laden

Software

Menschen zählen

Statistik erstellen

Seite 60 von 79
Pflichtenheft: Counting Humans v1.0

/T20/ Ort angeben


Der User legt einen Ort der Zählung fest.

Ort über
Drop-Down Liste
auswählen

Benutzer Backend
Ausgewählten Ort
in json/xml speichern

Software über
ausgewählten Ort
benachrichtigen Software

Menschen zählen

Statistik erstellen

Seite 61 von 79
Pflichtenheft: Counting Humans v1.0

/T30/ Statistik ansehen


Der User sieht sich die Statistik, über einen Klick auf den entsprechenden Button (siehe
/B40/), an.

Button clicken

Benutzer Backend
Weiterleitung auf
Datenansicht

Darstellung der
Datenansicht-Webseite
Webinterface

Statistik anzeigen

Seite 62 von 79
Pflichtenheft: Counting Humans v1.0

/T40/ Datenart anzeigen lassen


Der Benutzer wählt über eine Drop-Down Liste eine der Datenarten zum Anzeigen aus.

Art auswählen

Benutzer Ausgewähltes an Backend


Webinterface weiterleiten

Daten aus der


Datenbank
an Webinterface
senden

Webinterface
Statistik anpassen

/T50/ Daten eines Ortes ansehen


Der Benutzer wählt über eine Drop-Down Liste den Ort aus, von welchem er die Daten sehen
möchte.

Ort auswählen

Benutzer Ausgewähltes an Backend


Webinterface weiterleiten

Daten aus der


Datenbank
an Webinterface
senden

Webinterface
Statistik anpassen

Seite 63 von 79
Pflichtenheft: Counting Humans v1.0

/T60/ Daten über einen Zeitraum ansehen


Der User wählt den Zeitraum aus, von welchem er die Statistik sehen möchte.

Zeitraum eintragen

Benutzer Ausgewähltes an Backend


Webinterface weiterleiten

Daten aus der


Datenbank
an Webinterface
senden

Webinterface
Statistik anpassen

Seite 64 von 79
Pflichtenheft: Counting Humans v1.0

/T70/ Person hinzufügen


Der User fügt eine Person über einen click auf einen Button auf der Unterseite „Personen
verwalten“ (/B60/) hinzu.

Click auf
"Person hinzufügen"

Benutzer Weiterleitung auf


Unterseite

Namen eingeben

Bild hochladen

Webinterface

Click auf
"Person speichern"

Weiterleitung auf
"Personen verwalten"

Backend

Speichern der
Daten

Seite 65 von 79
Pflichtenheft: Counting Humans v1.0

/T80/ Person löschen


Der User löscht eine Person aus der Liste über einen Klick auf den Button oder über rechts-
klick.

Entsprechender click

Benutzer Löschen der


ausgewählten Daten
Backend

/T90/ Namen einer Person ändern


Der User ändert den Namen einer Person über einen Klick auf „Person bearbeiten“.

Click auf
"Person bearbeiten"

Benutzer Weiterleitung auf


Unterseite

Namen ändern

Click auf
"Person speichern"

Webinterface

Weiterleitung auf
"Personen verwalten"

Speichern der
Daten

Backend

Seite 66 von 79
Pflichtenheft: Counting Humans v1.0

/T100/ Testbilder ansehen


Der User wechselt auf die Unterseite „Testbilder“ (/B30/) über die Navigation.

Navigation

Benutzer Weiterleitung auf


Unterseite

Testbild vom
Backend abfragen
Webinterface
Einen Frame
der Kamera
senden

Backend

Frame anzeigen

Seite 67 von 79
Pflichtenheft: Counting Humans v1.0

/T110/ Ort hinzufügen


Der User clickt auf den Button „Ort hinzufügen“ auf der Unterseite „Orte verwalten“ (/B80/),
um einen Ort hinzuzufügen.

Click auf
"Ort hinzufügen"

Benutzer Alert mit Eingabe


anzeigen

Ortnamen eingeben
Webinterface

Click auf "OK"

Backend

Ort speichern

Seite 68 von 79
Pflichtenheft: Counting Humans v1.0

/T120/ Ort löschen


Der User löscht einen Ort aus der Liste über Rechtsklick oder einen Klick auf den Button
„Ort/e löschen“.

Entsprechender click

Abfrage ob
Benutzer Ort wirklich
gelöscht werden
soll

Webinterface

Click auf "Ja"

Ausgewählte(n) Ort/e
löschen

Backend

Seite 69 von 79
Pflichtenheft: Counting Humans v1.0

/T130/ Ort umbenennen


Der User ändert den Namen eines Ortes über Rechtsklick auf den bestimmten Ort.

Rechtsclick auf Ort

Benutzer Alert mit Eingabe


anzeigen

Webinterface

Eingabe des neuen Namens

Click auf "OK"

Daten aktualisieren

Backend

/T140/ Zählung ausgeben


Der REST Client ruft die API auf um die momentane Personenanzahl zu finden

Zählung abfragen

REST Client
Zählung senden

Backend

Seite 70 von 79
Pflichtenheft: Counting Humans v1.0

/T150/ SQL Anfrage senden


Der Benutzer ruft über einen SQL Client die Datenbank direkt auf und fragt einen Datensatz
mit einer SELECT Anweisung an

SQL Select Abfrage

Benutzer
Entsprechenden Datensatz ausgeben Backend

/T160/ Zählungsverlauf abrufen


Der REST Client fragt die Zählungswerte über einen bestimmten Zeitraum ab

Zeitraum abfragen

REST Client
Rückgabe als XML oder JSON liste

Backend

Seite 71 von 79
Pflichtenheft: Counting Humans v1.0

12. Vertragsgegenstand

12.1 Rechte/Lizenzen
Die Software gehört nach Abschluss des Projekts dem Projektteam, wird aber auch von der
ITSV benutzt.

12.2 Lieferumfang
Die ITSV stellt die Hardware, auf der das System betrieben wird (Kamera und Controller);
daher gehört die Hardware auch der ITSV. Das Produkt wird als lauffähiges, installiertes Sys-
tem übergeben. Zusätzlich wird der Source-Code übergeben bzw. bekommt die ITSV Zugriff
auf den auf einem Online-Service wie z.B. Github gespeicherten Code. Zusätzlich wird es eine
ausführliche Dokumentation darüber geben, wie das System funktioniert und wie man wei-
tere Menschen-zähl-Systeme einrichtet.

12.3 Produktbezogene Leistungen


Am Ende des Projekts wird die Hardware mit Software darauf bei der ITSV installiert und dort
getestet.

Seite 72 von 79
[1]
Counting
Humans
13. Projektplanung
Pflichtenheft: Counting Humans

[1.5]
[1.1] [1.2] [1.3] [1.4] [1.6]
Module und
13.1 Projektstrukturplan

Projektmanagement Hardwareeinrichtung Datasets Modell Abnahme


Schnittstellen

[1.1.0] [1.3.1] [1.4.1] [1.5.1] [1.6.1]


[1.2.1]
Start / Pflichtenheft „Menschen erkennen“ Machine Learning- Module und Dokumentation
Controller aufsetzen Dataset erzeugen Schnittstellen designen
vollständig Modell erstellen vervollständigen

[1.2.2] [1.3.2] [1.5.2] [1.6.2]


[1.1.1] [1.4.2]
Kameraverbindung „Menschen zählen“ Datenspeicher Software auf den
Projektkoordination Modell trainieren
einrichten Dataset erzeugen einrichten Controller übertragen

Seite 73 von 79
[1.2.3] [1.3.3] [1.5.3] [1.6.1]
[1.1.2] „Menschen [1.4.3]
Hardware identifizieren“ Dataset
Datenspeicher- Gesamttests
Projektcontrolling Modell validieren
eingerichtet erzeugen Software schreiben durchführen

[1.5.4]
[1.1.3] [1.3.4] [1.4.4] [1.6.1]
Datenabfrage-
Projekthandbuch Datasets erzeugt Modell fertig System installieren
Software schreiben

[1.1.4]
[1.5.5] [1.6.1]
Projekt-
Webserver einrichten Installation testen
Präsentationen

[1.5.6]
[1.1.5]
Statistiken- und GUI-
Projektmeetings
Software schreiben

[1.1.6] [1.5.7]
Veröffentlichung
Abnahme / / Module und
Projektende Schnittstellen umgesetzt
v1.0
Pflichtenheft: Counting Humans v1.0

13.2 Meilensteintermine
Meilenstein Deliverable Datum

Projektstart/Pflichten- Das Pflichtenheft 24.10.2018


heft vollständig

Hardware eingerichtet Aufgesetzter Controller, der mit Kamera 03.11.2018


verbunden ist

Datasets erzeugt Die einzelnen Datasets 21.11.2018

Modell fertig Das fertig trainierte Machine-Learning Mo- 17.12.2018


dell

Module und Schnitt- Die Module und aufgesetzten Schnittstellen 14.12.2018


stellen umgesetzt

Projektende/Abnahme Das fertige System 16.01.2018

Seite 74 von 79
Pflichtenheft: Counting Humans v1.0

13.3 Balkenplan

Seite 75 von 79
Pflichtenheft: Counting Humans v1.0

14. Sonstiges

14.1 Datenschutz
Die aufgenommen Kamerabilder sollen explizit nicht langfristig gespeichert werden, also
nicht länger, als zur Verarbeitung durch die Software unbedingt nötig.

14.2 Glossar

Begriff Erklärung

Raspberry Pi Ein Raspberry Pi ist ein sogenanntes „System on a Chip“. Es handelt


sich dabei um ein Computersystem, dass von der Art her durchaus
mit einem PC oder Server vergleichbar ist, nur als Computersystem
auf einer einzigen Platine realisiert ist und daher auch leistungs-
schwächer ist. Er eignet sich besonders für Prototypen von kleine-
ren Computersystemen.

Hochsprache Programmiersprache, mit denen nicht-hardwarenahe Anwendun-


gen programmiert werden und die objektorientierte Programmie-
rung unterstützt.

Stream „Datenfluss“; etwas, um wiederholt Daten stückweise zu übertra-


gen

Package Vorgefertigtes und eventuell vorkompiliertes Software-Paket, das


ohne weiteren Aufwand verwendet werden kann

kompilieren Der Vorgang, Quellcode in ausführbaren Maschinencode umzu-


wandeln

Quellcode / Ein für Menschen lesbarer code, der Anweisungen an einen Rech-
Sourcecode ner darstellt

Library Vorgefertigte Programmier-Funktionen, die in Programmen ver-


wendet werden können

Commandline Eine grundlegende Möglichkeit, mit einem Computer zu interagie-


ren. Die Commandline ist textbasiert, sie erwartet sich vordefi-
nierte Befehle in einer bestimmten Syntax und liefert das ebenfalls
in Textform Ergebnis zurück.

Seite 76 von 79
Pflichtenheft: Counting Humans v1.0

Python Eine objektorientierte Hochsprache, die in C realisiert ist. Python-


Quellcode muss nicht kompiliert werden, sondern wird vom soge-
nannten Interpreten in-time in Maschinencode umgewandelt.

C++ Eine objektorientierte Hochsprache, die gleichzeitig auch hard-


warenah verwendet werden kann. C++ ist eine Weiterentwicklung
von C.

C Eine hardwarenahe Programmiersprache, die für verschiedenste


Computer kompiliert werden kann. Der große Vorteil von C ist, dass
sich damit hardwarenahe Programme sehr einfach für unterschied-
lichste Computersysteme schreiben lassen.

Machine-Learning Machine-Learning ist eine Methodik, dem Computer auf Basis von
Trainingsdaten ein bestimmtes Verfahren „beizubringen“. Es ba-
siert auf Mustererkennung und dem mathematischen Prinzip der
Regression.

Framework Ein Framework kann man in der Softwareentwicklung als eine


Sammlung vieler kleiner Programmstücke sehen. Diese stellen kein
eigenständiges Programm dar. Sie sind dazu gedacht, sie in anderen
Programmen wiederzuverwenden, um sich die Arbeit zu erleich-
tern.

Interface / Ist etwas, dass das Zusammenarbeiten von zwei Technologien, o-


Schnittstelle der, im Falle eines User Interfaces (UI), von Mensch und Programm,
erlaubt. Es stellt die Verbindung zwischen diesen beiden her.

Model Ein Model im Sinne des Machine-Learnings ist die Ziel-Funktion. Es


ist das, was die Verbindung zwischen den Input-Werten und den
erwarteten Output-Werten herstellt bzw. was definiert, wie aus
den Input-Werten die Output-Werte definiert werden.

ARM-Architektur Eine bestimmte Bauweise bzw. ein bestimmter Aufbau von Compu-
tern

Relationale Da- Eine Art der Datenspeicherung, bei der die Daten in einer vorher
tenbank festgelegten Struktur in Form von Tabellen abgelegt werden. Jede
Zeile stellt einen Datensatz dar, jeder Datensatz ist eine Menge von
Eigenschaften.

Datenbank-Mana- Eine Software, die relationale Datenbanken verwaltet und darauf


gementsystem achtet, dass beim Speichern die Struktur der Daten erhalten bleibt.

Seite 77 von 79
Pflichtenheft: Counting Humans v1.0

SQL Structured Query Language ist eine Sprache, mit der relationale Da-
tenbanken aufgebaut und abgefragt werden können.

HTTP Hypertext Transfer Protocol ist eine Abmachung, in welcher Form


Abfragen durch das Internet verschickt werden müssen.

Server Bezeichnet einerseits einen physischen Rechner oder andererseits


ein Programm, der/das etwas (z.B. Daten) für andere Rechner be-
reitstellen.

Client Bezeichnet einen Rechner, der (in dem betrachteten Anwendungs-


fall) etwas von einem Server abfragt.

API Das Application Programming Interface ist eine Schnittstelle, um


auf Quellcode-Ebene auf bestehende Software-Stücke zuzugreifen
und diese zu benutzen.

json JavaScript Object Notation ist eine Schreibweise, um Daten in Text-


form abzulegen. Von JavaScript kann dieser Code ohne weitere Um-
wandlungen interpretiert werden.

xml Extensible Markup Language ist eine Möglichkeit, um Daten textba-


siert zu speichern und ihnen dabei Zusatzinformationen mitzuge-
ben.

Webserver Eine Software, die Websites bereitstellt

HTML Hypertext Markup Language ist eine xml-ähnliche Sprache, um


Webseiten zu beschreiben.

css Cascading Style Sheet sind Anweisungen, die einem HTML-Code


seine grafische Gestaltung verleihen.

JavaScript Ist eine Websprache, mit der Webseiten clientseitig manipuliert


werden können (das heißt, der JavaScript-Code wird auf dem Cli-
ent-Rechner ausgeführt).

Frame Ein Standbild aus einem Video.

GUI „Graphical User Interface“, eine Benutzeroberfläche die oft auch


für unerfahrene Benutzer gut zu verwenden sein soll.

Seite 78 von 79
Pflichtenheft: Counting Humans v1.0

Webinterface Ein User Interface welches über das Netz aufgerufen werden kann,
z.B. über einen Webserver.

GitHub Ein Online-Dienst der es ermöglicht Entwicklungsprojekte online zu


speichern und so Zusammenarbeit zu vereinfachen.

Seite 79 von 79

Das könnte Ihnen auch gefallen