DGLGUI Pflichtenheft: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
(Entwicklerprozesse (Prozesse des GUI))
Zeile 4: Zeile 4:
 
==Musskriterien==
 
==Musskriterien==
 
* Das GUI ist den Anwendern inklusive Source Code zur Verfügung zu stellen
 
* Das GUI ist den Anwendern inklusive Source Code zur Verfügung zu stellen
 
 
* Das GUI darf nicht auf bestimmte Betriebssysteme oder Bibliotheken festgelegt werden, sondern muss für Funktionen, die Bibliotheks- oder betriebssystemspezifischen Code benötigen, einen Wrapper (ein Hilfsprogramm) verwenden
 
* Das GUI darf nicht auf bestimmte Betriebssysteme oder Bibliotheken festgelegt werden, sondern muss für Funktionen, die Bibliotheks- oder betriebssystemspezifischen Code benötigen, einen Wrapper (ein Hilfsprogramm) verwenden
 
+
* Das GUI soll mindestens von Pascal-Anwendungen genutzt werden können
* Das GUI soll von Pascal-Anwendungen genutzt werden können
+
* Die Benutzer-Interaktionen und die GUI-Reaktionen sind dem allgemeinen Standard (Verhalten von Windows) anzupassen
 
 
* Die Benutzer-Interaktionen und die GUI-Reaktionen sind dem allgemeinen Standard anzupassen
 
 
 
 
* Das Standard-Aussehen des GUI folgt dem Betriebssystem Windows. Stehen verschiedene Möglichkeiten zur Auswahl, ist die schnellere Variante vorzuziehen
 
* Das Standard-Aussehen des GUI folgt dem Betriebssystem Windows. Stehen verschiedene Möglichkeiten zur Auswahl, ist die schnellere Variante vorzuziehen
 
* Das Aussehen des GUI muss zur Laufzeit geändert werden können ("Themes")
 
 
 
* Das GUI muss auch durch eine Scriptsprache bedienbar sein (Funktionen aufrufen / Ereignisse bearbeiten)
 
* Das GUI muss auch durch eine Scriptsprache bedienbar sein (Funktionen aufrufen / Ereignisse bearbeiten)
 
 
* Die Daten, die nötig sind, um die grafischen Elemente am Bildschirm darzustellen, müssen geladen und gespeichert werden können. Als Speicherformate dafür sind XML und ein binäres Format zu implementieren.
 
* Die Daten, die nötig sind, um die grafischen Elemente am Bildschirm darzustellen, müssen geladen und gespeichert werden können. Als Speicherformate dafür sind XML und ein binäres Format zu implementieren.
 
 
* Das GUI muss erweiterbar sein
 
* Das GUI muss erweiterbar sein
 
 
* Liste der vorgegebenen Standard-GUI-Elemente, die zu implementieren sind:
 
* Liste der vorgegebenen Standard-GUI-Elemente, die zu implementieren sind:
 
** Button
 
** Button
Zeile 42: Zeile 32:
 
* Mehrsprachigkeit
 
* Mehrsprachigkeit
 
* Benutzbarkeit durch andere Programmiersprachen
 
* Benutzbarkeit durch andere Programmiersprachen
 +
* Das Aussehen des GUI muss zur Laufzeit geändert werden können ("Themes")
  
 
=Produkteinsatz=
 
=Produkteinsatz=
Zeile 50: Zeile 41:
  
 
==Zielgruppen==
 
==Zielgruppen==
Die Anwendung ist für Pascal-Programmierer gedacht.
+
Das GUI ist für Pascal- und OpenGL-Programmierer gedacht.
  
 
==Betriebsbedingungen==
 
==Betriebsbedingungen==
Zeile 65: Zeile 56:
 
===Benutzereingaben===
 
===Benutzereingaben===
 
* Tastatureingabe
 
* Tastatureingabe
 +
: (in Abhängig vom Tastaturschema, daher Z ist Z auch auf amerikanischen Tastaturen)
 
* Mauseingabe
 
* Mauseingabe
 +
: Mindestens linke, rechte und mittlere Maustaste sowie das Scrollrad.
  
  
Zeile 71: Zeile 64:
 
* Entgegennehmen und Verarbeiten der Benutzereingaben vom GUI (Ereignisse)
 
* Entgegennehmen und Verarbeiten der Benutzereingaben vom GUI (Ereignisse)
 
* Daten an das GUI zur Bildschirm-Anzeige weiterreichen
 
* Daten an das GUI zur Bildschirm-Anzeige weiterreichen
* Verwalten und steuern des GUI (grafische Elemente erzeugen/löschen/laden/speichern/Eigenschaften ändern usw.)
+
* Verwalten und Steuern des GUI (grafische Elemente erzeugen/löschen/laden/speichern/Eigenschaften ändern usw.)
  
  
Zeile 91: Zeile 84:
  
 
Hier ist pro Standard-Element (Edit, Scrollbar, Window, ...) zu definieren, welche Daten nötig sind
 
Hier ist pro Standard-Element (Edit, Scrollbar, Window, ...) zu definieren, welche Daten nötig sind
 
==?==
 
  
 
=Produktleistungen=
 
=Produktleistungen=
Zeile 175: Zeile 166:
 
=Spezielle Anforderungen an die Entwicklungs-Umgebung=
 
=Spezielle Anforderungen an die Entwicklungs-Umgebung=
  
Keine
+
Mindestens Delphi 5 oder Free Pascal 2.0.0. Für kleinere Versionen wird keine Unterstützung garantiert.
  
 
=Gliederung in Teilprodukten=
 
=Gliederung in Teilprodukten=
  
 
Nicht vorgesehen.
 
Nicht vorgesehen.

Version vom 23. Dezember 2006, 00:26 Uhr

Zielbestimmungen

Das Ziel ist eine allgemeine grafische Schnittstelle (Graphical User Interface, "GUI") zur Kommunikation zwischen Anwendung und Benutzer. Die Hilfsmittel (grafische Elemente und Programm-Reaktionen) dazu sollen möglichst intuitiv benutzbar/interpretierbar sein.

Musskriterien

  • Das GUI ist den Anwendern inklusive Source Code zur Verfügung zu stellen
  • Das GUI darf nicht auf bestimmte Betriebssysteme oder Bibliotheken festgelegt werden, sondern muss für Funktionen, die Bibliotheks- oder betriebssystemspezifischen Code benötigen, einen Wrapper (ein Hilfsprogramm) verwenden
  • Das GUI soll mindestens von Pascal-Anwendungen genutzt werden können
  • Die Benutzer-Interaktionen und die GUI-Reaktionen sind dem allgemeinen Standard (Verhalten von Windows) anzupassen
  • Das Standard-Aussehen des GUI folgt dem Betriebssystem Windows. Stehen verschiedene Möglichkeiten zur Auswahl, ist die schnellere Variante vorzuziehen
  • Das GUI muss auch durch eine Scriptsprache bedienbar sein (Funktionen aufrufen / Ereignisse bearbeiten)
  • Die Daten, die nötig sind, um die grafischen Elemente am Bildschirm darzustellen, müssen geladen und gespeichert werden können. Als Speicherformate dafür sind XML und ein binäres Format zu implementieren.
  • Das GUI muss erweiterbar sein
  • Liste der vorgegebenen Standard-GUI-Elemente, die zu implementieren sind:
    • Button
    • Panel
    • CheckBox
    • RadioBox
    • Label
    • Image
    • Window
    • EditBox
    • ComboBox
    • ListBox
    • ScrollBar
    • ProgressBar
    • TreeList
    • Memo
    • TabSheet
    • DropDownMenu

Wunschkriterien

  • Mehrsprachigkeit
  • Benutzbarkeit durch andere Programmiersprachen
  • Das Aussehen des GUI muss zur Laufzeit geändert werden können ("Themes")

Produkteinsatz

Das GUI ist seinem Wesen nach ein Teil einer Computer-Anwendung. Der Einsatz ist daher vom Benutzer abhängig und unterliegt keinerlei Beschränkung.

Anwendungsbereiche

Das GUI ist für Pascal-Anwendungen und -spiele konzipiert, die auf mehreren Plattformen lauffähig sein sollen, ohne die grafische Benutzeroberfläche wechseln zu müssen.

Zielgruppen

Das GUI ist für Pascal- und OpenGL-Programmierer gedacht.

Betriebsbedingungen

  • Das GUI setzt eine aufrufende Anwendung voraus, in die es eingebunden ist
  • Ein Hilfsprogramm für das Entgegennehmen der betriebssystemspezifischen Benutzereingaben wird vorausgesetzt
  • Hilfsprogramme für die Grafikroutinen, das Laden der Schriften und Texturen werden vorausgesetzt

Produktübersicht

GUIDiagramm01.jpg

Produktfunktionen

Userprozesse

Benutzereingaben

  • Tastatureingabe
(in Abhängig vom Tastaturschema, daher Z ist Z auch auf amerikanischen Tastaturen)
  • Mauseingabe
Mindestens linke, rechte und mittlere Maustaste sowie das Scrollrad.


Prozesse der aufrufenden Anwendung/des Scripts

  • Entgegennehmen und Verarbeiten der Benutzereingaben vom GUI (Ereignisse)
  • Daten an das GUI zur Bildschirm-Anzeige weiterreichen
  • Verwalten und Steuern des GUI (grafische Elemente erzeugen/löschen/laden/speichern/Eigenschaften ändern usw.)


Entwicklerprozesse (Prozesse des GUI)

Produktdaten

Produktdaten sind Daten, die für das Anzeigen der Elemente am Bildschirm nötig sind:

  • Ausmasse der Elemente (Breite, Höhe)
  • Position der Elemente (Koordinaten)
  • Texturkoordinaten
  • spezielle Ausformungen (Randbreiten, Zeichenroutinen,...)
  • Farben
  • Bilder (Texturen)
  • Schriften

Hier ist pro Standard-Element (Edit, Scrollbar, Window, ...) zu definieren, welche Daten nötig sind

Produktleistungen

  • Verwalten (erzeugen/löschen/laden/speichern/ändern)
  • Benutzen

von benutzerdefinierbaren visuellen GUI-Elementen

Qualitätsanforderungen

Qualitätskriterium sehr gut gut normal nicht relevant
Funktionalität X - - -
Richtigkeit - - X -
Interoperabilität X - - -
Code-Lesbarkeit X - - -
Sicherheit - - X -
Zuverlässigkeit - X - -
Fehlertoleranz - - X -
Reife - - - X
Backupfähigkeit - - - 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 - -
Übertragbarkeit - - - X
Anpassbarkeit - - - X
Installierbarkeit - - - X
Konformität - - - X
Austauschbarkeit - - - X

Benutzungsoberfläche

Es ist keine Benutzungsoberfläche vorgesehen.

Technische Produktumgebung

Für den Betrieb gelten folgende technische Voraussetzungen:

  • ein PC mit VGA-fähigem Bildschirm, Tastatur und Maus
  • OpenGL 1.1 Unterstützung (Verwendung von Texturen)
  • Betriebsystemspezifische Hilfs-Funktionen zum Entgegennehmen der Benutzereingaben
  • ein Pascal-Compiler (eine integrierte Entwicklungsumgebung ist nicht notwendig), vorzugsweise Delphi ab Version 5 oder Free Pascal ab Version 2.0

Spezielle Anforderungen an die Entwicklungs-Umgebung

Mindestens Delphi 5 oder Free Pascal 2.0.0. Für kleinere Versionen wird keine Unterstützung garantiert.

Gliederung in Teilprodukten

Nicht vorgesehen.