JP2008287305A - Class figure creation support device, its program and method - Google Patents

Class figure creation support device, its program and method Download PDF

Info

Publication number
JP2008287305A
JP2008287305A JP2007128758A JP2007128758A JP2008287305A JP 2008287305 A JP2008287305 A JP 2008287305A JP 2007128758 A JP2007128758 A JP 2007128758A JP 2007128758 A JP2007128758 A JP 2007128758A JP 2008287305 A JP2008287305 A JP 2008287305A
Authority
JP
Japan
Prior art keywords
class
attribute
class diagram
unit
software
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.)
Pending
Application number
JP2007128758A
Other languages
Japanese (ja)
Inventor
Masataka Sato
正崇 佐藤
Masateru Inoue
正輝 井上
Atsushi Horikawa
淳 堀川
Takashi Inoue
貴司 井上
Tetsuya Yamamura
哲哉 山村
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2007128758A priority Critical patent/JP2008287305A/en
Publication of JP2008287305A publication Critical patent/JP2008287305A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To support the creation of a class figure based on a unified policy. <P>SOLUTION: A specification/design document accepting part 5 accepts created specifications/design documents concerning software to be developed, and extracts sequence figures from among them, and a class generation part 6 classifies the sequence figures for every type of functions, and generates a class figure by defining management information showing objects to be operated by the functions in the classified sequence figures as classes, and an attribute generation part 7 acquires the parameter of a message from the sequence figures, and adds the parameter to the class figure as the attributes of the corresponding class, and a relevance generation part 8 extracts the set of classes having the same attributes from the class figure to which the attributes are added, and generates relevance between the classes. Thus, it is possible to unify a creation policy. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

本発明は、ソフトウェア開発において、ソフトウェアの管理情報を表すクラス図の作成を支援する技術に関する。   The present invention relates to a technique for supporting creation of a class diagram representing software management information in software development.

ソフトウェア開発では、開発対象のソフトウェアが満たすべき事項を示す仕様書を作成し、仕様書を元により具体的な実装を意識したソフトウェアの構造・アーキテクチャなどを定めた設計書を作成し、設計書を元に最終的に実装を行う。これらの仕様書や設計書にはソフトウェアが備える機能を記述する。ソフトウェアの機能は、ソフトウェアが管理する管理情報をクラスや属性などで表現する静的な側面と、ソフトウェアの動作をメッセージやメソッドなどで表現する動的な側面という二つの面によって表される。それらの情報や動作は、自然言語を用いた文書やモデル言語(UML:Unified Modeling Languageなど)を用いた図などで記述される。   In software development, create a specification document that shows the requirements of the software to be developed, create a design document that defines the software structure / architecture based on the specification document with specific implementation in mind. The final implementation is based on the original. These specifications and design documents describe the functions of the software. Software functions are represented by two aspects: a static aspect that expresses management information managed by software by classes and attributes, and a dynamic aspect that expresses software operations by messages and methods. Such information and operations are described in a document using a natural language or a diagram using a model language (UML: Unified Modeling Language).

ソフトウェアの静的な側面を表すものとして、ソフトウェアの管理情報を表すクラス図が使われる。クラス図は、管理情報の集合を表す『クラス』と、管理情報を表す『属性』と、クラス間の関係を表す『関連』とから構成される。図1はクラス図の一例を示すもので、「装置」というクラス、「装置」クラスの属性として「装置名」及び「IPアドレス」、「装置」クラスと「ポート」クラスとの関連が記述されている。   Class diagrams representing software management information are used to represent the static aspects of software. The class diagram includes a “class” that represents a set of management information, an “attribute” that represents management information, and an “association” that represents a relationship between classes. FIG. 1 shows an example of a class diagram, in which “device” class, “device name” and “IP address” as attributes of “device” class, and the relationship between “device” class and “port” class are described. ing.

このクラス図の作成に関して、次のような問題があった。   There were the following problems concerning the creation of this class diagram.

・問題1:クラス図を作成する人間によって、作成ポリシーが異なる。その結果、他の人間が作成したクラス図を理解・修正しようとすると、時間がかかる場合がある。これにより、ソフトウェアの新規作成を複数の人間で行う場合や、機能追加のための修正を行う場合に効率的に開発を進めることが困難になっている。   Problem 1: The creation policy differs depending on the person who creates the class diagram. As a result, it may take time to try to understand and modify a class diagram created by another person. As a result, it is difficult to efficiently proceed with development when a new software is created by a plurality of people or when a modification for adding a function is performed.

・問題2:クラス図を作成する人間の知識が不足していると、誤りを含むクラス図を作成してしまう場合がある。その結果、その修正に余分なコストがかかっている。   Problem 2: If there is insufficient human knowledge to create a class diagram, a class diagram containing an error may be created. As a result, there is an extra cost for the correction.

このような問題が発生するため、仕様書や設計書を作成する作業に時間がかかり、ソフトウェア開発が高コスト化/長期化してしまうという問題が起こっていた。   Since such a problem occurs, it takes time to create a specification and a design document, and there has been a problem that software development is costly / long.

非特許文献1には、クラス図を作成する際に注意する点や作成の考え方が示されているが、その実施はあくまで作成者に任されており、明確に統一されているわけではない。また、作成者の知識が不足している場合には作成されるべきクラスの過不足が発生する可能性があった。   Non-Patent Document 1 shows points to be noted when creating a class diagram and the concept of creation, but the implementation is left up to the creator and is not clearly unified. In addition, when the creator's knowledge is insufficient, there is a possibility that an excessive or insufficient class to be created may occur.

そこで、このようなクラス図の作成に関する問題を解決し、ポリシーが統一されたクラス図を誤りなく作成するために、クラス図の作成を支援する方法が必要である。
井上 樹「ダイアグラム別 UML徹底活用」翔泳社、2005、pp.50−65
Therefore, a method for supporting the creation of a class diagram is necessary in order to solve such problems related to the creation of a class diagram and to create a class diagram with a unified policy without error.
Inoue Itsuki “Diagram UML Thorough Utilization” Shosuisha, 2005, pp. 50-65

本発明は、ソフトウェア開発においてソフトウェアの管理情報を表現するクラス図を作成する際に、作成者によって作成ポリシーが異なる問題や知識不足により誤りが含まれる問題を解決し、統一されたポリシーに基づき且つ誤りのないクラス図の作成を支援することを目的とする。   The present invention solves a problem that a creation policy differs depending on a creator or a problem that includes an error due to lack of knowledge when creating a class diagram expressing software management information in software development, and is based on a unified policy and The purpose is to support the creation of error-free class diagrams.

前述した各問題に対し、それぞれ解決手段を提供する。   A solution is provided for each of the problems described above.

・解決手段1(問題1に対する手段):作成者毎に作成ポリシーが異なるという問題を解決するために、ソフトウェア開発中に作成する他の仕様書や設計書を基準として用いて、他の仕様書や設計書から一意に得られる情報を基準にクラス図を生成する。これによって、作成者毎のポリシーの違いが反映されることなく、統一されたクラス図を作成することができる。   ・ Solution 1 (Means for Problem 1): In order to solve the problem that the creation policy differs for each creator, other specifications and design documents created during software development are used as a standard to solve other specifications. And generate class diagrams based on information uniquely obtained from design documents. As a result, a unified class diagram can be created without reflecting the policy differences between creators.

・解決手段2(問題2に対する手段):作成者の知識が不足するというもう一つの問題に対する解決方法として、熟練した開発者やソフトウェア開発一般で用いられる知識を事前に概念体系として構築しておき、概念体系から知識を取得し、作成者に提示する。作成者は、概念体系の知識を参照しながらクラス図を作成するため、知識の不足を補いながら開発をすることができ、クラス図の誤りを未然に防ぐことができる。   -Solution 2 (Means for Problem 2): As a solution to another problem that the creator's knowledge is insufficient, a knowledge system used by skilled developers and software developers in general is constructed in advance as a conceptual system. Acquire knowledge from the concept system and present it to the creator. Since the creator creates the class diagram while referring to the knowledge of the concept system, the creator can perform development while compensating for the lack of knowledge, and can prevent errors in the class diagram.

まず、解決手段1の詳細について述べる。   First, the details of the solving means 1 will be described.

解決手段1を実現するために、クラス図を作成する前に事前に作成済みであるソフトウェア開発の他の仕様書や設計書の中の、動的な情報を表すものを用いる。ソフトウェアの動作を表すものとして、シーケンス図を用いることとする。但し、本発明の手段はシーケンス図に限定するものではない。   In order to realize the solving means 1, the one representing the dynamic information in other specifications and design documents of software development that have been created in advance before creating the class diagram is used. A sequence diagram is used to represent the operation of the software. However, the means of the present invention is not limited to the sequence diagram.

シーケンス図は、ソフトウェアの動作主体を表す『オブジェクト』と、ソフトウェアの動作を表すオブジェクト間の『メッセージ』と、メッセージで表す動作で使用される管理情報を表す『パラメータ』とから構成される。図2はシーケンス図の一例を示すもので、「Server」及び「DB」というオブジェクト、「Server」オブジェクトと「DB」オブジェクトとの間の動作を表す「装置設定」というメッセージ、「装置設定」メッセージで使用するパラメータ「装置名」及び「最大帯域値」が記述されている。   The sequence diagram is composed of “objects” representing software operating entities, “messages” between objects representing software operations, and “parameters” representing management information used in operations represented by messages. FIG. 2 shows an example of a sequence diagram, objects “Server” and “DB”, a message “device setting” representing an operation between the “Server” object and the “DB” object, and a “device setting” message. The parameters “device name” and “maximum bandwidth value” used in FIG.

ソフトウェア開発では、ソフトウェアが備える機能の数だけシーケンス図を作成する必要がある。それらのシーケンス図はいくつかの種類に分類することができる。それは、ソフトウェアの内部に情報を登録する「登録」、ソフトウェアの内部にある情報を検索する「検索」、ソフトウェアの内部にある情報を変更する「変更」、ソフトウェアの内部にある情報を削除する「削除」の4種類である。これらの4種の機能で操作される管理情報を一つのクラスとして生成する。   In software development, it is necessary to create sequence diagrams for the number of functions provided in software. These sequence diagrams can be classified into several types. “Registration” for registering information inside the software, “Search” for searching for information inside the software, “Change” for changing information inside the software, and “Deleting” information inside the software “ There are four types of “delete”. Management information operated by these four functions is generated as one class.

図3はシーケンス図からクラスを生成するようすを示すもので、ここでは「装置を登録する」、「装置を検索する」、「装置を変更する」及び「装置を削除する」というシーケンス図が存在するため、これらのシーケンス図で表現される動作の対象である管理情報「装置」をクラスとして生成する。同様に、「ポート」及び「カード」に関してもクラスを生成する。   FIG. 3 shows the generation of a class from the sequence diagram. Here, there are sequence diagrams of “register device”, “search for device”, “change device”, and “delete device”. Therefore, the management information “device” that is the target of the operation expressed in these sequence diagrams is generated as a class. Similarly, classes are also generated for “port” and “card”.

上記の枠組みに従ってクラスを生成した後に、クラスの属性を以下のように生成する。「登録」、「検索」、「変更」及び「削除」のシーケンス図で、ソフトウェアの動作を表すメッセージのパラメータは、その動作で使用する管理情報を表している。その管理情報を「登録」、「検索」、「変更」及び「削除」のシーケンス図に対応する形で作成したクラスの属性に追加する。   After creating a class according to the above framework, class attributes are created as follows: In the sequence diagrams of “registration”, “search”, “change”, and “deletion”, the parameter of the message representing the operation of the software represents management information used in the operation. The management information is added to the attribute of the class created in a form corresponding to the sequence diagrams of “registration”, “search”, “change”, and “deletion”.

図4はシーケンス図からクラスの属性を生成するようすを示すもので、ここでは「装置を検索する」シーケンス図と、それに対応する「装置」クラスが示されている。この時、シーケンス図では「検索する」メッセージのパラメータとして管理情報「装置ID」、「送信する」メッセージのパラメータとして管理情報「装置名」、「設定する」メッセージのパラメータとして管理情報「帯域値」が記述されているため、それらの管理情報を「装置」クラスの属性として追加する。   FIG. 4 shows how class attributes are generated from a sequence diagram. Here, a sequence diagram of “search for a device” and a corresponding “device” class are shown. At this time, in the sequence diagram, management information “device ID” as a parameter of “search” message, management information “device name” as a parameter of “send” message, management information “bandwidth value” as a parameter of “set” message Therefore, the management information is added as an attribute of the “device” class.

上記の枠組みで属性を生成した後に、クラス間の関連を生成する。複数のクラスに同じ属性が追加されている時に、同じ属性を有するクラス間に関連を生成する。   After creating attributes in the above framework, create associations between classes. When the same attribute is added to multiple classes, an association is generated between classes having the same attribute.

図5はシーケンス図からクラスの関連を生成するようすを示すもので、ここでは「装置を検索する」シーケンス図及び「エリアを登録する」シーケンス図と、それらに対応する「装置」クラス及び「エリア」クラスとが示されている。この時、それぞれのシーケンス図で管理情報「エリア名」が使用されているため、「装置」クラス及び「エリア」クラスの両方に属性として「エリア名」が存在している。よって、「装置」クラスと「エリア」クラスとの間に関連を生成する。   FIG. 5 shows the generation of the class association from the sequence diagram. Here, the sequence diagram of “search for devices” and the sequence diagram of “register area” and the corresponding “device” class and “area” are shown. "Class" is shown. At this time, since the management information “area name” is used in each sequence diagram, “area name” exists as an attribute in both the “device” class and the “area” class. Therefore, an association is generated between the “device” class and the “area” class.

次に、解決手段2の詳細について述べる。   Next, the details of the solving means 2 will be described.

解決手段2で用いる概念体系は、ソフトウェアが使われる業務の知識やソフトウェア開発に関する知識が体系化されたものである。具体的には、その業務に使用される語彙、機能、振る舞い等の概念を網羅し、その概念同士の関係を明示することで、概念の意味を説明しているものである。概念体系の構造は、『概念』とその概念間の『関係』の集合とから構成され、各概念は『属性』を有する。概念の属性は、その概念のある属性がソフトウェアの管理情報として使用される時に、合わせて一緒に使用される可能性の高い情報を集めたものになっている。図6に概念体系の一例を示す。   The conceptual system used in the solving means 2 is a systematized knowledge of work in which software is used and knowledge about software development. Specifically, it covers the concepts such as vocabulary, function, behavior, etc. used in the business, and explains the meaning of the concepts by specifying the relationship between the concepts. The structure of the concept system is composed of “concepts” and a set of “relationships” between the concepts, and each concept has “attributes”. A concept attribute is a collection of information that is likely to be used together when a certain attribute of the concept is used as software management information. FIG. 6 shows an example of the conceptual system.

この概念体系を参照しながらクラス図を作成することで、作成者は知識不足を補うことができる。   By creating a class diagram while referring to this conceptual system, the creator can compensate for the lack of knowledge.

概念体系を参照するための準備として、作成者は、これまでにシーケンス図を基準として生成したクラス図が有する情報の意味を明確にする。クラス図の意味を示す手段は、クラスの属性を概念体系の概念の属性と関連付けることである。但し、全ての属性が概念体系の概念と関連付けられるわけではない。なぜなら、概念体系にはクラス図に存在しない情報が含まれている場合があるからである。作成者は、この関連をクラスから概念体系へたどることにより、そのクラスが備えるべき情報を知ることができる。   In preparation for referring to the conceptual system, the creator clarifies the meaning of the information included in the class diagrams generated on the basis of the sequence diagrams. A means of indicating the meaning of a class diagram is to associate class attributes with concept attributes of the concept scheme. However, not all attributes are associated with concepts in the concept scheme. This is because the conceptual system may include information that does not exist in the class diagram. The creator can know the information that the class should have by tracing this association from the class to the conceptual system.

図7はクラスと概念体系とから知識を取得するようすを示すもので、ここでは「装置」クラスの属性「装置名」が概念体系の概念「Equipment」の「name」属性へ関連付けられている。この関連を「装置」からたどっていくと、概念「Equipment」では、「name」の他に「id」、「serial Number」、「version」及び「alarm Status」という属性を備えていることが分かる。作成者はこれらの属性を参照して、「装置」クラスにはそれらに相当する属性が不足していることに気付くことができる。   FIG. 7 shows how knowledge is acquired from a class and a concept system. Here, the attribute “device name” of the “device” class is associated with the “name” attribute of the concept “Equipment” of the concept system. If this relationship is traced from “device”, it can be seen that the concept “Equipment” has attributes of “id”, “serial Number”, “version” and “alarm Status” in addition to “name”. . The creator can refer to these attributes and notice that the “device” class lacks the corresponding attributes.

本発明を用いることによって、ソフトウェア開発においてソフトウェアの管理情報を表現するクラス図を作成する際に、作成者によって作成ポリシーが異なる問題や知識不足により誤りが含まれる問題を解決し、統一されたポリシーのクラス図を誤り無く作成できるようになる。   By using the present invention, when creating a class diagram that expresses software management information in software development, it solves the problem that the creation policy differs depending on the creator or the problem that contains errors due to lack of knowledge, and unified policy Class class can be created without errors.

図8は本発明の実施の形態の一例にかかるクラス図作成支援装置を示すもので、図中、1は入力部、2は表示部、3は概念体系作成部、4は概念体系保存部、5は仕様書/設計書受付部、6はクラス生成部、7は属性生成部、8は関連生成部、9は概念体系操作部、10は知識取得部、11は属性追加部である。   FIG. 8 shows a class diagram creation support apparatus according to an embodiment of the present invention. In the figure, 1 is an input unit, 2 is a display unit, 3 is a concept system creation unit, 4 is a concept system storage unit, 5 is a specification / design document reception unit, 6 is a class generation unit, 7 is an attribute generation unit, 8 is a relation generation unit, 9 is a concept system operation unit, 10 is a knowledge acquisition unit, and 11 is an attribute addition unit.

入力部1は、キーボード、マウス等からなり、作成者が各部に情報や操作を入力するためのものである。表示部2は、液晶ディスプレイ、CRT等の画像表示装置からなり、入力部1から入力された情報や操作、各部における処理結果を作成者に提示するためのものである。   The input unit 1 includes a keyboard, a mouse, and the like, and is used by the creator to input information and operations to each unit. The display unit 2 includes an image display device such as a liquid crystal display or a CRT, and is used for presenting information and operations input from the input unit 1 and processing results in each unit to the creator.

概念体系作成部3は、入力部1から入力された情報や操作に従い、開発対象のソフトウェアが関わる業務に使用される語彙、機能、振る舞い等の概念を網羅し、その概念同士の関係を表す概念体系を作成する。概念体系保存部4は、概念体系作成部3によって作成された概念体系を保存する。   The concept system creation unit 3 covers the concepts such as vocabulary, functions, behaviors, etc. used in the work related to the software to be developed in accordance with the information and operations input from the input unit 1, and represents the relationship between the concepts Create a system. The concept system storage unit 4 stores the concept system created by the concept system creation unit 3.

仕様書/設計書受付部5は、開発対象のソフトウェアに関する仕様書/設計書のうち、(図示しない記憶媒体から読み出されて入力され又は通信媒体を介して他の装置等から入力された)作成済みの仕様書/設計書を受け付け、その中から当該開発対象のソフトウェアの動作を表す仕様書/設計書、ここではシーケンス図を取り出し、クラス生成部6へ渡す。   The specification / design document receiving unit 5 is a specification / design document related to the software to be developed (read from a storage medium (not shown) or input from another device or the like via a communication medium). The created specification / design document is received, and a specification / design document representing the operation of the development target software, a sequence diagram in this case, is extracted from the specification / design document, and passed to the class generation unit 6.

クラス生成部6は、前記シーケンス図を当該開発対象のソフトウェアが備える機能の種類毎、ここでは「登録」、「検索」、「変更」及び「削除」毎に分類し、該分類されたシーケンス図における機能で操作される対象を表す管理情報をクラスとするクラス図を生成し、該生成したクラス図を前記分類されたシーケンス図とともに属性生成部7へ渡す。なお、この際、重複するクラスについては一つのみ生成するものとする。   The class generation unit 6 classifies the sequence diagram for each type of function included in the development target software, here “registration”, “search”, “change”, and “deletion”. A class diagram having management information representing an object operated by the function in FIG. As a class is generated, and the generated class diagram is transferred to the attribute generation unit 7 together with the classified sequence diagram. At this time, only one overlapping class is generated.

属性生成部7は、前記分類されたシーケンス図の中からソフトウェアの動作で使用する管理情報、ここではメッセージのパラメータを取得し、該パラメータを対応するクラスの属性としてクラス図中に追加し、該属性を追加したクラス図を関連生成部8へ渡す。なお、この際、クラス毎に重複する属性については一つのみ追加するものとする。   The attribute generation unit 7 acquires management information used in the operation of the software from the classified sequence diagram, here a message parameter, adds the parameter to the class diagram as an attribute of the corresponding class, and The class diagram to which the attribute is added is passed to the relation generation unit 8. At this time, only one attribute is duplicated for each class.

関連生成部8は、前記属性を追加したクラス図から同じ属性を有するクラスの組を抽出し、それらのクラス間に関連を生成し、該関連を生成したクラス図を概念体系操作部9へ渡す。   The relationship generation unit 8 extracts a set of classes having the same attribute from the class diagram to which the attribute is added, generates a relationship between the classes, and passes the class diagram that generated the relationship to the concept system operation unit 9. .

概念体系操作部9は、概念体系保存部4から前記開発対象のソフトウェアに関する概念体系を読み込み、前記クラス図とともに表示部2に表示し、入力部1から入力された操作に従い、クラス図中のクラスに含まれる属性と概念体系中の概念に含まれる属性とを関連付けし、その関連付け情報とともに前記クラス図及び概念体系を知識取得部10へ渡す。   The concept system operation unit 9 reads the concept system related to the software to be developed from the concept system storage unit 4, displays it on the display unit 2 together with the class diagram, and classifies the class in the class diagram according to the operation input from the input unit 1. And the attribute included in the concept in the concept system are associated with each other, and the class diagram and the concept system are passed to the knowledge acquisition unit 10 together with the association information.

知識取得部10は、前記関連付け情報、クラス図及び概念体系を基に、属性同士がクラスと関連付けられた概念から該関連付けられたクラスに含まれない属性を取得し、表示部2に表示する。   Based on the association information, the class diagram, and the concept system, the knowledge acquisition unit 10 acquires an attribute that is not included in the associated class from the concept in which the attributes are associated with the class, and displays the attribute on the display unit 2.

属性追加部11は、入力部1から入力された操作に従い、クラス図中のクラスに属性を追加する。   The attribute adding unit 11 adds an attribute to the class in the class diagram in accordance with the operation input from the input unit 1.

前述した本発明装置の動作順序を図9に示す。なお、概念体系作成部3は、この動作順序とは独立して、入力部1から入力された情報や操作に従い、開発対象のソフトウェアが関わる業務に使用される概念同士の関係を表す概念体系を作成し、概念体系保存部4に保存するものとする。   FIG. 9 shows the operation sequence of the above-described apparatus of the present invention. In addition, the concept system creation unit 3 generates a concept system that represents the relationship between concepts used in the work related to the software to be developed in accordance with the information and operations input from the input unit 1 independently of the operation order. It is created and stored in the concept system storage unit 4.

また、前述した装置は、周知のコンピュータ上に実現することもでき、この際、前記概念体系保存部4はコンピュータにおけるハードディスク等の記憶装置によって構成され、また、仕様書/設計書受付部5、クラス生成部6、属性生成部7、関連生成部8、概念体系操作部9、知識取得部10、属性追加部11はコンピュータにおけるCPU、メモリ等とともに図9に対応するプログラムによって構成される。   The above-described apparatus can also be realized on a well-known computer. At this time, the concept system storage unit 4 is configured by a storage device such as a hard disk in the computer, and a specification / design document reception unit 5, The class generation unit 6, attribute generation unit 7, association generation unit 8, concept system operation unit 9, knowledge acquisition unit 10, and attribute addition unit 11 are configured by a program corresponding to FIG.

以下、本発明装置によるクラス図作成支援方法について、具体的な例、ここではLayer2Switch(L2SW)を管理するソフトウェアを開発する際に、そのソフトウェアの管理情報を表現するクラス図を作成する場合を例に挙げて説明する。   Hereinafter, a specific example of the class diagram creation support method by the apparatus of the present invention, in this case, when developing a software that manages Layer2Switch (L2SW), an example of creating a class diagram that represents management information of the software Will be described.

まず、概念体系作成部3を用いて、入力部1から入力された情報や操作に従い、装置管理の業務分野における概念体系を作成し、概念体系保存部4に保存する。図10に作成した概念体系を示す。   First, using the concept system creation unit 3, a concept system in the business field of device management is created according to information and operations input from the input unit 1 and stored in the concept system storage unit 4. FIG. 10 shows the created conceptual system.

次に、仕様書/設計書受付部5は、装置管理に関する作成済みの仕様書/設計書を受け付け、その中からソフトウェアの動作を表す仕様書/設計書であるシーケンス図を取り出し、クラス生成部6へ渡す(s1)。   Next, the specification / design document receiving unit 5 receives a created specification / design document related to device management, extracts a sequence diagram that is a specification / design document representing the operation of the software, and generates a class generation unit. 6 (s1).

次に、クラス生成部6は、受け取ったシーケンス図を「登録」、「検索」、「変更」及び「削除」毎に分類して取り出す。ここでは以下のシーケンス図を取り出した。
・ビルを登録する。
・ビルを削除する。
・L2SWを登録する。
・L2SWを検索する。
・L2SWを変更する。
・L2SWを削除する。
・ポートを登録する。
・ポートを削除する。
・SW間接続を登録する。
・SW間接続を削除する。
・回線を登録する。
・回線を検索する。
・回線を変更する。
・回線を削除する。
Next, the class generation unit 6 classifies and extracts the received sequence diagram for each of “registration”, “search”, “change”, and “deletion”. Here, the following sequence diagram was taken out.
・ Register the building.
・ Delete the building.
・ Register L2SW.
Search for L2SW.
-Change L2SW.
-Delete L2SW.
・ Register the port.
-Delete the port.
・ Register SW connection.
-Delete the connection between SWs.
・ Register the line.
・ Search for a line.
・ Change the line.
-Delete the line.

また、クラス生成部6は、前記分類されたシーケンス図における機能で操作される対象を表す管理情報、ここでは「ビル」、「L2SW」、「ポート」、「SW間接続」及び「回線」をクラスとするクラス図を生成し、これを前記分類されたシーケンス図とともに属性生成部7へ渡す(s2)。図11に生成したクラス図を示す。   In addition, the class generation unit 6 stores management information representing objects to be operated by the functions in the classified sequence diagram, in this case, “building”, “L2SW”, “port”, “inter-SW connection”, and “line”. A class diagram as a class is generated, and this is sent to the attribute generation unit 7 together with the classified sequence diagram (s2). FIG. 11 shows the generated class diagram.

次に、属性生成部7は、前記分類されたシーケンス図の中からメッセージのパラメータを取得し、該パラメータを対応するクラスの属性としてクラス図中に追加する。   Next, the attribute generation unit 7 acquires a message parameter from the classified sequence diagram, and adds the parameter to the class diagram as an attribute of the corresponding class.

図12は「L2SWを登録する」シーケンス図の中からメッセージのパラメータを取得し、該パラメータを対応するクラス、即ち「L2SW」クラスの属性としてクラス図中に追加する例を示すものである。ここでは「L2SWを登録する」シーケンス図の中からパラメータ「装置名」、「装置ID」、「IPアドレス」及び「ビルコード」を取得し、これらを対応する「L2SW」クラスの属性として追加している。   FIG. 12 shows an example in which a parameter of a message is acquired from the “Register L2SW” sequence diagram, and the parameter is added to the class diagram as an attribute of the corresponding class, that is, the “L2SW” class. Here, the parameters “device name”, “device ID”, “IP address” and “bill code” are acquired from the “Register L2SW” sequence diagram, and these are added as attributes of the corresponding “L2SW” class. ing.

属性生成部7は、以上の動作を全てのシーケンス図に対して繰り返し、該属性を追加したクラス図を関連生成部8へ渡す(s3)。図13に全てのクラスに属性が追加されたクラス図を示す。   The attribute generation unit 7 repeats the above operation for all the sequence diagrams, and passes the class diagram to which the attribute is added to the association generation unit 8 (s3). FIG. 13 shows a class diagram in which attributes are added to all classes.

次に、関連生成部8は、前記属性を追加したクラス図から同じ属性を有するクラスの組を抽出し、それらのクラス間に関連を生成する。例えば、図13の例では「ビル」クラスと「L2SW」クラスが属性「ビルコード」を両方とも有しているため、「ビル」クラスと「L2SW」クラスとの間に関連を生成する。関連生成部8は、以上の動作を該当する全てのクラスの組に対して繰り返し、該関連を生成したクラス図を概念体系操作部9へ渡す(s4)。図14に関連生成後のクラス図を示す。   Next, the relationship generation unit 8 extracts a set of classes having the same attribute from the class diagram to which the attribute is added, and generates a relationship between the classes. For example, in the example of FIG. 13, the “Bill” class and the “L2SW” class both have the attribute “Bill Code”, and therefore, an association is generated between the “Bill” class and the “L2SW” class. The relation generation unit 8 repeats the above operation for all corresponding class sets, and passes the class diagram that generated the relation to the concept system operation unit 9 (s4). FIG. 14 shows a class diagram after the association is generated.

次に、概念体系操作部9は、概念体系保存部4から前記開発対象のソフトウェアに関する概念体系、ここでは図10に示した概念体系を読み込み、前記関連生成後のクラス図とともに表示部2に表示する。また、概念体系操作部9は、入力部1から入力された操作に従い、クラス図中のクラスに含まれる属性と概念体系中の概念に含まれる属性とを関連付けする。例えば、「ビル」クラスの属性「ビル名」は、「装置や設備を設置・運用するビル」を表す概念「Building」の属性「name」であると作成者が判断し、入力部1を操作してこれらを関連付けする。概念体系操作部9は、以上の動作を該当するクラス図中の属性と概念体系中の属性とに対して繰り返し、その関連付け情報とともに前記クラス図及び概念体系を知識取得部10へ渡す(s5)。図15に関連付け後の概念体系及びクラス図を示す。   Next, the conceptual system operation unit 9 reads the conceptual system related to the development target software from the conceptual system storage unit 4, here the conceptual system shown in FIG. 10, and displays it on the display unit 2 together with the class diagram after the relation generation. To do. The concept system operation unit 9 associates attributes included in the class in the class diagram with attributes included in the concept in the concept system in accordance with the operation input from the input unit 1. For example, the author determines that the attribute “building name” of the “building” class is the attribute “name” of the concept “Building” that represents “a building where equipment and facilities are installed and operated”, and operates the input unit 1. And associate them. The concept system operation unit 9 repeats the above operation for the attribute in the corresponding class diagram and the attribute in the concept system, and passes the class diagram and the concept system together with the association information to the knowledge acquisition unit 10 (s5). . FIG. 15 shows the conceptual system and class diagram after association.

次に、知識取得部10は、前記関連付け情報、クラス図及び概念体系を基に、概念体系の中から生成したクラス図と一緒に使用される可能性の高い情報、つまり属性同士がクラスと関連付けられた概念から該関連付けられたクラスに含まれない属性を取得し、表示部2に表示する(s6)。   Next, based on the association information, the class diagram, and the concept system, the knowledge acquisition unit 10 associates information that is likely to be used with the class diagram generated from the concept system, that is, attributes are associated with the class. Attributes not included in the associated class are acquired from the associated concept and displayed on the display unit 2 (s6).

例えば、[L2SW」クラスは、概念「Equipment」と関連付けられている。概念「Equipment」の属性「name」、「objectID」及び「ipAddress」は「L2SW」の属性と関連付けられていることから、既に使用されている。一方、概念「Equipment」の属性「Physical Alarm Status」及び「serial Number」は関連付けられておらず、このソフトウェアの管理情報として抽出されていない。よって、知識取得部10は、これらの関連付けられていない属性が「L2SW」クラスで一緒に使用する可能性の高い情報であるとして表示部2に表示(提示)する。   For example, the [L2SW] class is associated with the concept “Equipment”. The attributes “name”, “objectID”, and “ipAddress” of the concept “Equipment” are already used because they are associated with the attribute of “L2SW”. On the other hand, the attributes “Physical Alarm Status” and “serial Number” of the concept “Equipment” are not associated and are not extracted as management information of this software. Therefore, the knowledge acquisition unit 10 displays (presents) on the display unit 2 that these unrelated attributes are information that is highly likely to be used together in the “L2SW” class.

最後に、属性追加部11を用いて、入力部1から入力された操作に従い、クラス図中のクラスに属性を追加する(s7)。例えば、知識取得部10から表示部2を介して提示された情報を参照して再度クラス図の内容を検討した結果、「physical Alarm Status」に対応する属性「装置警報状態」及び「serial Number」に対応する属性「シリアル番号」が「L2SW」クラスの属性であると作成者が判断し、入力部1を操作してこれらを追加する。図16に属性追加後のクラス図を示す。   Finally, the attribute adding unit 11 is used to add an attribute to the class in the class diagram in accordance with the operation input from the input unit 1 (s7). For example, as a result of examining the contents of the class diagram again with reference to the information presented from the knowledge acquisition unit 10 via the display unit 2, the attributes “device alarm state” and “serial number” corresponding to “physical Alarm Status” The creator determines that the attribute “serial number” corresponding to is an attribute of the “L2SW” class, and operates the input unit 1 to add them. FIG. 16 shows a class diagram after attribute addition.

以上のように、ソフトウェアの動作を表す仕様書/設計書を基準としてクラス図を作成することで、作成ポリシーを統一することができる。さらに、概念体系を参照することで、知識の不足を補うことができ、クラス図の誤りを未然に防ぐことができる。   As described above, the creation policy can be unified by creating the class diagram based on the specification / design document representing the operation of the software. Furthermore, by referring to the conceptual system, it is possible to make up for the lack of knowledge and to prevent errors in the class diagram.

クラス図の一例を示す説明図Explanatory drawing showing an example of class diagram シーケンス図の一例を示す説明図An explanatory diagram showing an example of a sequence diagram シーケンス図からクラスを生成するようすを示す説明図Explanatory drawing showing how a class is generated from a sequence diagram シーケンス図からクラスの属性を生成するようすを示す説明図Explanatory drawing showing how class attributes are generated from a sequence diagram シーケンス図からクラスの関連を生成するようすを示す説明図Explanatory diagram showing how class relationships are generated from sequence diagrams 概念体系の一例を示す説明図Explanatory diagram showing an example of the conceptual system クラスと概念体系とから知識を取得するようすを示す説明図Explanatory diagram showing how knowledge is acquired from classes and conceptual systems 本発明の実施の形態の一例にかかるクラス図作成支援装置を示す構成図The block diagram which shows the class diagram creation assistance apparatus concerning an example of embodiment of this invention 本発明装置の動作順序を示すフローチャートThe flowchart which shows the operation | movement order of this invention apparatus. 実施例1にかかる概念体系を示す説明図Explanatory drawing which shows the conceptual system concerning Example 1. 実施例1にかかるクラス図を示す説明図Explanatory drawing which shows the class diagram concerning Example 1. 実施例1にかかる属性生成部の動作の一例を示す説明図Explanatory drawing which shows an example of operation | movement of the attribute production | generation part concerning Example 1. FIG. 実施例1にかかる属性生成後のクラス図を示す説明図Explanatory drawing which shows the class figure after the attribute generation concerning the example 1 実施例1にかかる関連生成後のクラス図を示す説明図Explanatory drawing which shows the class diagram after the relation production | generation concerning Example 1. FIG. 実施例1にかかる関連付け後の概念体系及びクラス図を示す説明図Explanatory drawing which shows the conceptual system and class diagram after the correlation concerning Example 1 実施例1にかかる属性追加後のクラス図を示す説明図Explanatory drawing which shows the class figure after the attribute addition concerning Example 1

符号の説明Explanation of symbols

1:入力部、2:表示部、3:概念体系作成部、4:概念体系保存部、5:仕様書/設計書受付部、6:クラス生成部、7:属性生成部、8:関連生成部、9:概念体系操作部、10:知識取得部、11:属性追加部。   1: input unit, 2: display unit, 3: concept system creation unit, 4: concept system storage unit, 5: specification / design document reception unit, 6: class generation unit, 7: attribute generation unit, 8: association generation Part, 9: concept system operation part, 10: knowledge acquisition part, 11: attribute addition part.

Claims (7)

開発対象のソフトウェアに関する仕様書/設計書のうち、当該開発対象のソフトウェアの管理情報を表すクラス図の作成を支援するクラス図作成支援装置であって、
開発対象のソフトウェアに関する作成済みの仕様書/設計書を受け付け、その中から当該開発対象のソフトウェアの動作を表す仕様書/設計書を取り出す仕様書/設計書受付部と、
前記取り出した仕様書/設計書を当該開発対象のソフトウェアが備える機能の種類毎に分類し、該分類された仕様書/設計書における機能で操作される対象を表す管理情報をクラスとするクラス図を生成するクラス生成部と、
前記分類された仕様書/設計書の中からソフトウェアの動作で使用する管理情報を取得し、該管理情報を対応するクラスの属性としてクラス図中に追加する属性生成部と、
前記属性を追加したクラス図から同じ属性を有するクラスの組を抽出し、それらのクラス間に関連を生成する関連生成部とを備える
ことを特徴とするクラス図作成支援装置。
A class diagram creation support device that supports creation of a class diagram representing management information of the development target software among specifications / designs related to the development target software,
A specification / design document accepting unit that accepts a created specification / design document related to the software to be developed, and retrieves a specification / design document representing the operation of the software to be developed,
A class diagram in which the extracted specification / design is classified for each type of function of the software to be developed, and management information representing a target operated by the function in the classified specification / design is used as a class diagram A class generation unit for generating
An attribute generation unit that acquires management information used in the operation of software from the classified specifications / designs, and adds the management information to the class diagram as an attribute of the corresponding class;
A class diagram creation support apparatus comprising: a relationship generation unit that extracts a set of classes having the same attribute from the class diagram to which the attribute is added and generates a relationship between the classes.
前記に加え、
入力部から入力された情報や操作に従い、開発対象のソフトウェアが関わる業務に使用される概念同士の関係を表す概念体系を作成する概念体系作成部と、
概念体系作成部によって作成された概念体系を保存する概念体系保存部と、
概念体系保存部から前記開発対象のソフトウェアに関する概念体系を読み込み、前記クラス図とともに表示部に表示し、入力部から入力された操作に従い、クラス図中のクラスに含まれる属性と概念体系中の概念に含まれる属性とを関連付ける概念体系操作部と、
前記関連付け情報、クラス図及び概念体系を基に、属性同士がクラスと関連付けられた概念から該関連付けられたクラスに含まれない属性を取得し、表示部に表示する知識取得部とを備える
ことを特徴とする請求項1記載のクラス図作成支援装置。
In addition to the above
In accordance with information and operations input from the input unit, a concept system creation unit that creates a concept system that expresses the relationship between concepts used in work related to the development target software,
A concept system storage unit for storing the concept system created by the concept system creation unit;
Reads the conceptual system related to the development target software from the conceptual system storage unit, displays it on the display unit together with the class diagram, and follows the operations input from the input unit, the attributes included in the class in the class diagram and the concepts in the conceptual system A conceptual system operation unit for associating attributes included in
A knowledge acquisition unit that acquires an attribute not included in the associated class from a concept in which the attribute is associated with the class based on the association information, the class diagram, and the concept system, and displays the attribute on the display unit. The class diagram creation support apparatus according to claim 1, wherein:
前記に加え、
入力部から入力された操作に従い、クラス図中のクラスに属性を追加する属性追加部を備える
ことを特徴とする請求項2記載のクラス図作成支援装置。
In addition to the above
The class diagram creation support apparatus according to claim 2, further comprising an attribute addition unit that adds an attribute to a class in the class diagram in accordance with an operation input from the input unit.
コンピュータを、請求項1乃至3いずれか記載の装置を構成する各手段として機能させるためのプログラム。   The program for functioning a computer as each means which comprises the apparatus in any one of Claims 1 thru | or 3. コンピュータを用いて、開発対象のソフトウェアに関する仕様書/設計書のうち、当該開発対象のソフトウェアの管理情報を表すクラス図の作成を支援するクラス図作成支援方法であって、
前記コンピュータに、
開発対象のソフトウェアに関する作成済みの仕様書/設計書を受け付け、その中から当該開発対象のソフトウェアの動作を表す仕様書/設計書を取り出す仕様書/設計書受付ステップと、
前記取り出した仕様書/設計書を当該開発対象のソフトウェアが備える機能の種類毎に分類し、該分類された仕様書/設計書における機能で操作される対象を表す管理情報をクラスとするクラス図を生成するクラス生成ステップと、
前記分類された仕様書/設計書の中からソフトウェアの動作で使用する管理情報を取得し、該管理情報を対応するクラスの属性としてクラス図中に追加する属性生成ステップと、
前記属性を追加したクラス図から同じ属性を有するクラスの組を抽出し、それらのクラス間に関連を生成する関連生成ステップとを実行させる
ことを特徴とするクラス図作成支援方法。
A class diagram creation support method for supporting creation of a class diagram representing management information of a development target software among specifications / designs related to the development target software using a computer,
In the computer,
A specification / design document reception step for accepting a created specification / design document related to the development target software, and extracting a specification / design document representing the operation of the development target software from the specification / design document;
A class diagram in which the extracted specification / design is classified for each type of function of the software to be developed, and management information representing a target operated by the function in the classified specification / design is used as a class diagram A class generation step for generating
An attribute generation step of acquiring management information used in software operation from the classified specifications / design documents and adding the management information as an attribute of a corresponding class in a class diagram;
A class diagram creation support method, comprising: extracting a set of classes having the same attribute from the class diagram to which the attribute is added and generating a relationship between the classes.
前記に加え、
入力部から入力された情報や操作に従い、開発対象のソフトウェアが関わる業務に使用される概念同士の関係を表す概念体系を作成する概念体系作成ステップと、
概念体系作成ステップによって作成された概念体系を記憶部に保存する概念体系保存ステップとを実行させるとともに、
関連生成ステップに続いて、
記憶部から前記開発対象のソフトウェアに関する概念体系を読み込み、前記クラス図とともに表示部に表示し、入力部から入力された操作に従い、クラス図中のクラスに含まれる属性と概念体系中の概念に含まれる属性とを関連付ける概念体系操作ステップと、
前記関連付け情報、クラス図及び概念体系を基に、属性同士がクラスと関連付けられた概念から該関連付けられたクラスに含まれない属性を取得し、表示部に表示する知識取得ステップとを実行させる
ことを特徴とする請求項5記載のクラス図作成支援方法。
In addition to the above
In accordance with information and operations input from the input unit, a concept system creation step for creating a concept system that expresses the relationship between concepts used for work related to the software to be developed,
A concept system storage step for storing the concept system created in the concept system creation step in the storage unit;
Following the association generation step,
Reads the conceptual system related to the development target software from the storage unit, displays it on the display unit together with the class diagram, and includes the attributes included in the class in the class diagram and the concept in the conceptual system according to the operation input from the input unit A conceptual system operation step for associating the attribute
Based on the association information, the class diagram, and the concept system, acquiring an attribute that is not included in the associated class from a concept in which the attributes are associated with the class, and executing a knowledge acquisition step of displaying on the display unit 6. The class diagram creation support method according to claim 5.
知識取得ステップに続いて、
入力部から入力された操作に従い、クラス図中のクラスに属性を追加する属性追加ステップを実行させる
ことを特徴とする請求項6記載のクラス図作成支援方法。
Following the knowledge acquisition step,
The class diagram creation support method according to claim 6, wherein an attribute addition step of adding an attribute to a class in the class diagram is executed according to an operation input from the input unit.
JP2007128758A 2007-05-15 2007-05-15 Class figure creation support device, its program and method Pending JP2008287305A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007128758A JP2008287305A (en) 2007-05-15 2007-05-15 Class figure creation support device, its program and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007128758A JP2008287305A (en) 2007-05-15 2007-05-15 Class figure creation support device, its program and method

Publications (1)

Publication Number Publication Date
JP2008287305A true JP2008287305A (en) 2008-11-27

Family

ID=40146996

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007128758A Pending JP2008287305A (en) 2007-05-15 2007-05-15 Class figure creation support device, its program and method

Country Status (1)

Country Link
JP (1) JP2008287305A (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001154837A (en) * 1999-11-29 2001-06-08 Hitachi Software Eng Co Ltd Device for supporting object directional development

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001154837A (en) * 1999-11-29 2001-06-08 Hitachi Software Eng Co Ltd Device for supporting object directional development

Similar Documents

Publication Publication Date Title
US20100001834A1 (en) System and method for a message registry and message handling in a service -oriented business framework
US8010479B2 (en) Simplifying the creation of user-defined custom elements for use in a graphical modeling application
JP4845153B2 (en) System, method, server, and computer program for avoiding conflict of update work in distributed environment using multiple clients
US20160070541A1 (en) Conversion of business suite solutions
JP5350428B2 (en) Automatic program generation apparatus, method and computer program
US8949769B2 (en) Spatial layout of hierarchical shared resources
US10031746B2 (en) Analyzing components related to a software application in a software development environment
US20130290931A1 (en) Computer method and apparatus for engineered product management including simultaneous indication of working copy status and repository status
US9934028B2 (en) Tracking changes within javascript object notation
US20150280996A1 (en) Cloud topology visualizations
CN113672208A (en) Low code development framework system for realizing compatible trust and creation adaptation based on computer software
JP6676564B2 (en) Development support system and method
KR20150133902A (en) System and method for developing of service based on software product line
JP2019197405A (en) Project status management device, project status management program, and project status management method
US7945598B2 (en) Methodology for the automatic capture of process information in federated knowledge systems
JP2003150762A (en) Cooperation method for project information and its system
JP2008287305A (en) Class figure creation support device, its program and method
CN110990668A (en) Document data display method and related device
JP4678770B2 (en) Sequence diagram creation method and apparatus
US7730105B2 (en) Time sharing managing apparatus, document creating apparatus, document reading apparatus, time sharing managing method, document creating method, and document reading method
US10318249B2 (en) Extending programmer workbenches for handling programming language differences
CN112686002B (en) File processing method and device
US20230306002A1 (en) Help documentation enabler
JP2007172223A (en) Repository system, method for managing repository, and its program
Zumar et al. Demonstration of MLflow: A System to Accelerate the Machine Learning Lifecycle

Legal Events

Date Code Title Description
A621 Written request for application examination

Effective date: 20090730

Free format text: JAPANESE INTERMEDIATE CODE: A621

RD04 Notification of resignation of power of attorney

Effective date: 20110613

Free format text: JAPANESE INTERMEDIATE CODE: A7424

RD02 Notification of acceptance of power of attorney

Effective date: 20110614

Free format text: JAPANESE INTERMEDIATE CODE: A7422

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20110615

RD03 Notification of appointment of power of attorney

Effective date: 20110616

Free format text: JAPANESE INTERMEDIATE CODE: A7423

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120112

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120307

A02 Decision of refusal

Effective date: 20120402

Free format text: JAPANESE INTERMEDIATE CODE: A02