[go: up one dir, main page]

WO2010020479A1 - Method and system for integrating development tools - Google Patents

Method and system for integrating development tools Download PDF

Info

Publication number
WO2010020479A1
WO2010020479A1 PCT/EP2009/058912 EP2009058912W WO2010020479A1 WO 2010020479 A1 WO2010020479 A1 WO 2010020479A1 EP 2009058912 W EP2009058912 W EP 2009058912W WO 2010020479 A1 WO2010020479 A1 WO 2010020479A1
Authority
WO
WIPO (PCT)
Prior art keywords
development tools
development
tool
modeling elements
server
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.)
Ceased
Application number
PCT/EP2009/058912
Other languages
German (de)
French (fr)
Inventor
Michael Kersten
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.)
Siemens AG
Siemens Corp
Original Assignee
Siemens AG
Siemens 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 Siemens AG, Siemens Corp filed Critical Siemens AG
Publication of WO2010020479A1 publication Critical patent/WO2010020479A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/10Requirements analysis; Specification techniques

Definitions

  • the invention relates to a method and a system for integrating development tools, and in particular the integration of different development tools, which are provided for the joint implementation of a software or a system development process.
  • various development tools are typically used at different stages of development or at different levels of development to model and implement the systems and processes.
  • Different developers are working on the development of, for example, a technical system or a technical process with different familiar development tools in which the system or the process is modeled using modeling elements or artifacts.
  • Different development tools are used in different, partially overlapping development phases, whereby certain development tools can be used iteratively to concretize or refine the system model.
  • the different development tools are not integrated with each other.
  • connections or links between different modeling elements or artifacts of the various development tools are created manually. This manual implementation of interfaces between development tools is naturally very expensive and error-prone.
  • the invention provides a method for integrating development tools with the steps:
  • a linking option for establishing a link between modeling elements is activated automatically or manually.
  • a predetermined connection type of the link is selected.
  • the linkage produced is unidirectional.
  • the linkage produced is bidirectional.
  • the development tools are used for a first time Run on a computer automatically logged in to the server.
  • the modeling elements are provided with access rights.
  • the registered development tools and the links produced are stored between modeling elements of these development tools.
  • the modeling elements have classes, instances, operations, attributes, associations, nodes and edges.
  • the invention further provides a system having the features specified in patent claim 9.
  • the invention provides a system for integrating development tools with a server connected via a network to computers on which development tools can be executed in each case, wherein the development tools automatically log on to a server by specifying their respective tool class and the Server linking options between modeling elements of the registered development ment tools of the same or different tool classes.
  • the linking options provided can each be activated to produce a link between modeling elements of development tools.
  • Fig. 1 is a block diagram of a possible embodiment of the system according to the invention for the integration of
  • Figs. 2A, 2B show examples of simple development tools
  • FIG. 3 is a flowchart of a possible embodiment of the method according to the invention for integrating development tools
  • FIG. 4 is a diagram illustrating various methods or tool classes in a class diagram, as can be used in a possible embodiment of the system according to the invention
  • FIG. 6 shows an exemplary embodiment of a tool integration broker, as can be used in an embodiment of the system according to the invention
  • 7 shows an exemplary embodiment for linking different modeling elements of different development tools via a user interface, as can be used in the system according to the invention.
  • the computers 4-1-4-2 may be computers of different developers or users.
  • different development tools are executable.
  • These computers 4 are connected to a server 2 via a data network 3, which may be a local or a wide network.
  • the development tools T automatically log on to the server 2 while executing their respective tool class.
  • the server 2 then provides linking options between modeling elements ME of the registered development tools T of identical or different tool classes TK.
  • the development tools T1, T2 log on to the server 2 when first executed on the respective computer 4-1-4-2.
  • One or more development tools T can be executed on each computer 4 of the various users or developers.
  • the development tools T can be any tools or software tools that are used to develop a process or a system, for example a technical software system or an object or a hardware.
  • Examples of such development tools T are, for example, a requirements development tool or a UML (Unified Modeling Language) tool.
  • Examples of requirement development tools are system-re- lated development tools, such as DOORS, ARTiSAN, or Rhapsody, whose modeling elements are ME and artifacts, respectively
  • Modeling elements ME of the various development tools T have, for example, classes, instances, operations, attributes, associations, nodes or edges.
  • the server 2 provides linking options between the modeling elements ME of the registered development tools Tl, T2, wherein the development tools T can be development tools of identical or different classes.
  • the linking options provided by the server 2 can then be activated by a user or a developer to establish a link between the modeling elements ME of the different development tools T 1, T 2.
  • the user can preferably select a predetermined connection type for a desired link.
  • the selected link can be a unidirectional link from a modeling element ME-A of a first development tool T A to another modeling element ME-B of another development tool T B or a bidirectional link between the two modeling elements ME of the two development tools T A , T B.
  • Selection and activation of a link by a user preferably takes place by means of an input device, for example via a keyboard or a computer mouse. In one possible embodiment, the activation of the linkage is triggered by an event that can be preconfigured by the user.
  • the different modeling elements ME of the development tools T are each provided with access rights ZR.
  • the modeling elements ME or artefacts can be provided with different visibility definitions or also user interfaces or access rights which the development tools T can communicate to the server 2 or an integration broker executed thereon when you log on.
  • Figures 2A, 2B show examples of development tools for developing a system.
  • Fig. 2A shows an example of a Requirements development tool, which makes a request to the system to be developed. The simple requirement is: "The system must be able to be switched off in any state.”
  • Fig. 2B shows a corresponding representation by means of a UML development tool.
  • the development system has various states or states Z, wherein there are transitions t between the various states Z in order to move from one state to another state.
  • the UML state graph shown in FIG. 2B shows the behavior of the system to be developed. As can be seen in FIG. 2B, one arrives from an initial state ZO in a transition t ⁇ 1 into a state Z1 and from there via a transition tlA into an off state ZA. Since all states Z1, Z2, Z3 have a transition t to the switch-off state ZA, namely the transitions tIA, t2A, t3A, the system represented in FIG.
  • the transitions tlA, t2A, t3A satisfy the request made in the request-development tool.
  • the transitions tlA, t2A, t3A are modeling elements ME of the UML tool.
  • the semantic set shown in FIG. 2A is a modeling element ME of the request tool.
  • a link between the modeling elements ME of the requirements development tool according to FIG. 2A and the various modeling elements ME of the UML tool according to FIG. 2B can be provided in each case, for example between the modeling element ME according to FIG. 2A and the transitions tlA, t2A , t3A of the UML tool.
  • FIG. 3 shows a simple flow chart of a possible embodiment of the method according to the invention for integrating tion of development tools T.
  • Sl different development tools Tl, T2, T3, which are executable on different computers or computers 4, registered via the network 3 at the server 2, indicating a respective tool class TK of the development tool T.
  • this log-on takes place when the respective development tool T is first executed on the respective computer 4 at the server 2.
  • the server 2 provides linking options between modeling elements ME of the registered development tools T of the same or different tool classes TK.
  • the modeling elements ME are, for example, classes, instances, operations, attributes, associations, nodes, edges, and the like.
  • step S3 one or more of the provided linking options are activated by a user or developer.
  • the user may preferably first select a connection type which he wishes from a suggested list of connection types.
  • the links may be unidirectional or bidirectional.
  • Each development tool or development tool T is assigned by the respective manufacturer at least one method or tool class TK.
  • Development tools preferably cover the largest possible subset or subgroup of the respective tool class TK.
  • the development tool 3 has different subclasses, namely software development tool, hardware development tool or mechanics development tool. There is also a subclass for other tools.
  • An example of a mechanics development tool is a CAD graphics program.
  • Examples of software development tools include software development tools. definitions, for software module definitions, or for software design.
  • FIG. 5 shows artifacts or modeling elements ME of different tools T, for example a requirements development tool T1 and a UML development tool T2.
  • the various special development tools or tools that log in the same way to the server 2 or the integration broker running on it, will access the resulting overall meta-model and different ones
  • the registration of the tools or development tools T is preferably carried out dynamically, for example by means of the TCP / IP protocol.
  • the common meta-model represented in FIG. 5 is obtained by calculating the union of all reported modeling elements ME or artifacts of the different development tools T.
  • the request-development tool Tl displays the artifacts or modeling elements ME "request”, "feature", "application case” " on.
  • the UML development tool T2 has the modeling elements ME "aggregation”, "class”, “composition”, “attribute”, “operation”.
  • the union of the modeling elements ME of the different development tools T creates an overall meta-model that can be accessed by the server Z or integration broker with the method class Code Generator or Tracing Analyzer.
  • FIG. 6 shows an integration broker executed on the server 2.
  • various development tools for example a requirements development tool T1 and a UML tool T2 can be connected to interfaces or interfaces that serve as docking points .
  • the Tool Integration Broker provides various interfaces or ports.
  • a plug-and-play connection is established at Port 2 with the UML development tool T2.
  • the request development tool Tl is over its port A connected to the port 4 or the provided interface 4 of the tool integration broker.
  • a Traceability Analyzer or an analysis development tool for tracking errors is connected to port 3 of the Tool Integration Broker.
  • Such a tracking tool T3 serves, for example, to track whether all requirements or requirements are met or fulfilled.
  • FIG. 7 shows a user interface module, in which the server 2 offers a user the graphic option for linking or linking provided connection options.
  • a so-called tool integration broker running on the server Z allows a number of development tools T limited by the hardware configuration to log on to the server Z and to offer their respective modeling elements ME or artifacts to all other development tools T for linking.
  • a group of modeling elements ME of a first development tool T A and a group of modeling elements ME of a further development tool T B are displayed to the user on a screen via the user interface. It is now possible for the user to establish or activate a link between a modeling element ME-A of the first development tool T A and a modeling element ME-B of the second development tool T B.
  • FIG. 7 shows a user interface module, in which the server 2 offers a user the graphic option for linking or linking provided connection options.
  • a so-called tool integration broker running on the server Z allows a number of development tools T limited by the hardware configuration to log on to the server Z and to offer their respective modeling elements ME or art
  • the user also has the option of selecting a predetermined connection type from a group of connection types before setting the link. For example, a user can click on a desired connection type from a group of connection types by means of an input device and then establish a link between a modeling element ME of the development tool T A and the development tool T B. For example, a user first clicks on the connection type 2 defining a one-way connection, and then creates a connection between the modeling element ME "request" of the development tool T B , which is, for example, a request Definition tool, such as Doors, and the modeling element ME "composition", which is a modeling element ME of the design tool or a UML design tool T A.
  • a request Definition tool such as Doors
  • the user can, for example, after clicking on the connection type 2, first click on the modeling element "request” and then on the modeling element "composition” or make a corresponding input via an input keyboard. In a further step, the user can then, for example, activate further links or links between the modeling element "use case” and the modeling element "operation". If the user subsequently wishes to establish a link or a connection of the other connection type between modeling elements of the various development tools, he clicks on the right-hand side of the screen on the desired connection type, for example on connection type 1. Subsequently, a link is made, for example, between the modeling element "feature” and the modeling element "class” made by clicking the two graphically illustrated modeling elements ME. In the example shown in FIG. 7, two development tools or software tools T A , T B are shown on the user interface. In an alternative embodiment, a larger number of development tools T can be displayed simultaneously on the screen in order to link modeling elements ME in a larger number of development tools T with each other.
  • different modeling elements ME can be provided with access rights.
  • the "feature" modeling element may be disabled for a particular developer or user, so that no link from this locked modeling element ME to other modeling elements can produce other development tools.
  • ZR may be done by a development manager from a group of developers.
  • the method system according to the invention offers the possibility of combining different methods and associated development tools or development tools T without having to define project-related interfaces and exchange formats.
  • different development tools T can be distinguished with respect to their functionality.
  • UML development tools ie development tools of the same method class
  • one development tool T allows a particularly good modeling of a class diagram
  • the second UML development tool T is better suited for the modeling of state diagrams
  • a requirements development development tool T may be associated with a design development tool to facilitate finding errors or tracking errors.
  • the invention provides a method for integrating development tools T, in particular software development tools in the field of software engineering, wherein the development tools are preferably model-based and have modeling elements or artifacts.
  • the inventive method for integrating development tools T can be implemented by an application program.
  • the various development tools T register with the integration program or the integration broker, indicating the respective tool class TK of the development tool.
  • the integration broker or the integration program according to the invention then provides linking options between the modeling elements ME of the registered development tools T of identical or different tool classes TK. riding. This is preferably done for a graphical user interface in which various modeling elements ME of the registered development tools T are displayed on a screen for the user visible and linking options including different types of links are selectable by the user to a link between the modeling elements ME the different development tools T automatically to produce or activate.
  • the illustrated modeling elements ME can preferably be provided with access rights ZR for the respective user.
  • the modeling elements ME represented by the development and integration broker typically include classes, instances, operations, attributes, associations, nodes, and edges.
  • Other modeling elements ME of further development tools can also be represented graphically by the integration program according to the invention for producing links.
  • Modeling elements ME of at least two different development tools T are linked by the integration broker according to the invention.
  • the integration broker according to the invention or the method according to the invention for integrating development tools also makes it possible to establish links between the modeling elements ME within the same development tool T.
  • the linking of modeling elements ME of more than two development tools with the same or different tool classes TK is possible in a possible embodiment of the integration broker according to the invention.
  • the application program for integrating development tools according to the invention may in one possible embodiment be loaded from the computers 2 by the computers 4 of different developers via the network 3.
  • an application program for carrying out the method for integrating development tools is loaded from a data carrier and stored in the computer of a developer. lers or user executed.
  • all the development tools T available on the respective computer 4, including the modeling elements ME contained therein, are reported to the server 2.
  • the registration of the various development tools T present on a computer 4 takes place in each case in the first embodiment of the respective development tool T.
  • the production of a link between modeling elements ME can also take place via a touchscreen in that a user touches the modeling elements ME to be linked on the screen.
  • the activation or the production of a link between modeling elements of different development tools can be carried out acoustically via a voice input and a corresponding speech recognition.
  • a speaker recognition for authentication of the respective user additionally takes place in order to check whether the respective user has the necessary access rights in order to link the selected modeling element ME with further modeling elements.
  • the application program according to the invention for carrying out a method for integrating development tools can be executed on mobile or non-mobile terminals 4.
  • the network 3 shown in FIG. 1 may also be an access network that communicates with mobile terminals 4 of different users via a wireless interface.
  • the server 2 queries all development tools T present at the various terminals 4 and sets the application program Integration of development tools to the terminals 4 via the network 3 available.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The invention relates to a method and a system (1) for integrating development tools (T), comprising a server (2) connected through a network (3) to computers (4) on which development tools (T) can be executed, wherein the development tools (T) automatically log in to the server (2), in the process specifying the respective tool class (TK) of the tool when said development tools are executed, and wherein the server (2) provides linking options between modeling elements (ME) of the logged-in development tools (T) of the same or different tool classes (TK).

Description

Beschreibungdescription

Verfahren und System zur Integration von EntwicklungstoolsMethod and system for integrating development tools

Die Erfindung betrifft ein Verfahren und ein System zur Integration von Entwicklungstools und insbesondere die Integration unterschiedlicher Entwicklungstools, die zur gemeinsamen Implementierung eines Software- oder eines Systementwicklungsprozesses vorgesehen sind.The invention relates to a method and a system for integrating development tools, and in particular the integration of different development tools, which are provided for the joint implementation of a software or a system development process.

Bei der Entwicklung von System oder Prozessen werden typischerweise in verschiedenen Entwicklungsphasen oder verschiedenen Entwicklungsebenen verschiedenartige Entwicklungstools zur Modellierung und Implementierung der Systeme und Prozesse eingesetzt. Verschiedene Entwickler arbeiten bei der Entwicklung, beispielsweise eines technischen Systems oder eines technischen Prozesses mit unterschiedlichen ihnen vertrauten Entwicklungstools bei dem das System oder der Prozess mit Hilfe von Modellierungselementen bzw. Artefakten modelliert werden. Verschiedene Entwicklungstools werden in verschiedenen, sich teilweise überlappenden Entwicklungsphasen eingesetzt, wobei gewisse Entwicklungstools iterativ zur Konkretisierung bzw. Verfeinerung des Systemmodels verwendet werden können. In herkömmliche Entwicklungsumgebungen sind die un- terschiedlichen Entwicklungstools nicht miteinander integriert. Insbesondere werden Verbindungen bzw. Verknüpfungen zwischen verschiedene Modellierungselementen bzw. Artefakten der verschiedenen Entwicklungstools manuell erstellt. Diese manuelle Implementierung von Schnittstellen zwischen Entwick- lungstools ist naturgemäß sehr aufwendig und fehlerbehaftet. Man versucht daher bisher durch Definition von Standard- und Austauschformaten einen Austausch von Modellierungselementen bzw. Artefakten zwischen den Entwicklungstools zu erleichtern. Dabei wird allerdings der Aufwand für das manuelle Ex- portieren und Importieren bzw. für das Erstellen von Verknüpfungen zwischen verschiedenen Modellierungselementen verschiedener Entwicklungstools nicht vermindert. Es ist daher eine Aufgabe der vorliegenden Erfindung, ein Verfahren und ein System zur Integration von Entwicklungstools zu schaffen, bei dem ein manuelles Austauschen von Modellierungselementen zwischen den Entwicklungstools vermieden wird.When developing systems or processes, various development tools are typically used at different stages of development or at different levels of development to model and implement the systems and processes. Different developers are working on the development of, for example, a technical system or a technical process with different familiar development tools in which the system or the process is modeled using modeling elements or artifacts. Different development tools are used in different, partially overlapping development phases, whereby certain development tools can be used iteratively to concretize or refine the system model. In traditional development environments, the different development tools are not integrated with each other. In particular, connections or links between different modeling elements or artifacts of the various development tools are created manually. This manual implementation of interfaces between development tools is naturally very expensive and error-prone. So far, attempts have been made to facilitate the exchange of modeling elements or artifacts between the development tools by defining standard and exchange formats. However, the effort for manual exporting and importing or for creating links between different modeling elements of different development tools is not reduced. It is therefore an object of the present invention to provide a method and system for integrating development tools that avoids manual swapping of modeling elements between the development tools.

Diese Aufgabe wird erfindungsgemäß durch ein Verfahren mit dem im Patentanspruch 1 angegebenen Merkmalen gelöst.This object is achieved by a method with the features specified in claim 1.

Die Erfindung schafft ein Verfahren zur Integration von Entwicklungstools mit den Schritten:The invention provides a method for integrating development tools with the steps:

Anmelden von Entwicklungstools bei einem Server unter Angabe der jeweiligen Toolklasse des Entwicklungstools; und Log on development tools to a server by specifying the respective tool class of the development tool; and

Bereitstellen von Verknüpfungsoptionen zwischen Modellierungselementen der angemeldeten Entwicklungstools gleicher oder verschiedener Toolklassen durch den Server . Provide linkage options between the server's modeling elements of the registered development tools of the same or different tool classes.

Bei einer Ausführungsform des erfindungsgemäßen Verfahrens wird eine Verknüpfungsoption zur Herstellung einer Verknüpfung zwischen Modellierungselementen automatisch oder manuell aktiviert .In one embodiment of the method according to the invention, a linking option for establishing a link between modeling elements is activated automatically or manually.

Bei einer Ausführungsform des erfindungsgemäßen Verfahrens wird ein vorgegebener Verbindungstyp der Verknüpfung ausgewählt .In one embodiment of the method according to the invention, a predetermined connection type of the link is selected.

Bei einer Ausführungsform des erfindungsgemäßen Verfahrens ist die hergestellte Verknüpfung unidirektional .In one embodiment of the method according to the invention, the linkage produced is unidirectional.

Bei einer alternativen Ausführungsform des erfindungsgemäßen Verfahrens ist die hergestellte Verknüpfung bidirektional.In an alternative embodiment of the method according to the invention, the linkage produced is bidirectional.

Bei einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens werden die Entwicklungstools bei einem erstmaligen Ausführen auf einem Computer bei dem Server automatisch angemeldet .In one possible embodiment of the method according to the invention, the development tools are used for a first time Run on a computer automatically logged in to the server.

Dies erleichtert einem Nutzer die Anwendung des erfindungsge- mäßen Verfahrens .This makes it easier for a user to use the method according to the invention.

Bei einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens werden die Modellierungselemente mit Zugriffsrechte versehen.In one possible embodiment of the method according to the invention, the modeling elements are provided with access rights.

Dies bietet den Vorteil, dass ein Zugriff auf Modellierungselemente bestimmter Typen gesperrt bzw. gesichert werden kann .This offers the advantage that access to modeling elements of certain types can be blocked or saved.

Bei einer weiteren Ausführungsform des erfindungsgemäßen Verfahrens werden die angemeldeten Entwicklungstools und die hergestellten Verknüpfungen zwischen Modellierungselementen dieser Entwicklungstools gespeichert.In a further embodiment of the method according to the invention, the registered development tools and the links produced are stored between modeling elements of these development tools.

Dies ermöglicht einem Nutzer nach Unterbrechung seiner Tätigkeit ohne Datenverlust sein Entwicklungstool wieder zu starten .This allows a user to restart his development tool after interrupting his activity without data loss.

Bei einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens weisen die Modellierungselemente Klassen, Instanzen, Operationen, Attribute, Assoziationen, Knoten und Kanten auf .In one possible embodiment of the method according to the invention, the modeling elements have classes, instances, operations, attributes, associations, nodes and edges.

Die Erfindung schafft ferner ein System mit dem im Patentan- spruch 9 angegebenen Merkmalen.The invention further provides a system having the features specified in patent claim 9.

Die Erfindung schafft ein System zur Integration von Entwicklungstools mit einem Server, der über ein Netzwerk mit Computern verbunden ist, auf denen jeweils Entwicklungstools aus- führbar sind, wobei die Entwicklungstools sich bei ihrer Ausführung bei einem Server unter Angabe ihrer jeweiligen Toolklasse automatisch anmelden und der Server Verknüpfungsoptionen zwischen Modellierungselementen der angemeldeten Entwick- lungstools gleicher oder verschiedener Toolklassen bereitstellt.The invention provides a system for integrating development tools with a server connected via a network to computers on which development tools can be executed in each case, wherein the development tools automatically log on to a server by specifying their respective tool class and the Server linking options between modeling elements of the registered development ment tools of the same or different tool classes.

Bei einer Ausführungsform des erfindungsgemäßen Systems sind die bereitgestellten Verknüpfungsoptionen jeweils zur Herstellung einer Verknüpfung zwischen Modellierungselementen von Entwicklungstools aktivierbar.In one embodiment of the system according to the invention, the linking options provided can each be activated to produce a link between modeling elements of development tools.

Im Weiteren werden Ausführungsformen des erfindungsgemäßen Verfahrens und des erfindungsgemäßen Systems zur Integration von Entwicklungstools unter Bezugnahme auf die beigefügten Figuren beschrieben.In the following, embodiments of the method according to the invention and the system for integrating development tools according to the invention will be described with reference to the attached figures.

Es zeigen:Show it:

Fig. 1 ein Blockschaltbild einer möglichen Ausführungsform des erfindungsgemäßen Systems zur Integration vonFig. 1 is a block diagram of a possible embodiment of the system according to the invention for the integration of

Entwicklungstools ;Development tools;

Fig. 2A, 2B Beispiele für einfache Entwicklungstools;Figs. 2A, 2B show examples of simple development tools;

Fig. 3 ein Ablaufdiagramm einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens zur Integration von Entwicklungstools ;3 is a flowchart of a possible embodiment of the method according to the invention for integrating development tools;

Fig. 4 ein Diagramm, das verschiedene Methoden bzw. Toolklassen in einem Klassendiagramm darstellt, wie sie bei einer möglichen Ausführungsform des erfindungsgemäßen Systems eingesetzt werden können;4 is a diagram illustrating various methods or tool classes in a class diagram, as can be used in a possible embodiment of the system according to the invention;

Fig. 5 ein Beispiel für verschiedene, durch Entwicklungstools definierte Modellierungselemente;5 shows an example of various modeling elements defined by development tools;

Fig. 6 ein Ausführungsbeispiel für einen Toolintegrations- broker, wie er bei einer Ausführungsform des erfindungsgemäßen Systems eingesetzt werden kann; Fig. 7 ein Ausführungsbeispiel zur Verknüpfung verschiedener Modellierungselemente verschiedener Entwicklungstools über ein Nutzer-Interface, so wie es bei dem erfindungsgemäßen System einsetzbar ist.6 shows an exemplary embodiment of a tool integration broker, as can be used in an embodiment of the system according to the invention; 7 shows an exemplary embodiment for linking different modeling elements of different development tools via a user interface, as can be used in the system according to the invention.

Wie man aus Fig. 1 erkennen kann, weist das erfindungsgemäße System 1 zur Integration von Entwicklungstools bei der dort dargestellten Ausführungsform mindestens einen Server 2 auf, der über ein Netzwerk 3 mit verschiedenen Computern 4-1-4-2 verbunden ist. Bei den Computern 4-1-4-2 kann es sich um Computer verschiedener Entwickler bzw. Nutzern handeln. Auf den Computern 4-1-4-2 sind unterschiedliche Entwicklungstools ausführbar. Diese Computer 4 sind über ein Datennetzwerk 3, bei dem es sich um ein lokales oder um ein weit reichendes Netzwerk handeln kann, mit einem Server 2 verbunden. Bei einer möglichen Ausführungsform melden sich die Entwicklungstools T bei ihrer Ausführung bei dem Server 2 unter Angabe ihrer jeweiligen Toolklasse automatisch an. Der Server 2 stellt dann Verknüpfungsoptionen zwischen Modellierungsele- menten ME der angemeldeten Entwicklungstools T gleicher oder verschiedener Toolklassen TK bereit. Bei einer möglichen Ausführungsform melden sich die Entwicklungstools Tl, T2 beim erstmaligen Ausführen auf dem jeweiligen Computer 4-1-4-2 bei dem Server 2 an. Auf jedem Computer 4 der verschiedenen Nut- zer bzw. Entwickler können ein oder mehrere Entwicklungstools T ausgeführt werden. Bei den Entwicklungstools T kann es sich um beliebige Tools bzw. Softwaretools handeln, die zur Entwicklung eines Prozesses oder eines Systems, beispielsweise eines technischen Softwaresystems oder eines Gegenstandes bzw. einer Hardware eingesetzt werden. Beispiele für derartige Entwicklungstools T sind etwa ein Anforderungsentwicklungstool oder ein UML (Unified Modelling Language) -Tool . Beispiele für Anforderungsentwicklungstools sind Systemrequi- rement-Entwicklungstools, wie DOORS, ARTiSAN oder Rhapsody, deren Modellierungselemente ME bzw. Artefakte im Zuge desAs can be seen from Fig. 1, the inventive system 1 for integrating development tools in the embodiment shown there on at least one server 2, which is connected via a network 3 with different computers 4-1-4-2. The computers 4-1-4-2 may be computers of different developers or users. On the computers 4-1-4-2 different development tools are executable. These computers 4 are connected to a server 2 via a data network 3, which may be a local or a wide network. In one possible embodiment, the development tools T automatically log on to the server 2 while executing their respective tool class. The server 2 then provides linking options between modeling elements ME of the registered development tools T of identical or different tool classes TK. In one possible embodiment, the development tools T1, T2 log on to the server 2 when first executed on the respective computer 4-1-4-2. One or more development tools T can be executed on each computer 4 of the various users or developers. The development tools T can be any tools or software tools that are used to develop a process or a system, for example a technical software system or an object or a hardware. Examples of such development tools T are, for example, a requirements development tool or a UML (Unified Modeling Language) tool. Examples of requirement development tools are system-re- lated development tools, such as DOORS, ARTiSAN, or Rhapsody, whose modeling elements are ME and artifacts, respectively

Entwicklungsprozesses mit Modellierungselementen ME bzw. Artefakten anderer Entwicklungstools, beispielsweise eines UML- Entwicklungstools, zu verknüpfen bzw. zu verlinken sind. Die Modellierungselemente ME der verschiedenen Entwicklungstools T weisen beispielsweise Klassen, Instanzen, Operationen, Attribute, Assoziationen, Knoten oder Kanten auf.Development process with modeling elements ME or artifacts of other development tools, such as a UML development tool to link or link. The Modeling elements ME of the various development tools T have, for example, classes, instances, operations, attributes, associations, nodes or edges.

Der Server 2 stellt Verknüpfungsoptionen zwischen den Modellierungselementen ME der angemeldeten Entwicklungstools Tl, T2 bereit, wobei es sich bei den Entwicklungstools T um Entwicklungstools gleicher oder verschiedener Klassen handeln kann. Die durch den Server 2 bereitgestellten Verknüpfungs- Optionen sind anschließend zur Herstellung einer Verknüpfung zwischen den Modellierungselementen ME der verschiedenen Entwicklungstools Tl, T2 durch einen Nutzer bzw. einem Entwickler aktivierbar. Dabei kann der Nutzer vorzugsweise einen vorgegebenen Verbindungstyp für eine gewünschte Verknüpfung auswählen. Die gewählte Verknüpfung kann eine unidirektionale Verknüpfung von einem Modellierungselement ME-A eines ersten Entwicklungstools TA hin zu einem anderen Modellierungselement ME-B eines anderen Entwicklungstools TB oder eine bidirektionale Verknüpfung zwischen beiden Modellierungselementen ME der beiden Entwicklungstools TA, TB sein. Auswahl und Aktivierung einer Verknüpfung durch einen Nutzer erfolgt vorzugsweise mittels einer Eingabeeinrichtung, beispielsweise über eine Tastatur oder eine Computermaus. Bei einer möglichen Ausführungsform wird die Aktivierung der Verknüpfung durch ein Ereignis ausgelöst, das durch den Nutzer vorkonfi- gurierbar sein kann.The server 2 provides linking options between the modeling elements ME of the registered development tools Tl, T2, wherein the development tools T can be development tools of identical or different classes. The linking options provided by the server 2 can then be activated by a user or a developer to establish a link between the modeling elements ME of the different development tools T 1, T 2. In this case, the user can preferably select a predetermined connection type for a desired link. The selected link can be a unidirectional link from a modeling element ME-A of a first development tool T A to another modeling element ME-B of another development tool T B or a bidirectional link between the two modeling elements ME of the two development tools T A , T B. Selection and activation of a link by a user preferably takes place by means of an input device, for example via a keyboard or a computer mouse. In one possible embodiment, the activation of the linkage is triggered by an event that can be preconfigured by the user.

Bei einer möglichen Ausführungsform sind die verschiedenen Modellierungselemente ME der Entwicklungstools T jeweils mit Zugriffsrechten ZR versehen. Die Modellierungselemente ME bzw. Artefakte können mit unterschiedlichen Sichtbarkeitsdefinitionen oder auch Nutzer-Schnittstellen bzw. Zugriffsrechten versehen werden, die die Entwicklungstools T bei Ihrer Anmeldung dem Server 2 bzw. einem darauf ausgeführten Integ- rationsbroker mitteilen können.In one possible embodiment, the different modeling elements ME of the development tools T are each provided with access rights ZR. The modeling elements ME or artefacts can be provided with different visibility definitions or also user interfaces or access rights which the development tools T can communicate to the server 2 or an integration broker executed thereon when you log on.

Die Fig. 2A, 2B zeigen Beispiele für Entwicklungstools zur Entwicklung eines Systems. Fig. 2A zeigt ein Beispiel für ein Anforderungsentwicklungstool, das eine Anforderung (Require- ment) an das zu entwickelnde System stellt. Die einfache Anforderung lautet: "Das System muss in jedem Zustand abschaltbar sein . "Figures 2A, 2B show examples of development tools for developing a system. Fig. 2A shows an example of a Requirements development tool, which makes a request to the system to be developed. The simple requirement is: "The system must be able to be switched off in any state."

Fig. 2B zeigt eine entsprechende Darstellung mittels eines UML-Entwicklungstools . Das Entwicklungssystem weist verschiedene Zustände bzw. States Z auf, wobei zwischen den verschiedenen Zuständen Z Transitionen t bestehen, um von einem Zu- stand in einen anderen Zustand zu gelangen. Der in Fig. 2B dargestellte UML-Zustandsgraph zeigt das Verhalten des zu entwickelnden Systems. Wie man in Fig. 2B erkennen kann gelangt man von einem Anfangzustand ZO in einer Transition tθl in einen Zustand Zl und von dort über eine Transition tlA in einen Ausschaltzustand ZA. Da alle Zustände Zl, Z2, Z3 eine Transition t zu dem Ausschaltzustand ZA haben, nämlichen die Transitionen tlA, t2A, t3A, erfüllt das in Fig. 2B durch das Entwicklungstool UML-Tool dargestellte System die im Anforderungsentwicklungstool gemäß Fig. 2A gestellte Anforderung. Genauer gesagt, erfüllen die Transitionen tlA, t2A, t3A Anforderung, die im Anforderungsentwicklungstool gestellt wird. Bei den Transitionen tlA, t2A, t3A handelt es sich um Modellierungelemente ME des UML-Tools. Bei dem in Fig. 2A dargestellten semantischen Satz handelt es sich um ein Modellie- rungselement ME des Anforderungstools. Mit dem erfindungsgemäßen Verfahren und System zur Integration von Entwicklungstools T ist es möglich, Verknüpfungen bzw. Links zwischen verschiedenen Modellierungselementen ME verschiedener Entwicklungstools T zu erzeugen bzw. zu generieren. Beispiels- weise kann jeweils eine Verknüpfung zwischen den Modellierungselementen ME des Anforderungsentwicklungstools gemäß Fig. 2A und den verschiedenen Modellierungselementen ME des UML-Tools gemäß Fig. 2B bereitgestellt werden, etwa zwischen dem Modellierungselement ME gemäß Fig. 2A und den Transitio- nen tlA, t2A, t3A des UML-Tools.Fig. 2B shows a corresponding representation by means of a UML development tool. The development system has various states or states Z, wherein there are transitions t between the various states Z in order to move from one state to another state. The UML state graph shown in FIG. 2B shows the behavior of the system to be developed. As can be seen in FIG. 2B, one arrives from an initial state ZO in a transition tθ1 into a state Z1 and from there via a transition tlA into an off state ZA. Since all states Z1, Z2, Z3 have a transition t to the switch-off state ZA, namely the transitions tIA, t2A, t3A, the system represented in FIG. 2B by the development tool UML-Tool satisfies the request made in the request development tool according to FIG. 2A. More specifically, the transitions tlA, t2A, t3A satisfy the request made in the request-development tool. The transitions tlA, t2A, t3A are modeling elements ME of the UML tool. The semantic set shown in FIG. 2A is a modeling element ME of the request tool. With the method and system for integrating development tools T according to the invention, it is possible to generate or generate links or links between different modeling elements ME of different development tools T. For example, a link between the modeling elements ME of the requirements development tool according to FIG. 2A and the various modeling elements ME of the UML tool according to FIG. 2B can be provided in each case, for example between the modeling element ME according to FIG. 2A and the transitions tlA, t2A , t3A of the UML tool.

Fig. 3 zeigt ein einfaches Ablaufdiagramm einer möglichen Ausführungsform des erfindungsgemäßen Verfahrens zur Integra- tion von Entwicklungstools T. In einem ersten Schritt Sl werden verschiedene Entwicklungstools Tl, T2, T3, die auf verschiedenen Computern bzw. Rechnern 4 ablauffähig vorhanden sind, über das Netzwerk 3 bei dem Server 2 unter Angabe einer jeweiligen Toolklasse TK des Entwicklungstools T angemeldet. Dieses Anmelden erfolgt bei einer möglichen Ausführungsform beim erstmaligen Ausführen des jeweiligen Entwicklungstools T auf dem jeweiligen Computer 4 bei dem Server 2.3 shows a simple flow chart of a possible embodiment of the method according to the invention for integrating tion of development tools T. In a first step Sl different development tools Tl, T2, T3, which are executable on different computers or computers 4, registered via the network 3 at the server 2, indicating a respective tool class TK of the development tool T. In a possible embodiment, this log-on takes place when the respective development tool T is first executed on the respective computer 4 at the server 2.

In einem weiteren Schritt S2 stellt der Server 2 Verknüpfungsoptionen zwischen Modellierungselementen ME der angemeldeten Entwicklungstools T gleicher oder verschiedener Toolklassen TK bereit. Die Modellierungselemente ME sind beispielsweise Klassen, Instanzen, Operationen, Attribute, Asso- ziationen, Knoten, Kanten und dergleichen.In a further step S2, the server 2 provides linking options between modeling elements ME of the registered development tools T of the same or different tool classes TK. The modeling elements ME are, for example, classes, instances, operations, attributes, associations, nodes, edges, and the like.

In einem Schritt S3 werden eine oder mehrere der bereitgestellten Verknüpfungsoptionen durch einen Nutzer bzw. Entwickler aktiviert. Dabei kann der Nutzer vorzugsweise vorher einen von ihm gewünschten Verbindungstyp aus einer vorgeschlagenen Liste von Verbindungstypen auswählen. Beispielsweise können die Verknüpfungen unidirektional oder bidirektional sein.In step S3, one or more of the provided linking options are activated by a user or developer. In this case, the user may preferably first select a connection type which he wishes from a suggested list of connection types. For example, the links may be unidirectional or bidirectional.

Fig. 4 zeigt verschiedene Methoden bzw. Toolklassen TK. Jedem Entwicklungstool bzw. Entwicklungswerkzeug T wird von dem jeweiligen Hersteller mindestens eine Methoden- bzw. Toolklasse TK zugeordnet. Entwicklungstools decken dabei vorzugsweise eine möglichst großes Subset bzw. eine möglichst große Unter- gruppe der jeweiligen Toolklasse TK ab. Wie man bei dem Beispiel gemäß Fig. 4 erkennen kann, weist der Entwicklungstool 3 verschiedene Unterklassen auf, nämlich Softwareentwicklungstool, Hardwareentwicklungstool oder Mechanikentwicklungstool. Darüber hinaus gibt es eine Unterklasse für sons- tige Tools. Ein Beispiel für ein Mechanikentwicklungstool ist ein CAD-Graphikprogramm. Beispiele für Softwarentwicklungstools sind Entwicklungstools für Softwareanforde- rungsdefinitionen, für Softwaremoduldefinitionen oder für Softwaredesign .4 shows different methods or tool classes TK. Each development tool or development tool T is assigned by the respective manufacturer at least one method or tool class TK. Development tools preferably cover the largest possible subset or subgroup of the respective tool class TK. As can be seen in the example according to FIG. 4, the development tool 3 has different subclasses, namely software development tool, hardware development tool or mechanics development tool. There is also a subclass for other tools. An example of a mechanics development tool is a CAD graphics program. Examples of software development tools include software development tools. definitions, for software module definitions, or for software design.

Fig. 5 zeigt Artefakte bzw. Modellierungselemente ME ver- schiedener Tools T, beispielsweise eines Anforderungsentwicklungstools Tl und eines UML-Entwicklungstools T2. Die verschiedenen speziellen Entwicklungstools bzw. Werkzeuge, die sich auf gleiche Weise bei dem Server 2 bzw. dem darauf laufenden Integrations-Broker anmelden, werden auf das entste- henden Gesamt-Metamodell zugreifen und darauf verschiedeneFIG. 5 shows artifacts or modeling elements ME of different tools T, for example a requirements development tool T1 and a UML development tool T2. The various special development tools or tools that log in the same way to the server 2 or the integration broker running on it, will access the resulting overall meta-model and different ones

Methoden, wie beispielsweise Analyse, Validierung oder Verifikation anwenden. Die Anmeldung der Werkzeuge bzw. Entwicklungstools T erfolgt vorzugsweise dynamisch, beispielsweise mittels des TCP/IP-Protokolls . In Fig. 5 dargestellte gemein- same Metamodell entsteht durch die Berechnung der Vereinigungsmenge aller gemeldeten Modellierungselemente ME bzw. Artefakte der unterschiedlichen Entwicklungstools T. Beispielsweise weist das Anforderungsentwicklungstool Tl die Artefakte bzw. Modellierungselemente ME "Anforderung", "Feature", "An- wendungsfall" auf. Das UML-Entwicklungstool T2 weisen die Modellierungselemente ME "Aggregation", "Klasse", "Komposition", "Attribut", "Operation" auf. Durch die Vereinigungsmenge der Modellierungselemente ME der verschiedenen Entwicklungstools T entsteht ein Gesamtmetamodell, auf die der Server Z bzw. Integrations-Broker mit der Methodenklasse Code Generator oder Tracing Analyser zugreifen kann.Apply methods such as analysis, validation or verification. The registration of the tools or development tools T is preferably carried out dynamically, for example by means of the TCP / IP protocol. The common meta-model represented in FIG. 5 is obtained by calculating the union of all reported modeling elements ME or artifacts of the different development tools T. For example, the request-development tool Tl displays the artifacts or modeling elements ME "request", "feature", "application case" " on. The UML development tool T2 has the modeling elements ME "aggregation", "class", "composition", "attribute", "operation". The union of the modeling elements ME of the different development tools T creates an overall meta-model that can be accessed by the server Z or integration broker with the method class Code Generator or Tracing Analyzer.

Fig. 6 zeigt einen Integrationsbroker, der auf den Server 2 ausgeführt wird. Über Plug-and-Play-Verbindungen, beispiels- weise mittels des TCP/IP-Protokolls können an Schnittstellen bzw. Interfaces, die als Andockstellen dienen, verschiedene Entwicklungswerkzeuge, beispielsweise ein Anforderungsent- wicklungs-Tool Tl und ein UML-Tool T2 angebunden werden. Der Tool-Integrationsbroker stellt verschiedene Interfaces bzw. Ports zur Verfugung. Wie in Fig. 6 dargestellt wird, ist bei dem gezeigten Beispiel an dem Port 2 eine plug-and-play- Connection bzw. -Verbindung mit dem UML-Entwicklungs-Tool T2 hergestellt. Das Anforderungs-Entwicklungs-Tool Tl ist über sein Port A mit dem Port 4 bzw. der zur Verfügung gestellten Schnittstelle 4 des Tool-Integrationsbrokers verbunden. An dem Port 3 des Tool-Integrationsbrokers ist ein Traceability Analyzer bzw. ein Analyse-Entwicklungs-Tool zur Nachverfol- gung von Fehlern angeschlossen. Ein derartiges Nachverfol- gungs-Tool T3 dient beispielsweise der Nachverfolgung, ob alle Anforderung oder Requirements abgedeckt bzw. erfüllt sind.FIG. 6 shows an integration broker executed on the server 2. Via plug-and-play connections, for example by means of the TCP / IP protocol, various development tools, for example a requirements development tool T1 and a UML tool T2 can be connected to interfaces or interfaces that serve as docking points , The Tool Integration Broker provides various interfaces or ports. As shown in FIG. 6, in the example shown, a plug-and-play connection is established at Port 2 with the UML development tool T2. The request development tool Tl is over its port A connected to the port 4 or the provided interface 4 of the tool integration broker. A Traceability Analyzer or an analysis development tool for tracking errors is connected to port 3 of the Tool Integration Broker. Such a tracking tool T3 serves, for example, to track whether all requirements or requirements are met or fulfilled.

Fig. 7 zeigt ein Nutzer-Interface-Modul, bei dem der Server 2 einem Nutzer die graphische Möglichkeit zur Verknüpfung bzw. zur Verlinkung von bereitgestellten Verbindungsoptionen bietet. Ein auf dem Server Z laufender, sogenannter Tool- Integrationsbroker erlaubt einer durch die Hardwarekonfiguration begrenzten Anzahl von Entwicklungstools T, sich bei dem Server Z anzumelden und ihre jeweiligen Modellierungselemente ME bzw. Artefakte allen anderen Entwicklungstools T zur Verknüpfung anzubieten. Bei der in Fig. 7 dargestellten Ausführungsform wird über die Nutzerschnittstelle dem Nutzer eine Gruppe von Modellierungselementen ME eines ersten Entwick- lungstools TA und eine Gruppe von Modellierungselementen ME eines weiteren Entwicklungstools TB auf einem Bildschirm angezeigt. Für den Nutzer besteht nunmehr die Möglichkeit, eine Verknüpfung zwischen einem Modellierungselement ME-A des ersten Entwicklungstools TA und einem Modellierungselement ME-B des zweiten Entwicklungstools TB herzustellen bzw. zu aktivieren. Bei der in Fig. 7 dargestellten Ausführungsform hat der Nutzer zudem die Möglichkeit, vor dem Setzen der Verknüpfung einen vorgegebenen Verbindungstyp aus einer Gruppe von Verbindungstypen auszuwählen. Beispielsweise kann ein Nutzer einen gewünschten Verbindungstyp aus einer Gruppe der Verbindungstypen mittels einer Eingabevorrichtung anklicken und anschließend eine Verknüpfung zwischen einem Modellierungselement ME des Entwicklungstools TA und des Entwicklungstools TB herstellen. Beispielsweise klickt ein Nutzer zuerst auf den Verbindungstyp 2, der eine unidirektionale Verbindung definiert, und erstellt anschließend eine Verbindung zwischen dem Modellierungselement ME "Anforderung" des Entwicklungstools TB, bei dem es sich beispielsweise um ein Anforderungs- Definitions-Tool, wie etwa Doors handelt, und dem Modellierungselement ME "Komposition", das ein Modellierungselement ME des Design-Tools bzw. eines UML-Design-Tools TA ist. Zur Herstellung bzw. Aktivierung der Verknüpfung kann der Nutzer beispielsweise nach Anklicken des Verbindungstyps 2 nachfolgend zuerst auf das Modellierungselement "Anforderung" und anschließend auf das Modellierungselement "Komposition" klicken bzw. eine entsprechende Eingabe über eine Eingabetastatur vornehmen. In einem weiteren Schritt kann der Nutzer dann beispielsweise weitere Verknüpfungen bzw. Verlinkungen zwischen dem Modellierungselement "Anwendungsfall" und dem Modellierungselement "Operation" aktivieren. Möchte der Nutzer anschließend eine Verknüpfung bzw. eine Verbindung des anderen Verbindungstyps zwischen Modellierungselementen der ver- schiedenen Entwicklungstools herstellen, klickt er z.B. auf der rechten Seite des Bildschirms auf den gewünschten Verbindungstyp, beispielsweise auf den Verbindungstyp 1. Anschließend wird eine Verknüpfung beispielsweise zwischen dem Modellierungselement "feature" und dem Modellierungselement "Klas- se" durch Anklicken der beiden graphisch dargestellten Modellierungselemente ME hergestellt. Bei dem in Fig. 7 dargestellten Beispiel sind zwei Entwicklungstools bzw. Softwarewerkzeuge TA, TB auf dem Nutzerinterface dargestellt. In einer alternativen Ausführungsform können auf dem Bildschirm eine größere Anzahl von Entwicklungstools T gleichzeitig dargestellt werden, um Modellierungselemente ME in einer größeren Anzahl von Entwicklungstools T miteinander zu verknüpfen.FIG. 7 shows a user interface module, in which the server 2 offers a user the graphic option for linking or linking provided connection options. A so-called tool integration broker running on the server Z allows a number of development tools T limited by the hardware configuration to log on to the server Z and to offer their respective modeling elements ME or artifacts to all other development tools T for linking. In the embodiment illustrated in FIG. 7, a group of modeling elements ME of a first development tool T A and a group of modeling elements ME of a further development tool T B are displayed to the user on a screen via the user interface. It is now possible for the user to establish or activate a link between a modeling element ME-A of the first development tool T A and a modeling element ME-B of the second development tool T B. In the embodiment illustrated in FIG. 7, the user also has the option of selecting a predetermined connection type from a group of connection types before setting the link. For example, a user can click on a desired connection type from a group of connection types by means of an input device and then establish a link between a modeling element ME of the development tool T A and the development tool T B. For example, a user first clicks on the connection type 2 defining a one-way connection, and then creates a connection between the modeling element ME "request" of the development tool T B , which is, for example, a request Definition tool, such as Doors, and the modeling element ME "composition", which is a modeling element ME of the design tool or a UML design tool T A. To produce or activate the link, the user can, for example, after clicking on the connection type 2, first click on the modeling element "request" and then on the modeling element "composition" or make a corresponding input via an input keyboard. In a further step, the user can then, for example, activate further links or links between the modeling element "use case" and the modeling element "operation". If the user subsequently wishes to establish a link or a connection of the other connection type between modeling elements of the various development tools, he clicks on the right-hand side of the screen on the desired connection type, for example on connection type 1. Subsequently, a link is made, for example, between the modeling element "feature" and the modeling element "class" made by clicking the two graphically illustrated modeling elements ME. In the example shown in FIG. 7, two development tools or software tools T A , T B are shown on the user interface. In an alternative embodiment, a larger number of development tools T can be displayed simultaneously on the screen in order to link modeling elements ME in a larger number of development tools T with each other.

Bei einer möglichen Ausführungsform können verschiedene Mo- dellierungselemente ME mit Zugriffsrechten versehen werden. Beispielsweise kann das Modellierungselement "feature" für einen bestimmten Entwickler oder Nutzer gesperrt sein, sodass dieser keine Verknüpfung von diesem gesperrten Modellierungselement ME zu anderen Modellierungselementen andere Entwick- lungstools herstellen kann. Die Vergabe von ZugriffsrechtenIn one possible embodiment, different modeling elements ME can be provided with access rights. For example, the "feature" modeling element may be disabled for a particular developer or user, so that no link from this locked modeling element ME to other modeling elements can produce other development tools. The allocation of access rights

ZR kann beispielsweise durch einen Entwicklungsleiter von einer Gruppe von Entwicklern erfolgen. Das erfindungsgemäße Verfahrenssystem bietet die Möglichkeit verschiedene Methoden und dazugehörige Entwicklungswerkzeuge bzw. Entwicklungstools T zu verbinden, ohne projektbezogene Schnittstellen und Austauschformate definieren zu müssen. Durch das Vorsehen von Methoden bzw. Toolklassen TK können verschiedene Entwicklungs-Tools T hinsichtlich ihrer Funktionalität unterschieden werden. Bei der Verbindung von Entwicklungstools zu einer Kette von Entwicklungstools innerhalb eines Entwicklungsprozesses ist es daher mit dem erfindungsge- mäßen System möglich mehrere Entwicklungstools T einer Methodenklasse zu kombinieren, oder auch Entwicklungstools T unterschiedlicher Methodenklassen miteinander zu kombinieren. Beispielsweise ist es möglich zwei UML-Entwicklungstools, d. h. Entwicklungstools der gleichen Methodenklasse zu kombinie- ren, wobei ein Entwicklungstool T eine besonders gute Modellierung von einem Klassendiagram erlaubt, und wobei das zweite UML-Entwicklungstool T besser für die Modellierung von Zu- standsdiagrammen geeignet ist. Darüber hinaus ist es auch möglich Entwicklungstools T unterschiedlicher Toolklassen TK miteinander zu kombinieren bzw. zu verknüpfen. Beispielsweise kann ein Entwicklungstool T für die Anforderungsentwicklung mit einem Design-Entwicklungstool verknüpft werden, um ein Auffinden von Fehlern bzw. eine Nachverfolgung von Fehlern zu erleichtern. Die Erfindung schafft ein Verfahren zur Integra- tion von Entwicklungstools T, insbesondere von Softwareentwicklungstools im Bereich des Software-Engineerings, wobei die Entwicklungstools vorzugsweise modellbasiert sind und Modellierungselemente bzw. Artefakte aufweisen.For example, ZR may be done by a development manager from a group of developers. The method system according to the invention offers the possibility of combining different methods and associated development tools or development tools T without having to define project-related interfaces and exchange formats. By providing methods or tool classes TK, different development tools T can be distinguished with respect to their functionality. When combining development tools into a chain of development tools within a development process, it is therefore possible with the system according to the invention to combine a plurality of development tools T of a method class, or to combine development tools T of different method classes with one another. For example, it is possible to combine two UML development tools, ie development tools of the same method class, whereby one development tool T allows a particularly good modeling of a class diagram, and the second UML development tool T is better suited for the modeling of state diagrams , In addition, it is also possible to combine or link development tools T of different tool classes TK. For example, a requirements development development tool T may be associated with a design development tool to facilitate finding errors or tracking errors. The invention provides a method for integrating development tools T, in particular software development tools in the field of software engineering, wherein the development tools are preferably model-based and have modeling elements or artifacts.

Das erfindungsgemäße Verfahren zur Integration von Entwicklungstools T kann durch ein Anwendungsprogramm implementiert sein. Dabei melden sich die verschiedenen Entwicklungstools T bei dem Integrationsprogramm bzw. dem Integrationsbroker unter Angabe der jeweiligen Toolklasse TK des Entwicklungstools an. Der Integrationsbroker bzw. das erfindungsgemäße Integrationsprogramm stellt anschließend Verknüpfungsoptionen zwischen den Modellierungselementen ME der angemeldeten Entwicklungstools T gleicher oder verschiedener Toolklassen TK be- reit. Dies geschieht vorzugsweise für eine graphische Nutzerschnittstelle bei denen verschiedene Modellierungselemente ME der angemeldeten Entwicklungstools T auf einem Bildschirm für den Nutzer ersichtlich angezeigt werden und Verknüpfungsopti- onen einschließlich verschiedener Verknüpfungstypen durch den Nutzer auswählbar sind, um eine Verknüpfung zwischen den Modellierungselementen ME der verschiedenen Entwicklungstools T automatisch herzustellen bzw. zu aktivieren. Dabei können die dargestellten Modellierungselemente ME vorzugsweise mit Zugriffsrechten ZR für den jeweiligen Nutzer versehen sein. Die durch den Entwicklungs- und Integrationsbroker auf dem Bildschirm dargestellte Modellierungselemente ME umfassen typischerweise Klassen, Instanzen, Operationen, Attribute, Assoziationen, Knoten und Kanten. Auch andere Modellierungsele- mente ME weiterer Entwicklungstools können durch das erfindungsgemäße Integrationsprogramm zur Herstellung von Verknüpfungen grafisch dargestellt werden. Es werden Modellierungselemente ME von mindestens zwei verschiedenen Entwicklungstools T von dem erfindungsgemäßen Integrationsbroker ver- knüpft.The inventive method for integrating development tools T can be implemented by an application program. In this case, the various development tools T register with the integration program or the integration broker, indicating the respective tool class TK of the development tool. The integration broker or the integration program according to the invention then provides linking options between the modeling elements ME of the registered development tools T of identical or different tool classes TK. riding. This is preferably done for a graphical user interface in which various modeling elements ME of the registered development tools T are displayed on a screen for the user visible and linking options including different types of links are selectable by the user to a link between the modeling elements ME the different development tools T automatically to produce or activate. In this case, the illustrated modeling elements ME can preferably be provided with access rights ZR for the respective user. The modeling elements ME represented by the development and integration broker typically include classes, instances, operations, attributes, associations, nodes, and edges. Other modeling elements ME of further development tools can also be represented graphically by the integration program according to the invention for producing links. Modeling elements ME of at least two different development tools T are linked by the integration broker according to the invention.

Bei einer möglichen Ausführungsform erlaubt es der erfindungsgemäße Integrationsbroker bzw. das erfindungsgemäße Verfahren zur Integration von Entwicklungstools auch Verknüpfun- gen zwischen den Modellierungselementen ME innerhalb des gleichen Entwicklungstools T herzustellen. Auch die Verknüpfung von Modellierungselementen ME von mehr als zwei Entwicklungstools mit gleichen oder unterschiedlichen Toolklassen TK ist bei einer möglichen Ausführungsform des erfindungsgemäßen Integrationsbrokers möglich.In one possible embodiment, the integration broker according to the invention or the method according to the invention for integrating development tools also makes it possible to establish links between the modeling elements ME within the same development tool T. The linking of modeling elements ME of more than two development tools with the same or different tool classes TK is possible in a possible embodiment of the integration broker according to the invention.

Das Anwendungsprogramm zur Integration von Entwicklungstools gemäß der Erfindung kann bei einer möglichen Ausführungsform von den Computern 4 verschiedener Entwickler über das Netz- werk 3 von dem Server 2 geladen werden. Bei einer alternativen Ausführungsform wird ein Anwendungsprogramm zur Durchführung des Verfahrens zur Integration von Entwicklungstools von einem Datenträger geladen und in dem Rechner eines Entwick- lers bzw. Nutzers ausgeführt. Bei einer möglichen Ausführungsform werden bei einem erstmaligen Start bzw. einer erstmaligen Ausführungsform des Anwendungsprogramms zur Durchführung des Verfahrens zur Integration von Entwicklungstools über das Netzwerk 3 dem Server 2 alle auf dem jeweiligen Computer 4 verfügbaren Entwicklungstools T einschließlich der darin enthaltenen Modellierungselemente ME gemeldet. Bei einer alternativen Ausführungsform erfolgt die Anmeldung der verschiedenen auf einem Computer 4 vorhandenen Entwicklungs- tools T jeweils bei der erstmaligen Ausführungsform des jeweiligen Entwicklungstools T.The application program for integrating development tools according to the invention may in one possible embodiment be loaded from the computers 2 by the computers 4 of different developers via the network 3. In an alternative embodiment, an application program for carrying out the method for integrating development tools is loaded from a data carrier and stored in the computer of a developer. lers or user executed. In one possible embodiment, in a first-time start or a first-time execution of the application program for implementing the method of integrating development tools via the network 3, all the development tools T available on the respective computer 4, including the modeling elements ME contained therein, are reported to the server 2. In an alternative embodiment, the registration of the various development tools T present on a computer 4 takes place in each case in the first embodiment of the respective development tool T.

Das erfindungsgemäße Verfahren und das erfindungsgemäße System sind nicht auf die in den Figuren dargestellten Ausfüh- rungsvarianten beschränkt. Beispielsweise kann die Herstellung einer Verknüpfung zwischen Modellierungselementen ME auch über einen Touchscreen erfolgen, indem ein Nutzer auf dem Bildschirm die zu verknüpfenden Modellierungselemente ME berührt. In einer weiteren Variante kann die Aktivierung bzw. die Herstellung einer Verknüpfung zwischen Modellierungselementen verschiedener Entwicklungstools akustisch über eine Spracheingabe und eine entsprechende Spracherkennung erfolgen. Bei einer möglichen Ausführungsform erfolgt dabei zusätzlich eine Sprechererkennung zur Authentifizierung des je- weiligen Nutzers, um zu prüfen ob der jeweilige Nutzer über die notwendigen Zugriffsrechte verfügt, um das ausgewählte Modellierungselement ME mit weiteren Modellierungselementen zu verknüpfen. Das erfindungsgemäße Anwendungsprogramm zur Durchführung eines Verfahrens zur Integration von Entwick- lungstools kann auf mobilen oder nicht-mobilen Endgeräten 4 ausgeführt werden. Bei den in Fig. 1 dargestellten Netzwerk 3 kann es sich auch um ein Zugangsnetzwerk handeln, das über eine drahtlose Schnittstelle mit mobilen Endgeräten 4 verschiedener Nutzer kommuniziert.The method according to the invention and the system according to the invention are not limited to the embodiments shown in the figures. For example, the production of a link between modeling elements ME can also take place via a touchscreen in that a user touches the modeling elements ME to be linked on the screen. In a further variant, the activation or the production of a link between modeling elements of different development tools can be carried out acoustically via a voice input and a corresponding speech recognition. In one possible embodiment, a speaker recognition for authentication of the respective user additionally takes place in order to check whether the respective user has the necessary access rights in order to link the selected modeling element ME with further modeling elements. The application program according to the invention for carrying out a method for integrating development tools can be executed on mobile or non-mobile terminals 4. The network 3 shown in FIG. 1 may also be an access network that communicates with mobile terminals 4 of different users via a wireless interface.

Bei einer weiteren alternativen Ausführungsform fragt der Server 2 alle bei den verschiedenen Endgeräten 4 vorhanden Entwicklungstools T ab und stellt das Anwendungsprogramm zur Integration von Entwicklungstools den Endgeräten 4 über das Netzwerk 3 zur Verfügung. In a further alternative embodiment, the server 2 queries all development tools T present at the various terminals 4 and sets the application program Integration of development tools to the terminals 4 via the network 3 available.

Claims

Patentansprüche claims 1. Verfahren zur Integration von Entwicklungstools (T) mit den Schritten: a) Anmelden (Sl) von Entwicklungstools bei einem Server (2) unter Angabe der jeweiligen Toolklasse (TK) des Entwicklungstools (T) ; und b) Bereitstellen (S2) von Verknüpfungsoptionen zwischen Modellierungselementen (ME) der angemeldeten Entwicklungstools (T) gleicher oder verschiedener Toolklassen (TK) durch den Server (2) .A method of integrating development tools (T) comprising the steps of: a) logging in (S) development tools to a server (2) indicating the respective tool class (TK) of the development tool (T); and b) providing (S2) linking options between modeling elements (ME) of the registered development tools (T) of the same or different tool classes (TK) by the server (2). 2. Verfahren nach Anspruch 1, wobei eine Verknüpfungsoption zur Herstellung einer Verknüpfung zwischen Modellierungsele- menten (ME) aktiviert wird.2. The method of claim 1, wherein a linkage option for establishing a link between modeling elements (ME) is activated. 3. Verfahren nach Anspruch 1 oder 2, wobei ein Verbindungstyp der Verknüpfung ausgewählt wird.3. The method of claim 1 or 2, wherein a connection type of the link is selected. 4. Verfahren nach Anspruch 3, wobei die Verknüpfung unidirek- tional oder bidirektional ist.4. The method of claim 3, wherein the linkage is unidirectional or bidirectional. 5. Verfahren nach Anspruch 1, wobei die Entwicklungstools (T) beim erstmaligen Ausführen auf einem Computer (4) bei dem Server (2) automatisch angemeldet werden.5. The method of claim 1, wherein the development tools (T) when first run on a computer (4) at the server (2) are automatically logged. 6. Verfahren nach Anspruch 1, wobei Modellierungselemente (ME) mit Zugriffsrechten (ZR) versehen werden.6. The method of claim 1, wherein modeling elements (ME) are provided with access rights (ZR). 7. Verfahren nach einem der vorhergehenden Ansprüche 1 bis 6, wobei die angemeldeten Entwicklungstools (T) und die hergestellten Verknüpfungen zwischen Modellierungselementen (ME) dieser Entwicklungstools (T) gespeichert werden.7. The method according to any one of the preceding claims 1 to 6, wherein the registered development tools (T) and the links produced between modeling elements (ME) of these development tools (T) are stored. 8. Verfahren nach Anspruch 1, wobei die Modellierungselemente (ME) Klassen, Instanzen, Operationen, Attribute, Assoziationen, Knoten und Kanten aufweisen. The method of claim 1, wherein the modeling elements (ME) include classes, instances, operations, attributes, associations, nodes, and edges. 9. System (1) zur Integration von Entwicklungstools (T) mit einem Server (2), der über ein Netzwerk (3) mit Computern (4; verbunden ist, auf denen Entwicklungstools (T) ausführbar sind, wobei die Entwicklungstools (T) sich bei ihrer Ausfüh- rung bei dem Server (2) unter Angabe ihrer jeweiligen Toolklasse (TK) automatisch anmelden und der Server (2) Verknüpfungsoptionen zwischen Modellierungselementen (ME) der angemeldeten Entwicklungstools (T) gleicher oder verschiedener Toolklassen (TK) bereitstellt.9. System (1) for integrating development tools (T) with a server (2) connected via a network (3) to computers (4; on which development tools (T) are executable, the development tools (T) log in automatically when executed at the server (2) stating their respective tool class (TK) and the server (2) provides linking options between modeling elements (ME) of the registered development tools (T) of the same or different tool classes (TK). 10. System nach Anspruch 9, wobei eine bereitgestellte Verknüpfungsoption zur Herstellung einer Verknüpfung zwischen Modellierungselementen (ME) von Entwicklungstools (T) aktivierbar ist.10. System according to claim 9, wherein a provided link option for establishing a link between modeling elements (ME) of development tools (T) can be activated. 11. Computerprogramm mit Programmbefehlen zur Durchführung des Verfahrens zur Integration von Entwicklungstools nach Anspruch 1 - 10.11. Computer program with program instructions for carrying out the method for integrating development tools according to claim 1 - 10. 12. Datenträger der das Computerprogramm nach Anspruch 11 speichert . 12. Volume of the computer program according to claim 11 stores.
PCT/EP2009/058912 2008-08-20 2009-07-13 Method and system for integrating development tools Ceased WO2010020479A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102008038449.6 2008-08-20
DE102008038449 2008-08-20

Publications (1)

Publication Number Publication Date
WO2010020479A1 true WO2010020479A1 (en) 2010-02-25

Family

ID=41166551

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2009/058912 Ceased WO2010020479A1 (en) 2008-08-20 2009-07-13 Method and system for integrating development tools

Country Status (1)

Country Link
WO (1) WO2010020479A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080098349A1 (en) * 2001-10-25 2008-04-24 The Mathworks, Inc. Traceability in a modeling environment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080098349A1 (en) * 2001-10-25 2008-04-24 The Mathworks, Inc. Traceability in a modeling environment

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ANDRÉ SOUSA ET AL: "A Model-Driven Traceability Framework to Software Product Line Development", ECMDA TRACEABILITY WORKSHOP (ECMDA-TW) 2008 PROCEEDINGS, JUNE 12TH 2008, BERLIN, GERMANY,, 12 June 2008 (2008-06-12), pages 97 - 109, XP007910258, ISBN: 9788214043969, Retrieved from the Internet <URL:http://modelbased.net/ecmda-traceability/images/papers/2008/ecmda-tw- proceedings08.pdf> [retrieved on 20091021] *
LIONEL BURGAUD ET AL: "Shift towards a Cohesive Design Based Management of Automotive Embedded Systems Requirements", ERTS 2006 25-27 JANUARY 2006 TOULOUSE,, 25 January 2006 (2006-01-25), pages 1 - 6, XP007910239 *
SPARX SYSTEMS: "MDG Link for DOORS User Guide", INTERNET CITATION, June 2008 (2008-06-01), pages 1 - 43, XP007910227, Retrieved from the Internet <URL:http://www.sparxsystems.com.au/downloads/pdf/DOORS.pdf> [retrieved on 20091020] *

Similar Documents

Publication Publication Date Title
DE69817158T2 (en) User interface mechanism for manipulating contexts in computer management applications
DE102004036976A1 (en) Method for generating Internet pages, associated computer program and computer system
DE102016100383A1 (en) Method and system for testing a mechatronic system
DE112011103428T5 (en) Automated analysis of composite applications
EP1933237A1 (en) Computer implemented system for analysis, administration, control, management and monitoring of a complex hardware / software architecture
DE102005055133A1 (en) System for machine-aided design of technical devices
WO2009101212A1 (en) Method and system for incorporating service-oriented automation components of a manufacturing facility into a flexible it corporate architecture
DE102012102883A1 (en) Method and system for generating a source code for a computer program for executing and simulating a process
DE69121113T2 (en) METHOD FOR DETERMINING USER INTERFACES AND PROGRAMMING SYSTEM FOR A COMPUTER WITH MULTIPLE USER INTERFACES
DE10333088A1 (en) Method for providing access to the internal signals of a dynamic system model from outside regarding the modeling environment
DE10324594A1 (en) Method for providing improved simulation capabilities of a dynamic system outside of the original modeling environment
EP3364257A1 (en) Method for operating an engineering system for an industrial process automation system and control program
WO2010020479A1 (en) Method and system for integrating development tools
DE102012201255A1 (en) Workflow management system for computer networks
DE102006033863A1 (en) Two layered software application production method, involves interconnecting flexible interface of application interface, which makes necessary communication profiles available between totally enclosed layers
DE10215653A1 (en) Program code automatic generation method in which program code sections are generated using input and output controls or masks so that flexible engineering workflows can be gernated
EP1187009A2 (en) Method for creation of informationmodels
EP0973091B1 (en) Method to generate a controllable and adaptable network of models of behaviour templates
EP1202166A1 (en) System for verification of software application models in strings of software development tools
DE102009042666A1 (en) Hardware abstraction in embedded systems
EP1997007A2 (en) Method and management system for configuring an information system
WO2021047970A1 (en) Software components for a software architecture
EP1533940A1 (en) Transformation Function of a TMN System
DE102004023634B4 (en) Method for checking the completeness and consistency of an information library
WO2002037339A2 (en) System, method and computer programme for configuring objects

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09780503

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09780503

Country of ref document: EP

Kind code of ref document: A1