DE112010003948T5 - Auswerten von Objekten einer Grafischen Benutzeroberfläche zur Überprüfung von Standards - Google Patents

Auswerten von Objekten einer Grafischen Benutzeroberfläche zur Überprüfung von Standards Download PDF

Info

Publication number
DE112010003948T5
DE112010003948T5 DE112010003948T DE112010003948T DE112010003948T5 DE 112010003948 T5 DE112010003948 T5 DE 112010003948T5 DE 112010003948 T DE112010003948 T DE 112010003948T DE 112010003948 T DE112010003948 T DE 112010003948T DE 112010003948 T5 DE112010003948 T5 DE 112010003948T5
Authority
DE
Germany
Prior art keywords
attributes
user interface
graphical user
objects
interface objects
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
DE112010003948T
Other languages
English (en)
Other versions
DE112010003948T8 (de
Inventor
Christopher Len Doughty
Bryant Genepang Luk
Brain Patrick Preston
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112010003948T5 publication Critical patent/DE112010003948T5/de
Application granted granted Critical
Publication of DE112010003948T8 publication Critical patent/DE112010003948T8/de
Active legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/33Intelligent editors

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Ein Verfahren zum Auswerten von Objekten einer grafischen Benutzeroberfläche (GUI). Das Verfahren kann das dynamische Abfragen von Attributen beinhalten, die verschiedenen GUI-Objekten zugewiesen werden, welche einer Ansicht einer GUI zugewiesen werden, um Attribute, die zu jedem der GUI-Objekte gehören, zu ermitteln. Für jedes der GUI-Objekte kann eine Liste von Attributen erzeugt werden. Es kann festgestellt werden, ob mindestens eines der GUI-Objekte über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere GUI-Objekte entspricht. Wenn mindestens ein GUI-Objekt über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere GUI-Objekte entspricht, kann eine Kennung ausgegeben werden. Die Kennung kann anzeigen, dass das GUI-Objekt über die Liste der Attribute verfügt, die nicht den Listen der Attribute für die anderen GUI-Objekte entspricht.

Description

  • HINTERGRUND
  • Die im Rahmen dieser Beschreibung offengelegten Ausführungsformen betreffen Benutzerschnittstellen. Insbesondere betreffen die Ausführungsformen Objekte von grafischen Benutzeroberflächen.
  • Objekte von grafischen Benutzeroberflächen (nachstehend ”Objekte” genannt) werden routinemäßig in grafische Benutzeroberflächen (graphical user interfaces; GUIs) eingebunden. Diese GUIs werden zuweilen recht komplex und erfordern unzählige verschiedene Objekte. Derzeit müssen Computer-Programmierer, die solche GUIs programmieren, die verschiedenen Attribute, die verschiedenen Objekten zugewiesen werden, welche in die GUIs eingebunden werden, im Auge behalten, um sicherzustellen, dass zwischen den verschiedenen Objekten keine Konflikte auftreten. Das Verwalten der verschiedenen Objekte und ihrer Attribute kann jedoch mühsam sein.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Die vorliegende Erfindung stellt folglich in einer ersten Erscheinungsform ein Verfahren zum Auswerten von Objekten einer grafischen Benutzeroberfläche bereit, wobei das Verfahren Folgendes umfasst: dynamisches Abfragen von Attributen, die verschiedenen der Objekte der grafischen Benutzeroberfläche zugewiesen werden, welche einer Ansicht einer grafischen Benutzeroberfläche zugewiesen werden, um Attribute, die zu jedem der Objekte der grafischen Benutzeroberfläche gehören, zu ermitteln; für jedes der Objekte der grafischen Benutzeroberfläche Erzeugen einer Liste von Attributen; Feststellen, ob mindestens eines der Objekte der grafischen Benutzeroberfläche über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere Objekte der grafischen Benutzeroberfläche entspricht; und wenn mindestens eines der Objekte der grafischen Benutzeroberfläche über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere Objekte der grafischen Benutzeroberfläche entspricht, Ausgeben einer Kennung, die anzeigt, dass mindestens ein Objekt von den Objekten der grafischen Benutzeroberfläche über die Liste von Attributen verfügt, die nicht den Listen von Attributen für die anderen Objekte der grafischen Benutzeroberfläche entspricht.
  • Das Verfahren kann vorzugsweise des Weiteren Folgendes umfassen: auf der Grundlage der Attribute, die zu jedem der Objekte der grafischen Benutzeroberfläche gehören, Erzeugen eines Attribut-Regelsatzes. Vorzugsweise umfasst das Feststellen, ob das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche über die Liste von Attributen verfügt, die nicht den Listen von Attributen für andere Objekte der grafischen Benutzeroberfläche entspricht: Vergleichen der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche mit dem Attribut-Regelsatz. Das Verfahren kann des Weiteren Folgendes umfassen: Empfangen einer Benutzerauswahl der verschiedenen Objekte der grafischen Benutzeroberfläche; wobei das dynamische Abfragen der Attribute, die verschiedenen Objekten der grafischen Benutzeroberfläche zugewiesen werden, welche der Ansicht der grafischen Benutzeroberfläche zugewiesen werden, das Abfragen von Attributen umfasst, die Objekten der grafischen Benutzeroberfläche zugewiesen werden, welche von dem Benutzer ausgewählt werden. Das Verfahren kann des Weiteren Folgendes umfassen: für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche, das über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere Objekte der grafischen Benutzeroberfläche entspricht, automatisches Aktualisieren der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche, die nicht den Listen von Attributen für andere Objekte der grafischen Benutzeroberfläche entspricht. Das automatische Aktualisieren der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche, die nicht den Listen der Attribute für andere Objekte der grafischen Benutzeroberfläche entspricht, kann Folgendes umfassen: Hinzufügen zu der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche von mindestens einem Attribut, das in den Listen der Attribute für die anderen Objekte der grafischen Benutzeroberfläche enthalten ist.
  • Das Verfahren kann des Weiteren Folgendes umfassen: vor dem Hinzufügen von mindestens einem Attribut, das in den Listen der Attribute für die anderen Objekte der grafischen Benutzeroberfläche enthalten ist, zu der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche Auffordern eines Benutzers, das Hinzufügen von dem mindestens einen Attribut anzunehmen oder abzulehnen. Das automatische Aktualisieren der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche, die nicht den Listen der Attribute für andere Objekte der grafischen Benutzeroberfläche entspricht, kann vorzugsweise Folgendes umfassen: Entfernen aus der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche von mindestens einem Attribut, das in den Listen der Attribute für die anderen Objekte der grafischen Benutzeroberfläche enthalten ist.
  • Das Verfahren kann des Weiteren Folgendes umfassen: vor dem Entfernen aus der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche von mindestens einem Attribut, das nicht in den Listen der Attribute für die anderen Objekte der grafischen Benutzeroberfläche enthalten ist, Auffordern eines Benutzers, das Entfernen von dem mindestens einen Attribut anzunehmen oder abzulehnen. Das Ausgeben der Kennung, die anzeigt, dass das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche über die Liste der Attribute verfügt, die. nicht den Listen der Attribute für die anderen, Objekte der grafischen Benutzeroberfläche entspricht, kann Folgendes umfassen: Ausgeben einer Liste von Ergebnissen aus der dynamischen Abfrage. Das Ausgeben einer Liste von Ergebnissen aus der dynamischen Abfrage kann Folgendes umfassen: Erzeugen eines über Standards informierenden Dokuments, das angibt, welche Attribute einem bestimmten Standard einer grafischen Benutzeroberfläche entsprechen.
  • In einer zweiten Erscheinungsform wird ein Computersystem bereitgestellt, das Folgendes umfasst: einen Prozessor; einen Speicher;
    eine dynamische Abfrageeinheit, um Attribute dynamisch abzufragen, die verschiedenen der Objekte der grafischen Benutzeroberfläche zugewiesen werden, welche einer Ansicht einer grafischen Benutzeroberfläche zugewiesen werden, um Attribute, die zu jedem der Objekte der grafischen Benutzeroberfläche gehören, zu ermitteln; eine Attribut-Erzeugungseinheit, die so ausgelegt ist, dass sie für jedes der Objekte der grafischen Benutzeroberfläche eine Liste von Attributen erzeugt; eine Feststellungseinheit, um festzustellen, ob mindestens eines der Objekte der grafischen Benutzeroberfläche über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere Objekte der grafischen Benutzeroberfläche entspricht; und eine Ausgabe-Komponente, die auf die Feststellung anspricht, dass mindestens eines der Objekte der grafischen Benutzeroberfläche über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere Objekte der grafischen Benutzeroberfläche entspricht, um eine Kennung auszugeben, die anzeigt, dass das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche über die Liste von Attributen verfügt, die nicht den Listen von Attributen für die anderen Objekte der grafischen Benutzeroberfläche entspricht.
  • In einer dritten Erscheinungsform wird ein auf einem computerlesbaren Datenträger gespeichertes Computerprogramm bereitgestellt, das Computer-Programmcode umfasst, um, wenn es in ein Computersystem geladen und darauf ausgeführt wird, das Computersystem zu veranlassen, alle Schritte des Verfahrens der ersten Erscheinungsform durchzuführen.
  • Die in dieser Beschreibung offengelegten Ausführungsformen betreffen Benutzerschnittstellen. Insbesondere betreffen die Ausführungsformen Objekte einer grafischen Benutzerschnittstelle (GUI). Eine Ausführungsform der vorliegenden Erfindung kann ein Verfahren zum Auswerten von GUI-Objekten beinhalten. Das Verfahren kann das dynamische Abfragen von Attributen beinhalten, die verschiedenen GUI-Objekten zugewiesen werden, welche einer Ansicht einer GUI zugewiesen werden, um Attribute, die zu jedem der GUI-Objekte gehören, zu ermitteln. Für jedes der GUI-Objekte kann eine Liste von Attributen erzeugt werden. Es kann festgestellt werden, ob mindestens eines der GUI-Objekte über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere GUI-Objekte entspricht. Wenn mindestens ein GUI-Objekt über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere GUI-Objekte entspricht, kann eine Kennung ausgegeben werden. Die Kennung kann anzeigen, dass das GUI-Objekt über die Liste der Attribute verfügt, die nicht den Listen der Attribute für die anderen GUI-Objekte entspricht.
  • Eine weitere Ausführungsform der vorliegenden Erfindung kann ein Verfahren zum Auswerten von GUI-Objekten beinhalten. Das Verfahren kann das dynamische Abfragen von Attributen beinhalten, die verschiedenen der GUI-Objekte zugewiesen werden, welche einer Ansicht einer GUI zugewiesen werden, um Attribute, die zu jedem der GUI-Objekte gehören, zu ermitteln. Für jedes der GUI-Objekte kann eine Liste von Attributen erzeugt werden. Auf der Grundlage der Attribute, die zu jedem der Objekte der grafischen Benutzeroberfläche gehören, kann ein Attribut-Regelsatz erzeugt werden. Es kann festgestellt werden, ob mindestens eines der GUI-Objekte über eine Liste von Attributen verfügt, die nicht dem Attribut-Regelsatz entspricht. Wenn mindestens ein GUI-Objekt über eine Liste von Attributen verfügt, die nicht dem Attribut-Regelsatz entspricht, kann eine Kennung ausgegeben werden. Die Kennung kann anzeigen, dass das GUI-Objekt über die Liste von Attributen verfügt, die nicht dem Attribut-Regelsatz entspricht.
  • Eine noch weitere Ausführungsform der vorliegenden Erfindung kann ein Computerprogrammprodukt einschließlich eines computerlesbaren Datenträgers mit computerlesbarem Programmcode enthalten, der, wenn er ausgeführt wird, eine Maschine veranlasst, die verschiedenen, hier beschriebenen Schritte und/oder Funktionen durchzuführen.
  • KURZE BESCHREIBUNG DER DIVERSEN ANSICHTEN DER ZEICHNUNGEN
  • Eine bevorzugte Ausführungsform der vorliegenden Erfindung wird nun lediglich anhand eines Beispiels und mit Bezug auf die beiliegenden Zeichnungen beschrieben, bei denen:
  • 1 ein Blockschaltbild ist, das ein System zum Auswerten von Objekten einer grafischen Benutzeroberfläche gemäß einer Ausführungsform der vorliegenden Erfindung zeigt;
  • 2 eine Ansicht einer grafischen Benutzeroberfläche gemäß einer anderen Ausführungsform der vorliegenden Erfindung darstellt;
  • 3 ein Flussdiagramm ist, das ein Verfahren zum Auswerten von Objekten einer grafischen Benutzeroberfläche gemäß einer anderen Ausführungsform der vorliegenden Erfindung veranschaulicht.
  • AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
  • Der Fachmann wird als vorteilhaft erkennen, dass Erscheinungsformen der vorliegenden Erfindung als ein System, ein Verfahren oder ein Computerprogrammprodukt realisiert werden können. Folglich können Erscheinungsformen der vorliegenden Erfindung die Form einer ganz in Hardware realisierten Ausführung, einer ganz in Software realisierten Ausführung (einschließlich Firmware, residenter Software, Mikrocode usw.) oder einer Ausführung annehmen, die Software- und Hardware-Erscheinungsformen kombiniert, die hier alle allgemein als eine ”Schaltung”, ein ”Modul” oder ein ”System” bezeichnet werden können. Überdies können Erscheinungsformen der vorliegenden Erfindung die Form eines Computerprogrammprodukts annehmen, das sich auf einem oder mehreren computerlesbaren Datenträger(n) befindet, auf dem beziehungsweise denen sich computerlesbarer Programmcode befindet, z. B. darauf gespeichert ist.
  • Jede beliebige Kombination aus einem oder mehreren computerlesbaren Datenträgern kann verwendet werden. Der computerlesbare Datenträger kann ein computerlesbarer Signaldatenträger oder ein computerlesbares Speichermedium sein. Ein computerlesbares Speichermedium kann unter anderem, ein(e) elektronische(s), magnetische(s), optische(s), elektromagnetische(s), Infrarot- oder Halbleitersystem, -vorrichtung, -einheit oder eine beliebige geeignete Kombination des Vorstehenden sein. Zu konkreteren Beispielen (wobei die Liste keinen Anspruch auf Vollständigkeit erhebt) für das computerlesbare Speichermedium würden folgende gehören: eine elektrische Verbindung mit einer oder mehreren Leitungen, eine Diskette eines tragbaren Computers, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM oder Flash-Speicher), ein Lichtwellenleiter, ein tragbarer Compact-Disk-Nur-Lese-Speicher (CD-ROM), eine optische Speichereinheit, eine magnetische Speichereinheit oder jede beliebige geeignete Kombination des Vorstehenden. Im Rahmen dieses Schriftstücks kann ein computerlesbares Speichermedium jedes physisch greifbare Medium sein, das ein Programm zur Verwendung durch ein Befehlsausführungssystem, eine Befehlsausführungsvorrichtung oder -einheit oder zur Verwendung in Verbindung mit einem Befehlsausführungssystem, einer Befehlsausführungsvorrichtung oder -einheit enthalten oder speichern kann.
  • Ein computerlesbarer Signaldatenträger kann ein übertragenes Datensignal mit einem darin enthaltenen computerlesbaren Programmcode, beispielsweise in einem Basisband oder als Teil einer Trägerwelle, enthalten. Solch ein übertragenes Signal kann eine beliebige einer Vielzahl von Formen einschließlich elektromagnetischer, optischer Formen oder jede beliebige geeignete Kombination dieser Formen, ohne auf diese beschränkt zu sein, annehmen. Bei einem computerlesbaren Signaldatenträger kann es sich um jeden beliebigen computerlesbaren Datenträger handeln, der kein computerlesbares Speichermedium ist und der ein Programm zur Verwendung durch oder zur Verwendung in Verbindung mit einem Befehlsausführungssystem, einer Befehlsausführungsvorrichtung oder -einheit übertragen, weiterleiten oder transportieren kann.
  • Auf einem computerlesbaren Datenträger enthaltener Programmcode kann mittels eines geeigneten Mediums einschließlich eines drahtlosen Mediums, eines drahtgebundenen Mediums, eines Lichtwellenleiters, eines Kabels, mittels Hochfrequenz (HF) usw., ohne auf diese beschränkt zu sein, oder mittels jeder beliebigen geeigneten Kombination des Vorstehenden übertragen werden. Computer-Programmcode zur Durchführung von Operationen für Erscheinungsformen der vorliegenden Erfindung kann in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen einschließlich einer objektorientierten Programmiersprache, wie beispielsweise Java, Smalltalk, C++ oder dergleichen, sowie in herkömmlichen prozeduralen Programmiersprachen wie beispielsweise der Programmiersprache ”C” oder in ähnlichen Programmiersprachen geschrieben sein. Die Ausführung des Programmcodes kann vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Benutzers und teilweise auf einem Remote-Computer oder vollständig auf dem Remote-Computer oder Server erfolgen. Im letzteren Szenario kann der Remote-Computer mit dem Computer des Benutzers über jede beliebige Art eines Netzwerks einschließlich eines lokalen Netzwerks (LAN) oder eines Weitverkehrsnetzes (WAN) verbunden werden oder die Verbindung kann zu einem externen Computer (zum Beispiel über das Internet mittels eines Internet-Diensteanbieters) hergestellt werden.
  • Erscheinungsformen der vorliegenden Erfindung werden nachstehend mit Bezug auf Darstellungen in Flussdiagrammen und/oder Blockschaltbilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block der Darstellungen in den Flussdiagrammen und/oder der Blockschaltbilder sowie Kombinationen aus Blöcken in den Darstellungen der Flussdiagramme und/oder den Blockschaltbildern mittels Computerprogrammbefehlen realisiert werden können. Diese Computerprogrammbefehle können einem Prozessor eines Universalcomputers, eines Computers für spezielle Anwendungen oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die Befehle, die über den Prozessor des Computers, eine andere programmierbare Datenverarbeitungsvorrichtung oder andere Einheiten ausgeführt werden, ein Mittel zur Ausführung der Funktionen/Vorgänge erzeugen, die in dem Flussdiagramm und/oder dem Block oder den Blöcken des Blockschaltbilds angegeben sind.
  • Diese Computerprogrammbefehle können auch auf einem computerlesbaren Datenträger gespeichert werden, der einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder andere Einheiten anweisen kann, auf eine bestimmte Art und Weise zu funktionieren, so dass die auf dem Computerlesbaren Datenträger gespeicherten Befehle einen Herstellungsgegenstand erzeugen, der Befehle enthält, die die Funktion/den Vorgang ausführen, welche beziehungsweise welcher in dem Flussdiagramm und/oder dem Block oder den Blöcken des Blockschaltbilds angegeben ist.
  • Die Computerprogrammbefehle können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder auf andere Einheiten geladen werden, um die Durchführung einer Reihe von Betriebsschritten auf dem Computer, einer anderen programmierbaren Vorrichtung oder auf anderen Einheiten zu bewirken, um einen von einem Computer ausgeführten Prozess zu erzeugen, so dass die Befehle, die auf dem Computer oder einer anderen programmierbaren Vorrichtung ausgeführt werden, Prozesse zur Ausführung der Funktionen/Vorgänge ermöglichen, die in dem Flussdiagramm und/oder dem Block oder den Blöcken des Blockschaltbilds angegeben sind.
  • Die hier offengelegten Ausführungsformen betreffen das dynamische Abfragen von Attributen, die verschiedenen Objekten. einer grafischen Benutzeroberfläche zugewiesen werden, welche in einer Ansicht einer grafischen Benutzeroberfläche dargestellt werden (nachstehend ”Objekte” genannt). Bei den Objekten, die abgefragt werden, kann es sich um alle Objekte in einer bestimmten Ansicht oder um Objekte, die von einem Benutzer ausgewählt werden, handeln. Die Attribute, die verschiedenen Objekten zugewiesen werden, können dynamisch ermittelt werden. Für jedes der Objekte kann eine Liste von Attributen erzeugt werden. Wenn die Liste der Attribute für ein bestimmtes Objekt nicht Attributen für Listen von Objekten entspricht, die für andere Objekte erzeugt wurden, können eine oder mehrere Kennungen ausgegeben werden, um diesen Umstand anzuzeigen.
  • In der Abbildung können die Listen für jedes Objekt verglichen werden, um Attribute festzustellen, die in einem bestimmten Teil der Listen, die erzeugt werden, vorhanden sind. Ein solcher Teil kann von einem Benutzer festgelegt werden oder ein Standardwert sein, und die in diesem Teil der Objekte vorhandenen Attribute können als Referenzattribute ermittelt werden. Wenn ein bestimmtes Objekt über Attribute verfügt, die nicht den Referenzattributen entsprechen, kann die Kennung, die für das Objekt ausgegeben wird, anzeigen, dass diese Attribute nicht den Referenzattributen entsprechen. Wenn einem bestimmten Objekt jedoch Attribute fehlen, die in den Referenzattributen enthalten sind, kann die für das Objekt ausgegebene Kennung die in den Referenzattributen enthaltenen Attribute anzeigen, welche für das Objekt fehlen.
  • Darüber hinaus können die Attribute für jedes Objekt mit einem oder mehreren Standard-Attributen verglichen werden, die auf die Ansicht angewendet werden können. Die Kennung, die ausgegeben wird, kann zu dem Objekt gehörende Attribute anzeigen, die nicht den Standard-Attributen entsprechen, und/oder ein oder mehrere Standard-Attribute angeben, die derzeit nicht zu dem Objekt gehören. Die Standard-Attribute können Attribute sein, die von einem gewünschten Standard oder Protokoll festgelegt werden, der beziehungsweise das auf die Art der Ansicht angewendet werden kann, in der die Objekte dargestellt werden.
  • 1 ist ein Blockschaltbild, das ein Verarbeitungssystem 100 zum Auswerten von Objekten einer grafischen Benutzeroberfläche (GUI) gemäß einer Ausführungsform der vorliegenden Erfindung zeigt. Das System 100 kann mindestens einen Prozessor 105 enthalten, der über einen Systembus 115 mit den Speichereinheiten 110 verbunden ist. Als solches kann das System 100 in den Speichereinheiten 110 Programmcode speichern. Der Prozessor 105 kann den Programmcode ausführen, auf den aus den Speichereinheiten 110 über den Systembus 115 zugegriffen wird. In einer Erscheinungsform kann das System 100 zum Beispiel als ein Computer realisiert werden, der zum Speichern und/oder Ausführen von Programmcode geeignet ist. Es dürfte sich jedoch verstehen, dass das System 100 in Form von jedem beliebigen System realisiert werden kann, das einen Prozessor und Speicher umfasst, die in der Lage sind, die in dieser Beschreibung dargelegten Funktionen auszuführen.
  • Die Speichereinheiten 110 können eine oder mehrere physische Speichereinheiten wie zum Beispiel den lokalen Speicher 120 und eine oder mehrere Massenspeichereinheiten 125 enthalten. Der lokale Speicher 120 bezieht sich auf einen Direktzugriffspeicher oder auf (eine) andere nicht permanente Speichereinheit(en), die im Allgemeinen während der tatsächlichen Ausführung des Programmcodes verwendet werden. Die Massenspeichereinheit(en) 125 kann/können als ein Festplattenlaufwerk oder eine andere permanente Datenspeichereinheit realisiert werden. Das System 100 kann auch einen oder mehrere Cachespeicher (nicht gezeigt) enthalten, die die zeitweilige Speicherung von mindestens einem Teil des Programmcodes ermöglichen, um die Häufigkeit zu verringern, mit der Programmcode während der Ausführung aus der Massenspeichereinheit 125 abgerufen werden muss.
  • Eingabe-/Ausgabe-(E/A-)Einheiten wie zum Beispiel eine Tastatur 130, eine Zeigeeinheit 135 und ein Bildschirm 140 können auch mit dem System 100 verbunden werden. Die E/A-Einheiten können entweder direkt oder über zwischengeschaltete E/A-Steuereinheiten mit dem System 100 verbunden werden. Ein Netzwerkadapter 145 kann ebenfalls mit dem System 100 verbunden werden, um dem System 100 den Datenaustausch mit anderen Systemen, Computersystemen, Remote-Druckern und/oder Remote-Speichereinheiten über zwischengeschaltete private oder öffentliche Netzwerke zu ermöglichen. Modems, Kabelmodems, Ethernet-Karten und drahtlose Netzwerkadapter sind Beispiele für verschiedene Arten von Netzwerkadaptern, die mit dem System 100 verwendet werden können.
  • Wie in 1 dargestellt, können die Speichereinheiten 110 grafische Auswertesoftware 150 speichern. Die grafische Auswertesoftware 150, die in Form von ausführbarem Programmcode realisiert wird, kann von dem System 100 ausgeführt werden, um Attribute 155, die verschiedenen Objekten 160 in einer Ansicht 165 einer GUI zugewiesen werden, abzufragen und um Objekt-Attribute 155 zu ermitteln, die nicht Attributen für Listen von Objekten entsprechen, welche gemäß den hier beschriebenen Verfahren für andere Objekte erzeugt werden. Kennungen, die den ermittelten Attributen entsprechen, können an die Speichereinheiten 110, den Bildschirm 140 oder in einer beliebigen anderen geeigneten Art und Weise ausgegeben werden. In der hier verwendeten Weise kann ”Ausgeben” und/oder ”Ausgabe” das Speichern in den Speichereinheiten 110, zum Beispiel das Schreiben in eine in den Speichereinheiten 110 abgelegte Datei, das Ausgeben an den Bildschirm 140 oder an eine andere periphere Ausgabeeinheit, das Wiedergeben von akustischen Meldungen, das Senden oder Übertragen an ein anderes System, das Exportieren oder dergleichen bedeuten.
  • In einer Ausführungsform kann die grafische Auswertesoftware 150 der vorliegenden Erfindung im IBM® Rational® Functional TesterTM realisiert werden (IBM, Rational und Rational Functional Tester sind Marken der International Business Machines Corporation in den Vereinigten Staaten von Amerika, in anderen Ländern oder sowohl in den Vereinigten Staaten von Amerika als auch in anderen Ländern). Die Erfindung ist in dieser Hinsicht jedoch nicht beschränkt. Tatsächlich kann die grafische Analysesoftware 150 in einer Entwicklungsanwendung für das weltweite Netz (Web-Entwicklungsanwendung), einer Software-Entwicklungsanwendung oder in einer beliebigen anderen Anwendung realisiert werden, in der GUIs entwickelt und/oder geprüft werden. Beispielsweise kann die vorliegende Erfindung als ein Einschub oder ein Zusatzprogramm, als ein Modul, eine Routine oder Unterroutine in einer Anwendung realisiert werden.
  • In einer anderen Ausführungsform kann die grafische Auswertesoftware 150 als eine eigenständige Anwendung realisiert werden, die sich über eine Schnittstelle mit einer anderen Anwendung verbinden lässt, welche eine GUI darstellt. Wie erwähnt wurde, kann es sich bei einer solchen anderen Anwendung um eine Anwendung handeln, in der GUIs entwickelt und/oder geprüft werden, doch muss dies nicht der Fall sein. Die grafische Auswertesoftware 150 kann über eine Schnittstelle mit einem herkömmlichen Web-Browser verbunden werden.
  • 2 stellt eine Ansicht 200 der GUI 202 gemäß einer anderen Ausführungsform der vorliegenden Erfindung dar; Wie erwähnt wurde, kann die GUI 202 in einer geeigneten Anwendung dargestellt werden, welche die grafische Auswertesoftware enthält oder mit der die grafische Auswertesoftware kommunikativ verbunden ist.
  • In der GUI 202 kann eine Vielzahl von GUI-Objekten (nachstehend ”Objekte” genannt) 204, 206, 208, die der Ansicht 200 zugewiesen werden, dargestellt werden. Bei den Objekten 204, 206, 208 kann es sich um Symbole, Schaltflächen, Verknüpfungen (Links), Textfelder, Dateneingabefelder (z. B. Felder oder Kästchen), Bilder, Teile einer Ansicht (z. B. Kopfzeile, Fußzeile, Container, Hauptteil, Abschnitt usw.) oder um beliebige andere Objekte handeln, die in einer Ansicht einer GUI dargestellt werden können oder in anderer Weise zu einer Ansicht einer GUI gehören können.
  • Jedes der Objekte 204, 206, 208 kann ein oder mehrere zugehörige Attribute haben. Die Attribute können Klassen ermitteln, zu denen die Objekte gehören, Objekttypen angeben (z. B. Hyperlink, Schaltfläche, Symbol usw.), Verknüpfungen zu anderen Webseiten, Verknüpfungen zu elektronischen Postadressen (eMail-Adressen) enthalten, Schriftarttypen angeben (z. B. Schriftart, Schriftgröße, Schriftfarbe, Schriftarttyp usw.), Objektabmessungen angeben, die Objektfarbe und/oder Hintergrundfarbe angeben, die Positionen von Objekten angeben (z. B. waagerechte Position, senkrechte Position, Ausrichtung usw.), das Auffüllen von Objekten angeben, Bilder ermitteln, die mit den Objekten dargestellt werden sollen, GUI-Ebenen angeben, auf denen die Objekte platziert werden, Funktionen, Routinen und/oder Unterroutinen angeben, die ausgeführt werden sollen, wenn die Objekte aktiviert oder deaktiviert werden und so weiter. Weiterhin können jedem der Objekte 204, 206, 208 beliebige von unzähligen anderen Attributen zugeordnet werden, und die Erfindung ist in dieser Hinsicht nicht beschränkt.
  • Die Attribute können den Objekten in einer beliebigen geeigneten Weise zugeordnet werden, zum Beispiel unter Verwendung der Hypertext Markup Language (HTML), mittels hintereinander geschachtelter Gestaltungsvorlagen (Cascading Style Sheets (CSS)) oder dergleichen. Ein sehr einfaches Beispiel für HTML-Code, das zur Zuordnung von Attributen zu einem Objekt verwendet werden kann, ist in TABELLE 1 dargestellt: TABELLE 1
    Figure 00170001
  • In diesem Beispiel wird ein Objekt einer Klasse ”products” zugewiesen, es sieht einen Hyperlink zu einer Webseite mit dem Titel ”product#1.html” vor, weist dem Objekt einen Titel ”Product #1” zu, legt fest, dass das product#1.html-Fenster oben dargestellt wird, gibt Text von ”Product #1” für das Objekt an und schließt ein Bildattribut ein, um eine Zeile unter dem Objekt zu platzieren.
  • Die grafische Auswertesoftware kann die den verschiedenen Objekten 204, 206, 208 zugewiesenen Attribute dynamisch abfragen, um die Attribute zu ermitteln, die zu den Objekten 204, 206, 208 gehören. In der Abbildung kann die grafische Auswertesoftware Computer-Programmcode abfragen, der die Ansicht 200 festlegt, um die Objekte 204, 206, 208 und ihre jeweiligen Attribute zu ermitteln. Dieser Computer-Programmcode kann HTML-Code, CSS-Code oder ein beliebiger anderer Computer-Programmcode sein, der zum Festlegen einer Ansicht 200 in einer GUI 202 verwendet werden kann.
  • Um die Objekte und ihre jeweiligen Attribute zu ermitteln, kann der Abfrageprozess Objekt-Markierungen, die den Objekten 204, 206, 208 entsprechen, und Attribut-Markierungen, die zu jedem der Objekte gehören, ermitteln. Die Attribut-Markierungen können die Attribute für diese Objekte 204, 206, 208 angeben.
  • Auf der Grundlage der ermittelten Objekte 204, 206, 208 und ihrer jeweiligen Attribute kann die grafische Auswertesoftware eine Ausgabe eines Korrelationsmodells erzeugen, die eine Liste von Attributen für jedes der Objekte 204, 206, 208 umfasst. Diese Listen können in einem beliebigen geeigneten Format erzeugt werden. Beispielsweise können die Listen als ein in der erweiterbaren Auszeichnungssprache XML geschriebenes Dokument, als eine Textdatei, als Datensätze in einer Daten- oder Hash-Tabelle usw. erzeugt werden.
  • In der Ausgabe des Korrelationsmodells können die Objekte 204, 206, 208 mit ihren entsprechenden Attributen getrennt gruppiert werden. In dieser Hinsicht können Attribute für alle Objekte 204, 206, 208 in einer Weise dargestellt werden, die die Attribute den Objekten 204, 206, 208 zuordnet. Ein Beispiel für eine Ausgabe eines Korrelationsmodells, die auf diese Weise für eine XML-Datei erzeugt werden kann, ist in TABELLE 2 dargestellt.
  • TABELLE 2
    Figure 00190001
  • Figure 00200001
  • Für die in TABELLE 2 gezeigte Ausgabe eines Korrelationsmodells können die Attribute für jedes der ermittelten Objekte 204, 206, 208 zu Gruppen zusammengefasst und für die jeweiligen Objekten 204, 206, 208 vorgesehen werden. Die Verarbeitung dieser Daten kann dann durchgeführt werden, so dass die Attribute für jedes der Objekte 204, 206, 208 mit Attributen für ähnliche Objekte 204, 206, 208 verglichen werden. Beispielsweise Bezug auf 2 nehmend, können die Attribute für das Objekt 208-1 mit Attributen der anderen Objekte 208-2, 208-3, 208-4, 208-5 verglichen werden, Attribute für das Objekt 208-2 können mit Attributen der anderen Objekte 208-1, 208-3, 208-4, 208-5 verglichen werden und so weiter. Jedwede Abweichung bei den Attributen, die verglichen werden, kann ermittelt und in einer geeigneten Art und Weise ausgegeben werden (z. B. an Speichereinheiten, in eine Datei, an einen Bildschirm usw. ausgegeben werden).
  • In diesem Beispiel enthält die Schaltfläche ”OK” 208-1 ein Attribut ”aktivieren”, wohingegen die Schaltfläche ”Abbrechen” 208-2 und die Schaltfläche ”Hilfe” 208-3 dieses Attribut nicht enthalten. Ferner enthält das Bild 208-4 ein Attribut ”altText”, während das Bild 208-5 dieses Attribut nicht enthält. Eine Ausgabe, die erzeugt wird, kann angeben, welchen dieser Objekte 208 Attribute fehlen, die bei anderen Objekten 208 vorhanden sind, und zu welchen dieser Objekte Attribute gehören, die bei den anderen Objekten nicht vorhanden sind.
  • Nochmals Bezug nehmend auf TABELLE 2 können zum Beispiel Attribute ermittelt werden, die nicht bei allen Objekten vorhanden sind, und es kann ermittelt werden, wo diese Attribute den Objekt-Markierungen fehlen. Diese Attribute, und wo sie als fehlende Attribute erscheinen, können auf jede beliebige Art und Weise ermittelt werden, zum Beispiel, indem Text mit einer bestimmten Schriftart (z. B. unterstrichen, fett gedruckt, kursiv, Schriftfarbe, Hintergrundfarbe usw.) dargestellt wird. Zusätzliche Kennungen (z. B. alphanumerischer Text, Symbole oder dergleichen) können ebenfalls zu der Ausgabedatei hinzugefügt werden, um Hinweise darauf zu geben, welche Attribute bei den Objekten als zusätzliche oder fehlende Attribute erscheinen, welche Attribute zur Mehrzahl der Objekte oder zu einer Mehrzahl eines bestimmten Typs von Objekt gehören und so weiter. Überdies können auch Attributwerte, die unter den Objekten nicht übereinstimmend sind, verzeichnet werden. Wenn eine Instanz eines OK-Werts beispielsweise als ”OK” und eine andere Instanz als ”Ok” dargestellt wird, können die Unterschiede bei der Groß-/Kleinschreibung in der Ausgabedatei ermittelt werden.
  • In einer anderen Anordnung können die Objekte 204 206, 208 und ihre Attribute in einer Weise dargestellt werden, die die Prüfung globaler Eigenschaften und die Zuordnung mittels Querverweisen vereinfacht. Beispielsweise können die Objekte 204, 206, 208 und Attribute in einem Baumformat ausgegeben und gruppenweise nach Objekttypen zusammengefasst werden. In der Abbildung kann eine Gruppe für ”Schaltflächen” erzeugt werden, eine Gruppe kann für ”Bilder” erzeugt werden und so weiter. Globale Kennungen können ebenfalls in die Ausgabe aufgenommen werden, um Objekttypen anzuzeigen, die zu Gruppen zusammengefasst werden. Anhand der Prüfung der globalen Eigenschaften und der Referenzierung mittels Querverweis können Auffälligkeiten bei den Objekt-Attributen erkannt werden. Wenn eine Schaltfläche zum Beispiel die Beschriftung ”OK” trägt, während eine andere Schaltfläche die Beschriftung ”Ok” trägt, kann die Auffälligkeit, dass ”OK” auf diese verschiedenen Arten dargestellt wird, erkannt und angezeigt werden. Ein Beispiel für XML-Code, der in einer XML-Datei in Baumformat dargestellt wird, ist in TABELLE 3 gezeigt: TABELLE 3
    Figure 00230001
  • Auch für die beispielhafte Baummodell-Ausgabe, die in TABELLE 3 gezeigt ist, können Kennungen dargestellt werden, um Inkonsistenzen unter den Objekt-Attributen auszuweisen. Eine Ausgabe, die gemäß dem in TABELLE 3 dargestellten Beispiel erzeugt wird, kann die Sichtprüfung der verschiedenen Attribute, die ähnlichen Objekten 204, 206, 208 zugewiesen werden, vereinfachen.
  • Ungeachtet der Art und Weise, in der die Objekte 204, 206, 208 und ihre Attribute dargestellt werden, können die Objekte 204, 206, 208, die ausgewertet werden, um die Attribut-Listen zu erzeugen, alle Objekte 204, 206, 208 in der Ansicht 200 oder nur einen Teil der Objekte 204, 206, 208 einschließen. In dieser Hinsicht kann eine Benutzerauswahl empfangen werden, um verschiedene Objekte der Benutzerschnittstellen-Objekte 204, 206, 208 zur Auswertung auszuwählen. Ein Benutzer kann beispielsweise eine Zeigeeinheit verwenden, um die Objekte 208 auszuwählen, zum Beispiel, indem er ein Auswahlfeld 210 um die, Objekte 208 in der Ansicht 200 zieht. In einer anderen Anordnung kann der Benutzer die Objekte auswählen, indem er die Objekte in dem Computer-Programmcode für die Ansicht 200 ermittelt, zum Beispiel, indem er die Objekte aus dem Computer-Programmcode in XML-Dateien auswählt, die Objekte aus einer anderen Ausgabedatei, die erzeugt wird, auswählt oder die Objekte in einer anderen geeigneten Weise auswählt.
  • In noch einer anderen Anordnung kann ein Benutzer einen Web-Browser oder eine Anwendung in einem Rich-Text-Format (RTF) konfigurieren, eine Zielansicht laden und eine konfigurierte Schnittstelle, in der die Ansicht dargestellt wird, abfragen. Alternativ kann eine Untergruppe angegeben werden, indem eine codierte Bereichsmarkierung, wie zum Beispiel ein <DIV>-Bereich in HTML übergeben wird, wie erwähnt wurde.
  • In einer anderen Ausführungsform kann ein über Standards informierendes Dokument erzeugt werden. Das über Standards informierende Dokument kann angeben, welche Attribute einem bestimmten GUI-Standard entsprechen und welche nicht. Zum Beispiel können die Objekte 204, 206, 208, die ermittelt werden, und ihre Attribute mit Objekten und Attributen verglichen werden, die in einem Standard oder einem Protokoll festgelegt sind, das auf die Ansicht 200 angewendet werden kann. Auf die Objekte und Attribute, die in dem Standard oder dem Protokoll festgelegt sind, kann aus einer geeigneten Datei, zum Beispiel einer Textdatei, einer XML-Datei, einer Datentabelle, einer Hash-Tabelle usw. zugegriffen werden. Bei den Attributen, die in dem über Standards informierenden Dokument angegeben werden, kann es sich auch um Attribute handeln, die allen Objekten 204, 206, 208 in der Ansicht entsprechen, oder ausschließlich um Attribute, die ausgewählten Objekten 204, 206, 208 entsprechen.
  • Ferner kann die grafische Auswertesoftware auf der Grundlage der Objekte in der Ansicht 200 und ihrer entsprechenden Attribute einen Attribut-Regelsatz erzeugen. Dieser Regelsatz kann ebenfalls auf allen Objekten 204, 206, 208 in der Ansicht 200 oder nur auf Objekten 204, 206, 208, die ausgewählt werden, beruhen. Der Attribut-Regelsatz kann Attribute angeben, die bei jedem der Objekte 204, 206, 208 auf der Grundlage von Attributen, die den Objekten 204, 206, 208 gemein sind, erwartet werden. In der Abbildung können Attribute, die einem Teil der Objekte 204, 206, 208 gemein sind, in der Ansicht 200 festgestellt werden. Nachfolgend werden diese Attribute als ”Referenzattribute” bezeichnet.
  • In einer Erscheinungsform der Erfindung kann die Ansicht 200 an eine Zwischenspeicherdatei oder temporäre Datei ausgegeben werden. Wenn ein Benutzer und/oder ein Programm beispielsweise keinen Zugriff haben, um eine Quelldatei zu bearbeiten, kann ein Zwischenspeicherdokument angelegt werden. Die Objekte 204, 206, 208 und die Referenzattribute können dann ermittelt werden, indem die Zwischenspeicher- oder temporären Dateien abgefragt werden. Dennoch ist die Erfindung in dieser Hinsicht nicht beschränkt, und die Objekte 204, 206, 208 sowie die Referenzattribute können auf jede geeignete Art und Weise ermittelt werden.
  • Der Teil der Objekte 204, 206, 208 kann eine Mehrheit der Objekte oder ein bestimmter Prozentsatz der Objekte sein (z. B. 60% der Objekte, 75% der Objekte, 90% der Objekte und so weiter). In einer Ausführungsform kann der Teil der Objekte 204, 206, 208 mittels einer statistischen Auswertung festgestellt werden. Die statistische Auswertung kann das Ermitteln der Attribute, die zu jedem der Objekte 204, 206, 208 gehören, und das Erzeugen einer Vergleichsliste auf der Grundlage der ermittelten Daten beinhalten.
  • In einer Ausführungsform kann ein Attribut-Regelsatz erzeugt werden, und die Liste der Attribute für jedes Objekt kann mit dem Attribut-Regelsatz verglichen werden. Objekte 204, 206, 208, die über Listen von Attributen verfügen, welche nicht dem Attribut-Regelsatz entsprechen, können dann ermittelt werden. Beispielsweise können in dem Attribut-Regelsatz enthaltene, Referenzattribute, die bestimmten Objekten 204, 206, 208 fehlen, ermittelt und entsprechende Kennungen können erzeugt werden. Überdies können Attribute, die zu den Objekten 204, 206, 208 gehören und nicht in dem Attribut-Regelsatz enthalten sind, ermittelt werden, und entsprechende Kennungen können erzeugt werden. Auch können eine oder mehrere Kennungen erzeugt werden, um die Objekte 204, 206, 208 zu ermitteln, für die Referenzattribute fehlen oder zu denen Attribute gehören, die keine Referenzattribute sind. Wie erwähnt wurde, können die Objekt-Kennungen und die Attribut-Kennungen dann in einer Weise ausgegeben werden, die angibt, welche Attribute bei jedem Objekt zusätzlich vorhanden sind oder bei jedem Objekt fehlen.
  • In einer Erscheinungsform der Erfindung können die Attribute für die Objekte 204, 206, 208 automatisch aktualisiert werden, wenn Objekte 204, 206, 208 ermittelt werden, die über Listen von Attributen verfügen, welche nicht dem Attribut-Regelsatz entsprechen (oder Attributen, die in einem Standard oder einem Protokoll festgelegt sind). Wenn einem Objekt 204, 206, 208 beispielsweise ein Attribut fehlt, das in dem Attribut-Regelsatz enthalten ist, kann dieses Attribut dem Objekt 204, 206, 208 zugeordnet werden. Beispielsweise kann der Computer-Programmcode, der das Objekt festlegt, aktualisiert werden, indem dem Objekt eine geeignete Attribut-Markierung zugeordnet wird. Ebenso kann, wenn ein Objekt 204, 206, 208 über Attribute verfügt, die nicht in dem Attribut-Regelsatz enthalten sind, die Zuordnung dieser Attribute zu dem Objekt 204, 206, 208 aufgehoben werden. Die entsprechende Attribut-Markierung kann beispielsweise aus dem Computer-Programmcode entfernt werden. Syntax-Änderungen, die gegebenenfalls notwendig werden, um das Hinzufügen oder das Löschen von Attributen zu berücksichtigen, können automatisch vorgenommen werden. In der Abbildung kann, wenn der Attribut-Regelsatz oder irgendwelche anderen festgelegten Attribute angeben, dass ”OK” in Großbuchstaben darzustellen ist, jedoch ein Attribut ermittelt wird, in dem ”Ok” dargestellt wird, das ermittelte Attribut automatisch aktualisiert werden, damit es ”OK” wiedergibt. In dieser Hinsicht kann die grafische Auswertesoftware einen Syntax-Editor enthalten oder andernfalls mit einem Syntax-Editor kommunizieren, welcher so konfiguriert ist, dass er Syntax-Änderungen in dem Computer-Programmcode automatisch durchführt.
  • Statt Änderungen an dem Computer-Programmcode sofort durchzuführen, um Attribut-Zuordnungen zu den Objekten 204, 206, 208 hinzuzufügen oder von den Objekten 204, 206, 208 zu entfernen, kann in einer weiteren Ausführungsform jede vorgeschlagene Änderung einem Benutzer über eine geeignete Benutzerschnittstelle wie zum Beispiel die GUI 202 übergeben werden, um den Benutzer aufzufordern, jede entsprechende Änderung, das Hinzufügen oder Entfernen von Attributen, die den Objekten 204, 206, 208 zugeordnet sind, zu dem/aus dem Computer-Programmcode, anzunehmen oder abzulehnen. Beispielsweise kann dem Benutzer eine Gruppe von Objekten 204, 206, 208 übergeben werden, für die Attribute geändert – hinzugefügt oder entfernt – werden sollen, und der Benutzer kann eines oder mehrere dieser Objekte auswählen, für das beziehungsweise die die Änderungen angenommen oder abgelehnt werden.
  • Ungeachtet dessen, ob die Änderungen an dem Computer-Programmcode sofort oder als Reaktion auf die Annahme/Ablehnung der Änderungen durch einen Benutzer durchgeführt werden, können jedwede solche Änderungen als Reaktion auf die Anforderung eines Benutzers rückgängig gemacht werden. Eine solche Benutzeranforderung kann auf jede beliebige Art und Weise in die grafische Auswertesoftware eingegeben werden. Zum Beispiel kann in der GUI 202 eine Schaltfläche ”Rückgängig” dargestellt werden. In einer anderen Anordnung kann eine Sicherungskopie der ursprünglichen Quelldatei für die Ansicht 200 gespeichert werden, so dass die Sicherungskopie der ursprünglichen Quelldatei wiederhergestellt werden kann, um eine Arbeitskopie der Quelldatei zu ersetzen, statt sich auf ein Verfahren zum Rückgängigmachen von Änderungen, die durchgeführt wurden, zu verlassen.
  • 3 ist ein Flussdiagramm, das ein Verfahren 300 zum Auswerten von Objekten aus einer GUI gemäß einer anderen Ausführungsform der vorliegenden Erfindung veranschaulicht. Im Schritt 302 können Attribute, die verschiedenen Objekten zugewiesen sind, welche einer Ansicht einer GUI zugewiesen sind, dynamisch abgefragt werden, um Attribute zu ermitteln, die zu jedem der Objekte gehören. Im Schritt 304 kann für jedes der Objekte eine Liste von Attributen erzeugt werden. In einer Ausführungsform kann ein Attribut-Regelsatz auf der Grundlage der Attribute erzeugt werden, die zu jedem der Objekte gehören.
  • Im Schritt 306 kann festgestellt werden, ob mindestens eines der Objekte über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere Objekte entspricht. Zum Beispiel kann die Liste der Attribute für jedes Objekt mit dem Attribut-Regelsatz verglichen werden. In einer anderen Anordnung können die Attribute für jedes Objekt mit Objekten und Attributen verglichen werden, die in einem anwendbaren Standard oder Protokoll festgelegt sind.
  • Im Schritt 308 kann eine Kennung ausgegeben werden, wenn mindestens ein Objekt über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere Objekte (oder einem Standard/Protokoll) entspricht. Die Kennung kann anzeigen, dass das Objekt über die Liste der Attribute verfügt, die nicht den Listen der Attribute für die anderen Objekte (oder dem Standard/Protokoll) entspricht.
  • Gleiche Zahlen wurden hier verwendet, um in der gesamten Beschreibung auf dieselben Punkte zu verweisen. Das Flussdiagramm und die Blockschaltbilder in den Figuren zeigen die Architektur, die Funktionalität und die Betriebsweise von möglichen Ausführungsarten von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In dieser Hinsicht kann jeder Block in dem Flussdiagramm oder den Blockschaltbildern ein Modul, ein Segment oder einen Teilcode darstellen, das beziehungsweise der einen oder mehrere ausführbare Befehle zur Ausführung der angegebenen logischen Funktion(en) umfasst. Es sei auch angemerkt, dass die in dem Block angegebenen Funktionen in manchen alternativen Ausführungsarten nicht in der in den Figuren angegebenen Reihenfolge auftreten können. In Abhängigkeit von der mit ihnen verbundenen Funktionalität können beispielsweise zwei Blöcke, die als aufeinanderfolgende Blöcke dargestellt sind, tatsächlich weitgehend gleichzeitig ausgeführt werden oder die Blöcke können manchmal in der umgekehrten Reihenfolge ausgeführt werden. Man wird auch feststellen, dass jeder Block der Blockschaltbilder/und oder der Darstellung in dem Flussdiagramm sowie Kombinationen aus Blöcken in den Blockschaltbildern und/oder der Darstellung in dem Flussdiagramm von Systemen, die auf Hardware für spezielle Anwendungen beruhen und die angegebenen Funktionen oder Vorgänge durchführen, oder von Kombinationen aus Hardware für spezielle Anwendungen und Computerbefehlen ausgeführt werden können.
  • Die hier verwendete Terminologie dient lediglich dazu, bestimmte Ausführungsformen zu beschreiben und ist nicht als Einschränkung der Erfindung zu verstehen. Die Singular-Formen ”ein”, ”eine” und ”der”, ”die”, ”das” sollen in der hier verwendeten Weise auch die Plural-Formen einschließen, sofern der Kontext nicht eindeutig etwas anderes angibt. Des Weiteren versteht es sich, dass die Begriffe ”umfasst” und/oder ”umfassen”, wenn sie in dieser Beschreibung verwendet werden, das Vorhandensein von angegebenen Merkmalen, ganzen Zahlen, Schritten, Operationen, Elementen und/oder Komponenten bezeichnen, das Vorhandensein oder das Hinzufügen von einem oder mehreren anderen/weiteren Merkmalen, ganzen Zahlen, Schritten, Operationen, Elementen, Komponenten und/oder Gruppen der Vorgenannten jedoch nicht ausschließen.
  • Die entsprechenden Strukturen, Materialien, Vorgänge und Gleichwertiges von allen Mitteln oder Schritten sowie Funktionselementen in den nachstehenden Ansprüchen sollen jedwede Struktur, jedwedes Material oder jedweden Vorgang zur Ausführung der Funktion in Kombination mit anderen beanspruchten Elementen, die im Einzelnen beansprucht werden, beinhalten. Die Beschreibung der vorliegenden Erfindung erfolgte zum Zweck der Veranschaulichung und Erläuterung, erhebt jedoch keinen Anspruch auf Vollständigkeit und ist auch nicht als auf die Erfindung in der offengelegten Form beschränkt zu verstehen. Viele Ab- und Veränderungen sind für den Fachmann erkennbar, ohne vom Umfang der Erfindung abzuweichen.

Claims (13)

  1. Verfahren zum Auswerten von Objekten einer grafischen Benutzeroberfläche, wobei das Verfahren Folgendes umfasst: dynamisches Abfragen von Attributen, die verschiedenen der Objekte der grafischen Benutzeroberfläche zugewiesen werden, welche einer Ansicht einer grafischen Benutzeroberfläche zugewiesen werden, um Attribute, die zu jedem der Objekte der grafischen Benutzeroberfläche gehören, zu ermitteln; für jedes der Objekte der grafischen Benutzeroberfläche Erzeugen einer Liste von Attributen; Feststellen, ob mindestens eines der Objekte der grafischen Benutzeroberfläche über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere Objekte der grafischen Benutzeroberfläche entspricht; und wenn mindestens eines der Objekte der grafischen Benutzeroberfläche über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere Objekte der grafischen Benutzeroberfläche entspricht, Ausgeben einer Kennung, die anzeigt, dass das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche über die Liste von Attributen verfügt, die nicht den Listen von Attributen für die anderen Objekte der grafischen Benutzeroberfläche entspricht.
  2. Verfahren nach Anspruch 1, das des Weiteren Folgendes umfasst: Auf der Grundlage der Attribute, die zu jedem der Objekte der grafischen Benutzeroberfläche gehören, Erzeugen eines Attribut-Regelsatzes.
  3. Verfahren nach Anspruch 2, wobei das Feststellen, ob das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche über die Liste der Attribute verfügt, die nicht den Listen der Attribute für andere Objekte der grafischen Benutzeroberfläche entspricht, Folgendes umfasst: Vergleichen der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche mit dem Attribut-Regelsatz.
  4. Verfahren nach einem der Ansprüche 1 bis 3, das des Weiteren Folgendes umfasst: Empfangen einer Benutzerauswahl der verschiedenen Objekte der grafischen Benutzeroberfläche; wobei das dynamische Abfragen der Attribute, die verschiedenen Objekten der grafischen Benutzeroberfläche zugewiesen werden, welche der Ansicht der grafischen Benutzeroberfläche zugewiesen werden, das Abfragen von Attributen umfasst, die Objekten der grafischen Benutzeroberfläche zugewiesen werden, welche von dem Benutzer ausgewählt werden.
  5. Verfahren nach einem der Ansprüche 1 bis 4, das des Weiteren Folgendes umfasst: für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche, das über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere Objekte der grafischen Benutzeroberfläche entspricht, automatisches Aktualisieren der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche, die nicht den Listen von Attributen für andere Objekte der grafischen Benutzeroberfläche entspricht.
  6. Verfahren nach Anspruch 5, wobei das automatische Aktualisieren der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche, die nicht den Listen der Attribute für andere Objekte der grafischen Benutzeroberfläche entspricht, Folgendes umfasst: Hinzufügen zu der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche von mindestens einem Attribut, das in den Listen der Attribute für die anderen Objekte der grafischen Benutzeroberfläche enthalten ist.
  7. Verfahren nach Anspruch 6, das des Weiteren Folgendes umfasst: vor dem Hinzufügen von mindestens einem Attribut, das in den Listen der Attribute für die anderen Objekte der grafischen Benutzeroberfläche enthalten ist, zu der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche Auffordern eines Benutzers, das Hinzufügen von dem mindestens einen Attribut anzunehmen oder abzulehnen.
  8. Verfahren nach Anspruch 5, wobei das automatische Aktualisieren der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche, die nicht den Listen der Attribute für andere Objekte der grafischen Benutzeroberfläche entspricht, Folgendes umfasst: Entfernen aus der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche von mindestens einem Attribut, das in den Listen der Attribute für die anderen Objekte der grafischen Benutzeroberfläche enthalten ist.
  9. Verfahren nach Anspruch 8, das des Weiteren Folgendes umfasst: vor dem Entfernen aus der Liste der Attribute für das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche von mindestens einem Attribut, das nicht in den Listen der Attribute für die anderen Objekte der grafischen Benutzeroberfläche enthalten ist, Auffordern eines Benutzers, das Entfernen von dem mindestens einen Attribut anzunehmen oder abzulehnen.
  10. Verfahren nach einem der Ansprüche 1 bis 9, wobei das Ausgeben der Kennung, die anzeigt, dass das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche über die Liste der Attribute verfügt, die nicht den Listen der Attribute für die anderen Objekte der grafischen Benutzeroberfläche entspricht, Folgendes umfasst: Ausgeben einer Liste von Ergebnissen aus der dynamischen Abfrage.
  11. Verfahren nach Anspruch 10, wobei das Ausgeben einer Liste von Ergebnissen aus der dynamischen Abfrage Folgendes umfasst: Erzeugen eines über Standards informierenden Dokuments, das angibt, welche Attribute einem bestimmten Standard einer grafischen Benutzeroberfläche entsprechen.
  12. Computersystem, das Folgendes umfasst: einen Prozessor; einen Speicher; eine dynamische Abfrageeinheit, um Attribute dynamisch abzufragen, die verschiedenen der Objekte der grafischen Benutzeroberfläche zugewiesen werden, welche einer Ansicht einer grafischen Benutzeroberfläche zugewiesen werden, um Attribute, die zu jedem der Objekte der grafischen Benutzeroberfläche gehören, zu ermitteln; eine Attribut-Erzeugungseinheit, die so ausgelegt ist, dass sie für jedes der Objekte der grafischen Benutzeroberfläche eine Liste von Attributen erzeugt; eine Feststellungseinheit, um festzustellen, ob mindestens eines der Objekte der grafischen Benutzeroberfläche über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere Objekte der grafischen Benutzeroberfläche entspricht; und eine Ausgabe-Komponente, die auf die Feststellung anspricht, dass mindestens eines der Objekte der grafischen Benutzeroberfläche über eine Liste von Attributen verfügt, die nicht Listen von Attributen für andere Objekte der grafischen Benutzeroberfläche entspricht, um eine Kennung auszugeben, die anzeigt, dass das mindestens eine Objekt von den Objekten der grafischen Benutzeroberfläche über die Liste von Attributen verfügt, die nicht den Listen von Attributen für die anderen Objekte der grafischen Benutzeroberfläche entspricht.
  13. Computerprogramm, das auf einem Computerlesbaren Datenträger gespeichert wird und Computer-Programmcode umfasst, um, wenn es in ein Computersystem geladen und darauf ausgeführt wird, das Computersystem zu veranlassen, alle Schritte des Verfahrens nach einem der Ansprüche 1 bis 11 durchzuführen.
DE112010003948T 2009-12-29 2010-12-14 Auswerten von Objekten einer Grafischen Benutzeroberfläche zur Überprüfung von Standards Active DE112010003948T8 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/648,372 2009-12-29
US12/648,372 US10095485B2 (en) 2009-12-29 2009-12-29 Analyzing objects from a graphical interface for standards verification
PCT/EP2010/069563 WO2011080062A1 (en) 2009-12-29 2010-12-14 Analyzing objects from a graphical interface for standards verification

Publications (2)

Publication Number Publication Date
DE112010003948T5 true DE112010003948T5 (de) 2012-10-25
DE112010003948T8 DE112010003948T8 (de) 2012-12-27

Family

ID=43618784

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112010003948T Active DE112010003948T8 (de) 2009-12-29 2010-12-14 Auswerten von Objekten einer Grafischen Benutzeroberfläche zur Überprüfung von Standards

Country Status (5)

Country Link
US (2) US10095485B2 (de)
CN (1) CN102725729B (de)
DE (1) DE112010003948T8 (de)
GB (1) GB2488651A (de)
WO (1) WO2011080062A1 (de)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10095485B2 (en) 2009-12-29 2018-10-09 International Business Machines Corporation Analyzing objects from a graphical interface for standards verification
US9183653B2 (en) * 2010-12-14 2015-11-10 Microsoft Technology Licensing, Llc Extensions for modifying a graphical object to display data
US9594544B2 (en) 2012-06-07 2017-03-14 Microsoft Technology Licensing, Llc Visualized code review
US10091064B2 (en) * 2013-06-12 2018-10-02 Siemens Product Lifecycle Management Software Inc. Systems and methods for stateless management of object properties
US9576017B2 (en) * 2014-02-03 2017-02-21 Software Ag Systems and methods for managing graphical model consistency
US9336126B1 (en) * 2014-06-24 2016-05-10 Amazon Technologies, Inc. Client-side event logging for heterogeneous client environments
US10097565B1 (en) 2014-06-24 2018-10-09 Amazon Technologies, Inc. Managing browser security in a testing context
US20160350136A1 (en) * 2015-05-27 2016-12-01 Google Inc. Assist layer with automated extraction
US11436133B2 (en) 2016-03-23 2022-09-06 Micro Focus Llc Comparable user interface object identifications
CN108089782B (zh) * 2016-11-21 2021-02-26 佳能株式会社 用于对相关用户界面对象的改变进行建议的方法和装置
EP3963441A4 (de) * 2019-04-30 2023-01-11 Walkme Ltd. Erfassung von gui-element unter verwendung einer vielzahl von alternativen darstellungen des gui-elements
US11741074B2 (en) * 2021-08-20 2023-08-29 Fidelity Information Services, Llc Automated user interface testing with machine learning
CN113946332B (zh) * 2021-08-23 2023-04-25 芯华章科技股份有限公司 基于gui界面显示属性的方法及存储介质
US20230325049A1 (en) * 2022-04-12 2023-10-12 Lucid Software, Inc. Legend of graphical objects

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5600789A (en) 1992-11-19 1997-02-04 Segue Software, Inc. Automated GUI interface testing
US6046740A (en) 1997-02-07 2000-04-04 Seque Software, Inc. Application testing with virtual object recognition
US5974254A (en) * 1997-06-06 1999-10-26 National Instruments Corporation Method for detecting differences between graphical programs
US6223185B1 (en) * 1998-07-31 2001-04-24 International Business Machines Corporation Method for defining composed object methods and attributes by dynamically presenting composite values and options
US6429885B1 (en) 1998-10-30 2002-08-06 Sony Corporation GUI resource editor for an embedded system
US6754664B1 (en) * 1999-07-02 2004-06-22 Microsoft Corporation Schema-based computer system health monitoring
WO2002005088A1 (en) * 2000-07-06 2002-01-17 British Telecommunications Public Limited Company Method and apparatus for extracting knowledge from software code or other structured data
US6804684B2 (en) * 2001-05-07 2004-10-12 Eastman Kodak Company Method for associating semantic information with multiple images in an image database environment
US6891552B1 (en) * 2001-05-08 2005-05-10 Microsoft Corporation Specifiable user interfaces
CN1591404A (zh) * 2001-11-09 2005-03-09 无锡永中科技有限公司 多版本数据处理系统
US7594181B2 (en) 2002-06-27 2009-09-22 Siebel Systems, Inc. Prototyping graphical user interfaces
US7236973B2 (en) * 2002-11-27 2007-06-26 Sap Aktiengesellschaft Collaborative master data management system for identifying similar objects including identical and non-identical attributes
JP3845627B2 (ja) * 2003-06-11 2006-11-15 インターナショナル・ビジネス・マシーンズ・コーポレーション 属性情報取得装置、属性情報取得方法、及び、そのプログラムと記録媒体
US7353510B2 (en) * 2003-07-11 2008-04-01 Computer Associates Think, Inc. System and method for comparing objects
US8677272B2 (en) 2005-12-13 2014-03-18 International Business Machines Corporation Graphical user interface design utility
EP1960869A1 (de) 2005-12-15 2008-08-27 International Business Machines Corporation Verfahren und system zum unterstützen eines softwareentwicklers bei dem erstellen von quellcode für ein computerprogramm
US20120124495A1 (en) * 2009-11-23 2012-05-17 Nitsan Amichai System and method for object relationship identification in a user interface
US10095485B2 (en) 2009-12-29 2018-10-09 International Business Machines Corporation Analyzing objects from a graphical interface for standards verification

Also Published As

Publication number Publication date
US11635946B2 (en) 2023-04-25
GB2488651A (en) 2012-09-05
CN102725729A (zh) 2012-10-10
US10095485B2 (en) 2018-10-09
US20110161874A1 (en) 2011-06-30
DE112010003948T8 (de) 2012-12-27
CN102725729B (zh) 2016-04-20
WO2011080062A1 (en) 2011-07-07
GB201203474D0 (en) 2012-04-11
US20190042208A1 (en) 2019-02-07

Similar Documents

Publication Publication Date Title
DE112010003948T5 (de) Auswerten von Objekten einer Grafischen Benutzeroberfläche zur Überprüfung von Standards
DE10300545B4 (de) Vorrichtung, Verfahren, Speichermedium und Datenstruktur zur Kennzeichnung und Speicherung von Daten
DE10135445B4 (de) Integriertes Verfahren für das Schaffen einer aktualisierbaren Netzabfrage
DE102014204840A1 (de) Verbessertes Datenintegrationswerkzeug
DE102014215621A1 (de) Vorlagensystem zum Generieren von benutzerangepassten Dokumenten
DE112016005292T5 (de) Automatischer Abweichungsdetektionsdienst auf heterogenen Protokollströmen
DE112011102891T5 (de) Automatisches Anpassen einer Eingabekonfiguration
DE202014010938U1 (de) Omega-Namen: Namenserzeugung und -ableitung
DE102014116369A1 (de) Verwaltung von sprachmarkern bei internationaler datenspeicherung
DE202011110894U1 (de) Serverbasierte gemeinsame Datennutzung in Computeranwendungen
DE102013222290A1 (de) System und Verfahren zur gemeinsamen Nutzung von Ermittlungsergebnisdaten
DE19800423A1 (de) Rechnerverfahren und -vorrichtung zur Vorabansicht von Dateien außerhalb eines Andwendungsprogramms
DE202011110895U1 (de) Echtzeitsynchronisierte Bearbeitung von Dokumenten durch mehrere Benutzer für das Bloggen
DE10105941A1 (de) System und Verfahren zum automatischen Zuweisen eines Dateinamens zu einem gescannten Dokument
DE112009000293T5 (de) Automatische Verbindungen zwischen Anwendungskomponenten
DE202011110879U1 (de) Rich-Content in einem Textverarbeitungssystem auf Browserbasis
DE102013209868A1 (de) Abfragen und Integrieren strukturierter und unstrukturierter Daten
DE202013012499U1 (de) Hintergrundseite auf Browserebene zur Bereitstellung mehrfacher Ansichten
DE102012209711A1 (de) Systeme und Verfahren zum Verwenden grafischer Darstellungen für die Verwaltung von Abfrageergebnissen
DE102014112983A1 (de) Aktive Wissenslenkung beruhend auf Dokumententiefenanalyse
DE102013200355A1 (de) Zusammenfügen von Dokumenten aud der Grundlage der Kenntnis eines Dokumentenschemas
DE202015009266U1 (de) Benutzerschnittsstelle für ein Speichersystem mit unverankerter Dateisammlung
DE202015009292U1 (de) Erzeugung eines Aktivitätsflusses
DE112008004025T5 (de) Analysieren von Ereignissen
DE112018005272T5 (de) Suchen von mehrsprachigen dokumenten auf grundlage einer extraktion der dokumentenstruktur

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R016 Response to examination communication
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0009440000

Ipc: G06F0015160000

R084 Declaration of willingness to licence