DGLGUI Pflichtenheft: Unterschied zwischen den Versionen
Traude (Diskussion | Beiträge) (→Entwicklerprozesse (Prozesse des GUI)) |
I0n0s (Diskussion | Beiträge) |
||
| 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 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== | ||
| − | + | 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 | + | * 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= | ||
| − | + | 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
Inhaltsverzeichnis
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
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)
- Entgegennehmen und visuelles Bearbeiten der Benutzereingaben
- Benutzereingaben an die aufrufende Anwendung/ans Script weiterleiten (Ereignisse)
- Änderungen von GUI-Eigenschaften durch die aufrufende Anwendung/das Script und Anzeige am Bildschirm
- Funktionen zum Verwalten der grafischen Elemente bereitstellen
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.
