Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 717

Warning: Invalid argument supplied for foreach() in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 718

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 717

Warning: Invalid argument supplied for foreach() in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 718

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 717

Warning: Invalid argument supplied for foreach() in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 718

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 717

Warning: Invalid argument supplied for foreach() in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 718

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739
Optimaler Entscheidungsbaum: Pflichtenheft – It2010-g1

Optimaler Entscheidungsbaum: Pflichtenheft


Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739
Aus It2010-g1
Wechseln zu: Navigation, Suche
(Glossar)
(Systemübersicht und -architektur)
Zeile 168: Zeile 168:
  
 
== Systemübersicht und -architektur ==
 
== Systemübersicht und -architektur ==
=== Übersicht über das System ===  
+
=== Übersicht über das System ===
 +
Das Programm besteht hauptsächlich aus einem Controller für die Funktionalität, der View für die Interaktion mit dem Nutzer und dem Model zum Verwalten der Daten. Desweiteren wird ein Observern Pattern verwendet.
 +
 
 
=== Systemarchitektur ===  
 
=== Systemarchitektur ===  
<b>Dieses Kapitel sollte einen groben Überblick über die erwartete Systemarchitektur geben, der die Verteilung der Funktionen auf die Systemmodule zeigt. Wiederverwendete Komponenten sollten gekennzeichnet werden.</b>
+
Das folgende Klassendiagramm zeigt, in vereinfachter Weise, die komplette Systemarchitektur. Es wurde das Observer-Pattern benutzt. Verschiedene statische und view-Klassen wurden weggelassen.
 +
 
 +
[[Datei:Klassendiagramm_Systemarchitektur.png | 1150px]]
 +
 
 +
Die wichtigsten Elemente der Architektur sind:
 +
* die '''View''',
 +
* das '''Model''',
 +
* und der '''Controller'''.
  
 
=== Schnittstellen des Systems ===
 
=== Schnittstellen des Systems ===
 +
 +
==== View ====
 +
Die Schnittstelle zwischen dem Programm und dem Nutzer wird von der View gestellt<br>
 +
Die View/GUI ist zur grfischen Darstellung und zur dierekten interaktion mit dem Nutzer verantwortlich. Neben der
 +
* Hauptklasse '''"View"'''
 +
gehören noch die Klasse
 +
* '''"TableView"''' (die Tabellenansicht),
 +
* '''"TreeView"'''' (die Baumansichten),
 +
** '''"TreeZoomView"''' (der Zoom eines Bäume),
 +
*** '''"TreePainter"''' (die gezeichnete darstellung eines Baumes)
 +
** '''"TreeDetails"''' (die Informationen eines Ausgewählten Knotens, die neben dem Baum dargestellt werden)
 +
* '''"FullScreenTreeView"''' (die Baumansicht für den Presentationsmodus)
 +
dazu.<br>
 +
Die Klassen View, TableView und  TreeView beobachten jeweils als Observer das Model.
 +
 +
==== Model ====
 +
Das Model besitzt die Tabelle, den interaktiven Baum und den automatischen Baum. Es beobachtet als Observer die Tabelle und die Bäume und wird als Subject vom Controller und von mehreren Klassen der View beobachtet.<br>
 +
Es dient somit als Schnittstelle zwischen dem Controller und den Daten (Tabelle und Bäume).
 +
 +
==== Controller ====
 +
Der Controller ist eine Klasse, die die Schnittstelle zwischen GUI und Funktionalität herstellt, damit diese beiden Bereiche nicht vermischt werden. Dabei stellt der Controller selbst auch einen Teil der Funktionalität dar.<br>
 +
Er beobachtet als Observer das Model.<br>
 +
Die View spricht den Controller an, wenn die Tabelle bearbeitet, eine Tabelle oder ein Baum geladen oder eine Tabelle oder ein Baum gesteichert werden soll. Der Controller greift dann auf die zuständigen Klassen zu. Somit muss die View immer nur auf dne Controller zugreifen und wird nicht weiter mit der Funktionalität des Programmes verstrickt.
  
 
== Systemanforderungen ==
 
== Systemanforderungen ==

Version vom 25. Mai 2012, 10:21 Uhr

Meine Werkzeuge
Namensräume
Varianten
Aktionen
Navigation
Projekte
Werkzeuge