DE102015210499A1 - Method for the computer-aided generation of a graphical modeling language - Google Patents
Method for the computer-aided generation of a graphical modeling language Download PDFInfo
- Publication number
- DE102015210499A1 DE102015210499A1 DE102015210499.0A DE102015210499A DE102015210499A1 DE 102015210499 A1 DE102015210499 A1 DE 102015210499A1 DE 102015210499 A DE102015210499 A DE 102015210499A DE 102015210499 A1 DE102015210499 A1 DE 102015210499A1
- Authority
- DE
- Germany
- Prior art keywords
- types
- preliminary
- type
- provisional
- connection
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/10—Requirements analysis; Specification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/73—Program documentation
Abstract
Die Erfindung betrifft ein Verfahren zum rechnergestützten Erzeugen einer graphischen Modellierungssprache (ML). In einem Schritt a) wird eine Analyse von digitalen Dokumenten (DOC) durchgeführt, welche eine textuelle Beschreibung eines technischen Systems enthalten, wodurch aus den Dokumenten (DOC) vorläufige Objekttypen (OT') umfassend Elementtypen, Verbindungstypen und Diagrammtypen extrahiert werden, wobei ein jeweiliger Elementtyp eine Komponente des technischen Systems darstellt, ein jeweiliger Verbindungstyp eine Verbindung zwischen zumindest zwei Komponenten des technischen Systems darstellt und ein Diagrammtyp eine Menge von Elementtypen und Verbindungstypen festlegt, welche in der Modellierungssprache (ML) in einem graphischen Diagramm des jeweiligen Diagrammtyps erlaubt sein sollen. In einem Schritt b) wird eine graphische Benutzerschnittstelle (UI) bereitgestellt, an der ein Benutzer die vorläufigen Objekttypen (OT') modifizieren kann, wobei über die graphische Benutzerschnittstelle (UI) Eingaben des Benutzers zur Bestätigung von modifizierten und/oder unmodifizierten vorläufigen Objekttypen (OT') empfangen werden, woraufhin ein jeweiliger modifizierter und/oder unmodifizierter vorläufiger Objekttyp (OT') in einen bestätigten Objekttyp (OT) gewandelt wird. In einem Schritt c) wird aus den bestätigten Objekttypen (OT) eine graphische Modellierungssprache (MO) basierend auf einem Modellierungswerkzeug (MT) generiert.The invention relates to a method for the computer-aided generation of a graphical modeling language (ML). In a step a) an analysis of digital documents (DOC) is carried out, which contain a textual description of a technical system, whereby from the documents (DOC) preliminary object types (OT ') comprising element types, connection types and diagram types are extracted Element type represents a component of the technical system, a respective connection type represents a connection between at least two components of the technical system and a diagram type specifies a set of element types and connection types which should be allowed in the modeling language (ML) in a graphical diagram of the respective diagram type. In a step b), a graphical user interface (UI) is provided, on which a user can modify the provisional object types (OT '), wherein the user interface (UI) is used for confirming modified and / or unmodified preliminary object types (UI). OT ') are received, whereupon a respective modified and / or unmodified provisional object type (OT') is converted into a confirmed object type (OT). In a step c), a graphic modeling language (MO) based on a modeling tool (MT) is generated from the confirmed object types (OT).
Description
Die Erfindung betrifft ein Verfahren und eine Vorrichtung zum rechnergestützten Erzeugen einer graphischen Modellierungssprache sowie ein entsprechendes Computerprogrammprodukt und Computerprogramm.The invention relates to a method and a device for the computer-aided generation of a graphical modeling language as well as a corresponding computer program product and computer program.
Aus dem Stand der Technik sind graphische Modellierungssprachen bekannt, die einem Benutzer über eine graphische Benutzeroberfläche die Möglichkeit geben, eine digitale Beschreibung eines technischen Systems zu erzeugen. Herkömmlicherweise werden solche Modellierungssprachen von Modellierungsexperten definiert und implementiert, welche selbst jedoch kein spezifisches technisches Wissen über die technischen Systeme haben, die mit der Modellierungssprache entworfen werden sollen. Alternativ können auch Domänenexperten mit Fachwissen über die technischen Systeme eine allgemeine Modellierungssprache verwenden, die jedoch nicht auf die spezifische Domäne zugeschnitten ist, wie z. B. UML (UML = Unified Modeling Language).Graphical modeling languages are known from the prior art which allow a user via a graphical user interface to generate a digital description of a technical system. Traditionally, such modeling languages are defined and implemented by modeling experts, who themselves have no specific technical knowledge of the technical systems to be designed with the modeling language. Alternatively, domain experts with technical systems expertise may use a common modeling language, but this is not tailored to the specific domain, such as: For example, UML (UML = Unified Modeling Language).
Wird die Modellierungssprache von einem Modellierungsexperten erstellt, muss dieser zur Anpassung der Sprache an eine spezifische Domäne mit entsprechenden Domänenexperten zusammenarbeiten. Dies macht die Definition und Implementierung der Modellierungssprache zeitaufwändig und kostenintensiv. Auch die Verwendung einer allgemeinen Modellierungssprache durch einen Domänenexperten ist problembehaftet, da dieser Experte kein Modellierungsexperte ist und somit der Umgang mit der Modellierungssprache für ihn schwierig ist. Hierunter leidet die Akzeptanz der Modellierungssprache durch Domänenexperten.If the modeling language is created by a modeling expert, it must work with domain experts to adapt the language to a specific domain. This makes the definition and implementation of the modeling language time consuming and costly. Also, the use of a general modeling language by a domain expert is problematic because this expert is not a modeling expert, and thus the handling of the modeling language is difficult for him. This suffers from the acceptance of the modeling language by domain experts.
Aufgabe der Erfindung ist es, ein rechnergestütztes Verfahren zu schaffen, mit dem automatisch unter Einbeziehung von Wissen eines Domänenexperten eine Domänen-spezifische graphische Modellierungssprache generiert wird.The object of the invention is to provide a computer-aided method with which a domain-specific graphical modeling language is automatically generated with the involvement of the knowledge of a domain expert.
Diese Aufgabe wird durch die unabhängigen Patentansprüche gelöst. Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen definiert.This object is solved by the independent claims. Further developments of the invention are defined in the dependent claims.
Das erfindungsgemäße Verfahren dient zum rechnergestützten Erzeugen einer graphischen Modellierungssprache, mit der ein Benutzer eine digitale Beschreibung eines technischen Systems an einer Benutzerschnittstelle generieren kann.The method according to the invention serves for the computer-aided generation of a graphical modeling language with which a user can generate a digital description of a technical system on a user interface.
In einem Schritt a) des Verfahrens wird automatisch eine Analyse von einem oder mehreren digitalen Dokumenten durchgeführt, wobei das oder die digitalen Dokumente eine textuelle Beschreibung eines oder mehrerer technischer Systeme enthalten. Die textuelle Beschreibung kann beliebige technische Systeme betreffen. Zum Beispiel kann sie sich auf Energieerzeugungsanlagen (z. B. Windkraftanlagen) oder medizinische Geräte (z. B. Computertomographen) beziehen.In a step a) of the method, an analysis of one or more digital documents is automatically carried out, the digital document (s) containing a textual description of one or more technical systems. The textual description can relate to any technical systems. For example, it may relate to power plants (eg, wind turbines) or medical devices (eg, computed tomography).
Mittels der Analyse werden aus dem oder den Dokumenten vorläufige Objekttypen umfassend vorläufige Elementtypen, vorläufige Verbindungstypen und vorläufige Diagrammtypen extrahiert. Ein jeweiliger vorläufiger Objekttyp umfasst eine Anzahl von Merkmalen. Der Begriff des Merkmals ist weit zu verstehen und kann unmittelbar Eigenschaften des Objekttyps betreffen sowie gegebenenfalls auch Variablen, welche bei der Instanziierung eines Objekts des entsprechenden Objekttyps bei der späteren Verwendung der Modellierungssprache mit Werten und/oder Texten belegt werden.The analysis extracts provisional object types from the document (s), including preliminary element types, preliminary connection types, and preliminary diagram types. A respective provisional object type comprises a number of features. The term feature is to be understood broadly and can refer directly to properties of the object type and possibly also to variables which are assigned to values and / or texts during the instantiation of an object of the corresponding object type during the later use of the modeling language.
Ein jeweiliger vorläufiger Elementtyp stellt eine Komponente des oder der technischen Systeme aus den digitalen Dokumenten dar und ein jeweiliger vorläufiger Verbindungstyp stellt eine Verbindung zwischen zumindest zwei Komponenten des oder der technischen Systeme dar. Demgegenüber legt ein vorläufiger Diagrammtyp eine Menge von vorläufigen Elementtypen und vorläufigen Verbindungstypen fest, welche in der (zu erzeugenden) Modellierungssprache in einem graphischen Diagramm des jeweiligen vorläufigen Diagrammtyps erlaubt sein sollen. Ein Diagrammtyp definiert somit eine entsprechende Sicht auf das technische System fest. Zum Beispiel können in einer Software-Sicht nur Softwarekomponenten und geeignete Verbindungen zwischen Softwarekomponenten zur Erstellung eines Diagramms zugelassen sein, wohingegen in einer Hardware-Sicht andere Elementtypen und Verbindungstypen erlaubt sind.A respective tentative element type represents a component of the technical system (s) from the digital documents and a respective tentative connection type represents a connection between at least two components of the technical system (s). In contrast, a preliminary diagram type defines a set of tentative element types and tentative connection types which should be allowed in the (to be generated) modeling language in a graphical diagram of the respective preliminary diagram type. A diagram type thus defines a corresponding view of the technical system. For example, in a software view, only software components and appropriate connections between software components may be allowed to create a diagram, whereas in a hardware view, other types of elements and connection types are allowed.
Die obigen Merkmale für die Objekttypen können verschieden festgelegt sein. Ein Objekttyp enthält jedoch zumindest das Merkmal des Namens des Objekttyps. In Bezug auf die Diagrammtypen sind als Merkmale ferner die erlaubten vorläufigen Elementtypen und vorläufigen Verbindungstypen für den entsprechenden Diagrammtyp festgelegt.The above features for the object types may be set differently. However, an object type contains at least the characteristic of the name of the object type. With regard to the diagram types, the characteristics are also defined as the permitted provisional element types and preliminary connection types for the corresponding diagram type.
In einem Schritt b) des erfindungsgemäßen Verfahrens wird eine graphische Benutzerschnittstelle bereitgestellt, an der ein Benutzer die vorläufigen Objekttypen modifizieren kann, wobei eine Modifikation ggf. auch ein Löschen eines Objekttyps darstellen kann. Über diese graphische Benutzerschnittstelle werden Eingaben von durch ihn modifizierten und/oder unmodifizierten vorläufigen Objekttypen empfangen, woraufhin ein jeweiliger modifizierter und/oder unmodifizierter vorläufiger Objekttyp in einen bestätigten Objekttyp gewandelt wird. Mit diesen bestätigten Objekttypen wird in diesem Sinne ein Metamodell der durch die Dokumente beschriebenen technischen Domäne generiert.In a step b) of the method according to the invention, a graphical user interface is provided, on which a user can modify the provisional object types, wherein a modification can possibly also represent a deletion of an object type. Inputs from modified and / or unmodified provisional object types are received via this graphical user interface, after which a respective modified and / or unmodified provisional object type is converted into a confirmed object type. With these confirmed object types, a meta-model of the technical domain described by the documents is generated in this sense.
In einem Schritt c) des erfindungsgemäßen Verfahrens wird aus den bestätigten Objekttypen bzw. dem entsprechenden Metamodell eine graphische Modellierungssprache generiert, indem ein graphisches Modellierungswerkzeug konfiguriert und/oder generiert wird. In a step c) of the method according to the invention, a graphic modeling language is generated from the confirmed object types or the corresponding meta-model by configuring and / or generating a graphical modeling tool.
Das erfindungsgemäße Verfahren zeichnet sich dadurch aus, dass ein Domänenexperte effizient bei der Erstellung einer Modellierungssprache für ein technisches System unterstützt wird. Dabei wird zunächst eine nicht-formale Beschreibung entsprechender technischer Systeme der Domäne vorverarbeitet. Die hierdurch generierten vorläufigen Objekttypen können dann über eine bereitgestellte Benutzerschnittstelle durch den Domänenexperten basierend auf seinem spezifischen Domänenwissen angepasst werden. Anschließend erfolgt die automatische Generierung bzw. Konfiguration eines Modellierungswerkzeugs basierend auf den angepassten Objekttypen. Die Umsetzung von Objekttypen in ein solches graphisches Modellierungswerkzeug liegt dabei im Rahmen von fachmännischem Handeln.The method according to the invention is distinguished by the fact that a domain expert is supported efficiently in the creation of a modeling language for a technical system. Initially, a non-formal description of corresponding technical systems of the domain is preprocessed. The preliminary object types generated thereby may then be adapted via a provided user interface by the domain expert based on his specific domain knowledge. Subsequently, the automatic generation or configuration of a modeling tool takes place based on the adapted object types. The implementation of object types in such a graphic modeling tool lies within the scope of expert action.
Der Schritt a) der Analyse von textuellen Beschreibungen in digitalen Dokumenten kann verschieden ausgestaltet sein. In einer Variante werden bei der Analyse Hauptwörter, die in der textuellen Beschreibung vorkommen und deren Auftreten eine vorbestimmte Häufigkeitsschwelle überschreiten, als vorläufige Elementtypen klassifiziert. Ebenso kann die Analyse derart ausgestaltet sein, dass Verben, die in der textuellen Beschreibung vorkommen und deren Auftreten eine vorbestimmte Häufigkeitsschwelle überschreiten, als vorläufige Verbindungstypen klassifiziert werden. Man macht sich hierbei die Erkenntnis zunutze, dass häufig auftretende Ausdrücke darauf hindeuten, dass es sich bei diesen Ausdrücken um bestimmte Typen von Objekten des technischen Systems handelt.The step a) of the analysis of textual descriptions in digital documents can be configured differently. In a variant, in the analysis, main words which occur in the textual description and whose occurrence exceed a predetermined frequency threshold are classified as provisional element types. Likewise, the analysis may be configured such that verbs that occur in the textual description and whose occurrences exceed a predetermined frequency threshold are classified as tentative connection types. One uses the knowledge that common expressions indicate that these expressions are specific types of objects of the technical system.
In einer weiteren Variante werden bei der Analyse des oder der Dokumente Hauptwörter, welche in Überschriften von vorgegebenen Überschriftstypen in der textuellen Beschreibung vorkommen, als vorläufige Diagrammtypen klassifiziert, wobei zumindest ein Teil der vorläufigen Elementtypen und vorläufigen Verbindungstypen, die in einem Text der textuellen Beschreibung vorkommen, der durch eine Überschrift des vorgegebenen Überschriftstyps beschrieben ist, demjenigen vorläufigen Diagrammtyp zugeordnet wird, der in der Überschrift vorkommt. Man macht sich hierbei die Erkenntnis zunutze, dass Sichten auf technische Systeme oftmals durch Überschriften spezifiziert werden.In a further variant, in the analysis of the document or documents, main words appearing in headings of given header types in the textual description are classified as preliminary chart types, with at least a portion of the tentative member types and tentative connection types occurring in a textual textual description text , which is described by a heading of the given heading type, is assigned to the preliminary diagram type found in the heading. One makes use of the fact that views on technical systems are often specified by headlines.
In einer weiteren Variante werden bei der Analyse der digitalen Dokumente Zeilennamen und/oder Spaltennamen von in der textuellen Beschreibung enthaltenen Tabellen als vorläufige Objekttypen und/oder Merkmale von vorläufigen Objekttypen klassifiziert. Insbesondere werden Zeilennamen als Objekttypen klassifiziert, wohingegen Spaltennamen mit Merkmalen der Objekttypen der Zeilen gleichgesetzt werden. Man macht sich hierbei die Erkenntnis zunutze, dass in Tabellen normalerweise Eigenschaften von Objekten in den Spalten angegeben werden.In a further variant, in the analysis of the digital documents, line names and / or column names of tables contained in the textual description are classified as provisional object types and / or features of preliminary object types. In particular, row names are classified as object types, whereas column names are equated with features of the object types of the rows. One makes use of the fact that tables usually specify properties of objects in the columns.
In einer weiteren bevorzugten Variante umfassen die vorläufigen Elementtypen einen oder mehrere der folgenden Typen:
- – eine Softwarekomponente;
- – eine Hardwarekomponente;
- – eine Speichereinheit;
- – eine Prozessoreinheit;
- – eine Kommunikationskomponente;
- – eine Schnittstelle.
- A software component;
- A hardware component;
- A storage unit;
- A processor unit;
- A communication component;
- - an interface.
Die einzelnen Elementtypen können auch derart definiert sein, dass ein Elementtyp den Oberbegriff eines anderen Elementtyps darstellt. Diese Information kann gegebenenfalls auch in den Merkmalen der Objekttypen enthalten sein.The individual element types can also be defined such that one element type represents the generic term of another element type. If appropriate, this information can also be contained in the characteristics of the object types.
In einer weiteren bevorzugten Ausgestaltung umfassen die vorläufigen Verbindungstypen einen oder mehreren der folgenden Typen:
- – eine Kommunikationsverbindung;
- – eine mechanische Verbindung;
- – eine Kombination aus einer Kommunikationsverbindung und einer mechanischen Verbindung.
- - a communication connection;
- A mechanical connection;
- - A combination of a communication link and a mechanical connection.
In einer weiteren bevorzugten Ausgestaltung umfassen die Merkmale der vorläufigen Objekttypen ein oder mehrere vordefinierte Merkmale und/oder Merkmale, die aus der textuellen Beschreibung extrahiert werden.In a further preferred embodiment, the features of the preliminary object types comprise one or more predefined features and / or features that are extracted from the textual description.
In einer weiteren Variante umfassen die Merkmale eines jeweiligen vorläufigen Objekttyps eines oder mehrere der folgenden Merkmale:
- – eine textuelle Beschreibung des vorläufigen Objekttyps;
- – ein graphisches Symbol für den vorläufigen Objekttyp;
- – eine oder mehrere durch Werte oder Text belegbare Variablen.
- A textual description of the preliminary object type;
- A graphic symbol for the provisional object type;
- - one or more variables assignable by values or text.
In einer weiteren Variante des erfindungsgemäßen Verfahrens können in Schritt b) durch Eingaben des Benutzers an der Benutzerschnittstelle neue Objekttypen definiert werden, welche in weitere bestätigte Objekttypen gewandelt werden. Hierdurch werden die Möglichkeiten der Domänen-spezifischen Festlegung der Modellierungssprache erweitert.In a further variant of the method according to the invention, new object types can be defined in step b) by inputs of the user at the user interface, which object types are converted into further confirmed object types. This expands the possibilities of domain-specific definition of the modeling language.
In einer weiteren Variante des erfindungsgemäßen Verfahrens kann bei und/oder nach Durchführung des Schritts c) die Modellierungssprache durch Eingaben des Benutzers an einer Benutzerschnittstelle angepasst werden. Zum Beispiel können graphische Symbole oder Elemente des Modellierungswerkzeugs durch den Benutzer geeignet verändert oder festgelegt werden. Diese graphischen Symbole und Elemente sind u. a. entsprechenden Objekttypen zugeordnet und können dann auf einer graphischen Benutzeroberfläche bei Verwendung des Modellierungswerkzeugs durch den Benutzer aufgerufen werden.In a further variant of the method according to the invention, the modeling language can take place during and / or after execution of step c) Inputs of the user to be adapted to a user interface. For example, graphical symbols or elements of the modeling tool may be appropriately changed or set by the user. These graphical symbols and elements are associated, among other things, with corresponding object types and can then be called up on a graphical user interface when the user uses the modeling tool.
Neben dem oben beschriebenen Verfahren betrifft die Erfindung eine Vorrichtung zum rechnergestützten Erzeugen einer graphischen Modellierungssprache, wobei diese Vorrichtung entsprechende Mittel umfasst, um das erfindungsgemäße Verfahren bzw. eine oder mehrere bevorzugte Varianten des erfindungsgemäßen Verfahrens durchzuführen. Im Besonderen umfasst die Vorrichtung ein erstes Mittel zur Durchführung des Schritts a) des Verfahrens, ein zweites Mittel zur Durchführung des Schritts b) des Verfahrens und ein drittes Mittel zur Durchführung des Schritts c) des Verfahrens.In addition to the method described above, the invention relates to a device for the computer-aided generation of a graphical modeling language, this device comprising corresponding means for carrying out the method according to the invention or one or more preferred variants of the method according to the invention. In particular, the apparatus comprises a first means for carrying out the step a) of the method, a second means for carrying out the step b) of the method and a third means for carrying out the step c) of the method.
Die Erfindung betrifft darüber hinaus ein Computerprogrammprodukt mit einem auf einem maschinenlesbaren Träger gespeicherten Programmcode zur Durchführung des erfindungsgemäßen Verfahrens bzw. einer oder mehrerer bevorzugter Varianten des erfindungsgemäßen Verfahrens, wenn der Programmcode auf einem Computer ausgeführt wird.The invention further relates to a computer program product having a program code stored on a machine-readable carrier for carrying out the method according to the invention or one or more preferred variants of the method according to the invention when the program code is executed on a computer.
Die Erfindung betrifft ferner ein Computerprogramm mit einem Programmcode zur Durchführung des erfindungsgemäßen Verfahrens bzw. einer oder mehrerer bevorzugter Varianten des erfindungsgemäßen Verfahrens, wenn der Programmcode auf einem Computer ausgeführt wird.The invention further relates to a computer program with a program code for carrying out the method according to the invention or one or more preferred variants of the method according to the invention, when the program code is executed on a computer.
Ein Ausführungsbeispiel der Erfindung wird nachfolgend detailliert anhand der beigefügten Figuren beschrieben.An embodiment of the invention will be described below in detail with reference to the accompanying drawings.
Es zeigen:Show it:
Ziel des erfindungsgemäßen Verfahrens ist die rechnergestützte Erstellung einer graphischen Modellierungssprache in der Form eines Modellierungswerkzeugs. In diesem Werkzeug sind entsprechende graphische Bausteine enthalten, die Objekttypen zugeordnet sind und von einem Benutzer als Objekte instanziiert und zusammengesetzt werden können, um hierdurch die Architektur eines technischen Systems auf einer graphischen Benutzerschnittstelle zu erstellen und in digitaler Form abzulegen.The aim of the method according to the invention is the computer-aided creation of a graphical modeling language in the form of a modeling tool. Included in this tool are corresponding graphical building blocks associated with object types that can be instantiated and assembled by a user as objects to thereby construct and digitally store the architecture of a technical system on a graphical user interface.
Um die Modellierungssprache sehr gut an die betrachtete technische Domäne anzupassen, werden digitale Dokumente verarbeitet, welche eine technische Beschreibung von einem oder mehreren technischen Systemen der entsprechenden Domäne enthalten. Wie sich aus
Alle Objekttypen zeichnen sich durch eine Anzahl von Merkmalen FE aus. Diese Merkmale können unterschiedlich definiert sein. Jeder Objekttyp enthält zumindest das Merkmal des Namens des Objekttyps. Merkmale können Eigenschaften des Objekttyps direkt beschreiben. Ferner können Merkmale auch Platzhalter bzw. Variablen darstellen, welche erst bei der Instanziierung eines Objekts des entsprechenden Objekttyps bei der Verwendung der Modellierungssprache mit Werten oder Text belegt werden.All object types are characterized by a number of features FE. These features can be defined differently. Each object type contains at least the characteristic of the name of the object type. Characteristics can describe properties of the object type directly. Furthermore, features can also represent placeholders or variables which are only assigned values or text when an object of the corresponding object type is instantiated when the modeling language is used.
Mit an sich bekannten Methoden werden in Schritt S1 textuelle Bausteine aus den Dokumenten DOC extrahiert und entsprechenden vorläufigen Objekttypen OT' zugeordnet. Ein vorläufiger Elementtyp ET' betrifft eine Komponente des oder der technischen Systeme, die in den Dokumenten DOC beschrieben werden. Ein vorläufiger Verbindungstyp CT' betrifft eine Verbindung zwischen zumindest zwei Komponenten des oder der technischen Systeme. Ein vorläufiger Diagrammtyp DT' legt eine Menge von vorläufigen Elementtypen und vorläufigen Verbindungstypen fest, welche in der (zu generierenden) Modellierungssprache in einem graphischen Diagramm des jeweiligen vorläufigen Diagrammtyps erlaubt sein sollen. Durch Diagrammtypen werden somit unterschiedliche Sichten auf die Architektur der in den Dokumenten DOC beschriebenen technischen Systeme festgelegt. Bei einer Softwaresicht sind dabei z. B. nur Softwarekomponenten als Elementtypen des entsprechenden Diagrammtyps zugelassen, wohingegen bei einer Hardwaresicht nur Hardwarekomponenten für den entsprechenden Diagrammtyp möglich sind.With methods known per se, textual blocks are extracted from the documents DOC in step S1 and assigned to corresponding provisional object types OT '. A preliminary element type ET 'refers to a component of the technical system or systems described in the documents DOC. A tentative connection type CT 'refers to a connection between at least two components of the one or more technical systems. A preliminary diagram type DT 'defines a set of preliminary element types and preliminary connection types, which should be allowed in the modeling language (to be generated) in a graphical diagram of the respective preliminary diagram type. Diagram types thus define different views of the architecture of the technical systems described in the documents DOC. In a software view are z. For example, only software components are allowed as element types of the corresponding diagram type, whereas in a hardware view only hardware components for the corresponding diagram type are possible.
In der hier beschriebenen Ausführungsform läuft die Extraktion von vorläufigen Objekttypen OT' basierend auf folgenden Regeln ab:
- – Häufig verwendete Hauptwörter in den Dokumenten DOC, wie z. B. Prozessorboard, Buchse, Bus und dergleichen, werden jeweiligen vorläufigen Elementtypen ET' zugeordnet.
- – Häufig verwendete Verben in den Dokumenten DOC, wie z. B. „steckt”, „kommuniziert” und dergleichen, werden als Verbindungstypen klassifiziert.
- – Kapitelüberschriften (mit Ausnahme von Standardüberschriften, wie z. B. „Einleitung”) deuten auf unterschiedliche Architektur-Sichten hin (z. B. System-Struktur, Kommunikations-Sicht), so dass in Kapitelüberschriften der Dokumente DOC enthaltene Hauptwörter vorläufigen Diagrammtypen DT' zugewiesen werden. Da Diagrammtypen durch erlaubte vorläufige Elementtypen und vorläufige Verbindungstypen charakterisiert sind, werden ferner die Elementtypen und Verbindungstypen, welche in dem Text mit der entsprechenden Kapitelüberschrift enthalten sind, dem Diagrammtyp zugeordnet, der aus der Kapitelüberschrift extrahiert wurde.
- – Tabellen in den Dokumenten DOC werden derart verarbeitet, dass die Zeilennamen der Dokumente Elementtypen zugewiesen werden und die Spaltennamen als entsprechende Merkmale der Elementtypen klassifiziert werden.
- - Frequently used main words in the documents DOC, such as. Processor board, socket, bus, and the like, are assigned to respective tentative element types ET '.
- - Frequently used verbs in the documents DOC, such. "Plug in", "communicate" and the like are classified as connection types.
- - Chapter headings (with the exception of standard headings, such as "Introduction") indicate different architectural views (eg system structure, communication view), so that main nouns contained in chapter headings of DOC documents are preliminary type diagrams DT ' be assigned to. Since chart types are characterized by allowed tentative member types and preliminary join types, the member types and join types included in the text with the corresponding chapter heading are also assigned to the chart type extracted from the chapter heading.
- - Tables in the documents DOC are processed in such a way that the line names of the documents are assigned to element types and the column names are classified as corresponding characteristics of the element types.
In einem darauffolgenden Schritt S2 wird im Rahmen der Durchführung des Verfahrens ein Dialog mit einem Benutzer über eine graphische Benutzerschnittstelle UI (
Im Rahmen des Dialogs fordert das Verfahren den Experten über die graphische Benutzerschnittstelle auch auf, die vorläufigen Objekttypen (modifiziert oder auch nicht modifiziert) zu bestätigen. Im Besonderen kann ein Domänenexperte z. B. weitere Merkmale zu den Objekttypen hinzufügen oder diese anpassen oder teilweise löschen. So kann er z. B. die Elementtypen „Prozessorboard” und „Buchse” bestätigen sowie als Merkmal des Elementtyps „Buchse” spezifizieren, dass dieser Elementtyp ein Subelement des Prozessorboards ist. Ebenso kann er im Elementtyp „Prozessorboard” spezifizieren, dass dieses Prozessorboard als Subelement eine Buchse enthalten kann. Der Benutzer hat darüber hinaus die Möglichkeit, über die graphische Benutzerschnittstelle weitere, noch nicht in den vorläufigen Objekttypen enthaltene Objekttypen zu spezifizieren und zu bestätigen. Zum Beispiel kann er den weiteren Elementtypen „Controller” oder den weiteren Verbindungstypen „Busverbindung” festlegen.In the context of the dialogue, the procedure also asks the expert via the graphical user interface to confirm the preliminary object types (modified or not modified). In particular, a domain expert may, for. For example, you can add additional features to the object types or customize or partially delete them. So he can z. For example, the element types "processor board" and "socket" confirm and specify as a feature of the element type "socket" that this element type is a sub-element of the processor board. Likewise, it can specify in the "processor board" element type that this processor board can contain a socket as a subelement. The user also has the option of specifying and confirming other object types not yet contained in the preliminary object types via the graphical user interface. For example, it can specify the further element type "Controller" or the further connection type "Bus connection".
Nach der entsprechenden Bestätigung der Objekttypen werden diese in bestätigte Objekttypen OT gewandelt, die bestätigte Elementtypen ET, bestätigte Verbindungstypen CT und bestätigte Diagrammtypen DT umfassen. Diese bestätigten Objekttypen stellen ein internes Metamodell der zu erzeugenden Modellierungssprache dar. Dieses Metamodell ist eine formale Spezifikation von technischen Systemen der entsprechenden Domäne, einschließlich von notwendige Beziehungen, z. B. einer Kompositionsbeziehung von Buchse zu Prozessorboard oder einer Abbildung einer Busbeziehung auf ein zusätzliches Buselement und entsprechenden 2er-Verbindungen. Nach Abschluss von Schritt S2 wird das erzeugte Metamodell in einem Schritt S3 in ein Modellierungswerkzeug bzw. Modellierungstool MT umgesetzt, das der zu erzeugenden Modellierungssprache ML entspricht. Mit anderen Worten werden in dem Modellierungstool entsprechende graphische Symbole für Element-, Verbindungs- und Diagrammtypen mit dem entsprechenden Verhalten gemäß den Merkmalen dieser Typen generiert.After the corresponding confirmation of the object types, these are converted into confirmed object types OT, which comprise confirmed element types ET, confirmed connection types CT and confirmed diagram types DT. These confirmed object types represent an internal meta-model of the modeling language to be generated. This meta-model is a formal specification of technical systems of the corresponding domain, including necessary relationships, e.g. As a composition relationship of jack to processor board or an image of a bus relationship to an additional bus element and corresponding 2-way connections. After completion of step S2, the generated meta-model is converted in a step S3 into a modeling tool or modeling tool MT, which corresponds to the modeling language ML to be generated. In other words, in the modeling tool corresponding graphic symbols for element, connection and diagram types are generated with the corresponding behavior according to the characteristics of these types.
Das Modellierungswerkzeug kann anschließend von einem Benutzer über eine graphische Benutzerschnittstelle bedient werden. Das heißt, der Benutzer kann auf die graphischen Symbole zurückgreifen und basierend darauf Elemente, Verbindungen und Diagramme instanziieren und hierdurch ein technisches System beschreiben bzw. entwerfen. In der hier beschriebenen Ausführungsform wird das Modellierungswerkzeug MT dadurch erhalten, dass ein bereits vorliegendes (generisches) Modellierungswerkzeug basierend auf den bestätigten Objekttypen OT aus Schritt S2 konfiguriert wird. Eine solche Konfiguration eines bestehenden Modellierungswerkzeugs ist dabei an sich bekannt bzw. liegt im Rahmen von fachmännischem Handeln. Nichtsdestotrotz besteht gegebenenfalls auch die Möglichkeit, dass das Modellierungswerkzeug MT ohne Rückgriff auf ein bereits bekanntes Modellierungswerkzeug erzeugt wird.The modeling tool can then be operated by a user via a graphical user interface. That is, the user can resort to the graphical symbols and instantiate elements, connections and diagrams based thereon, thereby describing or designing a technical system. In the embodiment described here, the modeling tool MT is obtained by configuring an already existing (generic) modeling tool based on the confirmed object types OT from step S2. Such a configuration of an existing modeling tool is known per se or is within the scope of expert action. Nevertheless, there may also be the possibility that the modeling tool MT may be generated without resorting to a modeling tool already known.
In der Ausführungsform der
Das in Schritt S3 generierte Modellierungswerkzeug MT kann gegebenenfalls auch später noch geändert und erweitert werden. Diese Änderungen und Erweiterungen werden genauso behandelt wie entsprechende Änderungen und Erweiterungen bei der Erzeugung der Modellierungssprache, d. h. sie werden automatisch in das Metamodell überführt und anschließend in eine geeignete Konfiguration des Modellierungswerkzeugs übersetzt.If necessary, the modeling tool MT generated in step S3 can also be changed and extended later. These changes and enhancements are treated in the same way as corresponding changes and extensions in the generation of the modeling language. H. they are automatically transferred to the meta-model and then translated into an appropriate configuration of the modeling tool.
Anschließend erfolgt der Dialog mit dem Benutzer über eine graphische Benutzerschnittstelle UI, wobei hierfür die Komponente MG (MG = Metamodell-Generator) verwendet wird. Diese Komponente stellt die Benutzerschnittstelle UI bereit und verarbeitet die Eingaben des Benutzers, wie durch einen Doppelpfeil in
Mit dem Metamodell wird schließlich über die Komponente LC (LC = Language Configurator) ein Modellierungswerkzeug MT generiert. In der hier beschriebenen Ausführungsform wird dabei die graphische Benutzerschnittstelle UI' bereitgestellt, die mit der Komponente LC wechselwirkt, was wiederum durch einen Doppelpfeil in
Die im Vorangegangenen beschriebenen Ausführungsformen der Erfindung weisen eine Reihe von Vorteilen auf. Insbesondere werden Methoden der automatisierten Dokumentenanalyse, der entscheidungsorientierten, werkzeugunterstützten Abfragetechnik und der Definition einer formalen Modellierungssprache miteinander kombiniert. Dabei wird automatisch ein Metamodell der Domänen-spezifischen Beschreibungssprache aus durch einen Domänenexperten bestätigten Informationen in der Form von Objekttypen generiert. Aus diesem Metamodell wird dann eine werkzeugspezifische Umsetzung basierend auf einem Modellierungswerkzeug erzeugt.The embodiments of the invention described above have a number of advantages. In particular, methods of automated document analysis, decision-oriented, tool-supported query technique and the definition of a formal modeling language are combined. This automatically generates a meta-model of the domain-specific description language from information confirmed by a domain expert in the form of object types. From this meta-model, a tool-specific implementation is then generated based on a modeling tool.
Durch diesen neuartigen Ansatz wird die Notwendigkeit für die gemeinsame Erarbeitung einer Domänen-spezifischen Modellierungssprache durch einen Domänenexperten in Zusammenarbeit mit einem Modellierungsexperten reduziert. Der Domänenexperte kann weitgehend selbst die Domänen-spezifische Beschreibungssprache definieren, ohne die Expertise zur Entwicklung einer Modellierungssprache bzw. entsprechender Modellierungswerkzeuge zu haben. Dies spart Aufwand für die Definition und Weiterentwicklung der Domänen-spezifischen Modellierungssprache.This novel approach reduces the need for a domain-specific modeling language to be jointly developed by a domain expert in collaboration with a modeling expert. The domain expert can largely define the domain-specific description language without having the expertise to develop a modeling language or modeling tools. This saves effort for the definition and further development of the domain-specific modeling language.
Die Modellierungssprache ist zudem optimal an die Bedürfnisse der Domäne angepasst, da die Schnittstelle zwischen dem Experten zur Erstellung der Modellierungssprache und dem Domänenexperten entfällt. Die optimale Anpassung erhöht die Akzeptanz für die Verwendung der Domänen-spezifischen Modellierungssprache, vermindert die Fehleranfälligkeit bei der Architekturbeschreibung von technischen Systemen und reduziert den Schulungsaufwand für Personen, die mit der Modellierungssprache arbeiten sollen.The modeling language is also optimally adapted to the needs of the domain by eliminating the interface between the modeling language expert and the domain expert. The best fit increases the acceptance of using the domain-specific modeling language, reduces the error rate in architectural description of technical systems, and reduces the training burden on people who are to work with the modeling language.
Claims (15)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102015210499.0A DE102015210499A1 (en) | 2015-06-09 | 2015-06-09 | Method for the computer-aided generation of a graphical modeling language |
PCT/EP2016/058273 WO2016198187A1 (en) | 2015-06-09 | 2016-04-14 | Method for computer-aided generation of a graphical modelling language |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102015210499.0A DE102015210499A1 (en) | 2015-06-09 | 2015-06-09 | Method for the computer-aided generation of a graphical modeling language |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102015210499A1 true DE102015210499A1 (en) | 2016-12-15 |
Family
ID=55809090
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102015210499.0A Withdrawn DE102015210499A1 (en) | 2015-06-09 | 2015-06-09 | Method for the computer-aided generation of a graphical modeling language |
Country Status (2)
Country | Link |
---|---|
DE (1) | DE102015210499A1 (en) |
WO (1) | WO2016198187A1 (en) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5536518B2 (en) * | 2009-04-23 | 2014-07-02 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Method, apparatus and computer for automatically extracting a system modeling metamodel language model for the system from the natural language specification of the system |
-
2015
- 2015-06-09 DE DE102015210499.0A patent/DE102015210499A1/en not_active Withdrawn
-
2016
- 2016-04-14 WO PCT/EP2016/058273 patent/WO2016198187A1/en active Application Filing
Non-Patent Citations (6)
Title |
---|
D5: MICH, Luisa; GARIGLIANO, Roberto. NL-OOPS: A requirements analysis tool based on natural language processing. WIT Transactions on Information and Communication Technologies, 2002, 28. Jg. * |
DEEPTIMAHANTI, Deva Kumar; BABAR, Muhammad Ali. An automated tool for generating UML models from natural language requirements. In: Proceedings of the 2009 IEEE/ACM International Conference on Automated Software Engineering. IEEE Computer Society, 2009. S. 680-682. * |
ILIEVA, M. G.; ORMANDJIEVA, Olga. Automatic transition of natural language software requirements specification into formal presentation. In: International Conference on Application of Natural Language to Information Systems. Springer Berlin Heidelberg, 2005. S. 392-397. * |
LANDHÄUßER, Mathias; KÖRNER, Sven J.; TICHY, Walter F. From requirements to UML models and back: how automatic processing of text can support requirements engineering. Software Quality Journal, 2014, 22. Jg., Nr. 1, S. 121-149. * |
MALA, GS Anandha; UMA, G. V. Automatic construction of object oriented design models [UML diagrams] from natural language requirements specification. In: Pacific Rim International Conference on Artificial Intelligence. Springer Berlin Heidelberg, 2006. S. 1155-1159. * |
OVERMYER, Scott P.; LAVOIE, Benoit; RAMBOW, Owen. Conceptual modeling through linguistic analysis using LIDA. In: Proceedings of the 23rd international conference on Software engineering. IEEE Computer Society, 2001. S. 401-410. * |
Also Published As
Publication number | Publication date |
---|---|
WO2016198187A1 (en) | 2016-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE102005055133A1 (en) | System for machine-aided design of technical devices | |
DE102015102555A1 (en) | Apparatus and method for making a medical report | |
EP2439691A1 (en) | Method and device for mechanical production of a process diagram | |
EP1638028A2 (en) | Computer aided generation and change management for user interfaces | |
DE102009030304A1 (en) | A system for storing Traditional Chinese Medicine (TCM) symptom information and methods for storing TCM symptom information | |
DE102017212581A1 (en) | A method for dynamically expanding a domain-specific language of a graphical modeling tool | |
EP1862901A1 (en) | Input of program commands in imperative programming languages | |
DE102015210499A1 (en) | Method for the computer-aided generation of a graphical modeling language | |
DE102015115797B4 (en) | Process for creating electronic documents | |
EP1505399B1 (en) | Method for Generating Test Data for functional test of data processing circuits | |
DE102015210498A1 (en) | Method for the computer-aided generation of a graphical modeling language | |
DE10138533A1 (en) | Protection of control programs transmitted over the Internet from a developer to a customer using asymmetric encryption of the program code, which is decrypted by the end user after parameter editing | |
EP1387260A1 (en) | Method and system for software development | |
DE102019120165B4 (en) | Five levels of buildability | |
EP3483756A1 (en) | Cad/cam analysis tool with return link for cad/cam data | |
EP1959430A2 (en) | Method for automatically generating voiceXML speech applications from speech dialog models | |
DE10233971A1 (en) | Software generating method for a software-controlled device uses a software model implemented as data in a computer to derive software program code automatically from the model | |
EP2037375B1 (en) | Method for operating databases | |
DE10055679A1 (en) | Model-based generation of test scenarios by forming classification tree and extracting information from simulation model | |
DE102004023634B4 (en) | Method for checking the completeness and consistency of an information library | |
DE102012202040B4 (en) | Automatic configuration of copy and paste profiles | |
EP1079316B1 (en) | Interactive system for providing a multimedia healthcare standard using link structures | |
DE102021208759A1 (en) | Method of training a machine learning algorithm to generate test specifications for testing a software-based system | |
DE102021211620A1 (en) | Method and system for automatic generation of an embedded source code for the electronic control unit of an AD/ADAS on-road vehicle | |
EP2757466A1 (en) | A computer implemented method for generating computer program code |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |