-
Technisches Gebiet
-
Die vorliegende Erfindung betrifft ein Entwicklungsumgebungssystem, eine Entwicklungsumgebungsvorrichtung, ein Entwicklungsumgebungsbereitstellungsverfahren und ein Programm. Genauer gesagt betrifft die vorliegende Erfindung eine verteilte Entwicklungsvorrichtung mit gemeinsam benutzter (shared type) Umgebung, die eine Software-Entwicklung in der Entwicklungsumgebungsvorrichtung durch Vorgänge von Endgerät(terminal)vorrichtungen ausführt.
-
Technischer Hintergrund
-
In letzter Zeit schritt eine Größenzunahme von Steuer-Software fort, die in Fabriken usw. arbeitet, wie ein Kontaktplanprogramm, und deshalb wurde es wichtig, eine Software-Anlagenverwaltung (software asset management) und eine gemeinsame Entwicklung durch eine Vielzahl von Personen effizient durchzuführen.
-
Früher wurde eine Software durch Installieren einer Entwicklungsumgebung auf einem PC (Personal Computer) von jedem verantwortlichen Entwickler entwickelt, und wurde auf den individuellen PCs verwaltet. Daher besteht zum Beispiel ein Problem darin, dass sich die gleiche Softwareversion zwischen den PCs unterscheidet und dementsprechend eine Konformität zwischen einer Entwicklungsumgebung und einer Software-Version nicht erzielt werden kann.
-
Um solch ein Problem zu lösen wird eine Entwicklungsumgebung vom Netzwerktyp angestrebt, in welcher Software und eine Entwicklungsumgebung durch einen Server in einer konsolidierten Art verwaltet werden, und eine Entwicklung durch Verbinden mit dem Server über ein Netzwerk durchgeführt wird. Patentliteratur 1 offenbart ein Verfahren für Software vom entfernt betriebenen Typ, die eine Software-Entwicklung auf der Server-Seite durch entfernte Vorgänge von einem Client durchführt, der über ein Netzwerk angebunden ist. Gemäß Patentliteratur 1 arbeiten auf der Client-Seite eine Entwicklungsumgebungs-Client-Einheit und eine Eingabe/Ausgabesteuereinheit. Auf der Server-Seite arbeiten eine Eingabe/Ausgabesteuereinheit, ein Komponentenrepositorium, eine Komponentenfabrik, eine Instanzensicherungsverarbeitungseinheit und eine automatische Erzeugungseinheit für Quellcode. Wenn ein Entwickler die Entwicklungsumgebungs-Client-Einheit auf der Client-Seite betreibt, wird ein Prozess von der Eingabe/Ausgabesteuereinheit auf der Client-Seite an die Eingabe/Ausgabesteuereinheit auf der Server-Seite über das Internet hinweg übermittelt. Die Server-Seite empfängt den von der Client-Seite übermittelten Prozess und führt ein Kombinieren von Komponenten durch, eine automatische Erzeugung von Quellcode, eine Erzeugung einer Instanz (Programmausführungsumgebung) usw., wobei eine Entwicklung über das Internet ermöglicht wird.
-
Zitatliste
-
Patentliteratur
-
- Patentliteratur 1: JP 2002-278759A
-
Zusammenfassung der Erfindung
-
Technisches Problem
-
Bei der herkömmlichen Technik gibt es keinen Mechanismus zum Steuern der Version einer Entwicklungsumgebung. Deshalb weist die herkömmliche Technik ein Programm auf, dass bei einer Änderung der Version einer Entwicklungsumgebung Entwicklungsumgebungen auf der Server-Seite und der Client-Seite nicht geändert werden können.
-
Zusätzlich besteht bei der herkömmlichen Technik ein Problem darin, dass wenn Information, welche durch den Server gemeinsam verwaltet wird, gleichzeitig durch eine Vielzahl von Nutzern entwickelt wird, die Auflösung von Konflikten und die Maßnahmen gegen eine Zugriffssteuerung unzureichend sind.
-
Die vorliegende Erfindung wurde gemacht, um Probleme wie die vorstehend beschriebenen zu lösen, und eine Aufgabe der vorliegenden Erfindung ist es, ein Entwicklungsumgebungssystem bereitzustellen, das die Version einer Entwicklungsumgebung geeignet gesteuert und einen Konflikt zwischen einer Vielzahl von Nutzern über das gleiche Programm hinweg auflöst.
-
Lösung des Problems
-
Ein Entwicklungsumgebungssystem gemäß der vorliegenden Erfindung umfasst:
eine Endgerätvorrichtung, die eine endgerätseitige Übertragungseinheit einschließt, die eine Allokationsanfrage zum Allokieren eines Arbeitsbereichs übermittelt, der zum Entwickeln eines Programms verwendet wird, und eine Nutzungsanfrage, die eine Nutzung einer Entwicklungsumgebung erfragt, die zum Entwickeln des Programms verwendet wird, wobei die Allokationsanfrage Nutzerinformation einschließt, die einen Nutzer identifiziert, und die Nutzungsanfrage einen Entwicklungsumgebungsidentifikator einschließt, der die Entwicklungsumgebung identifiziert, und die Nutzerinformation, die den Nutzer identifiziert; und
eine Entwicklungsumgebungsvorrichtung, einschließend:
eine Allokationseinheit, welche die Allokationsanfrage von der endgerätseitigen Übermittlungseinheit empfängt und durch eine Verarbeitungsvorrichtung einen Nutzerarbeitsbereich allokiert, der mit der Nutzerinformation verknüpft ist, die in der empfangenen Allokationsanfrage enthalten ist;
eine Entwicklungsumgebungsspeichereinheit, die in einer Speichervorrichtung die Entwicklungsumgebung und den Entwicklungsumgebungsidentifikator speichert, der die gegenseitig verknüpfte Entwicklungsumgebung identifiziert; und
eine Entwicklungsumgebungsverwaltungseinheit, welche die Nutzungsanfrage von der endgerätseitigen Übermittlungseinheit empfängt, durch eine Verarbeitungsvorrichtung aus der Entwicklungsumgebungsspeichereinheit die Entwicklungsumgebung extrahiert, die mit dem Entwicklungsumgebungsidentifikator verknüpft ist, welcher in der empfangenden Nutzungsanfrage enthalten ist, und durch eine Verarbeitungsvorrichtung die extrahierte Entwicklungsumgebung und den Nutzerarbeitsbereich verfügbar macht, wobei der Nutzerarbeitsbereich mit der Nutzerinformation verknüpft ist, die in der Nutzungsanfrage enthalten ist.
-
Vorteilhafte Effekte der Erfindung
-
Gemäß einem Aspekt der vorliegenden Erfindung allokiert die Allokationseinheit einen Nutzerarbeitsbereich, der mit Nutzerinformation verknüpft ist, mit der Entwicklungsumgebungsvorrichtung, und die Entwicklungsumgebungsverwaltungseinheit extrahiert aus der Entwicklungsumgebungsspeichereinheit eine Entwicklungsumgebung, die mit einem Entwicklungsumgebungsidentifikator verknüpft ist, der in einer Nutzungsanfrage enthalten ist, und macht den allokierten Nutzerarbeitsbereich und die extrahierte Entwicklungsumgebung verfügbar. Deshalb kann, selbst wenn die Version einer Entwicklungsumgebung geändert wird, die Änderung geeignet gehandhabt werden, und ein Konflikt zwischen einer Vielzahl von Nutzern kann aufgelöst werden.
-
Kurze Beschreibung der Zeichnungen
-
1 ist ein Blockkonfigurationsdiagramm eines Entwicklungsumgebungssystems 500 gemäß einer ersten Ausführungsform.
-
2 ist ein Diagramm, das eine Konfiguration einer Nutzerinformationstabelle 113 gemäß der ersten Ausführungsform zeigt.
-
3 ist ein Diagramm, das eine Konfiguration einer Konfigurationsinformationstabelle 114 gemäß der ersten Ausführungsform zeigt.
-
4 ist ein Diagramm, das ein Beispiel einer Hardware-Konfiguration von einem Entwicklungsumgebungs-Server 100 und einem Client-Endgerät 200 gemäß der ersten Ausführungsform zeigt.
-
5 ist ein Flussdiagramm, das den Betrieb einer Entwicklungsumgebung zeigt, die einen Prozess und einen Programmentwicklungsprozess bereitstellt, der von dem Entwicklungsumgebungssystem 500 gemäß der ersten Ausführungsform durchgeführt wird.
-
6 ist ein Diagramm, das eine Blockkonfiguration eines Entwicklungsumgebungssystems 500a gemäß der zweiten Ausführungsform zeigt.
-
7 ist ein Diagramm, das eine Konfiguration einer Zugriffsrechtstabelle 130 gemäß der zweiten Ausführungsform zeigt.
-
8 ist ein Diagramm, das eine Blockkonfiguration von einer Zugriffsrechtstabelle 500b gemäß einer dritten Ausführungsform zeigt.
-
9 ist ein Diagramm, das eine Konfiguration von einer Code-für-Code-Zugriffsrechtstabelle 132 gemäß der dritten Ausführungsform zeigt.
-
10 ist ein Diagramm, das ein Beispiel einer Änderung auf eine Konstante in einer Kontaktplanprogrammentwicklung zeigt, die von einer Code-für-Code-Zugriffsrechtseinheit 203 gemäß der dritten Ausführungsform durchgeführt wird.
-
11 ist ein Diagramm, das ein Beispiel einer Hinzufügung von Kode in einer Kontaktplanprogrammentwicklung zeigt, die von der Code-für-Code-Zugriffssteuereinheit 203 gemäß der dritten Ausführungsform durchgeführt wird.
-
12 ist ein Diagramm, das eine Blockkonfiguration eines Entwicklungsumgebungssystems 500c gemäß einer vierten Ausführungsform zeigt.
-
13 ist ein Diagramm, das eine Konfiguration einer Editierhistorientabelle 133 gemäß der vierten Ausführungsform zeigt.
-
14 ist ein Diagramm, das eine Blockkonfiguration eines Entwicklungsumgebungssystem 500d gemäß einer vierten Ausführungsform zeigt.
-
15 ist ein Diagramm, das eine Konfiguration einer Editiersperrtabelle 134 gemäß der fünften Ausführungsform zeigt.
-
16 ist ein Diagramm, das eine Blogkonfiguration eines Entwicklungsumgebungssystems 500e gemäß der sechsten Ausführungsform zeigt.
-
17 ist ein Diagramm, das eine Konfiguration einer Betriebshistorientabelle 135 gemäß der sechsten Ausführungsform zeigt.
-
18 ist ein Diagramm, das eine Blockkonfiguration eines Entwicklungsumgebungssystems 500f gemäß einer siebten Ausführungsform zeigt.
-
19 ist ein Diagramm, das eine Blockkonfiguration eines Entwicklungsumgebungssystem 500g gemäß einer achten Ausführungsform zeigt.
-
Beschreibung der Ausführungsformen
-
Erste Ausführungsform
-
1 ist ein Blockkonfigurationsdiagramm eines Entwicklungsumgebungssystems 500 gemäß der vorliegenden Ausführungsform. Unter Verwenden von 1 werden eine Blockkonfiguration des Entwicklungsumgebungssystems 500 gemäß der vorliegenden Ausführungsform beschrieben.
-
Das Entwicklungsumgebungssystem 500 umfasst einen Entwicklungsumgebungs-Server 100 (Entwicklungsumgebungsvorrichtung) und Client-Endgeräte 200 (Endgerätvorrichtungen). Der Entwicklungsumgebungs-Server 100 stellt den Client-Endgeräten 200 eine Entwicklungsumgebung zum Ausführen eines Programmentwicklungsprozesses durch einen Nutzer zur Verfügung.
-
Die Entwicklungsumgebung besteht aus einer Entwicklungsumgebungsdiensteinheit 125, die als ein Entwicklungsumgebungsdienst ausgeführt wird, welcher bei Programmentwicklung zur Verfügung gestellt wird; und eine Entwicklungsumgebungs-Client-Einheit 202, die als einen Nutzerschnittstelle beim Zugreifen auf die Entwicklungsumgebungsdiensteinheit 125 ausgeführt wird.
-
Obwohl das Entwicklungsumgebungssystem 500 in 1 Client-Endgeräte 200 einschließt, die von Nutzern verwendet werden, kann das Entwicklungsumgebungssystem eines oder drei oder mehrere Client-Endgeräte 200 einschließen.
-
Der Entwicklungsumgebungs-Server 100 und die Client-Endgeräte 200 sind miteinander in über ein Netzwerk 400 verbunden. Steuervorrichtungen 300 sind entsprechend mit den Client-Endgeräten 200 verbunden. Die Steuervorrichtungen 300 sind ein Beispiel eines endgerätseitigen Speichergeräts, auf welches ein Programm, dass unter Verwenden einer Entwicklungsumgebung entwickelt wird, durch einen Nutzervorgang geschrieben wird.
-
Es wird eine Konfiguration der Client-Endgeräte 200 Seite beschrieben.
-
Jedes Client-Endgerät 200 schließt eine Client-Umgebungsverwaltungseinheit 201 und eine Entwicklungsumgebungs-Client-Einheit 202 ein.
-
Die Client-Umgebungsverwaltungseinheit 201 akzeptiert von einem Nutzer eine Nutzungsanfrage, welche die Verwendung einer Entwicklungsumgebung erfragt. Basierend auf der akzeptierten Nutzungsanfrage schließt die Client-Umgebungsverwaltungseinheit 201 in eine Nutzungsanfrage eine Entwicklungsumgebungs-ID (Entwicklungsumgebungsidentifikator) ein, der die Entwicklungsumgebung identifiziert, von welcher die Verwendung durch den Nutzer angefragt wird; und Nutzerinformation, die den Nutzer identifiziert. Die Client-Umgebungsverwaltungseinheit 201 übermittelt die Nutzungsanfrage, die in der Entwicklungsumgebungs-ID enthalten ist, und die Nutzerinformation an den Entwicklungsumgebungs-Server 100. Die Client-Umgebungsverwaltungseinheit 221 ist ein Beispiel einer endgeräteseitigen Übermittlungseinheit.
-
Zudem ruft die Client-Umgebungsverwaltungseinheit 201 verschiedene Funktionstypen auf der Entwicklungsumgebungs-Server 100 Seite durch Nutzervorgänge unter der Verwendung der Entwicklungsumgebung auf.
-
Die Entwicklungsumgebungs-Client-Einheit 202 hat eine Funktion entsprechend einer Nutzerschnittstelle der Entwicklungsumgebung.
-
Die Entwicklungsumgebungs-Client-Einheit 202 ist eine Nutzerschnittstelle zum Durchführen eines Programmentwicklungsprozesses von dem Nutzer unter Verwenden der Entwicklungsumgebung und eines Arbeitsbereichs 126 (Nutzerarbeitsbereich), welche von dem Entwicklungsumgebungs-Server 100 verfügbar gemacht werden.
-
Die Entwicklungsumgebungs-Client-Einheit 202 empfängt von dem Entwicklungsumgebungs-Server 101 ein Schnittstellenprogramm, welches eine Nutzerschnittstelle eines Entwicklungsprogramms ist, das ein Programm entwickelt. Die Entwicklungsumgebungs-Client-Einheit 202 installiert das empfangene Schnittstellenprogramm auf dem Client-Endgerät 200. Die Entwicklungsumgebungs-Client-Einheit 202 führt durch eine Verarbeitungsvorrichtung das installierte Schnittstellenprogramm aus und implementiert dabei die Funktion der Entwicklungsumgebungs-Client-Einheit 202. Das Schnittstellenprogramm kann nachstehend als die Entwicklungsumgebungs-Client-Einheit 202 bezeichnet werden. Die Entwicklungsumgebungs-Client-Einheit 202 ist ein Beispiel einer endgeräteseitigen Entwicklungseinheit, die von dem Nutzer eine Programmentwicklungsanfrage unter Verwenden der Entwicklungsumgebung und des Arbeitsbereichs 126 (Nutzerarbeitsbereich) akzeptiert, welche verfügbar gemacht werden, und übermittelt die akzeptierte Entwicklungsanfrage an den Entwicklungsumgebungs-Server 100.
-
Wenn der Nutzer über die Client-Entwicklungsverwaltungseinheit 201 eine Entwicklungsumgebung auswählt, wird eine Entwicklungsumgebungs-Client-Einheit 202 (Schnittstellenprogramm), die mit der ausgewählten Entwicklungsumgebung verknüpft ist, von der Entwicklungsumgebungs-Server 100 Seite heruntergeladen und auf der Client-Endgerät 200 Seite installiert. Das heißt, die Entwicklungsumgebungs-Client-Einheit 202 wird dem Client-Endgerät 200 bereitgestellt, wenn von dem Entwicklungsumgebungs-Server 101 ein Entwicklungsumgebungsbereitstellungsprozess durchgeführt wird.
-
Die Entwicklungsumgebungs-Client-Einheit 202 ruft gemäß einer Entwicklungsanfrage von dem Nutzer eine Funktion auf der Entwicklungsumgebungs-Server 100 Seite auf. Die Entwicklungsumgebungs-Client-Einheit 202 kann eine Funktion auf der Entwicklungsumgebungs-Server 100 Seite durch die Client-Umgebungsverwaltungseinheit 201 aufrufen, oder kann eine Funktion auf der Entwicklungsumgebungs-Server 100 Seite ohne durch die Client-Umgebungsverwaltungseinheit 201 aufrufen. In dem Fall eines geschlossenen Entwicklungsumgebungsprozesses ruft die Umgebungsentwicklungs-Client-Einheit direkt die Entwicklungsumgebungsdiensteinheit 125 direkt auf, welche auf der Entwicklungsumgebungs-Server 100 Seite ausgeführt wird.
-
Es wird eine Konfiguration der Entwicklungsumgebungs-Server 100 Seite gegeben.
-
Der Entwicklungsumgebungs-Server 100 schließt eine Web-Server-Einheit 118 ein, eine Statussteuereinheit 117, eine Authentifizierungs- und Berechtigungseinheit 112, eine Nutzerverwaltungseinheit 111, eine Nutzerinformationstabelle 113, eines Server-Umgebungsverwaltungseinheit 116, eine Konfigurationsinformationsverwaltungseinheit 115, eine Konfigurationsinformationstabelle 114, eine Arbeitsbereichsverwaltungseinheit 119, eine Programmverwaltungseinheit 120, ein Programmrepositorium 121, eine Entwicklungsumgebungsverwaltungseinheit 122, ein Entwicklungsumgebungsrepositorium 123 und eine Entwicklungsumgebungsdienststeuereinheit 124.
-
2 ist ein Diagramm, das eine Konfiguration der Nutzerinformationstabelle 113 gemäß der vorliegenden Ausführungsform zeigt.
-
Wie in 2 gezeigt speichert die Nutzerinformationstabelle 113 eine Nutzer-ID, einen Namen und ein Passwort in Verknüpfung miteinander.
-
3 ist ein Diagramm, das eine Konfiguration der Konfigurationsinformationstabelle 114 gemäß der vorliegenden Ausführungsform zeigt.
-
Wie in 3 gezeigt schließt die Konfigurationsinformationstabelle 114 eine Konfigurationsverwaltungstabelle 1141, eine Programminformationstabelle 1142, eine Entwicklungsumgebungsinformationstabelle 1143 und eine Steuervorrichtungsinformationstabelle 1144 ein.
-
Die Programminformationstabelle 1142 speichert eine Programm-ID, einen Programmnamen und eine Programmversion in Verknüpfung miteinander.
-
Die Programmverwaltungseinheit 120 erhält ein Programm von dem Programmrepositorium 121 basierend auf einem Programmnamen und einer Version.
-
Die Entwicklungsumgebungsinformationstabelle 1143 speichert eine Entwicklungsumgebungs-ID, einen Entwicklungsumgebungsdienstnamen und eine Version in Verknüpfung miteinander. Die Entwicklungsumgebungsverwaltungseinheit 122 erhält eine Entwicklungsumgebung von dem Entwicklungsumgebungsrepositorium 123 basierend auf einem Entwicklungsumgebungsnamen und einer Version.
-
Die Steuervorrichtungsinformationstabelle 1144 speichert eine Steuervorrichtungs-ID, einen Steuervorrichtungsnamen und eine Serien-ID, die eine Steuervorrichtung in Verknüpfung miteinander identifizieren.
-
Die Konfigurationsverwaltungstabelle 1141 speichert eine Nutzer-ID, eine Programm-ID, eine Entwicklungsumgebungs-ID und eine Steuervorrichtungs-ID in Verknüpfung miteinander.
-
Die Konfigurationsinformationsverwaltungseinheit 115 verwaltet den Leseprozess von der Konfigurationsinformationstabelle 114 und den Schreibprozess an die Konfigurationsinformationstabelle 114.
-
Die Web-Server-Einheit 118 führt einen Prozess basierend auf einer Verarbeitungsanfrage von der Client-Umgebungsverwaltungseinheit 201 des Client-Endgeräts 200 durch, und übermittelt ein Verarbeitungsergebnis an die Client-Umgebungsverwaltungseinheit 201. Die Verarbeitungsanfrage von der Client-Umgebungsverwaltungseinheit 201 ist zum Beispiel eine Anfrage nach einem Anmeldungs(login)prozess (Authentifizierungsanfrage und Allokationsanfrage), eine Anfrage nach einer Entwicklungsumgebung, die den Prozess (Nutzungsanfrage) bereitstellt, oder eine Anfrage nach einem Programmentwicklungsprozess (Entwicklungsanfrage) usw.
-
Die Statussteuereinheit 117 verknüpft einen HTTP-Zugang, der keinen Status mit einem Status der Entwicklungsumgebungs-Server 100 Seite aufweist. Insbesondere gibt die Statussteuereinheit 117 ein Kurzzeichen (Token) aus, der eine Nutzeranmeldung zu dem Zeitpunkt identifiziert, wenn ein Nutzer authentifiziert wird, und den Nutzer mit dem Token verknüpft. Der Token ist ein Beispiel von Nutzerinformation, die einen Nutzer identifiziert. Das Client-Endgerät 200 und der Entwicklungsumgebungs-Server 100 identifizieren einen Nutzer durch Übermitteln und Empfangen des ausgegebenen Tokens. Als solches verbindet (links) die Statussteuereinheit 117 einen HTTP-Zugriff, der keinen Status aufweist, mit einem Status der Entwicklungsumgebungs-Server 100 Seite.
-
Die Statussteuereinheit 117 kann auch einen HTTP-Zugriff, der keinen Status aufweist, mit einem Status der Entwicklungsumgebungs-Server 100 Seite unter Verwenden einer Nutzer-ID anstelle eines Tokens verknüpfen. Zu diesem Zeitpunkt ist die Nutzer-ID ein Beispiel von Nutzerinformation. In dem Fall des Verwendens einer Nutzer-ID besteht jedoch ein Manipulationsrisiko. Deshalb ist es bevorzugt, dass die Statussteuereinheit 117 einen Status durch Ausgeben unterschiedlicher Token für jede Anmeldung verwaltet.
-
Die Authentifizierungs- und Berechtigungseinheit 112 empfängt eine Nutzer-ID und ein Passwort und bezieht sich auf die Nutzerinformationstabelle 113. Die Nutzer-ID und das Passwort stellen ein Beispiel einer Authentifizierungsanfrage dar, die eine Nutzerauthentifizierung erfragt. Die Authentifizierungs- und Berechtigungseinheit 112 prüft das Passwort basierend auf der Nutzerinformationstabelle 113, um einen Nutzer zu authentifizieren. Die Authentifizierungs- und Berechtigungseinheit 112 ist ein Beispiel einer Nutzerauthentifizierungseinheit, die eine Nutzerauthentifizierung durchführt.
-
Wenn ein Nutzer durch die Authentifizierungs- und Berechtigungseinheit 112 authentifiziert ist und sich anmeldet, fragt die Nutzerverwaltungseinheit 111 die Server-Umgebungsverwaltungseinheit 116 an, einen Arbeitsbereich 126 für den Nutzer zu erzeugen. Der Arbeitsbereich 126 ist ein Verzeichnis auf einem Dateisystem auf der Entwicklungsumgebungs-Server 100 Seite. Zusätzlich akzeptiert die Nutzerverwaltungseinheit 111 eine Abfrage über Nutzerinformation und einen Nutzerregistrierungsvorgang von der Client-Umgebungsverwaltungseinheit 201 und der Server-Umgebungsverwaltungseinheit 116.
-
Die Server-Umgebungsverwaltungseinheit 116 gibt eine Nutzer-ID des angemeldeten Nutzers an die Arbeitsbereichsverwaltungseinheit 119 aus.
-
Wenn eine Nutzerauthentifizierung abgeschlossen ist, allokiert die Arbeitsbereichsverwaltungseinheit 119 den Arbeitsbereich 126, der mit dem Nutzer verknüpft ist, an einer Speichervorrichtung. Das heißt, eine Nutzerauthentifizierungsanfrage ist ein Beispiel einer Arbeitsbereichsallokationsanfrage.
-
Die Arbeitsbereichsverwaltungseinheit 119 verwaltet den allokierten Arbeitsbereich 126 und die Nutzerinformation, die in Verknüpfung miteinander den Nutzer angibt. Die Arbeitsbereichsverwaltungseinheit 119 erzeugt basierend auf der Nutzer-ID, die von der Server-Umgebungsverwaltungseinheit 116 eingegeben wird, einen Arbeitsbereich 126 (Nutzerarbeitsbereich) mit einem Namen, der eindeutig mit der Nutzer-ID verknüpft ist.
-
Das Entwicklungsumgebungsrepositorium 123 speichert eine Entwicklungsumgebung, die mit einer Entwicklungsumgebungs-ID (Entwicklungsumgebungsidentifikator) verknüpft ist. Das Entwicklungsumgebungsrepositorium 123 ist ein Beispiel einer Entwicklungsumgebungsspeichereinheit, die in einer Speichervorrichtung eine Entwicklungsumgebung und eine Entwicklungsumgebungs-ID speichert, welche in Verknüpfung miteinander die Entwicklungsumgebung eindeutig identifizieren.
-
Das Entwicklungsumgebungsrepositorium 123 speichert als eine Entwicklungsumgebung einen Entwicklungsumgebungsdienst (Entwicklungsprogramm), der ein Programm entwickelt, und ein Nutzerschnittstellenprogramm, welches eine Nutzerschnittstelle des Entwicklungsumgebungsdienstes ist.
-
Die Entwicklungsumgebungsverwaltungseinheit 122 erhält von dem Entwicklungsumgebungsrepositorium 123 eine Entwicklungsumgebung, die mit einer Entwicklungsumgebung-ID verknüpft ist, welche von dem Nutzer ausgewählt ist.
-
Die Entwicklungsumgebungsverwaltungseinheit 122 empfängt eine Entwicklungsumgebungsnutzungsanfrage von der Client-Umgebungsverwaltungseinheit 201 durch die Web-Server-Einheit 118, die Statussteuereinheit 117 und die Server-Umgebungsverwaltungseinheit 116, und extrahiert aus dem Entwicklungsumgebungsrepositorium 123 eine Entwicklungsumgebung, die mit einer Entwicklungsumgebungs-ID verknüpft ist, welche in der empfangenen Nutzungsanfrage enthalten ist. Die Entwicklungsumgebungsverwaltungseinheit 122 macht die extrahierte Entwicklungsumgebung für das Client-Endgerät 200 verfügbar.
-
Die Entwicklungsumgebungsverwaltungseinheit 122 installiert eine Entwicklungsumgebungsdiensteinheit 125 auf dem Entwicklungsumgebungs-Server 100 und installiert eine Entwicklungsumgebungs-Client-Einheit 202 auf dem Client-Endgerät 200, und ermöglicht es dadurch, ein Programm in dem Nutzerarbeitsbereich 126 unter Verwenden der Entwicklungsumgebung zu entwickeln. Die Entwicklungsumgebungsdiensteinheit 125 installiert und führt das Entwicklungsprogramm durch eine Verarbeitungsvorrichtung aus, und implementiert dadurch eine Entwicklungsumgebungsdienstfunktion. Die Entwicklungsumgebungsdiensteinheit 125 kann nachstehend als ein Entwicklungsprogramm bezeichnet werden. Die Entwicklungsumgebungsdiensteinheit 125 arbeitet auf der Entwicklungsumgebungs-Server 100 Seite. Die Entwicklungsumgebungs-Client-Einheit 202 funktioniert auf der Client-Endgerät 200 Seite als eine Nutzerschnittstelle der Entwicklungsumgebungsdiensteinheit 125.
-
Wenn die Entwicklungsumgebungs-Client-Einheit 202 zum Beispiel gestartet wird, wird ein Entwicklungsumgebungsbetriebsbildschirm an einer Anzeigevorrichtung des Client-Endgeräts 200 angezeigt. Der Nutzer entwickelt ein Programm über den Entwicklungsumgebungsbetriebsbildschirm. Der Nutzer ruft eine notwendige Entwicklungsumgebungsdiensteinheit 125 über den Entwicklungsumgebungsbetriebsbildschirm auf, um ein Programm zu entwickeln.
-
Die Entwicklungsumgebungs-Client-Einheit 202 kann die Entwicklungsumgebungsdiensteinheit 125 über die Client-Umgebungsverwaltungseinheit 201 aufrufen.
-
Die Entwicklungsumgebungsdienststeuereinheit 124 steuert die Entwicklungsumgebungsdiensteinheit 125, welche auf der Entwicklungsumgebungs-Server 100 Seite arbeitet. Zum Beispiel steuert die Entwicklungsumgebungsdienststeuereinheit 124 den Betrieb der Entwicklungsumgebungsdiensteinheit 125, für wann die Entwicklungsumgebungsdiensteinheit 125 über die Client-Umgebungsverwaltungseinheit 201 aufgerufen wird.
-
Das Programmrepositorium 121 speichert ein Programm, das mit einer Programm-ID (Programmidentifikator) verknüpft ist. Das Programmrepositorium 121 ist ein Beispiel einer Programmspeichereinheit, die in einer Speichervorrichtung ein Programm und eine Programm-ID speichert, die das damit verknüpfte Programm eindeutig identifiziert.
-
Die Programmverwaltungseinheit 120 empfängt eine Programmentwicklungsanfrage, die eine Programm-ID einschließt, welche von dem Nutzer ausgewählt ist, von der Client-Umgebungsverwaltungseinheit 201 über die Web-Server-Einheit 118, die Statussteuereinheit 117 und die Server-Umgebungsverwaltungseinheit 116. Die Programmverwaltungseinheit 120 erhält ein Programm von dem Programmrepositorium 121 basierend auf der Programm-ID, die von dem Nutzer gewählt wird. Die Programmverwaltungseinheit 120 expandiert das erhaltende Programm in den Nutzerarbeitsbereich 126, welcher bei der Anmeldung erzeugt wird.
-
4 ist ein Diagramm, das ein Beispiel einer Hardware-Konfiguration des Entwicklungsumgebungs-Servers 100 und des Client-Endgeräts 200 gemäß der vorliegenden Ausführungsform zeigt.
-
Unter Verwenden von 4 wird eine beispielhafte Hardware-Konfiguration des Entwicklungsumgebungsgerät-Servers 100 und des Client-Endgeräts 200 beschrieben.
-
Der Entwicklungsumgebungs-Server 100 und das Client-Endgerät 200 sind Computer. Jede Komponente des Entwicklungsumgebungs-Servers 100 und des Client-Endgeräts 200 kann durch ein Programm implementiert werden.
-
Die Hardwarekonfiguration des Entwicklungsumgebungs-Servers 100 und des Client-Endgeräts 200 ist so, dass eine Rechnervorrichtung 901, eine externe Speichervorrichtung 902, eine Hauptspeichervorrichtung 903, eine Kommunikationsvorrichtung 904 und eine Eingabe/Ausgabevorrichtung 905 mit einem Bus verbunden sind.
-
Die Rechenvorrichtung 901 ist eine CPU (Zentralprozessoreinheit), die ein Programm ausführt.
-
Die externe Speichervorrichtung 902 ist zum Beispiel ein ROM (Nurlesespeicher), ein Flash-Speicher oder eine Festplattenvorrichtung.
-
Die Hauptspeichervorrichtung 903 ist ein RAM (Direktzugriffsspeicher).
-
Die Kommunikationsvorrichtung 904 ist zum Beispiel eine Kommunikationstafel und ist mit einem LAN (Lokalbereichsnetzwerk) usw. verbunden. Zusätzlich zu dem LAN kann die Kommunikationsvorrichtung 904 mit einem WAN (Weitbereichsnetzwerk) wie einem IT-VPN (Internetprotokoll Virtuelles Privates Netzwerk), einem Weitbereichs-LAN oder einem ATM (Asynchronen Übertragungsmodus) Netzwerk oder dem Internet verbunden sein. Das LAN, das WAN und das Internet sind Beispiele eines Netzwerks.
-
Die Eingabe/Ausgabevorrichtung 905 ist zum Beispiel eine Maus, eine Tastatur und eine Anzeigevorrichtung. Anstelle der Maus kann ein Berührungsbildschirm (touch panel), ein Stift-Tablett (pen tablet), ein Rollkugel (trackball) oder andere Anzeigegeräte verwendet werden. Die Anzeigevorrichtung kann ein LCD (Flüssigkeitskristallanzeige), ein CRT (Röhrenmonitor) oder andere Anzeigevorrichtungen sein.
-
Ein Programm wird normalerweise in der externen Speichervorrichtung 902 gespeichert. Mit dem in die Hauptspeichervorrichtung 903 geladenen Programm wird das Programm fortlaufend in die Rechenvorrichtung 901 eingelesen und ausgeführt.
-
Das Programm ist ein Programm, das Funktionen implementiert, welche in 1 als '... Einheiten' beschrieben sind.
-
Weiterhin speichert die externe Speichervorrichtung 902 auch ein Betriebssystem (OS). Wenigstens ein Teil des Betriebssystems wird in die Hauptspeichervorrichtung 903 geladen, und die Rechenvorrichtung 901 führt das Programm aus, das die Funktionen der in 1 gezeigten '... Einheiten' implementiert, während das OS ausgeführt wird.
-
Zusätzlich wird auch ein Anwendungsprogramm in der externen Speichervorrichtung 902 gespeichert. Mit dem in die Hauptspeichervorrichtung 903 geladenen Programm wird das Anwendungsprogramm fortlaufend durch die Rechenvorrichtung 901 ausgeführt.
-
Zudem wird auch Information über die '... Tabellen' usw. in der externen Speichervorrichtung 902 gespeichert.
-
Zudem wird auch Information, welche die Ergebnisse von Prozessen angibt, welche als 'Beurteilung von ...', 'Feststellung von ...', 'Extraktion von ...', 'Erkennung von ...', 'Einstellung von ...', 'Registrierung von ...', 'Auswahl von ...', 'Erzeugung von ...', 'Eingabe von ...', 'Ausgabe von ...' usw. in der Beschreibung der vorliegenden Ausführungsform beschrieben sind, Daten, Signalwerte oder Variablenwerte als Dateien in der Hauptspeichervorrichtung 903 gespeichert.
-
Zudem werden Daten, die von dem Entwicklungsumgebungs-Server 100 und dem Client-Endgerät 200 empfangen werden, in der Hauptspeichervorrichtung 903 gespeichert.
-
Zudem können Verschlüsselungsschlüssel/Entschlüsselungsschlüssel, Zufallszahlenwerte und Parameter als Dateien in der Hauptspeichervorrichtung 903 gespeichert werden.
-
Es ist zu beachten, dass die Konfiguration von 4 lediglich ein Beispiel der Hardware-Konfiguration des Entwicklungsumgebungs-Servers 100 und des Client-Endgeräts 200 zeigt, und deshalb die Hardware-Konfiguration des Entwicklungsumgebungs-Servers 100 und des Client-Endgeräts 200 nicht auf die in 4 beschriebene beschränkt ist und andere Konfigurationen annehmen kann.
-
5 ist ein Flussdiagramm, das den Betrieb eines Entwicklungsumgebungsbereitstellungsprozesses und eines Programmentwicklungsprozesses zeigt, die von dem Entwicklungsumgebungssystem 500 gemäß der vorliegenden Erfindung durchgeführt werden.
-
Unter Verwendung von 5 werden der Betrieb eines Entwicklungsumgebungsbereitstellungsprozesses (Entwicklungsumgebungsbereitstellungsverfahrens) und eines Programmentwicklungsprozesses (Programmentwicklungsverfahrens) beschrieben, die von dem Entwicklungsumgebungs-Server 100 und dem Client-Endgerät 200 durchgeführt werden.
-
Bei S101 akzeptiert die Client-Umgebungsverwaltungseinheit 201 eine Anmeldung von einem Nutzer.
-
Bei S201 akzeptiert die Web-Server-Einheit 108 eine Anmeldungsanfrage von der Client-Umgebungsverwaltungseinheit 201, und gibt eine Nutzer-ID und ein Passwort an die Authentifizierungs- und Berechtigungseinheit 112 weiter. Die Authentifizierungs- und Berechtigungseinheit 112 empfängt die Nutzer-ID und das Passwort und authentifiziert den Nutzer unter Bezugnehmen auf die Nutzerinformationstabelle 113.
-
Bei S202 fragt, wenn die Nutzerauthentifizierung abgeschlossen ist, die Nutzerverwaltungseinheit 111 die Server-Umgebungsverwaltungseinheit 116 an, einen Arbeitsbereich 126 für den Nutzer zu erzeugen. Basierend auf der Nutzer-ID, die von der Server-Umgebungsverwaltungseinheit 116 eingegeben wird, erzeugt die Arbeitsbereichsverwaltungseinheit 119 einen Arbeitsbereich 126 mit einem Namen, der eindeutig mit der Nutzer-ID verknüpft ist.
-
Bei S102 wählt der Nutzer eine Entwicklungsumgebung durch die Client-Umgebungsverwaltungseinheit 201 des Client-Endgeräts 200 aus. Die Client-Umgebungsverwaltungseinheit 201 überträgt eine Nutzungsanfrage, die eine Entwicklungsumgebung-ID der ausgewählten Entwicklungsumgebung enthält, an den Entwicklungsumgebungs-Server 100.
-
Wenn der Nutzer wünscht, den Typ oder die Version der damit verwendeten Entwicklungsumgebung zu ändern, wählt der Nutzer erneut eine Entwicklungsumgebung aus.
-
Bei S203 erhält die Entwicklungsumgebungsverwaltungseinheit 122 die Entwicklungsumgebungs-ID, die in der Nutzungsanfrage enthalten ist, welche von der Client-Umgebungsverwaltungseinheit 201 übertragen wird. Die Entwicklungsumgebungsverwaltungseinheit 122 extrahiert eine Entwicklungsumgebung aus dem Entwicklungsumgebungsrepositorium 123, basierend auf der erhaltenen Entwicklungsumgebungs-ID. Die Entwicklungsumgebung schließt eine Entwicklungsumgebungsdiensteinheit 125 und eine Entwicklungsumgebungs-Client-Einheit 202 ein.
-
Die Entwicklungsumgebungsverwaltungseinheit 122 legt die Entwicklungsumgebungsdiensteinheit 125, die in der extrahierten Entwicklungsumgebung enthalten ist, auf der Entwicklungsumgebungs-Server 100 Seite ab. Zudem überträgt die Entwicklungsumgebungsverwaltungseinheit 122 die Entwicklungsumgebungs-Client-Einheit 202 an die Client-Umgebungsverwaltungseinheit 201.
-
Bei S103 empfängt die Client-Umgebungsverwaltungseinheit 201 die Entwicklungsumgebungs-Client-Einheit 202, die von der Entwicklungsumgebungsverwaltungseinheit 122 übertragen wird. Die Client-Umgebungsverwaltungseinheit 201 installiert die empfangene Entwicklungsumgebungs-Client-Einheit 202 auf dem Client-Endgerät 200.
-
Als nächstes wird ein Programmentwicklungsprozess des Entwickelns eines Programms unter Verwenden der Entwicklungsumgebung beschrieben, welche von dem Entwicklungsumgebungsbereitstellungsprozess verfügbar gemacht wird, der von dem Entwicklungsumgebungssystem 500 durchgeführt wird.
-
Bei S104 wählt der Nutzer ein Programm aus, das an der Client-Umgebungsverwaltungseinheit 201 auf der Client-Endgeräte 200 Seite zu entwickeln ist. Die Client-Umgebungsverwaltungseinheit 201 überträgt eine Entwicklungsanfrage, die eine Programm-ID des ausgewählten Programms enthält, an den Entwicklungsumgebungs-Server 100.
-
Bei S204 empfängt die Programmverwaltungseinheit 120 die Entwicklungsanfrage, die von der Client-Umgebungsverwaltungseinheit 201 übertragen wird. Die Programmverwaltungseinheit 120 erhält ein Programm von dem Programmrepositorium 121, basierend auf der Programm-ID, die in der empfangenen Entwicklungsanfrage enthalten ist. Die Programmverwaltungseinheit 120 speichert das erhaltene Programm in dem Arbeitsbereich 126, der bei der Anmeldung erzeugt wird.
-
Bei S105 wird die Entwicklungsumgebungs-Client-Einheit 202 gestartet, die auf der Client-Endgeräte 200 Seite installiert ist. Der Nutzer kann das Programm unter Verwenden einer Nutzerschnittstellenfunktion auf der gestarteten Entwicklungsumgebungs-Client-Einheit 202 erzeugen und editieren. Die gestartete Entwicklungsumgebungs-Client-Einheit 202 befindet sich in einem Status bereit zu sein, das Programm zu entwickeln. Es ist auch möglich, ein anderes Programm nach dem Starten der Entwicklungsumgebungs-Client-Einheit 202 zu lesen.
-
Ein Editieren des Programms durch den Nutzer wird in der Entwicklungsumgebungs-Client-Einheit 202 auf der Client-Endgeräte 200 Seite verarbeitet.
-
Zwischenzeitlich arbeitet, wenn der Nutzer einen Vorgang des Anfragens nach einem Entwicklungsumgebungsdienstprozess durchführt, der von der Entwicklungsumgebungs-Server 100 Seite durchzuführen ist, wie eine Programmkompilierung, die Entwicklungsumgebungsdiensteinheit 125 auf der Entwicklungsumgebungs-Server 100 Seite und führt einen Entwicklungsumgebungsdienstprozess durch. Die Entwicklungsumgebungsdiensteinheit 125 weist einen Dienstprozessblock für jeden Server-seitigen Prozess wie einen Kompilationsprozess oder einen Fehlerbeseitigungs(debugging)prozess auf.
-
Bei S205 ruft die Entwicklungsumgebungsdiensteinheit 125 einen Dienstprozessblock auf, der dem Entwicklungsumgebungsdienstprozess entspricht, welcher von dem Nutzer erfragt wird, und der Prozess wird auf der Server-Seite durchgeführt. Die Entwicklungsumgebungsdiensteinheit 125 gibt nur das Ausführungsergebnis des Dienstprozessblocks an die Client-Endgeräte 200 Seite zurück.
-
Bei S106 akzeptiert die Entwicklungsumgebungs-Client-Einheit 202 einen Programmspeichervorgang von dem Nutzer. Die Entwicklungsumgebungs-Client-Einheit 202 überträgt eine Programmspeicheranfrage an den Entwicklungsumgebungs-Server 100.
-
Bei S206 gibt die Entwicklungsumgebungsdiensteinheit 125 den Inhalt von Änderungen, die auf der Client-Endgeräte 200 Seite gemacht werden, in eine Datei in dem Arbeitsbereich 126 zurück, wo das Programm gespeichert ist. Wenn der Nutzer eine Versionsregistrierung bei dem Speichervorgang des Nutzers bei S106 durchführt, akzeptiert die Client-Umgebungsverwaltungseinheit 201 einen Versionsregistrierungsvorgang des Nutzers. Nach Abschluss des Speicherns von dem Programm in dem Arbeitsbereich 126 registriert die Programmverwaltungseinheit 120 die Programmdatei in dem Arbeitsbereich 126 in dem Programmrepositorium 121. Die Registrierung kann auf einer Datei-bei-Datei-Basis durchgeführt werden, oder kann auf einer Ordner-bei-Ordner-Basis durchgeführt werden. Bei Registrierung nach der ersten Registrierung registriert die Programmverwaltungseinheit 120 nur Unterschiede, die durch Änderungen an dem Programm gemacht werden.
-
Eine Beschreibung des Entwicklungsumgebungsbereitstellungsprozesses und des Programmentwicklungsprozesses, die von dem Entwicklungsumgebungssystem 500 durchgeführt werden, endet hier.
-
Wie vorstehend beschrieben erzeugt gemäß dem Entwicklungsumgebungssystem 500 gemäß der vorliegenden Ausführungsform die Arbeitsbereichsverwaltungseinheit 119 einen Arbeitsbereich 126 mit einem Verzeichnisnamen, welcher mit einer Nutzer-ID eindeutig ist. Deshalb tritt in dem Entwicklungsumgebungssystem 500 kein Konflikt auf, selbst wenn eine Mehrzahl von Nutzern gleichzeitig auf den Arbeitsbereich 126 zugreift.
-
Die Programmverwaltungseinheit 120 kopiert ein Programm von dem Programmrepositorium 121 in einen Arbeitsbereich 126, der jedem Nutzer bereitgestellt wird. Jeder Nutzer editiert das Programm, das in seinen Arbeitsbereich 126 kopiert wird. Daher kann eine Mehrzahl von Nutzern gleichzeitig das gleiche Programm editieren.
-
Wenn die Programmverwaltungseinheit 120 Änderungen an einem Programm in dem Programmrepositorium 121 registriert, kann ein Fall auftreten, in welchem andere Änderungen bereits durch einen anderen Nutzer registriert sind, und dementsprechend ein Konflikt zwischen den geänderten Abschnitten auftritt. Da die Programmverwaltungseinheit 120 einen Änderungsstatus auf einer Datei-bei-Datei-Basis verwaltet, kann die Programmverwaltungseinheit 120 einen Konflikt zwischen geänderten Abschnitten erkennen.
-
Zum Beispiel benachrichtigt, wenn die Programmverwaltungseinheit 120 einen Dateikonflikt erkennt, die Programmverwaltungseinheit 120 den Nutzer von der Erkennung des Konflikts. Wenn der Nutzer über die Erkennung des Konflikts benachrichtigt wird, kann der Nutzer die folgenden drei Prozesse durchführen:
Der erste Prozess ist der, dass der Nutzer den geänderten Abschnitt registriert, und den Konflikt ignoriert. Der zweite Prozess ist der, dass wenn die Änderungen des Nutzers zurückgespiegelt werden können, während Änderungen eines anderen Nutzers beibehalten werden, der Nutzer die Änderungen zurückspiegelt und registriert. Der dritte Prozess ist der, dass der Nutzer seine/ihre Änderungen als eine andere Version registriert.
-
Um einen Konflikt wie den vorstehend beschriebenen zu vermeiden, wenn der Nutzer ein Programm zum ersten Mal erhält, sperrt der Nutzer das Programm, so dass andere Nutzer das Programm nicht erhalten können. Alternativ stellt, wenn der Nutzer ein Programm zum ersten Mal erhält, der Nutzer Berechtigungen anderer Nutzer für das Programm auf 'nur Lesen' ein, so dass andere Nutzer das Programm nicht editieren können.
-
Wie vorstehend beschrieben erreicht das Entwicklungsumgebungssystem 500 gemäß der vorliegenden Ausführungsform eine Entwicklungsumgebungsversionssteuerung, ein Ändern einer Entwicklungsumgebung gemäß Softwareversion und ein gleichzeitiges Entwickeln des gleichen Programms durch eine Mehrzahl von Nutzern, und verbessert dementsprechend die Entwicklungseffizienz eines großangelegten Programms.
-
Zweite Ausführungsform
-
Die vorliegende Ausführungsform beschreibt hauptsächlich Unterschiede zu der ersten Ausführungsform.
-
Komponenten mit den gleichen Funktionen wie denen, die in der ersten Ausführungsform beschrieben sind, sind mit den gleichen Bezugsziffern bezeichnet und eine Beschreibung davon kann weggelassen werden.
-
6 ist ein Diagramm, das eine Blockkonfiguration eines Entwicklungsumgebungssystems 500a gemäß der vorliegenden Ausführungsform zeigt.
-
In der vorliegenden Ausführungsform sind zusätzlich zu der ersten Ausführungsform eine Zugriffsrechtstabelle 130 und eine Zugriffsrechtsverwaltungseinheit 131 vorgesehen.
-
7 ist ein Diagramm, das eine Konfiguration der Zugriffsrechtstabelle 130 gemäß der vorliegenden Ausführungsform zeigt.
-
Wie in 7 gezeigt schließt die Zugriffsrechtstabelle 130 (Zugriffsrechtsinformation) eine Nutzerinformationszugriffsrechtstabelle 1301 und eine Programmzugriffsrechtstabelle 1302 ein. Die Zugriffsrechtstabelle 130 (Zugriffsrechtsinformation) ist ein Beispiel einer Zugriffsrechtsinformationsspeichereinheit.
-
Die Nutzerinformationszugriffsrechtstabelle 1301 speichert eine Subjektnutzer-ID, eine Objektnutzer-ID und ein Zugriffsrecht in Verknüpfung miteinander. Die Subjektnutzer-ID ist eine Nutzer-ID eines zugreifenden Nutzers. Die Objektnutzer-ID ist eine Nutzer-ID eines zugriffsgewährten Nutzers. Das Zugriffsrecht ist zum Beispiel eine Lese- oder Schreibberechtigung. Die Nutzerinformationszugriffsrechtstabelle 1301 wird verwendet, wenn eine Zugriffssteuerung auf eine Nutzerinformationstabelle 113 durchgeführt wird.
-
Die Programmzugriffsrechtstabelle 1302 speichert eine Subjektnutzer-ID, eine Objektprogramm-ID und ein Zugriffsrecht in Verknüpfung miteinander. Die Subjektnutzer-ID ist eine Nutzer-ID von einem zugreifenden Nutzer. Die Objektprogramm-ID ist eine Programm-ID von einem zugriffsgewährten Programm. Das Zugriffsrecht ist zum Beispiel Lese- oder Änderungsberechtigung. Die Programmzugriffsrechtstabelle 1302 wird verwendet, wenn eine Zugriffssteuerung auf ein Programm durchgeführt wird.
-
Die Zugriffsrechtsverwaltungseinheit 131 empfängt eine Zugriffsrechtsanfrage von einer Client-Umgebungsverwaltungseinheit 201. Die Zugriffsrechtsverwaltungseinheit 131 ändert ein Zugriffsrecht gemäß der Zugriffsrechtsanfrage, basierend auf der Nutzerinformationszugriffsrechtstabelle 1301 und der Programmzugriffsrechtstabelle 1302.
-
Wenn ein Nutzer U001 eine Leseberechtigung auf einen Nutzer U002 hat, kann der Nutzer U001 durch die Nutzerinformationstabelle 113 erfahren, dass der Nutzer U002 vorhanden ist. Auf der anderen Seite, selbst wenn ein Nutzer U004 vorhanden ist, wenn der Nutzer U001 keine Leseberechtigung auf den Nutzer U004 hat, kann der Nutzer U001 das Vorhandensein von der Nutzerinformationstabelle 113 nicht erfahren.
-
Ein Nutzer kann einen anderen Nutzer in der Nutzerinformationstabelle 113 registrieren und eine Änderungsberechtigung auf den registrierten Nutzer haben. Wenn der Nutzer U001 den Nutzer U002 in der Nutzerinformationstabelle 113 registriert, hat der Nutzer U001 eine Änderungsberechtigung auf den Nutzer U002, und kann deshalb zum Beispiel die Nutzerinformationstabelle 113 von dem Nutzer U002 ändern oder den Nutzer U002 löschen.
-
Wenn der Nutzer U001 eine Änderungsberechtigung auf ein Programm P001 hat, kann der Nutzer U001 das Programm P001 editieren. Wenn der Nutzer U002 eine Leseberechtigung auf das Programm P001 hat, kann der Nutzer U002 das Programm P001 ansehen, kann das Programm P001 jedoch nicht editieren. Wenn ein Nutzer ein Programm erzeugt, hat der Nutzer eine Änderungsberechtigung auf das erzeugte Programm.
-
Zum Beispiel wird der Fall beschrieben, in welchem ein Entwicklungsumgebungs-Server 100 eine Programmentwicklungsanfrage von einem Client-Endgerät 200 empfängt. Die Zugriffsrechtsverwaltungseinheit 131 bezieht sich auf ein Programmzugriffsrecht eines Nutzers, der die Entwicklungsanfrage übermittelt hat, basierend auf der Programmzugriffsrechtstabelle 1302 in der Zugriffsrechtstabelle 130. Wenn das Zugriffsrecht 'Ändern' ist, fährt ein Programmentwicklungsprozess fort und eine Programmverwaltungseinheit 120 expandiert ein Programm in einen Arbeitsbereich 126. Wenn das Zugriffsrecht 'Lesen' ist, wird das Client-Endgerät 200 über die Tatsache benachrichtigt, dass der Nutzer nur Leseberechtigung auf das Programm hat. Alternativ expandiert, wenn das Zugriffsrecht 'Lesen' ist, die Programmverwaltungseinheit 120 das Programm in den Arbeitsbereich 126, und wenn die Programmverwaltungseinheit 120 danach eine Programmänderungsanfrage empfängt, benachrichtigt die Programmverwaltungseinheit 120 das Client-Endgerät 200 über die Tatsache, dass der Nutzer nur Leseberechtigung auf das Programm hat.
-
Wie vorstehend beschrieben kann durch Einführen eines Vorgangs zum Ändern eines Zugriffsrechts und einer Berechtigungen bei einem Zugriffsrechtsbetrieb einem anderen Nutzer ein Zugriffsrecht auf Nutzerinformation oder ein Programm bereitgestellt werden. Berechtigungen für einen Zugriffsrechtbetrieb schließen zum Beispiel Lese- und Änderungsberechtigungen ein. Die Berechtigungen für einen Zugriffsrechtsbetrieb können auch in die Nutzerinformationszugriffsrechtstabelle 1301 und die Programmzugriffsrechtstabelle 1302 eingeführt werden.
-
Durch die vorstehend beschriebene Konfiguration wird einem Nutzer eine geeignete Berechtigungen für Programmvorgänge bereitgestellt, durch welche notwendige Information offengelegt werden kann, wobei eine Entwicklungseffizienz verbessert wird.
-
Dritte Ausführungsform
-
Die vorliegende Ausführungsform beschreibt hauptsächlich Unterschiede zu der zweiten Ausführungsform.
-
Komponenten mit den gleichen Funktionen wie denen, die in den ersten und zweiten Ausführungsformen beschrieben sind, sind mit den gleichen Bezugszeichen bezeichnet und eine Beschreibung davon kann weggelassen werden.
-
8 ist ein Diagramm, das eine Blockkonfiguration eines Entwicklungsumgebungssystems 500b gemäß der vorliegenden Ausführungsform zeigt.
-
In der vorliegenden Ausführungsform schließt ein Entwicklungsumgebungs-Server 100 zusätzlich zu der zweiten Ausführungsform eine Code-für-Code-Zugriffsrechtstabelle 132 (Code-für-Code-Zugriffsrechtsinformation) ein. Zudem schließt eine Entwicklungsumgebungs-Client-Einheit 202 eines Client-Endgeräts 200 eine Code-für-Code-Zugriffssteuereinheit 203 zusätzlich zu der zweiten Ausführungsform ein. Die Code-für-Code-Zugriffsrechtstabelle 132 ist ein Beispiel einer Code-für-Code-Zugriffsrechtsspeichereinheit. Die Code-für-Code-Zugriffsrechtstabelle 132 ist ein Beispiel einer Code-für-Code-Zugriffsrechtsspeichereinheit.
-
9 ist ein Diagramm, das eine Konfiguration der Code-für-Code-Zugriffsrechtstabelle 132 gemäß der vorliegenden Erfindung zeigt.
-
Die Code-für-Code-Zugriffsrechtstabelle 132 speichert eine Subjektnutzer-ID, eine Objektprogramm-ID, einen zugreifenden Programmteil und ein Code-für-Code-Zugriffsrecht in Verknüpfung miteinander. Die Subjektnutzer-ID ist eine Nutzer-ID eines zugreifenden Nutzers. Die Objektprogramm-ID ist eine Programm-ID von einem zugriffsgewährten Programm. Das Code-für-Code-Zugriffsrecht ist zum Beispiel eine 'nicht zum Lesen erlaubt', 'Ändern' oder 'Hinzufügen' Berechtigungen. Der Programmteil ist eine Konstante in einem Programm, ein Kodebereich oder dergleichen.
-
Die Code-für-Code-Zugriffssteuereinheit 203 führt eine Schnittstellensteuerung für einen Programmentwicklungsprozess gemäß eines Code-für-Code-Zugriffsrecht eines Nutzers auf einen Programmteil durch, basierend auf der Code-für-Code-Zugriffsrechtstabelle 132.
-
Die Code-für-Code-Zugriffssteuereinheit 203 erkennt ein Code-für-Code-Zugriffsrecht eines angemeldeten Nutzers. Die Code-für-Code-Zugriffssteuereinheit 203 steuert einen Editor gemäß dem Code-für-Code-Zugriffsrecht und führt eine Schnittstellensteuerung aus, wie nicht Erlauben des Sehens eines Teils mit 'nicht zum Lesen erlaubt' Berechtigungen oder nicht Erlauben des Editierens eines Teils, der keine Änderungsberechtigung aufweist.
-
10 ist ein Diagramm, das ein Beispiel einer Änderung einer Konstante bei Kontaktplanprogrammentwicklung zeigt, die von einer Code-für-Code-Zugriffssteuereinheit 203 gemäß der vorliegenden Ausführungsform durchgeführt wird. 11 ist ein Diagramm, das ein Beispiel des Hinzufügens eines Kodes bei Kontaktplanprogrammentwicklung zeigt, die von der Code-für-Code-Zugriffssteuereinheit 203 gemäß der vorliegenden Erfindung durchgeführt wird.
-
Wie in der Code-für-Code-Zugriffsrechtstabelle 132 von 9 gezeigt, hat ein Nutzer U002 eine Änderungsberechtigung auf eine 'Konstante K10' in einem Programm P001. Zudem hat, wie in der Programmzugriffsrechtstabelle 1302 von 7 gezeigt, der Nutzer U002 nur Leseberechtigung auf das Programm P001. In der vorliegenden Ausführungsform kann, selbst wenn der Nutzer U002 nur Leseberechtigung auf das Programm P001 hat, der Nutzer U002 nur den Wert der 'Konstante K 10' auf einem Bildschirm ändern.
-
10 zeigt einen Status, in welchem die Konstante K10 in einem Kontaktplanprogramm geändert wird, welches eine Programmiersprache ist, die einen Sequenzer steuert. In 10 kann der Nutzer U002 nur die Konstante K10 ändern (die Anzahl von Schleifen).
-
Wie in der Code-für-Code-Zugriffsrechtstabelle 132 von 9 gezeigt, hat ein Nutzer U003 Hinzufügungsberechtigung zu dem Programm P001. Zudem hat, wie in der Programmzugriffsrechtstabelle 1302 von 7 gezeigt, hat der Nutzer U003 nur Leseberechtigung auf das Programm P001. In diesem Fall kann der Nutzer U003 einen existierenden Kode in dem Programm P001 nicht ändern, kann aber Kodes neu hinzufügen.
-
11 zeigt einen Status, in welchem Kode in einem Kontaktplanprogramm hinzugefügt wird. Wie in 11 gezeigt, kann der Nutzer U003 existierenden Kode nicht ändern, welcher als ein gestrichelte Anteil angegeben ist, kann jedoch Kode unterhalb des existierenden Kodes neu hinzufügen. Man beachte jedoch, dass der Nutzer U003 keinen Kode hinzufügen kann, der sich auf Kode mit 'zum Lesen nicht erlaubt' in der Code-für-Code-Zugriffsrechtstabelle 132 bezieht.
-
Für das Code-für-Code-Zugriffsrecht werden 'zum Lesen nicht erlaubt', 'Ändern' und 'Hinzufügen' Berechtigungen beschrieben. Für das Code-für-Code-Zugriffsrecht können zusätzlich zu diesen zum Beispiel 'Lesen' und 'zum Ändern nicht erlaubt' Berechtigungen zu setzen erlaubt sein. Es werden Berechtigungen vorbereitet, wo die Definitionen der Code-für-Code-Zugriffsrechte kurz ohne Widerspruch beschrieben werden können, und solche Code-für-Code-Zugriffsrechte können eingestellt sein.
-
Als ein Kodeänderungsmuster wird eine Änderung beschrieben, die einen Konstantennamen (K10) angibt. Zusätzlich dazu kann das Kodeänderungsmuster ein Änderungsmuster sein wie ein Spezifizieren aller Konstanten, ein Spezifizieren durch einen regulären Ausdruck oder ein Begrenzen eines einstellbaren Bereichs wie den Ober- und Untergrenzen einer Konstante.
-
Wie vorstehend beschrieben kann gemäß dem Entwicklungsumgebungssystem 500b gemäß der vorliegenden Erfindung eine flexible Zugangssteuerung ausgeführt werden, wo Änderungen einer Programmlogik nicht erlaubt sind, jedoch kleine Anpassungen durch Ändern von Konstanten erlaubt sind. Zum Beispiel verbessert sich, indem einem Endbenutzer oder einem Wartungspersonal nur erlaubt wird, Anpassungen durch Ändern von Konstanten durchzuführen, jedoch keine Änderungen an einem Programm, eine Wartbarkeit und Entwicklungseffizienz.
-
Vierte Ausführungsform
-
Die vorliegende Ausführungsform beschreibt im wesentlichen Unterschiede zu der dritten Ausführungsform.
-
Komponenten mit den gleichen Funktionen wie solche, die in den ersten bis dritten Ausführungsformen beschrieben sind, werden durch die gleichen Bezugsziffern bezeichnet, und eine Beschreibung davon kann weggelassen werden.
-
12 ist ein Diagramm, das eine Blockkonfiguration eines Entwicklungsumgebungssystems 500c gemäß der vorliegenden Ausführungsform zeigt. 13 ist ein Diagramm, das eine Konfiguration einer Editierhistorientabelle 133 gemäß der vorliegenden Ausführungsform zeigt.
-
Wie in 12 gezeigt, schließt zusätzlich zu der Konfiguration der dritten Ausführungsform das Entwicklungsumgebungssystem 500c gemäß der vorliegenden Erfindung die Editierhistorientabelle 133 (Editierhistorieninformation) ein. Die Editierhistorientabelle 133 ist ein Beispiel einer Editierhistorieninformationsspeichereinheit.
-
Wie in 13 gezeigt, schließt die Editierhistorientabelle 133 ein Datum, eine Nutzer-ID, eine Entwicklungsumgebungs-ID, eine Programm-ID und einen editierten Bereich ein. In dem Datum sind das Datum und die Zeit gespeichert, wann das Entwicklungsumgebungssystem 500c betrieben wird. In der Nutzer-ID ist eine Nutzer-ID eines Nutzers gespeichert, der Vorgänge durchgeführt hat. In der Entwicklungsumgebungs-ID ist eine Entwicklungsumgebungs-ID einer Entwicklungsumgebung gespeichert, die bei den Vorgängern verwendet wird. In der Programm-ID ist eine Programm-ID eines Programms gespeichert, das bei den Vorgängen verwendet wird. In dem editieren Bereich ist die Kodestelle in dem Programm gespeichert, wo ein Editieren durchgeführt wurde.
-
Eine Code-für-Code-Zugriffssteuereinheit 203 erkennt einen editierten Bereich eines Nutzers durch Granularität (auf einer Funktion-bei-Funktion oder Blockbei-Block Basis), die von einem Nutzer angegeben wird, und nimmt den editierten Bereich in die Editierhistorientabelle 133 auf. Jedes Mal, wenn die Code-für-Code-Zugriffssteuereinheit 203 einen editierten Bereich in die Editierhistorientabelle 133 aufnimmt, prüft die Code-für-Code-Zugriffssteuereinheit 203, ob nicht ein anderer Nutzer den gleichen editierten Bereich in dem gleichen Programm editiert hat. Wenn die Code-für-Code-Zugriffssteuereinheit 203 urteilt, dass ein anderer Nutzer den gleichen editierten Bereich in dem gleichen Programm editiert hat, benachrichtigt die Code-für-Code-Zugriffssteuereinheit 203 den Nutzer, der ein Editieren durchführt, über eine Annulierung (cancellation) des Editierens.
-
Es wird ein Verfahren beschrieben, bei welchem ein editierter Bereich durch eine Kodezeilennummer angegeben ist. Bei dem editierten Bereich können zusätzlich zudem auch andere Spezifikationsverfahren angewendet werden, die einen Kodeteil identifizieren können, wie eine Einheit (package) oder eine Funktion.
-
Wie vorstehend beschrieben erhöht sich gemäß dem Entwicklungsumgebungssystem 500c gemäß der vorliegenden Erfindung die Effizienz der gleichzeitigen Entwicklung durch eine Mehrzahl von Nutzern.
-
Fünfte Ausführungsform
-
Die vorliegende Ausführungsform beschreibt hauptsächlich Unterschiede zu der vierten Ausführungsform.
-
Komponenten mit den gleichen Funktionen wie solchen, die in den ersten bis vierten Ausführungsformen beschrieben sind, sind mit den gleichen Bezugsziffern bezeichnet und einer Beschreibung davon kann weggelassen werden.
-
14 ist ein Diagramm, das eine Blockkonfiguration eines Entwicklungsumgebungssystems 500d gemäß der vorliegenden Ausführungsform zeigt. 15 ist ein Diagramm, das eine Konfiguration einer Editiersperrtabelle 134 gemäß der vorliegenden Erfindung zeigt.
-
Wie in Figur zu 14 gezeigt, schließt zusätzlich zu der Konfiguration der vierten Ausführungsform das Entwicklungsumgebungssystem 500d gemäß der vorliegenden Ausführungsform die Editiersperrtabelle 134 (Editiersperrinformation) ein. Die Editiersperrtabelle 134 ist ein Beispiel einer Editiersperrinformationsspeichereinheit.
-
Wie in 15 gezeigt, schließt die Editiersperrtabelle 134 eine Programm-ID und einen gesperrten Bereich ein. Die in 15 gezeigte Editiersperrtabelle 134 gibt an, dass Zeile 10 eines Programms P001 gesperrt ist.
-
Wenn ein bestimmter Nutzer Kode editiert, der durch einen gesperrten Bereich in einem Programm angegeben ist, nimmt ihn eine Zugriffsrechtsverwaltungseinheit 131 in die Editiersperrtabelle 134 auf. Dadurch ist ein Editieren gesperrt, das durch einen anderen Nutzer auf den gesperrten Bereich des Programms durchgeführt wird.
-
Wenn ein Programm durch einen Nutzer editiert wird, stellt eine Code-für-Code-Zugriffssteuereinheit 203 fest, ob der editierte Bereich des Programms ein gesperrter Bereich ist, basierend auf Editiersperrinformation, die in der Editiersperrinformationsspeichereinheit gespeichert ist. Wenn nicht gespeichert, nimmt die Code-für-Code-Zugriffssteuereinheit 203 den editierten Bereich des Programms in der Editiersperrtabelle 134 auf. Wenn gesperrt, benachrichtigt die Code-für-Code-Zugriffssteuereinheit 203 den Nutzer über die Tatsache, dass ein Editieren des Programms gesperrt ist.
-
Obwohl ein Verfahren beschrieben wird, in welchem ein gesperrter Bereich durch eine Kodezeilennummer angegeben ist, sind auch andere Spezifikationsverfahren möglich, die einen Kodeteil wie eine Einheit oder eine Funktion identifizieren können.
-
Durch die vorstehend beschriebene Konfiguration kann eine flexible Zugriffssteuerung auf Kodeebene durchgeführt werden, und daher verbessern sich eine Wartbarkeit und eine Entwicklungseffizienz.
-
Sechste Ausführungsform
-
Die vorliegende Erfindung beschreibt hauptsächlich Unterschiede zu der ersten Ausführungsform.
-
Komponenten mit den gleichen Funktionen wie solchen, die in der ersten Ausführungsform beschrieben sind, sind mit den gleichen Bezugsziffern bezeichnet, und eine Beschreibung davon kann weggelassen werden.
-
16 ist ein Diagramm, das eine Blockkonfiguration eines Entwicklungsumgebungssystems 500e gemäß der vorliegenden Ausführungsform zeigt. 17 ist ein Diagramm, das eine Konfiguration einer Betriebshistorientabelle 135 gemäß der vorliegenden Ausführungsform zeigt.
-
Wie in 16 gezeigt, schließt zusätzlich zu der Konfiguration der ersten Ausführungsform das Entwicklungsumgebungssystem 500e gemäß der vorliegenden Ausführungsform die Betriebshistorientabelle 135 (Betriebshistorieninformation) ein. Die Betriebshistorientabelle 135 ist ein Beispiel einer Betriebshistorieninformationsspeichereinheit.
-
Wie in 17 gezeigt, schließt die Betriebshistorientabelle 135 ein Datum, eine Nutzer-ID, eine Entwicklungsumgebung-ID, eine Programm-ID, eine Steuervorrichtungs-ID und einen Vorgang ein. In dem Datum sind das Vorgangsdatum und die Zeit gespeichert, wann ein Nutzer einen Vorgang auf einer Steuervorrichtung (endgeräteseitiges Speichergerät) ausgeführt hat. In der Nutzer-ID ist eine Nutzer-ID von einem Nutzer gespeichert, der den Vorgang ausgeführt hat. In der Umgebungsentwicklungs-ID ist eine Entwicklungsumgebung-ID einer Entwicklungsumgebung gespeichert, die bei dem Vorgang verwendet wird. In der Programm-ID ist eine Programm-ID eines Programms gespeichert, welches ein Vorgangsziel ist. In der Steuervorrichtungs-ID ist eine Steuervorrichtungs-ID (endgeräteseitiger Speichergeräteidentifikator) einer Steuervorrichtung 300 gespeichert, auf welcher der Vorgang durchgeführt wurde. In dem Vorgang ist der Inhalt eines Prozesses gespeichert, der durch den Vorgang ausgeführt wird.
-
Wenn der Prozess des Schreibens eines Programms an die Steuervorrichtung 300 durchgeführt wird, werden das Datum und die Zeit, Nutzer-ID, Entwicklungsumgebungs-ID, Programm-ID, Steuervorrichtungs-ID und Schreibvorgang, welcher der Inhalt eines Vorgangs ist, für wann der Schreibprozess durchgeführt wurde, in der Betriebshistorientabelle 135 aufgenommen.
-
Bei dem Schreibprozess in die Betriebshistorientabelle 135 wird das Schreiben von einem Client-Endgerät 200 an die Entwicklungsumgebungs-Server 100 Seite über ein Netzwerk 400 durchgeführt. Daher ist es dem Nutzer, der den Schreibprozess durchführt, erlaubt, die Granularität einer Historie einzustellen, wobei eine Netzwerkverzögerung berücksichtigt wird. Es ist jedoch zu beachten, dass Prozesse, die in der Historie verbleiben sollten, wie ein Schreibprozess an die Steuervorrichtung 300, ungeachtet einer Einstellung des Nutzers immer geschrieben werden können.
-
Die Betriebshistorientabelle 135 kann von dem Nutzer über eine Server-Umgebungsverwaltungseinheit 116 eingesehen werden.
-
Gemäß dem Entwicklungsumgebungssystem 500e gemäß der vorliegenden Ausführungsform wird die Nachvollziehbarkeit einer Entwicklungsumgebung, eines Programms, einer Steuervorrichtung usw. gesteigert und dadurch eine Wartbarkeit und Entwicklungseffizienz verbessert.
-
Siebte Ausführungsform
-
Die vorliegende Erfindung beschreibt hauptsächlich Unterschiede zu der sechsten Ausführungsform.
-
Komponenten mit den gleichen Funktionen wie solchen, die in der sechsten Ausführungsform beschrieben sind, werden mit gleichen Bezugsziffern bezeichnet, und eine Beschreibung davon kann weggelassen werden.
-
Die vorliegende Ausführungsform beschreibt einen Mechanismus, in welchem eine Entwicklungsumgebung eines Programms und eines Status eines Programms für den Zeitpunkt, wo sie wiederhergestellt werden müssen, durch Verbinden einer Steuervorrichtung 300 mit einem Client-Endgerät 200 automatisch wiederhergestellt werden können, wenn ein Nutzer eine Programmentwicklung startet.
-
18 ist ein Diagramm, das eine Blockkonfiguration eines Entwicklungsumgebungssystems 500f gemäß der vorliegenden Erfindung zeigt. Wie in 18 gezeigt, schließt in dem Entwicklungsumgebungssystem 511 gemäß der vorliegenden Erfindung zusätzlich zu der Konfiguration der sechsten Ausführungsform ein Client-Endgerät 200 eine Entwicklungsumgebungswiederherstellungseinheit 204 ein.
-
Wenn eine Steuervorrichtung 300 mit dem Client-Endgerät 200 verbunden ist, erkennt die Entwicklungsumgebungswiederherstellungseinheit 204 die Steuervorrichtung 300. Wenn die Entwicklungsumgebungswiederherstellungseinheit 204 die Steuervorrichtung 300 erkennt, ruft die Entwicklungsumgebungswiederherstellungseinheit 204 eine Server-Umgebungsverwaltungseinheit 116 auf der Entwicklungsumgebungs-Server 100 Seite auf. Die Entwicklungsumgebungswiederherstellungseinheit 204 überträgt eine Wiederherstellungsanfrage, welche Information über ein Programm einschließt, das an die Steuervorrichtung 300 geschrieben wird, an die aufgerufene Server-Umgebungsverwaltungseinheit 116.
-
Wenn die Server-Umgebungsverwaltungseinheit 116 die Wiederherstellungsanfrage empfängt, durchsucht die Server-Umgebungsverwaltungseinheit 116 eine Betriebshistorientabelle 135 usw., basierend auf der Information über ein Programm, das in der Wiederherstellungsanfrage enthalten ist. Die Server-Umgebungsverwaltungseinheit 116 erkennt eine Entwicklungsumgebung, den Status des Programms usw., für wann das Schreiben an die Steuervorrichtung 300 durchgeführt wurde. Die Server-Umgebungsverwaltungseinheit 116 stellt die erkannte Entwicklungsumgebung, Status des Programms usw. auf der Client-Endgeräte 200 Seite wieder her. Im Grunde wird die Entwicklungsumgebung usw. für den Zeitpunkt wiederhergestellt, wo das Programm geschrieben wurde, es ist aber auch möglich, eine Entwicklungsumgebung usw. für irgendeinen Zeitpunkt wiederherzustellen.
-
Wie vorstehend beschrieben, kann gemäß dem Entwicklungsumgebungssystem 500f gemäß der vorliegenden Ausführungsform eine Umgebung für den Zeitpunkt einer Programmentwicklung nur durch Verbinden der Steuervorrichtung 300 mit dem Client-Endgeräts 200 automatisch wiederhergestellt werden, und daher verbessern sich Wartbarkeit und Entwicklungseffizienz.
-
Achte Ausführungsform
-
Die vorliegende Erfindung beschreibt hauptsächlich Unterschiede zu den ersten bis siebten Ausführungsformen.
-
Komponenten mit den gleichen Funktionen wie solchen, die in den ersten bis siebten Ausführungsformen beschrieben sind, sind mit den gleichen Bezugsziffern bezeichnet, und eine Beschreibung davon kann weggelassen werden.
-
19 ist ein Diagramm, das eine Blockkonfiguration eines Entwicklungsumgebungssystems 500g gemäß der vorliegenden Ausführungsform zeigt. Das Entwicklungsumgebungssystem 500g weist eine Konfiguration auf, in welcher die Konfigurationen der ersten bis dritten Ausführungsformen miteinander kombiniert sind.
-
Obwohl die vorliegende Ausführungsform das Entwicklungsumgebungssystem 500g in einer Konfiguration zeigt, in welcher die Konfigurationen der ersten bis siebten Ausführungsformen miteinander kombiniert sind, kann das Entwicklungsumgebungssystem 500g durch Kombinieren von zwei oder mehr der Ausführungsformen miteinander implementiert sein. Alternativ kann eine der Ausführungsformen teilweise implementiert sein. Alternativ kann das Entwicklungsumgebungssystem 500g durch teilweises Kombinieren von zwei oder mehr der Ausführungsformen miteinander implementiert sein. Es ist zu beachten, dass die vorliegende Erfindung nicht auf diese Ausführungsformen beschränkt ist und bedarfsweise mannigfaltige Änderungen gemacht werden können.
-
Die Blockkonfiguration, die in den vorstehend beschriebenen ersten bis siebten Ausführungsformen beschrieben sind, sind ebenfalls nicht auf diese Ausführungsformen beschränkt. Zum Beispiel kann eine 'Web-Server-Einheit' und eine 'Statussteuereinheit' als ein einziger funktionaler Block konfiguriert sein, und eine 'Zugriffsrechtsverwaltungseinheit', eine 'Konfigurationsinformationsverwaltungseinheit', eine 'Nutzerverwaltungseinheit' und eine 'Konfigurationsinformationsverwaltungseinheit' können als ein einziger funktionaler Block konfiguriert sein. Alternativ können ein Entwicklungsumgebungs-Server 101 und ein Client-Endgerät 200 durch jede andere Kombination der funktionalen Blöcke konfiguriert sein, die in den vorstehend beschriebenen ersten bis siebten Ausführungsformen beschrieben sind.
-
Bezugszeichenliste
-
- 100: Entwicklungsumgebungs-Server, 111: Nutzerverwaltungseinheit, 112: Authentifizierungs- und Berechtigungseinheit, 113: Nutzerinformationstabelle, 114: Konfigurationsinformationstabelle, 115: Konfigurationsinformationsverwaltungseinheit, 116: Server-Umgebungsverwaltungseinheit, 117: Statussteuereinheit, 118: Web-Server-Einheit, 119: Arbeitsbereichsverwaltungseinheit, 120: Programmverwaltungseinheit, 121: Programmrepositorium, 122: Entwicklungsumgebungsverwaltungseinheit, 123: Entwicklungsumgebungsrepositorium, 124: Entwicklungsumgebungsdienststeuereinheit, 125: Entwicklungsumgebungsdiensteinheit, 126: Arbeitsbereich, 130: Zugriffsrechtstabelle, 131: Zugriffsrechtsverwaltungseinheit, 132: Code-für-Code-Zugriffsrechtstabelle, 133: Editierhistorientabelle, 134: Editiersperrtabelle, 135: Betriebshistorientabelle, 200: Client-Endgerät, 201: Client-Umgebungsverwaltungseinheit, 202: Entwicklungsumgebungs-Client-Einheit, 23: Code-für-Code-Zugriffssteuereinheit, 204: Entwicklungsumgebungswiederherstellungseinheit, 300: Steuervorrichtung, 400: Netzwerk, 500: Entwicklungsumgebungssystem, 901: Rechenvorrichtung, 902: externer Speichervorrichtung, 903: Hauptspeichervorrichtung, 904: Kommunikationsvorrichtung, 905: Eingabe/Ausgabevorrichtung, 1141: Konfigurationsverwaltungstabelle, 1142: Programminformationstabelle, 1143: Entwicklungsumgebungsinformationstabelle, 1144: Steuervorrichtungsinformationstabelle, 1301: Nutzerinformationszugriffsrechtstabelle und 1302: Programmzugriffsrechtstabelle