Literatursuche Bachelorarbeit Abbildungsregeln GUI

JC

Neues Mitglied
Moin,

ich studiere im 6.Semester Wirtschaftsinformatik und schreibe momentan meine Bachelor-Thesis zum Thema "Herleiten von Abbildungsregeln eines Fachklassenmodells zur grafischen Oberfläche und deren prototypische Implementierung". Mein Ziel soll es sein, Abbildungsregeln in der Form "boolean wird abgebildet auf eine CheckBox", "Eine 1:1-Beziehung lässt sich am Besten in der Form ... darstellen" aufzustellen.
Leider sieht es mit Literatur zu dem Thema mager aus. Ich habe lediglich Bücher von Helmut Balzert gefunden, wo er zeigt, wie man systematisch eine grafische Oberfläche aus einem Fachmodell herleiten kann. Es gibt ja auch bereits einige Frameworks(MetaWidget,OpenXava,Naked Objects), welche mir auf Knopfdruck eine Oberfläche generieren. Nur leider ist nicht ersichtlich, woher die ihre Ideen haben. Es geht also viel mehr um die Konzepte/Ideen hinter den Frameworks und nicht um die Umsetzung.

Habt Ihr euch schon mal mit dem Thema beschäftigt und könnt mir Literatur empfehlen?

Mit freundlichen Grüßen

JC
 
Zuletzt bearbeitet von einem Moderator:

slawaweis

Bekanntes Mitglied
Hallo JC,

ich kenne jetzt direkt keine Literatur, welche sich mit so einem Thema beschäftigt. Aber vielleicht kann man das Thema einfach anders betrachten.

Der Begriff "Fachklassenmodell" musst Du besser präzisieren, den dieser sagt gar nichts aus. Normalerweise gibt es als erstes Daten. Nackte, pure Daten, wie Namen, Adressen, E-Mails, Preise, Texte, Bilder, Dateien und so weiter. Daten und ihre Art kann man auch ohne einer Programmiersprache beschreiben, z.B. auf Papier oder in MS Word.

Der nächste Schritt ist, diese Daten in ein Programmstrukturmodell zu übertragen. Dabei stellt sich gleich die Frage, auf Basis welcher Anforderungen wird dieses Modell entwickelt. Wie sollen die Daten und für welchen Zweck repräsentiert werden? Wenn es z.B. eine Klasse Adresse gibt, was beinhaltet diese? Ist die E-Mail ein String oder eine eigene Klasse? Wie viele Telefonnummern nimmt die Adresse auf? Wie wird es gespeichert, in Datenbanken oder in Dateien? Wie werden die Daten bearbeitet? Welche Regeln gibt es für die Daten, also z.B. Gültigkeit, Vollständigkeit?

Wenn jetzt die Datenrepräsentation als Programmstruktur ausgearbeitet ist und die Regeln für die Bearbeitung der Daten fest stehen, dann kann man dafür eine GUI bauen. Doch gleich vorweg, ein 1:1 Mapping ist immer der falscheste Weg, den man gehen kann. Die Datenrepräsentation dient dem effektivstem Strukturieren der Daten für das jeweilige Problem. Eine GUI dient normalerweise als Schnittstelle zwischen Daten/Programmlogik und Mensch. Ein 1:1 Mapping würde bedeuten, dass man z.B. beim Einkauf auf Amazon nur langweilige graue Tabellen zu sehen bekommt, wo in jeder Zeile ein Artikel steht, mit allen Informationen die dazu gehören. Rein vulkanisch gesehen, reicht es für den Einkauf aus. Aus der menschlichen Sicht wäre es Humbug. Die Menschen brauchen eine Darstellung, die ihren Verständnis entspricht (und schön bunt ist), also eine Abbildung.

Es gibt jetzt keine allgemeinen Regeln, wie diese Abbildung auszusehen hat. Es kommt immer auf den Zweck an, welchen die Abbildung erfühlen muss. Am Ende kann es sogar mehrere UI-Abbildungen von den selben Daten geben. Eine ist z.B. für das Management, eine für die Administratoren, eine für die Kunden. Jede Abbildung hat bestimmte Daten, welche angezeigt werden und welche nicht. Einige werden sogar vorher umgewandelt oder neu berechnet, weil sie nur in der GUI benötigt werden, aber nicht im Datenbestand.

Bis jetzt ging es um die Abbildung Daten->GUI. Hinzu kommt der andere Rückweg, GUI->Daten. Wenn der Anwender über die GUI irgendwas macht, müssen daraus gültige Daten werden und in den Datenbestand eingepflegt werden. Wenn man z.B. im Internet irgendwo ein Formular ausfühlt, ist es noch nicht fertig, bis alle mit *-markierten Felder richtig ausgefühlt sind. Erst dann werden auch die Daten verändert. Ansonsten werden diese verworfen, obwohl einige Teilelemente vielleicht gültig sind.

Es sind jetzt folgende Bereiche wichtig: nackte Daten, Datenrepräsentation, Datenbearbeitungsregeln, Abbildungsregeln hin und zurück und das Design einer GUI. Das ist alles entscheidend, wenn man sich mit der Abbildung eines "Fachklassenmodell" auf eine GUI beschäftigt. Dabei sind grundsätzliche Fragen zu beantworten. Was war zuerst da? Die Datenrepräsentation oder die GUI und das jeweils andere muss darauf angepasst werden? Wer wird die GUI nutzen? Wer wird die Daten warten?

So musst Du an dein Thema von zwei Seiten herangehen: was ist eine gute Datenrepräsentation für bestimmte Daten im Computer(-speicher) und was ist eine gute GUI für die Anwender, welche diese nutzen werden/müssen? Die Abbildungen (auch verschiedene für den selben Zweck), welche das eine auf das andere abbilden und zurück, entstehen dann von alleine, weil diese von den Definitionen der beiden Enden abhängen.

So würde ich mich mit der Literatur zu Datenstrukturen, Datenbanken, Datenformaten und dem Design(!= Programmierung) von GUIs aus der Sicht der Anwender beschäftigen. Zusätzlich ist wichtig auszuarbeiten und zu zeigen, was für konkrete Daten man eigentlich bearbeiten will und wer die konkreten Anwender sind, welche mit der fertigen GUI arbeiten wollen.

Slawa
 
G

Gast2

Gast
Kann meinem Vorredner nur zustimmen!

Was du vielleicht auch mal anschauen solltest, da es eine mögliche Realisierung der Daten/GUI Beziehung darstellt sind MVC Patterns. (Model View Controller).

Kann wahrscheinlich beim Verständnis deutlich helfen.
 

JC

Neues Mitglied
Namd,

vielen Dank für euere Antworten.

Ich dacht "Fachklassenmodell" ist nen gängiger Begriff. Quasi ein fachliches Klassendiagramm, was durch die Gespräche mit den "domain experts" entsteht. Die technische Realisierung ist da zweitrangig.

Hab mir jetzt ma nen Fachklassenmodell aus nem Fachbuch genommen, welches eine große Vielfalt an Beziehungen, Multipliziäten und Datentypen hat. Werd mir jetzt ma Gedanken machen, wie man die Einzelnen Bestandteile in einer Oberfläche darstellen könnte.
hmmm MVC...stimmt da könnte man auch nochma gucken.
Danke!

mfg
JC
 

Neue Themen


Oben