GlobalObjects 'Product Backlog'
In diesem Backlog sind gewünschte Erweiterungen sowie Fehler, welche behoben werden sollen, zusammen gefasst (jeweils gekennzeichnet durch Typ:EXT bzw. ERR.
Das Board ist in die Spalten "Aufgenommen", "Geplant", "In Arbeit", und "Fertig bzw. Fehler behoben für Version xxx" eingeteilt.
Unter GlobalObjects 'Product Backlog' erledigt können erledigte Anforderungen für die nächste Version eingesehen werden.
Neuer GloDeveloper
ID: 20211009_1Typ: EXT
Nutzer/Rolle: Nutzer des GloDevelopers
Anforderung: Der neue GloDeveloper soll mehrbenutzerfähig sein. Die Datenhaltung basiert auf der Glo-Datenbank. Es werden Namespaces und eingebettete persistente Klassen unterstützt. Der Nutzer kann die notwendige Generierung der einzelnen Dateien mehr beeinflussen.
Nutzen: Eine erweiterte Nutzung bei der Erstellnung von Glo-Datenbanken und persistenten Klassen.
Akzeptanzkriterien: S.o.
Status: in Arbeit
GloDeveloper: kopieren einer Klasse mit Unterklassen kopiert nur erste Unterklassenebene
ID: 20210210_1Typ: ERR
Nutzer/Rolle: Nutzer des GloDevelopers
Beschreibung: Wenn im GloDeveloper eine Klasse mit Unterklassen, die wiederum Unterklassen haben, kopiert werden soll, werden nur die direkten Unterklassen, und nich der gesammte Ast, mitkopiert.
Problemumgehung: Fehlende Klassen einzeln manuell kopieren.
Status: aufgenommen
GloDeveloper; Settings speichert Textvorgaben nicht in UTF-8
ID: 20200704_1Typ: ERR
Nutzer/Rolle: Nutzer des GloDevelopers
Beschreibung: Wenn im GloDeveloper in den Programmeinstellungen Vorlagetexte eingegeben werden, werden Umlaute etc. nicht in UTF-8 in der GloDeveloper.ini gespeichert.
Problemumgehung: Erstmal bis zur Fehlerbehebung damit leben.
Status: aufgenommen
GloDeveloper; Speicherleak
ID: 20200419_1Typ: ERR
Nutzer/Rolle: Nutzer des GloDevelopers
Beschreibung: Wenn im GloDeveloper in einem Projekt eine Base entfernt wird, verbleibt das Objekt vom Typ ProjectBase im Speicher.
Problemumgehung: Erstmal bis zur Fehlerbehebung damit leben.
Status: aufgenommen
GloDeveloper; wenn Klassen-Attribut gelöscht wird, stürzt der GloDeveloper ab (Index?)
ID: 20190727_2Typ: ERR
Nutzer/Rolle: Nutzer des GloDevelopers
Beschreibung: Der GloDeveloper stürzt ab, wenn im Klassen-Bearbeitungsdialog das letzte Attribut gelöscht wird, welches in der gleichen Klasse in einem Index verwendet wird.
Problemumgehung: Zuerst das zu löschende Attribut aus dem Index entfernen bzw. den Index löschen und 'Übernehmen', dann das Attribut entfernen.
Status: aufgenommen
GloExplorer; Watch / Notify
ID: 20200826_1Typ: EXT
Nutzer/Rolle: Nutzer des GloExplorers
Anforderung: Wenn viele Notifys vom GloServer gefeuert werden, friert der GloExplorer ein. Wätrend ds Notifizierens sollte das weiterarbeiten, wie beim Einlesen der Objekte, gewährleistet sein.
Nicht mehr in "void GloQtWatchCallBack::notify( GloNotifyNote & rNote )" QCoreApplication::postEvent(...), sondern einen neuen Thread instanziieren, welcher kontrolliert in GloQtExplorerAllSetProp bzw. GloQtExplorerBaseAllSetUserInterface die Methode ::_processObjectNotifyEvent(...) mit neuen Parametern aufruft.
Nutzen: Der Nutzer denkt nicht mehr, dass der GloExplorer abgestürzt ist und kann weiterarbeiten.
Akzeptanzkriterien: Die Anforderung ist erfüllt, wenn der Nutzer bei vielen Notifizierungen weiterarbeiten kann, der GloExplorer nicht mehr einfriert.
Status: aufgenommen
GloExplorer; Speicherleak
ID: 20190816_1Typ: ERR
Nutzer/Rolle: Nutzer des GloExplorers
Beschreibung: Wenn im GloExplorer das Einlesen eines AllSets unterbrochen wird, verbleibt ein in 'void GloQtReadNewObjectsInAllSetThread::run()' instantiiertes Objekt vom Typ GloQtIntAllSetGenericPersistent im Speicher.
Problemumgehung: Das Einlesen beenden lassen oder erstmal bis zur Fehlerbehebung damit leben.
Status: aufgenommen
Transaktion über Absturz retten
ID: 20200523_1Typ: EXT
Nutzer/Rolle: Nutzer von GlobalObjects
Anforderung: Wenn während einer Transaktion der Rechner bzw. die GlobalObjects-Applikation (der/die die Transaktion ausführt) abstürzt, sind ggf. nicht alle Objekte der Transaktion auf dem neuesten Stand.
Es soll also bei einem letzten „commit“ vor dem Schreiben in die Tabellen die Transaktion flach gespeichert werden, dann die Tabellen geschrieben werden und wenn fertig, die Transaktion gelöscht werden.
Wenn bei einem Neustart eine gespeicherte Transaktion gefunden wird, wird diese einfach nochmals ausgeführt.
Dieses soll mit einem weiteren Parameter in den Transaktions-startenden Methoden ermöglicht werden.
Nutzen: Eine erweiterte Transaktionssicherheit.
Akzeptanzkriterien: Die Anforderung ist erfüllt, wenn eine abgebrochene Transaktion nach einem Neustart zuende geführt wird.
Status: aufgenommen
OQL
ID: 20200523_2Typ: EXT
Nutzer/Rolle: Nutzer von GlobalObjects
Anforderung: Es soll die Abfragesprache OQL unterstützt werden.
Nutzen: Eine erweiterte Abfragemöglichkeit.
Akzeptanzkriterien: Die Anforderung ist erfüllt, wenn OQL unterstützt wird.
Status: aufgenommen
Verschachtelte persistente Klassen
ID: 20190423_1Typ: EXT
Nutzer/Rolle: Nutzer des GloDevelopers
Anforderung: Es soll möglich sein, mit dem GloDeveloper verschachtelte persistente Klassen zu definieren, welche von GlobalObjects wie andere Klassen behandelt werden.
Nutzen: Verschachtelte Klassen haben ihren Sinn und sind im C++-Standard vorgesehen. Dieses soll auch in GlobalObjects realisierbar sein.
Akzeptanzkriterien: Die Anforderung ist erfüllt, wenn verschachtelte persistente Klassen vom Nutzer erstellt werden können und deren Objekte wie andere Objekte von GlobalObjects verarbeitet werden.
Status: aufgenommen
Persistente Klassen ableiten von nicht persistenten Klassen
ID: 20190716_2Typ: EXT
Nutzer/Rolle: Nutzer des GloDevelopers
Anforderung: Es soll möglich sein, mit dem GloDeveloper persistente Klassen von nichtpersistenten Klasse abzuleiten.
Im Developer sollen geerbte Attribute der nichtpersistenten Klasse als 'persistent' zu kennzeichnen sein, so dass diese in der persistenten Unterklasse mit berücksichtigt werden. Dieses soll auch mit als 'private' gekennzeichneten Attributen möglich sein.
Nutzen: Dem Nutzer soll damit die Möglichkeit gegeben werden, Objekte von Typen z.B. aus Bibliotheken zu speichern.
Akzeptanzkriterien: Die Anforderung ist erfüllt, wenn nichtpersistente Klassen mit allen gewünschten Attributen über eine persistente Unterklasse in GlobalObjects verarbeitet werden können.
Status: aufgenommen
Persistente Attribute selbst entwerfen
ID: 20190716_3Typ: EXT
Nutzer/Rolle: Nutzer des GloDevelopers
Anforderung: Es soll möglich sein, mit dem GloDeveloper persistente Attributtypen zu entwerfen.
Im Developer sollen von einem abstrakten Typ (Klasse) ein eigener Typ abgeleitet werden können. Durch Überschreiben von virtellen Methoden soll gewährleistet werden, das GlobalObjects diesen neuen Typ als Attribut einer persisten Klasse verarbeitet.
Nutzen: Zwar kann eine persistente Klasse als Attribut einer anderen persistenten Klasse erstellt werden, aber dieses wäre z.B. bei einer Klasse 'Bruch' mit zwei int-Attributen eine neue Tabelle. Um dieses zu vermeiden, kann z.B. der erwähnte 'Bruch' als std::string gespeichert werden.
Akzeptanzkriterien: Die Anforderung ist erfüllt, wenn der entwickelnde Nutzer selbst einen Attributtyp erstellen kann und dieser in persistenten Klassen als Attribut in GlobalObjects verarbeitet werden kann.
Status: aufgenommen
Für jede persistente Klasse auf Wunsch ein eigenes Verzeichniss
ID: 20190722_1Typ: EXT
Nutzer/Rolle: Nutzer des GloDevelopers
Anforderung: Es soll möglich sein, mit dem GloDeveloper die Header- und Source-Dateien einer Klasse in ein eigenes Verzeichnis speichern zu können.
Im Developer soll für jede Klasse ein Verzeichnis ausgewählt werden können, welches die Defaultverzeichnisse des Projektes überdeckt.
Nutzen: Somit können Header- und Source-Dateien noch flexibler gespeichert werden.
Akzeptanzkriterien: Die Anforderung ist erfüllt, wenn der entwickelnde Nutzer für jede persistente Klasse ein Header- und Source-Verzeichnis auswählen kann.
Status: aufgenommen
Persistente Klasse als Bibliotheksklasse kennzeichnen
ID: 20190722_2Typ: EXT
Nutzer/Rolle: Nutzer des GloDevelopers
Anforderung: Es soll möglich sein, mit dem GloDeveloper eine Klasse als Bibliotheksklasse kennzeichnen zu können. Für diese sollen dann Änderungenn NICHT möglich sein; Header-, Source- und Objekt-Dateien können nicht generiert werden.
Nutzen: Es werden Projekte nicht tangiert, welche eine Bibliotheksklasse verwenden.
Akzeptanzkriterien: Die Anforderung ist erfüllt, wenn der entwickelnde Nutzer für jede persistente Klasse festlegen kann, ob diese nur angezeigt wird.
Status: aufgenommen
Persistente Klasse vom Developer einlesen (Reverse Engineering)
ID: 20190722_3Typ: EXT
Nutzer/Rolle: Nutzer des GloDevelopers
Anforderung: Es soll möglich sein, mit dem GloDeveloper eine persistente Klasse einlesen zu können, um diese ggf. weiter zu bearbeiten.
Nutzen: Persistente Klassen sollen im wahlfreien Editor bearbeitet werden können und dann auf Wunsch in den GloDeveloper eingelesen werden können.
Akzeptanzkriterien: Die Anforderung ist erfüllt, wenn der GloDeveloper eine persistente Klasse einlesen kann.
Status: aufgenommen
Eine Fehler-Übersetzungsdatei für den GloDeveloper
ID: 20180919_1Typ: EXT
Nutzer/Rolle: Nutzer des GloDevelopers
Anforderung: Es sollen bei einem Fehler nicht nur die Fehlernummer angezeigt werden, sondern aus einer Datei zusätzlich erklärende Texte angezeigt werden. Es soll jetzt schon eine Mehrsprachigkeit berücksichtigt werden.
Nutzen: Der Nutzer des GloDevelopers muss nicht in der Doku nachschlagen und sich nicht mit den resultierenden Interpretationen rumschlagen.
Akzeptanzkriterien: Die Anforderung ist erfüllt, wenn der GloDeveloper für jeden auftretenden Fehler einen erklährenden Text anzeigt.
Status: aufgenommen
Eine Fehler-Übersetzungsdatei für den GloExplorer
ID: 20180919_2Typ: EXT
Nutzer/Rolle: Nutzer des GloExplorers
Anforderung: Es sollen bei einem Fehler nicht nur die Fehlernummer angezeigt werden, sondern aus einer Datei zusätzlich erklärende Texte angezeigt werden. Es soll jetzt schon eine Mehrsprachigkeit berücksichtigt werden.
Nutzen: Der Nutzer des GloExplorers muss nicht in der Doku nachschlagen und sich nicht mit den resultierenden Interpretationen rumschlagen.
Akzeptanzkriterien: Die Anforderung ist erfüllt, wenn der GloExplorer für jeden auftretenden Fehler einen erklährenden Text anzeigt.
Status: aufgenommen
Fehler-Übersetzungsdatei für den GloDeveloper ins englische übersetzen
ID: 20180919_4Typ: EXT
Nutzer/Rolle: Nutzer des GloDevelopers
Anforderung: Es sollen im GloDeveloper bei einem Fehler nicht nur die Fehlernummer angezeigt werden, sondern aus einer Datei zusätzlich erklärende Texte in englischer Sprache angezeigt werden.
Nutzen: Auch englischsprachige Nutzer des GloDevelopers profitieren von erklährenden Fehlertexten.
Akzeptanzkriterien: Die Anforderung ist erfüllt, wenn der GloDeveloper für jeden auftretenden Fehler einen erklährenden Text in englischer Sprach anzeigt.
Status: aufgenommen
Fehler-Übersetzungsdatei für den GloExplorer ins englische übersetzen
ID: 20180919_5Typ: EXT
Nutzer/Rolle: Nutzer des GloExplorers
Anforderung: Es sollen im GloExplorer bei einem Fehler nicht nur die Fehlernummer angezeigt werden, sondern aus einer Datei zusätzlich erklärende Texte in englischer Sprache angezeigt werden.
Nutzen: Auch englischsprachige Nutzer des GloExplorers profitieren von erklährenden Fehlertexten.
Akzeptanzkriterien: Die Anforderung ist erfüllt, wenn der GloExplorer für jeden auftretenden Fehler einen erklährenden Text in englischer Sprach anzeigt.
Status: aufgenommen