JP5706480B2 - 仕様管理装置、仕様管理方法及び仕様管理プログラム - Google Patents

仕様管理装置、仕様管理方法及び仕様管理プログラム Download PDF

Info

Publication number
JP5706480B2
JP5706480B2 JP2013147775A JP2013147775A JP5706480B2 JP 5706480 B2 JP5706480 B2 JP 5706480B2 JP 2013147775 A JP2013147775 A JP 2013147775A JP 2013147775 A JP2013147775 A JP 2013147775A JP 5706480 B2 JP5706480 B2 JP 5706480B2
Authority
JP
Japan
Prior art keywords
model
instance
document
data
class
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.)
Active
Application number
JP2013147775A
Other languages
English (en)
Other versions
JP2013254503A (ja
Inventor
松尾 尚典
尚典 松尾
位野木 万里
万里 位野木
広佳 山田
広佳 山田
加藤 秀樹
秀樹 加藤
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.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions 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 Toshiba Corp, Toshiba Solutions Corp filed Critical Toshiba Corp
Priority to JP2013147775A priority Critical patent/JP5706480B2/ja
Publication of JP2013254503A publication Critical patent/JP2013254503A/ja
Application granted granted Critical
Publication of JP5706480B2 publication Critical patent/JP5706480B2/ja
Anticipated expiration legal-status Critical
Active legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、システム及びソフトウェアの仕様の定義決定、登録、更新等を行い、この仕
様を基に正式なドキュメントを作成する仕様管理装置、仕様管理方法及び仕様管理プログ
ラムに関する。
システム及びソフトウェアの開発を行う際には、これらの作業のアウトプットとしてド
キュメントを別途作成する必要がある。このドキュメントとしては、例えば、設計の図面
やプログラムの仕様等があり、作成はCASEツール等を用いて行われる。
なお、システム及びソフトウェアの開発では、分析、設計、開発、テストのライフサイ
クルを考慮する必要がある。これらのライフサイクルの入力情報は、顧客からの要件を基
に決定される。この顧客要件は、ライフサイクルを通じて、要求仕様、機能仕様、設計仕
様、テストシナリオ、コンポーネント、テスト結果、製品等に具体化される。同様に、ラ
イフサイクルを通じて、要求仕様書、機能仕様書、ソフトウェア・システム設計書、テス
ト仕様書、テスト成績書、詳細設計書、テスト完了報告書、出荷報告書等のドキュメント
に文書化される。
このようにシステム及びソフトウェアを開発する際に、設計及びそのドキュメント作成
において、ソフトウェアを構成する設計要素をオブジェクトとして捉え、関連するオブジ
ェクトを閲覧できるようにする手法(特許文献1参照)が開示されている。
特開2001−27947号公報
しかしながら、既存のCASE(Computer Aided Software Engineering :コンピュータ
支援ソフトウェア工学)ツールでは、ドキュメントの図面、仕様等は、正式な設計仕様書
、要求仕様書のドキュメントを構成する要素の一部または断片に過ぎず、正式な設計仕様
書、要求仕様書を作成するには、表紙、目次、章立、変更履歴及び裏表紙等を定義し、ま
た各章節には、概要や条件を示す文章等を記述する必要があった。また、機能の要件に変
更があった場合、CASEツールとドキュメント間との連携はないため、CASEツール
等を利用して作成した部分の修正と、正式なドキュメント上への修正の反映は、分離して
行わねばならなかった。
特許文献1においては、オブジェクト(モデル)とドキュメントに分離された状態で、
各項目のリレーション情報を詳細に定義することはできなかった。また、設計の一部の要
素とプログラム及びテスト結果の関係等の管理を行っていても、ライフサイクル全体を通
じて、要求仕様、機能仕様、設計仕様、テストシナリオ、コンポーネント、テスト結果、
製品に具体化されていく個々の要素の相互関係を管理することはできなかった。
更に、特許文献1を初めとする従来の技術においては、あるモデルに修正が生じた場合
、修正の影響範囲や、関連したモデルをどのように修正すればよいかが不明瞭であった。
従って、顧客要求に変更が生じた場合、要求の変更が、どの範囲まで波及するのかは、開
発者に依存することとなり、特定の要件の変更が、どの機能、どのプログラム、どのコン
ポーネント等に及ぶのかを判断してモデル要素の修正を行う際には開発者の経験等に頼る
しかなかった。
そして、要求仕様書、設計仕様書、詳細設計書等のドキュメントは、修正したモデル要
素に基づいて修正される為、ドキュメントの作成においても開発者の経験やスキルレベル
により変更管理処理に違いが生じ、システム・ソフトウェア全体の品質低下をもたらすこ
ととなっていた。
本発明は、上記問題点を解決するためになされたものであり、システム及びソフトウェ
アの仕様の定義決定、登録、更新等を行い、この仕様を基にドキュメントを作成する仕様
管理装置、仕様管理方法及び仕様管理プログラムを提供することを目的とする。
上記の問題点を解決するための本発明の特徴は、ソフトウェア若しくはシステムの開発プロセスにおいて、顧客の要件を実現するために具体化される仕様の管理者が使用する管理者端末及び前記仕様を生成するユーザが使用するユーザ端末に接続される仕様管理装置であって、前記管理者端末によって、開発プロセスで具体化する仕様の型を定義するモデルクラスのデータ、前記仕様に関する2つのモデル間の関連の型を定義するモデル間関連クラスのデータ、前記仕様に基づいて開発プロセスで作成されるドキュメントの型を定義するドキュメントクラスのデータ、及び任意のモデルと当該モデルの仕様に基づいて生成されるドキュメントの間の関連の型を定義するモデルドキュメント間関連クラスのデータを含む設計メタ情報を格納する設計メタ情報記憶部と、前記設計メタ情報記憶部内の前記設計メタ情報を継承し、前記ユーザ端末からの要求により、モデルインスタンスのデータ、モデル間関連インスタンスのデータ、ドキュメントインスタンスのデータ及びモデルドキュメント関連インスタンスのデータを含む設計情報を定義する設計情報定義部と、前記設計情報を格納する設計情報記憶部と、前記ユーザ端末より受信するドキュメント生成要求に基づいて、前記設計情報記憶部より前記設計情報を取得し、ドキュメントを作成する設計書生成部とを備え、前記モデルインスタンスのデータは、前記仕様の最小単位の実体のデータであり、前記ドキュメントインスタンスのデータは、前開発プロセスに係る開発のライフサイクルを通じて作成するドキュメントの最小単位の実体のデータであり、前記モデルドキュメント関連インスタンスのデータは、前記モデルインスタンスと前記ドキュメントインスタンスとして定義した、任意のモデルインスタンスとドキュメントインスタンス間の関連情報のデータであって、前記モデルドキュメント間関連クラスとして定義した関連の型の実体のデータであり、前記設計情報は、前記モデルインスタンス、前記ドキュメントインスタンス、および前記モデル間関連インスタンスを有することを特徴とする仕様管理装置、この装置に対応した方法、及びプログラムであることを要旨とする。
本発明の仕様管理装置、仕様管理方法、及び仕様管理プログラムによると、開発のライ
フサイクルで作成されるあらゆる成果物及び成果物間の関係を、モデル要素、モデル要素
間の関係、ドキュメント及びその構成、モデル要素及びドキュメント要素との関係の4種
類に分類して定義し、登録管理することにより、入力されるモデル要素の情報と予め定義
されるドキュメントの情報に基づいて、ドキュメントを自動生成することが出来る。
モデル要素に変更及び修正を行う場合には、他に影響のあるモデル要素及びドキュメン
トの修正箇所等を特定し、定義が不完全なモデル要素、要件変更の修正が完了していない
ドキュメント等を抽出し、これらが満たすべき制約条件を定義する。これにより、モデル
要素及びドキュメント間の整合をとり、品質を安定させることが出来る。
ライフサイクル全体のあらゆるドキュメントを蓄積することが出来る為、一部のドキュ
メントデータ等が必要になった際にでも、速やかに蓄積されたドキュメントから所望のデ
ータを取得することが出来る。
モデル要素及びドキュメント間の整合がとれている為、仕様間の矛盾や対応の漏れを防
止することが出来、ひいては全体の開発コストを下げることが出来る。
管理者及びユーザの目的に応じて、任意のドキュメントを自由に生成することが出来、
仕様が変更されてもドキュメントそのものを変更する必要が無く、レイアウト等の変更に
関してもプログラム上で対応することが出来る。
仕様管理装置の全体構成を示す構成図である。 設計メタ情報定義部の構造を示す図である。 設計情報定義部の構造を示す図である。 設計情報検証管理部の構造を示す図である。 設計情報トレース管理部の構造を示す図である。 管理者によるメタ設計情報の定義の動作を示すフローチャートである。 ユーザによる設計情報の定義の動作を示すフローチャートである。 ユーザによる設計情報の定義と検証の動作を示すフローチャートである。 クラス制約条件の検証動作を示すフローチャートである。 インスタンス制約条件の検証動作を示すフローチャートである。 特定インスタンス制約条件の検証動作を示すフローチャートである。 ユーザによる設計情報のトレースと修正の動作を示すフローチャートである。 モデルインスタンス及びドキュメントインスタンスの変更点検出動作を示すフローチャートである。 モデル間関連インスタンス及びモデルドキュメント間関連インスタンスの変更点検出動作を示すフローチャートである。 ユーザによる仕様の定義の動作を示すフローチャートである。 モデルの入力画面を示す画面図である。 モデル間関連クラスの入力画面を示す画面図である。 ドキュメントクラスの入力画面を示す画面図である。 モデルドキュメント間関連クラスの入力画面を示す画面図である。 モデルインスタンスの入力画面を示す画面図である。 モデル間関連インスタンスの入力画面を示す画面図である。 ドキュメントインスタンスの入力画面を示す画面図である。 モデルドキュメント間関連インスタンスの入力画面を示す画面図である。 モデルのデータ形式を示す模式図である。 検証結果表示を示す画面図である。 トレース結果表示を示す画面図である。 トレース結果表示を示す画面図である。 モデル要素クラス及びドキュメントクラスの定義を示す模式図である。 モデル間関連インスタンスの定義例を示す図である。 ドキュメントの章節構造の例を示す図である。 ドキュメントの章節構造の例を示す図である。 モデルドキュメント及び関連インスタンスの実施例を示す図である。 モデルインスタンスの記述例を示す図である。 モデルインスタンスの記述例を示す図である。
次に、図面を参照して、本発明の実施の形態を説明する。以下の図面の記載において、
同一又は類似の部分には同一又は類似の符号を付している。ただし、図面は模式的なもの
であることに留意すべきである。
<モデルのデータ形式>
図1に示す仕様管理装置100の各モジュールの具体的な説明に入る前に、本発明の特
徴であるモデルのデータ形式について図24を用いて説明する。モデルのデータ形式とは
、管理者が設計メタ情報を定義する際にベースとする、本発明の中核をなす設計モデル、
ドキュメント、これらの間の関連情報の基礎情報となる。
(設計メタ情報)
設計メタ情報として、モデルのデータ形式である「モデルクラス」「モデル間関連クラ
ス」「ドキュメントクラス」「モデルドキュメント間関連クラス」を基底クラスとして備
える。なお、クラスとは、オブジェクト指向の技術分野にて定義されたデータの型を指す
図24は、オブジェクト指向技術記法であるUML(Unified Modeling Language)に
則って記載されたクラス図であり、長方形はクラスを表し、長方形間の直線はクラス間の
関連を表す。クラス内は、3つに分けて表現され、上段はクラス名、中段は属性、下段に
は操作が記述される。全ての操作1c,2c,3c,4cは、斜体文字で示されている。
操作1c〜4cは、抽象操作を示し、本クラスを継承するクラスを管理者が定義する際に
、本クラスの特性に応じて、操作の実体を再定義する。
モデルクラス1は、開発のライフサイクルを通じて作成する仕様の最小単位の型である
。モデルクラスのデータは、この型のデータである。また、モデルクラス1は、全てのモ
デルクラスの親クラスであり、管理者は、当該クラスの子クラスとして、具体的なモデル
毎にモデルクラスを定義する。
モデルクラス1は、クラス名1aとして「モデル」、属性1bとして「モデル名」「モ
デルID」「バーション」「修正可能性フラグ」「変更履歴」、この他「識別子」等の属
性を備える。操作1cとしては「クラス制約条件検証( )」操作、「インスタンス制約
条件検証( )」操作、「特定インスタンス制約条件検証( )」操作を備える。なお、
これら操作の制約条件については後述する。
属性1bの「From」には関連元のクラス名、「To」には関連先のクラス名、「バーショ
ン」にはバーション情報を、「修正可能性フラグ」には修正が必要となる可能性のあるフ
ラグ“ON”又は修正不要フラグ“OFF”を、「変更履歴」には変更済みの履歴情報を記載
する。
モデルクラス1を継承してあらたにクラスを定義する場合、操作1cの「クラス制約条
件検証( )」操作及び「インスタンス制約条件検証( )」操作は、管理者が定義する
。「特定インスタンス制約条件検証( )」操作は、あらたに定義したクラスのインスタ
ンスを定義する際、ユーザが定義する。
複数のモデルクラスの間には、親と子の関係を備える場合がある。この場合の親子関係とは、親の要素として、子となるクラスが対応する、全体と部分の関係を持つことを指す。
モデル間関連クラス2は、モデルとして定義した任意の2つのモデル間の関連の型であ
る。モデル間関連クラスのデータは、この型のデータである。開発のライフサイクルを通
じて作成する仕様には様々な種類があり、入力関係、参照関係、設計と対応する検証仕様
の関係等の関連にも様々な種類がある為、これらの関連をモデル間関連クラス2にて定義
する。
モデル間関連クラス2は、全てのモデル間関連クラスの親クラスであり、管理者は当該
クラスの子クラスとしてドキュメントに含まれる具体的なモデル間関連毎にモデル間関連
クラスを定義する。
モデル間関連クラス2は、クラス名2aとして「モデル間関連」、属性2bとしてモデ
ルクラス1の属性1bと同様の「From」「To」「バーション」「修正可能性フラグ」「変
更履歴」、この他「説明」「関連元モデルリスト」「関連先モデルリスト」等の属性を備
える。操作2cとしてはモデルクラス1の操作3cと同様の操作と、必要に応じて「制約
条件による関連の検証」の操作も備える。
ドキュメントクラス3は、開発のライフルサイクルを通じて作成するドキュメント(文
書)の最小単位の型である。ドキュメントクラスのデータは、この型のデータである。ま
た、ドキュメントクラス3は、全てのドキュメントクラスの親クラスであり、管理者は当
該クラスの子クラスとして具体的なドキュメント毎にドキュメントクラスを定義する。ド
キュメントクラス3は、クラス名3aとして「ドキュメント」、属性3bとしてモデルク
ラス1の属性1bと同様の「ドキュメント名称」「ドキュメントID」「バーション」「
修正可能性フラグ」「変更履歴」、この他「識別子」「説明」「サブドキュメントリスト
」等の属性を備える。操作3cとしては、モデルクラス1と同様の操作を備える。
複数のドキュメントクラス3の間には、親と子の関係を備える場合がある。この場合の
親子関係とは、親の要素として、子となるクラスが対応する、全体と部分の関係を持つこ
とを指す。
モデルドキュメント間関連クラス4は、「モデル」「ドキュメント」として定義した、
任意のモデルとドキュメントの間の関連の型である。モデルドキュメント間関連クラスの
データは、この型のデータである。開発のライフサイクルを通じて作成するドキュメント
は、同じく開発のライフサイクルを通じて作成する仕様情報であり「モデル」の情報に基
づいて文章として作成する。このとき「モデル」と「ドキュメント」の関係には、要求と
要求仕様書、設計仕様と設計仕様書、テストシナリオとテスト仕様書等の様々な関連が存
在するため、そのような関連の型をモデルドキュメント間関連クラス4にて定義する。
また、モデルドキュメント間関連クラス4は、全てのモデルドキュメント間関連クラス
の親クラスであり、管理者は当該クラスの子クラスとしてドキュメントに含まれる具体的
なモデルドキュメント間関連毎にモデルドキュメント間関連クラスを定義する。
モデルドキュメント間関連クラス4は、クラス名4aとして「モデルドキュメント間関
連」、属性4bとしてモデルクラス1の属性1bと同様の「From」「To」「バーション」
「修正可能性フラグ」「変更履歴」、この他「説明関連元モデルリスト」「関連先ドキュ
メントリスト」等の属性を備える。操作4cとしてモデルクラス1の操作1cと同様であ
り、必要に応じて「制約条件による関連の検証」の操作を備える。
(設計情報)
設計情報は、上記した4つの各クラスによって作成されるデータの実態であり、「モデ
ルインスタンス」「モデル間関連インスタンス」「ドキュメントインスタンス」「モデル
ドキュメント関連インスタンス」を備える。なお、図示しないが、これらのインスタンス
も図24のクラスと同様に、インスタンス内は、3つに分けて表現され、上段にはインス
タンスの名称、中段には属性、下段には操作が記述される。操作は、抽象操作を示す。操
作の実体は、上記した親クラスを継承するインスタンスをユーザが定義する際に、親クラ
スの特性に応じて、定義する。
モデルインスタンスは、開発のライフサイクルを通じて作成する仕様の最小単位の実体
である。モデルインスタンスのデータは、この実体のデータである。モデルインスタンス
の属性としては、親となるモデルクラスの識別子、インスタンスの識別子および名称(説
明)、子となるモデルインスタンスの識別子を備える。モデルインスタンスの操作として
は、必要に応じて、制約条件による仕様検証の操作を備える。
モデル間関連インスタンスは、モデルインスタンスとして定義した任意の2つのモデル
インスタンス間の関連情報であり、モデル間関連クラスとして、定義した関連の型の実体
である。モデル間関連インスタンスのデータは、この実体のデータである。モデル間関連
インスタンスの属性としては、親となるモデル間関連識別子、関連元のモデルインスタン
ス識別子、関連先のモデルインスタンス識別子を備える。モデル間関連インスタンスの操
作としては、必要に応じ、制約条件による関連の検証の操作を備える。
ドキュメントインスタンスは、開発のライフサイクルを通じて作成するドキュメント(
文書)の最小単位の実体である。ドキュメントインスタンスのデータは、この実体のデー
タである。ドキュメントインスタンスの属性としては、親となるドキュメントクラスの識
別子、ドキュメントインスタンスの識別子および名称(説明)、子となるドキュメントイ
ンスタンスの識別子を備える。ドキュメントインスタンスの操作としては、必要に応じ、
制約条件によるドキュメント検証の操作を備える。
モデルドキュメント間関連インスタンスは、モデルインスタンスとドキュメントインス
タンスとして定義した、任意のモデルインスタンスとドキュメントインスタンス間の関連
情報であり、モデルドキュメント間関連クラスとして定義した関連の型の実体である。モ
デルドキュメント間関連インスタンスのデータは、この実体のデータである。モデルドキ
ュメント間関連インスタンスの属性としては、親となるモデルドキュメント間関連識別子
、関連元のモデルインスタンス識別子、関連先のドキュメントインスタンス識別子を備え
る。モデルドキュメント間関連インスタンスの操作としては、必要に応じ、制約条件によ
る関連の検証の操作を備える。
(制約条件)
上記において、設計メタ情報において図24の操作1c,2c,3c,4cの「クラス
制約条件検証( )」操作、「インスタンス制約条件検証( )」操作、「特定インスタ
ンス制約条件検証( )」操作を備え、設計情報である4つのインスタンスも各操作を備
えると上述したが、以下でこれらクラス及びインスタンスを定義するための制約条件につ
いて説明する。
制約条件は、「モデル」、「モデル間関連」、「ドキュメント」、及び「モデルドキュ
メント間関連」のそれぞれに、必要に応じて、設定するルールである。具体的に制約条件
としては、例えば「テスト」というモデルであれば、テストモデルの一つ一つには「入力
と出力が定義されていなければならない」、テストモデルの集合には、「機能モデルから
関連されていないテストモデルは存在してはならない」等のルールを設定する。
制約条件には、クラスに関する制約条件、クラスに属するインスタンスに広く適用され
る制約条件、ある特定のインスタンスにだけ適用される制約条件がある。クラスの制約条
件とインスタンスの制約条件は、モデルクラス1、モデル間関連クラス2、ドキュメント
クラス3及びモデルドキュメント間関連クラス4において、管理者が必要に応じて、「ク
ラス制約条件検証( )」操作、「インスタンス制約条件検証( )」操作として定義す
る。また、特定のインスタンスの制約条件は、各クラスのインスタンスにおいて、ユーザ
が必要に応じて、「特定インスタンス制約条件検証( )」操作として定義する。
<仕様管理装置>
本発明の実施の形態における仕様管理装置100は、図1のユーザインタフェース部4
0、仕様定義トレース管理部10、データベース格納部20、テンポラリデータ格納部3
0等より構成される。
ユーザインタフェース部40は、仕様管理装置100を使用するユーザのユーザ端末4
1、このシステムを管理する管理者の管理者端末42間を接続するモジュールである。管
理者端末42は、パーソナルコンピュータ等の端末であり、管理者の操作によって、設計
メタ情報を定義し、開発プロセスを整備する。ユーザ端末41は、パーソナルコンピュー
タ等の端末であり、ユーザの操作によって設計情報を定義し、ドキュメントを生成させる
データベース格納部20は、設計メタ情報記憶部21及び設計情報記憶部22等より構
成される。
設計メタ情報記憶部21は、ドキュメント構成、ドキュメントに含まれるモデルの構成
、(特定インスタンスのそれを除く)制約条件等の仕様の型である設計メタ情報を格納する
。設計メタ情報は、管理者により後述する設計メタ情報定義部11にて、用意された抽象
クラスを継承して定義される。
設計情報記憶部22は、モデル、ドキュメント、それらの関連の具体的な内容、特定イ
ンスタンスの制約条件等から成る設計情報を格納する。設計情報は、ユーザにより後述す
る設計情報定義部12にて、クラスのインスタンスとして定義される。
テンポラリデータ格納部30は、制約エラー記憶部31、変更点記憶部32及びトレー
ス記憶部33等から構成される。制約エラー記憶部31は、制約条件を満たさない制約エ
ラーを記憶する。変更点記憶部32は、バージョン間の変更点を記憶する。トレース記憶
部33は、トレースの為に必要な情報を記憶する。
なお、データベース格納部20及びテンポラリデータ格納部30はハードウェアに備え
られる記憶装置である。
仕様定義トレース管理部10は、設計メタ情報定義部11、設計情報定義部12、設計
情報構成管理部13、設計情報検証管理部14、設計情報トレース管理部15及び設計書
生成部16等から構成される。
設計メタ情報定義部11は、管理者端末42からの要求により、図24に示される、モ
デルクラス、モデル間クラス、ドキュメントクラス、モデルドキュメント間関連クラス等
の設計メタ情報を定義する。定義した設計メタ情報は設計メタ情報記憶部21に格納され
る。
設計情報定義部12は、ユーザ端末41からの要求により、設計書に含まれる要素、ド
キュメント等の設計情報を定義する。定義した設計情報は設計情報記憶部22に格納され
る。
設計情報構成管理部13は、ユーザ端末41からの要求により、設計情報全体にバージ
ョンを設定し、バージョンを指定して取り出す。なお、個々のモデル、モデル間関連、ド
キュメント、モデルドキュメント間関連は、構成管理情報として、バージョン毎に設計情
報記憶部22に格納される。
設計情報検証管理部14は、ユーザ端末41からの要求により、定義した設計情報が制
約条件を満たしているか否かを確認する。この時検出された制約エラーは制約エラー記憶
部31に格納される。
設計情報トレース管理部15は、ユーザ端末41からの要求により、設計情報の修正影
響範囲を修正前に確認し、更に、設計情報の修正影響範囲と変更内容を修正後に確認する
。この時検出された変更点は変更点記憶部32に格納される。なお、設計情報の修正影響
範囲はトレース記憶部33に格納される。
設計書生成部16は、ユーザ端末41からの要求により、設計書を生成する。
(設計メタ情報定義部)
設計メタ情報定義部11は、図2に示すように、モデルクラス定義部11a、モデル間
関連クラス定義部11b、ドキュメントクラス定義部11c及びモデルドキュメント間関
連クラス定義部11d等を備え、データベース格納部20の設計メタ情報記憶部21に接
続されている。
モデルクラス定義部11aは、モデル入力画面を管理者端末42に提示し、受信した操
作信号により、クラス名、親クラス名、クラス制約条件、インスタンス制約条件等を定義
する。この他、新規クラスの追加、既存クラスの変更、既存クラスの削除等の処理を行う
モデル間関連クラス定義部11bは、モデル間関連クラス入力画面を管理者端末42に
提示し、受信した操作信号により、クラス名、親クラス名、クラス制約条件、インスタン
ス制約条件等を定義する。この他、新規クラスの追加、既存クラスの変更、既存クラスの
削除等の処理を行う。
ドキュメントクラス定義部11cは、ドキュメント入力画面を管理者端末42に提示し
、受信した操作信号により、クラス名、親クラス名、クラス制約条件、インスタンス制約
条件等を定義する。この他、新規クラスの追加、既存クラスの変更、既存クラスの削除等
の処理を行う。
モデルドキュメント間関連クラス定義部11dは、モデルドキュメント間関連クラス入
力画面を管理者端末42に提示し、受信した操作信号により、クラス名、親クラス名、ク
ラス制約条件、インスタンス制約条件等を定義する。この他、新規クラスの追加、既存ク
ラスの変更、既存クラスの削除等の処理を行う。
(設計情報定義部)
設計情報定義部12は、図3に示すように、モデルインスタンス定義部12a、モデル
間関連インスタンス定義部12b、ドキュメントインスタンス定義部12c及びモデルド
キュメント間関連インスタンス定義部12d等を備え、データベース格納部20の設計情
報記憶部22に接続されている。
モデルインスタンス定義部12aは、のモデルインスタンス入力画面をユーザ端末41
に提示し、受信した操作信号によりインスタンスを生成する型となるクラス名、インスタ
ンスの識別子、インスタンスの内容、サブモデルのリスト、特定インスタンス制約条件等
を定義する。なお、定義されたモデルインスタンスはユーザ端末41上に表示され、設計
情報記憶部22に格納される。この他、新規インスタンスの追加、既存インスタンスの変
更、既存インスタンスの削除等を行う。
モデル間関連インスタンス定義部12bは、モデル間関連インスタンス入力画面をユー
ザ端末41に提示し、受信した操作信号により、インスタンスを生成する型となるクラス
名、インスタンスの識別子、インスタンスの内容、サブモデルのリスト、特定インスタン
ス制約条件等を定義する。モデル間関連インスタンス定義はユーザ端末41上に表示され
る。この他、新規インスタンスの追加、既存インスタンスの変更、既存インスタンスの削
除等を行う。
ドキュメントインスタンス定義部12cは、ドキュメントインスタンス入力画面をユー
ザ端末41に提示し、受信した操作信号により、インスタンスを生成する型となるクラス
名、インスタンスの識別子、インスタンスの内容、サブモデルのリスト、特定インスタン
ス制約条件を定義する。この他、新規インスタンスの追加、既存インスタンスの変更、既
存インスタンスの削除等を行う。
モデルドキュメント間関連インスタンス定義部12dは、モデルドキュメント間関連イ
ンスタンス入力画面をユーザ端末41に提示し、受信した操作信号により、インスタンス
を生成する型となるクラス名、インスタンスの識別子、インスタンスの内容、サブモデル
のリスト、特定インスタンス制約条件を定義する。なお、モデルドキュメント間関連イン
スタンス定義はユーザ端末41上に表示される。この他、新規インスタンスの追加、既存
インスタンスの変更、既存インスタンスの削除等を行う。
(設計情報検証管理部)
設計情報検証管理部14は、図4に示すように、設計情報検証部14a及び設計情報検
証エラー表示部14e等を備え、データベース格納部20の設計情報記憶部22と、テン
ポラリデータ格納部30の制約エラー記憶部31に接続されている。
設計情報検証部14aは、クラス制約条件検証部14b、インスタンス制約条件検証部
14c及び特定インスタンス制約条件検証部14dを備える。クラス制約条件検証部14
bは、全ての「クラス制約条件検証( )」操作を起動させ、設計情報が制約条件を満た
しているか検証する。インスタンス制約条件検証部14cは、全ての「インスタンス制約
条件検証( )」操作を起動させ、設計情報が制約条件を満たしているか検証する。特定
インスタンス制約条件検証部14dは、全ての「特定インスタンス制約条件検証( )」
操作を起動させ、設計情報が制約条件を満たしているか検証する。検証結果は制約エラー
記憶部31に格納する。
設計情報検証エラー表示部14eは、検証エラー結果として、制約エラー記憶部31等
の情報を、検証結果としてユーザ端末41又は管理者端末42に表示させる。なお、表示
された検証結果を基にユーザ端末41又は管理者端末42は制約エラーを修正する。
(設計情報トレース管理部)
設計情報トレース管理部15は、図5に示すように、設計情報変更点検出部15a及び
修正影響範囲表示部15d等を備え、データベース格納部20の設計情報記憶部22と、
テンポラリデータ格納部30の制約エラー記憶部31、変更点記憶部32及びトレース記
憶部33と接続されている。
設計情報変更点検出部15aは、モデルドキュメントインスタンス変更点検出部15b
及び関連インスタンス変更点検出部15cを備える。モデルドキュメントインスタンス変
更点検出部15bは、モデルインスタンス及びドキュメントインスタンスの変更点を検出
する。関連インスタンス変更点検出部15cは、モデル間関連インスタンス及びモデルド
キュメント間関連インスタンスの変更点を検出する。変更点の検出処理では、バージョン
を指定して設計情報記憶部22から取り出した設計情報Aと、設計情報定義部12で定義
中の設計情報Bとの間において「AになくBにあるインスタンスの検出」「AにありBに
ないインスタンスの検出」「B中の各インスタンス毎に、AからBへの変更点の識別」を
行う。
修正影響範囲表示部15dは、設計情報記憶部22と変更点記憶部32情報を基に修正
影響範囲の情報をトレースし、ユーザ端末41上に表示する。なお、トレースの情報はト
レース記憶部33に格納される。修正影響範囲表示部15dが表示したトレースを基に、
ユーザ端末41はトレース情報を修正する。
<仕様管理方法>
仕様管理装置100の動作は大まかに、
1.管理者端末42による、設計メタ情報定義部11を用いた、メタ設計情報の定義
2.ユーザ端末41による、設計情報定義部12を用いた、設計情報の定義
3.ユーザ端末41による、設計情報定義部12及び設計情報検証管理部14を用いた、
設計情報の定義と検証
4.ユーザ端末41による、設計情報定義部12及び設計情報トレース管理部15を用い
た、設計情報のトレースと修正
5.ユーザ端末41による、設計書生成部16を用いた、仕様の定義
に分けられる。以下、これらの動作について図面を参照して説明する。
(メタ設計情報定義の動作)
管理者端末42による、設計メタ情報定義部11を用いた、メタ設計情報定義の動作に
ついて、図6のUML記法のシーケンス図を用いて説明する。
(a)まず、ステップS101においては、設計メタ情報定義部11のモデルクラス定義
部11aは、管理者端末42上に図16のモデル入力画面を表示させ、ユーザインタフェ
ース40を介して、管理者端末42よりモデルクラスの定義を取得する。ステップS10
2においてモデルクラス定義部11aは、取得したモデルクラスの定義を設計メタ情報記
憶部21に格納する。
(b)ステップS101〜S102と同様に、ステップS103〜S104ではモデル間
関連クラス定義部11bが図17のモデル間関連クラス入力画面を提示してモデル間関連
クラスの定義を取得し、設計メタ情報記憶部21に格納する。ステップS105〜S10
6ではドキュメントクラス定義部11cが図18のドキュメント入力画面を提示してドキ
ュメントクラスの定義を取得し、設計メタ情報記憶部21に格納する。ステップS107
〜S108ではモデルドキュメント間関連クラス定義部11dが図19のモデルドキュメ
ント間関連クラス入力画面を提示してモデルドキュメント間関連クラスの定義を取得し、
設計メタ情報記憶部21に格納する。
(設計情報定義の動作)
次に、ユーザ端末41による、設計情報定義部12を用いた、設計情報定義の動作につ
いて図7のUML記法のシーケンス図を用いて説明する。
(a)まず、ステップS201においては、設計情報定義部12のモデルインスタンス定
義部12aは、図20のモデルインスタンス入力画面をユーザ端末41に提示し、入力さ
れたモデルインスタンスの定義をユーザインタフェース40を介して取得する。ステップ
S202においてモデルインスタンス定義部12aは、取得したモデルインスタンスの定
義を設計情報記憶部22に格納する。
(b)ステップS201〜S202と同様に、ステップS203〜S204ではモデル間
関連インスタンス定義部12bが図21のモデル間関連インスタンス入力画面をユーザ端
末41に提示し、モデル間関連インスタンスの定義を取得し、設計情報記憶部22に格納
する。ステップS205〜S206ではドキュメントインスタンス定義部12cが図22
のモデル間関連インスタンス入力画面をユーザ端末41に提示し、ドキュメントインスタ
ンスの定義を取得し、設計情報記憶部22に格納する。ステップS207〜S208では
モデルドキュメント間関連インスタンス定義部12dが図23のモデル間関連インスタン
ス入力画面をユーザ端末41に提示し、モデルドキュメント間関連インスタンスの定義を
取得して設計情報記憶部22に格納する。
(c)ステップS209においては、必要に応じてユーザ端末41が、仕様・設計情報の
構成情報を検索する際は、ユーザインタフェース40を通して、仕様・設計の構成情報の
表示要求を設計情報構成管理部13に送信する。ステップS210においては、これを受
信した設計情報構成管理部13は、設計情報記憶部22内より表示要求に適合する情報を
検索し、ステップS211においては、ユーザインタフェース40を通して検索結果をユ
ーザ端末41に表示させる。
(設計情報定義検証の動作)
次に、ユーザ端末41による、設計情報定義部12及び設計情報検証管理部14を用い
た設計情報の定義と検証の動作について図8のUML記法のシーケンス図を用いて説明す
る。
(a)まず、ステップS201〜S208と同様に、ステップS301〜S308におい
ては、モデルインスタンス、モデル間関連インスタンス、ドキュメントインスタンス及び
モデルドキュメント間関連インスタンスの各々のクラス制約条件、インスタンス制約条件
及び特定インスタンス制約条件を、図16〜23の画面上にて定義し、設計情報記憶部2
2に格納する。
(b)ステップS309においては、ユーザ端末41が設計情報定義後に定義内容を検証
する際は、ユーザインタフェース40を通して、設計情報の検証要求が、設計情報検証管
理部14に送信される。ステップS310においては、これを受信した設計情報検証管理
部14は、この検証要求を基に設計情報記憶部22内を検索する。ステップS311にお
いては、設計情報検証管理部14は、この検索結果を検証要求に基づいて検証する。ステ
ップS312において、検証結果は制約エラー記憶部31に登録される。
なお、ステップS310〜312の動作は、図4の設計情報検証管理部14内のクラス
制約条件検証部14b、インスタンス制約条件検証部14c及び特定インスタンス制約条
件検証部14dの各々によって行われる。
クラス制約条件検証部14bの動作は、図9のフローチャートに示すように、ステップ
S31にて全てのクラスより1つのクラスを取得し、ステップS32にてそのクラスが持
つ全てのクラス制約条件より1つのクラス制約条件を取得する。ステップS33では、取
得した1つのクラスが取得した1つのクラス制約条件を満たしているかを判定する。判定
の結果クラス制約条件を満たしていないなら、ステップS34へ進み、取得した1つのク
ラスが取得した1つのクラス制約条件を満たしていないことを制約エラー記憶部31に格
納する。判定の結果クラス制約条件を満たしているなら、この処理を終了し、次のクラス
制約条件を取得する。
ステップS33〜S34の動作は、1つのクラスに対する全てのクラス制約条件が終了
するまでループ処理され(ステップS32)、更に、ステップS32〜S34の動作は全
てのクラスが終了するまでループ処理される(ステップS31)。つまり、全てのクラス
の全てのクラス制約条件に対して制約エラーの検証が行われる。
インスタンス制約条件検証部14cの動作は、ほぼクラス制約条件検証部14bと同じ
であり、図10のフローチャートに示すように行われる。まず、ステップS41にて全て
のクラスより1つのクラスを取得し、ステップS42にてそのクラスに属する全てのイン
スタンスより1つのインスタンスを取得し、ステップS43にてそのクラスが持つ全ての
インスタンス制約条件の1つを取得する。ステップS44では、取得した1つのインスタ
ンスが、取得した1つのインスタンス制約条件を満たしているかを判定する。判定の結果
クラス制約条件を満たしていないなら、ステップS34へ進み、取得した1つのクラスが
取得した1つのインスタンス制約条件を満たしていないことを制約エラー記憶部31に格
納する。判定の結果インスタンス制約条件を満たしているなら、この処理を終了し、次の
インスタンス制約条件を取得する。
ステップS44〜S45の動作は、1つのクラスが持つ全てのインスタンス制約条件が
終了するまでループ処理され(ステップS43)、更に、ステップS43〜S45の動作
はクラスに属する全てのインスタンスが終了するまでループ処理され(ステップS42)
、更に、ステップS42〜S45の動作は全てのクラスが終了するまでループ処理される
(ステップS41)。つまり、全てのクラスに属する全てのインスタンス制約条件に対し
て制約エラーの検証が行われる。
特定インスタンス制約条件検証部14dの動作は、ほぼクラス制約条件検証部14bと
同じであり、図11のフローチャートに示すように行われる。ステップS51にて全ての
インスタンスより1つのインスタンスを取得し、ステップS52にてそのインスタンスが
持つ全ての特定インスタンス制約条件より1つの特定インスタンス制約条件を取得する。
ステップS53では、取得した1つのインスタンスが取得した1つの特定インスタンス制
約条件を満たしているかを判定する。判定の結果クラス制約条件を満たしていないなら、
ステップS54へ進み、取得した1つのインスタンスが取得した1つの特定インスタンス
制約条件を満たしていないことを制約エラー記憶部31に格納する。判定の結果特定イン
スタンス制約条件を満たしているなら、この処理を終了し、次の特定インスタンス制約条
件を取得する。
ステップS53〜S54の動作は、1つのインスタンスに対する全ての特定インスタン
ス制約条件が終了するまでループ処理され(ステップS52)、更に、ステップS52〜
S54の動作は全てのインスタンスが終了するまでループ処理される(ステップS51)
。つまり、全てのインスタンスの全ての特定インスタンス制約条件に対して制約エラーの
検証が行われる。
(c)ステップS313においては、検証結果はユーザインタフェース40を介して、ユ
ーザ端末41に表示される。
例えば制約条件として、RQ1〜RQ8が要求のモデルのインスタンスであり、要求のモデル
の制約条件として全ての要求はいずれかの機能のインスタンスと関連づく必要があること
、更に、F1からF9が機能のクラスのインスタンスであり、機能のクラスの制約条件として
全ての機能はいずれかの要求のインスタンスと関連づく必要があること等が定義されたと
仮定すると、図25に示すような画面がユーザ端末41に表示される。
図25の右下欄には、この定義で仕様検証を実施した結果、機能が対応づいていない要
求仕様、及び要求仕様が対応づいていない機能を検出したこと等の検証結果が表示される
。これによりユーザは機能の定義や範囲指定にエラーがあることを知り、再定義を行う。
(設計情報トレース及び修正の動作)
次に、ユーザ端末41による、設計情報定義部12及び設計情報トレース管理部15を
用いた、設計情報のトレースと修正の動作について図12のUML記法のシーケンス図を
参照して説明する。図12では、既に定義した設計情報に対して何らかの変更が発生した
場合に、変更内容の影響範囲をトレースした上で、影響範囲内の設計情報を修正する際の
動作について説明する。この際、設計情報は、図7又は図8で説明した設計情報定義の動
作により設計情報記憶部22に登録されているものとする。
(a)まず、ステップS401においては、ユーザ端末41は、ユーザインタフェース部
40を通して、設計情報のトレース要求を送信する。ステップS402においては、この
トレース要求を受信した設計情報トレース管理部15は、設計情報記憶部22よりトレー
ス要求を基に設計情報を検索する。ステップS403においては、設計情報トレース管理
部15は、この検索結果を基にトレースと変更点を検出する。ステップS404において
は、トレース結果及び変更点は、トレース記憶部33及び変更点記憶部32に登録される
。更に、ステップS405においては、トレース結果及び変更点は、ユーザインタフェー
スを通してユーザ端末41に提示される。
(b)ステップS406においては、ユーザはユーザ端末41上に提示されたトレース情
報及び変更点を参照し、必要に応じて設計情報定義部12にてモデルインスタンスを訂正
する。ステップS407においては、訂正されたモデルインスタンスは、設計情報記憶部
22に格納される。同様に、ステップS408〜S409にてモデル間関連インスタンス
を訂正し、設計情報記憶部22に格納する。ステップS410〜S411にてドキュメン
トインスタンスを訂正し、設計情報記憶部22に格納する。ステップS412〜S413
にてモデルドキュメント間関連インスタンスを訂正し、設計情報記憶部22に格納する。
(c)ステップS414においては、ユーザは、修正が確実に行われたかどうかを確認す
るために、必要に応じてトレースを要求する。トレース要求では、ユーザは変更対象にな
るモデルインスタンス又はドキュメントインスタンスを指定する。
(d)ステップS415においては、トレース要求を受信した設計情報トレース管理部1
5は、指定されたインスタンスに関連するインスタンスを設計情報記憶部22より検索す
る。ステップS416においては、設計情報トレース管理部15は、関連情報をトレース
し、変更点を検出する。ステップS417においては、この結果を変更点記憶部32及び
トレース記憶部33に格納する。ステップS418においては、ユーザ端末41上にトレ
ース結果を表示する。
なお、ステップS415〜S417は、モデルインスタンスとドキュメントインスタン
ス、モデル間関連インスタンスとモデルドキュメント間関連インスタンス毎に行われる。
まず、モデルインスタンスとドキュメントインスタンスのトレース変更点検出処理につい
て図13のフローチャートを用いて詳細に説明する。
(a)ステップS61においては、全てのモデルインスタンス及びドキュメントインスタ
ンス内より1つを取り出す。取り出されたインスタンスに対しては、以下のステップS6
2〜S67のループ処理を行う。つまり、ステップS62〜S67のループ処理を、全て
のモデルインスタンス及びドキュメントインスタンスの各々に対して行う。
(b)ステップS62においては、設計情報記憶部22より、現モデルインスタンス及び
現ドキュメントインスタンスの1つ前のバージョンに含まれるインスタンスを取り出す。
ステップS63においては、ステップS62で取得した前バージョンの前インスタンス
と現バージョンの現インスタンス間において、変更点があるか否かを判定する。変更点が
無ければこの処理を終了し、変更点が有るとステップS64へ進む。
ステップS64においては、現インスタンスと前インスタンスの変更点を取り出し、現
インスタンスのバージョンを変更する。
ステップS65においては、現インスタンスを関連元とする全てのモデル間関連インス
タンス及びモデルドキュメント間関連インスタンスの修正可能性フラグをONにし、当該全
てのモデル間関連インスタンス及びモデルドキュメント間関連インスタンスの全ての関連
先インスタンスの修正可能性フラグをONにする。
ステップS66においては、現インスタンスを関連先とする全てのモデル間関連インス
タンス及びモデルドキュメント間関連インスタンスの修正可能性フラグをONにし、当該全
てのモデル間関連インスタンス及びモデルドキュメント間関連インスタンスの全ての関連
元インスタンスの修正可能性フラグをONにする。
ステップS67においては、変更点を全て変更点記憶部32に格納する。
(c)ステップS68においては、設計情報記憶部22より、前バージョンに存在し、現
バージョンに存在しない全てのモデルインスタンス及びドキュメントインスタンス(削除
されたインスタンスを指す)と、前バージョンに存在せず、現バージョンに存在する全て
のモデルインスタンス及びドキュメントインスタンス(追加されたインスタンスを指す)
を取り出す。
ステップS69においては、ステップS68で取り出した削除されたインスタンス及び
追加されたインスタンスのうち1つを取り出し、以下のステップS70〜S72までのル
ープ処理を行う。なお、ステップS70〜S72までの処理はステップS68にて取り出
した全てのインスタンスの各々に対して行われる。
(d)ステップS70においては、現インスタンスを関連元とする全てのモデル間関連イ
ンスタンス及びモデルドキュメント間関連インスタンスの修正可能性フラグをONにし、当
該全てのモデル間関連インスタンス及びモデルドキュメント間関連インスタンスの全ての
関連先インスタンスの修正可能性フラグをONにする。
ステップS71においては、現インスタンスを関連先とする全てのモデル間関連インス
タンス及びモデルドキュメント間関連インスタンスの修正可能性フラグをONにし、当該全
てのモデル間関連インスタンス及びモデルドキュメント間関連インスタンスの全ての関連
元インスタンスの修正可能性フラグをONにする。
最後にステップS72においては、変更点を全て変更点記憶部32に格納する。
次に、モデル間関連インスタンスとモデルドキュメント間関連インスタンスのトレース
変更点検出処理について図14のフローチャートを用いて詳細に説明する。
(a)ステップS81においては、全てのモデル間関連インスタンス及びモデルドキュメ
ント間関連インスタンス内より1つを取り出す。取り出されたインスタンスに対しては、
以下のステップS82〜S87のループ処理を行う。つまり、ステップS82〜S87の
ループ処理を、全てのモデル間関連インスタンス及びモデルドキュメント間関連インスタ
ンスの各々に対して行う。
ステップS82においては、設計情報記憶部22より、現モデル間関連インスタンス及
び現モデルドキュメント間関連インスタンスの1つ前のバージョンに含まれるインスタン
スを取り出す。
(b)ステップS83においては、ステップS82で取得した前バージョンの前インスタ
ンスと現バージョンの現インスタンス間において、変更点があるか否かを判定する。変更
点が無ければこの処理を終了し、変更点が有るとステップS84へ進む。
ステップS84においては、現インスタンスと前インスタンスの変更点を取り出し、現
インスタンスのバージョンを変更する。ステップS85においては、現インスタンスの全
ての関連元インスタンス及び関連先インスタンスの修正可能性フラグをONにする。ステッ
プS86においては、前インスタンスの全ての関連元インスタンス及び関連先インスタン
スの修正可能性フラグをONにする。
ステップS87においては、変更点を全て変更点記憶部32に格納する。
(c)ステップS88においては、設計情報記憶部22より、前バージョンに存在し、現
バージョンに存在しない全てのモデル間関連インスタンス及びモデルドキュメント間関連
インスタンス(削除されたインスタンスを指す)と、前バージョンに存在せず、現バージ
ョンに存在する全てのモデル間関連インスタンス及びモデルドキュメント間関連インスタ
ンス(追加されたインスタンスを指す)を取り出す。
ステップS89においては、ステップS88にて取り出した削除されたインスタンス及
び追加されたインスタンス内より1つを取り出す。取り出されたインスタンスに対しては
、以下のステップS90〜S91のループ処理を行う。つまり、ステップS90〜S91
のループ処理を、ステップS88にて取り出した全ての削除されたインスタンス及び追加
されたインスタンスの各々に対して行う。
(d)ステップS90においては、削除されたインスタンス及び追加されたインスタンス
の全ての関連元インスタンス及び関連先インスタンスの修正可能性フラグをONにする。
ステップS91においては、変更点を全て変更点記憶部32に格納する。
ステップS418においては、トレース結果はユーザ端末41上に、例えば図26及び
図27のように表示される。図26の長方形の各々はモデルインスタンスを示しており、
現在の段階では、バージョン25の仕様クラス(TS1)のフラグは「OFF」、仕様クラスに
関連するインスタンスであるRQ1、RQ2、TC1、TC2においてもフラグが「OFF」となってい
るため、このトレースが正常に処理されたことを示している。ここで上記仕様クラスの削
除又は更新処理を行うと、図27の画面がユーザ端末41上に表示されたとする。図27
の画面では、全てのインスタンスのフラグが「ON」に、仕様クラスのバージョンが26に
変わっている為、ユーザは、先程行った削除又は更新処理が正しく行われておらず、設計
情報に修正を加える必要があると判断する。なお、ユーザがステップS406〜S412
においては、所定の修正を加えて再度トレース処理を実行すると、再び図26に示すよう
に全てのクラスが「OFF」となる。この際、仕様クラスのバージョンは再度1つ繰り上げ
られる。
(仕様定義の動作)
次に、ユーザ端末41による、設計書生成部16を用いた、仕様定義の動作について図
15のUML記法のシーケンス図を用いて説明する。
(a)ステップS501においては、ユーザ端末41は、ユーザインタフェース部40を
介して、ドキュメント生成要求を送信する。ステップS502においては、設計書生成部
16がこれを受信すると、受信したドキュメント生成要求に基づいて、設計情報記憶部2
2より該当する設計情報を検索する。ステップS503においては、この検索結果を基に
設計書生成部16は仕様書を作成する。ステップS504においては、作成した仕様書は
、設計情報記憶部22に登録される。ステップS505においては、仕様書の作成結果は
ユーザインタフェース40を介して、ユーザ端末41上に提示される。
<設計メタ情報及び設計情報の実施例>
次に、仕様管理装置100がソフトウェア又はシステムを開発して、同時に関連する仕
様書を作成した実施例を、図28のUML記法のクラス図を参照して説明する。図28の
抽象クラス名を示すモデル1a、モデル間関連2a、ドキュメント3a、ドキュメント間
関連4aは、図24の各クラスのクラス名であり、同じ内容を指している。図示しないが
図28に表示されている全ての各クラスは、図24と同様に、クラス、属性、操作の3構
造より構成されている。なお、図28内の長方形は全てクラスを表す。図中、白抜きの三
角は、クラス間の継承関係を示す。ひし形の図形は、クラス間の全体・部分の集約関係を
表す。
図28の設計メタ情報は、図24のモデルクラス1、モデル間関連クラス2、ドキュメ
ントクラス3及びモデルドキュメント間関連クラス4を継承するものであり、管理者が設
計メタ情報定義部11を介して定義する。設計メタ情報内の各クラス名は、設計メタ情報
としての事例を示している。
図28の設計情報は、設計メタ情報内の各々のクラスの各々のインスタンスから成り、
ユーザが設計情報定義部12を介して定義する。設計情報内の各クラス名は、設計情報と
しての事例を示している。
設計メタ情報の事例を詳細に説明すると、例えば、モデル1aを継承して、「要求仕様
5b」「要求12f」「システムテスト仕様6b」「システムテストケース13b」を定
義する。
(設計メタ情報)
設計メタ情報の事象について詳細に説明する。
モデル1aは子クラスとして要求仕様5a、システムテスト仕様6b、要求12f、シ
ステムテストケース13bを備えると定義する。要求仕様5bは、要求クラス12fを子
の要素として備えると定義する。システムテスト仕様6bは、システムテストケースクラ
ス13bを子の要素として備えると定義する。
モデル間関連2aは子クラスとして、「要求仕様-システムテスト仕様7b」を備える
と定義する。モデル間関連2aのインスタンスの定義は、一例として図29に示すように
、管理者端末42上に2つのモデル間のインスタンスを行列のマトリクスを表示し、2つ
のインスタンスが交差するカラムに◎、○等の記号を管理者に入力させる。これにより、
インスタンス間に特定の関連があることを示す。
ドキュメント3aを継承する「要求仕様書10b」では、「はじめに」「本文」「おわ
りに」を定義し、「システムテスト仕様書11f」として、「はじめに」「本文」「おわ
りに」を定義する。これにより要求仕様書10bは、「はじめに」「本文」「おわりに」
を子の要素として備え、システムテスト仕様書11fは、「はじめに」「本文」「おわり
に」を子の要素として備えることになる。
要求仕様書10b及びシステムテスト仕様書11f等のドキュメントクラス3に関係す
る要求仕様書の構成について説明する。図30にドキュメントの章節の階層構成の一例を
示す。この階層構成は開発システムに固有の形態ではあるものの、システム開発では一般
に必要なドキュメント、例えば要求仕様書、テスト仕様書などは共通であり、これらのド
キュメントは「初めに」「本文」「おわりに」等の共通の構成を持つ。よって、システム
開発に共通の部分は管理者がドキュメントクラスのインスタンスとして定義する。なお、
後述するが、システム開発固有の部分、特にドキュメントの図31の章節等の階層は、ユ
ーザが設計情報内のドキュメントクラスのインスタンスとして定義する。
モデルドキュメント間関連4aは、子クラスとして、「要求仕様−要求仕様書8b」「
ST仕様−ST仕様書9b」を備えると定義する。なお、STとはシステムテストの略である。
モデルドキュメント関連インスタンスの一例について図32を参照して説明する。管理
者端末42上に、左側にモデル1aのインスタンス、右側にドキュメント3aのインスタ
ンスを表示し、管理者に、関連するインスタンス同士をユーザインタフェース部40を介
してリンク付けさせる。これにより関連するモデル及びドキュメントのインスタンスを定
義する。なお、図32は、右側の要求クラスインスタンスRQ1及びRQ2が、要求仕様書テン
プレートPの3.1及び3.2の節に関連付けされることを示している。
(設計情報)
次に、設計情報の事象について詳細に説明する。要求仕様5bのインスタンスとして、
「A社顧客管理システム要求5c」を定義する。要求12fのインスタンスとして、「RQ
001」〜「RQ004」を定義する。このインスタンス「RQ001」〜「RQ004」は図33に示すよ
うに、親クラスの識別子として各々が親クラスの要求内容を備えるように記述される。
若しくは図34に示すように、モデルインスタンスの識別子を、要求(Requirements)、
機能(Function)、テストケース(Test Case)等のカテゴリ毎に分類して、システム開発の
ライフサイクル全体を通して作成する成果物のモデルクラスのインスタンスとして定義し
ても良い。なお、モデルインスタンスは、図20のモデルインスタンス入力処理画面の識
別子、内容等に入力することにより定義される。
システムテスト仕様6bのインスタンスとして、「A社顧客管理システムテスト仕様6
c」を定義する。システムテストケース13bのインスタンスとして、「TC001」〜「TC0
04」を定義する。要求仕様−システムテスト仕様7bのインスタンスとして、「A社顧客
管理システム要求−システムテスト仕様7c」を定義する。
要求仕様−要求仕様書8bのインスタンスとして、「A社顧客管理システム要求仕様−
要求仕様書8c」及び「RQ001-RS2.1」〜「RQ002-RS2.2」を定義する。これは、A社顧客
管理システムのシステム要求は、A社顧客管理システムのシステム要求仕様書にドキュメ
ント化されること、要求のRQ001は、要求仕様書のRS2.1の節に記述されること、RQ002は
要求仕様書のRS2.2に記述されること等を示す。
ST仕様−ST仕様書9bのインスタンスとして、「A社顧客管理システムST仕様−ST仕様
書9c」を定義する。要求仕様書10bのインスタンスとして、「A社顧客管理システム
要求仕様書10c」を定義する。要求仕様書10bの「はじめに」のインスタンスとして
、「RS1」を定義する。要求仕様書10bの「本文」のインスタンスとして、「RS2.1」〜
「RS2.3」を定義する。要求仕様書10bの「おわりに」のインスタンスとして、「RS3」
を定義する。
システムテスト仕様書11fのインスタンスとして、「A社顧客管理システムテスト仕
様書11g」を定義する。システムテスト仕様書11fの「はじめに」のインスタンスと
して、「TS1」を定義する。システムテスト仕様書11fの「本文」のインスタンスとし
て、「TS2.1」〜「TS2.3」を定義する。システムテスト仕様書11fの「おわりに」のイ
ンスタンスとして、「TS3」を定義する。
<制約条件の実施例>
制約条件は、上述したように、管理者端末42及びユーザ端末41によって定義され、
定義された制約条件は、クラス制約条件検証部14b、インスタンス制約条件検証部14
c及び特定インスタンス制約条件検証部14dにおいて検証されるが、以下、制約条件の
具体例について説明する。
まず、モデルクラスの各制約条件の例を挙げる。モデルクラスのクラス制約条件として
、あるテストケースクラスを定義したい場合、クラス名が「テストケース」、親クラスが
「モデルクラス」、クラス制約条件が「テストケースのインスタンスは1000個以上で
なければならず、且つ、このクラスに属するインスタンスの全ての識別子は、他の識別子
と同一であってはならない」等と定義する。更にこのテストケースクラスのインスタンス
制約条件を「このインスタンスの識別子は、文字列でなければならず、かつ、このインス
タンスは、一つ以上の『機能−テストケース間関連』インスタンスの関連先でなければな
らない」等と定義する。なお、この場合「機能−テストケース間関連」クラスが設計メタ
情報として定義されているものとする。
特定インスタンス制約条件は、クラス名が「テストケース」、親クラスが「モデルクラ
ス」、インスタンス識別子が「TC01」、インスタンス名は「顧客登録画面(図20参照)
を通して予め登録されているデータベース登録結果(顧客情報)と、入力される結果が一
致しなければならない」等と定義する。更に、特定インスタンス制約条件は、「このイン
スタンスは、顧客登録テストデータ(識別子TD01)を関連先とする」「『テストケース−テ
ストデータ間関連』インスタンスの関連元でなければならない」等と定義する。なお、こ
の場合『テストケース-テストデータ間関連』クラスが設計メタ情報として定義されてい
る必要がある。
次に、ドキュメントクラスの各制約条件について例を挙げる。ドキュメントクラスのク
ラス制約条件として、ある要求仕様書クラスを定義したい場合、クラス名が「要求仕様書
」、親クラスが「ドキュメントクラス」、クラス制約条件が「要求仕様書クラスのインス
タンスの総数は1以上でなければならない」等と定義する。この要求仕様書クラスのイン
スタンス制約条件は「このインスタンスは、一つ以上の『要求仕様-要求仕様書間関連』
インスタンスの関連先でなければならない」等と定義する。なお、この場合「要求仕様−
要求仕様書間関連」クラスが設計メタ情報として定義されているものとする。
モデル間関連クラスの各制約条件について例を挙げる。モデル間関連クラスのクラス制
約条件として、ある要求仕様−機能仕様クラスについて定義したい場合、クラス名が「要
求仕様−機能仕様」、親クラスが「モデル間関連クラス」、クラス制約条件が「当クラス
のインスタンスの総数は1以上でなければならない」等と定義する。この要求仕様−機能
仕様クラスのインスタンス制約条件としては「このインスタンスの関連元は、全て要求仕
様クラスのインスタンスでなければならず、且つ、本インスタンスの関連先は、全て機能
仕様クラスのインスタンスでなければならない」等と定義する。
最後に、モデルドキュメント間関連クラスの各制約条件について例を挙げる。モデルド
キュメント間関連クラスのクラス制約条件として、ある要求仕様−要求仕様書クラスにつ
いて定義したい場合、クラス名を「要求仕様−要求仕様書」、親クラスを「モデルドキュ
メント間関連クラス」、クラス制約条件を「当クラスのインスタンスの総数は1以上でな
ければならない」等と定義する。この要求仕様−要求仕様書クラスのインスタンス制約条
件としては「このインスタンスの関連元のモデルの数は、1でなければならず、且つ、こ
のインスタンスの関連先のモデルの数は、1以上でなければならない」等と定義する。
上述したこれらの定義は一例に過ぎず、管理者及びユーザは、個々の目的に応じて様々
な制約条件を設定できることは勿論である。
このように、モデルクラス1、モデル間関連クラス2、ドキュメントクラス3及びモデ
ルドキュメント間関連クラス4を定義し、これらのクラスより構成される設計情報を作成
し、これらの関係を登録管理することにより、定義されたモデル要素の情報と定義したド
キュメントの情報に基づいて、ドキュメントを自動生成することが出来る。
モデル要素に変更・修正が生じた場合であっても、他に影響のあるモデル要素及びドキ
ュメントの修正箇所を抽出し、定義が不完全なモデル要素、要件変更の修正が完了してい
ないドキュメントの抽出などを行うことにより、モデル要素及びドキュメント間の整合を
とることが出来る。
1…モデルクラス,2…モデル間関連クラス,3…ドキュメントクラス,4…モデルドキ
ュメント間関連クラス,5b…要求仕様,5c…A社顧客管理システム要求,6b…シス
テムテスト仕様,6c…A社顧客管理システムテスト仕様,7b…要求仕様−システムテ
スト仕様,7c…A社顧客管理システム要求−システムテスト仕様,8b…要求仕様−要
求仕様書,8c…A社顧客管理システム要求仕様−要求仕様書,9b…ST仕様−ST仕様書
,9c…A社顧客管理システムST仕様−ST仕様書,10…仕様定義トレース管理部,10
b…要求仕様書,10c…A社顧客管理システム要求仕様書,11…設計メタ情報定義部
,11a…モデルクラス定義部,11b…モデル間関連クラス定義部,11c…ドキュメ
ントクラス定義部,11d…モデルドキュメント間関連クラス定義部,11f…システム
テスト仕様書,11g…A社顧客管理システムテスト仕様書,12…設計情報定義部,1
2a…モデルインスタンス定義部,12b…モデル間関連インスタンス定義部,12c…
ドキュメントインスタンス定義部,12d…モデルドキュメント間関連インスタンス定義
部,12f…要求,13…設計情報構成管理部,13b…システムテストケース,14…
設計情報検証管理部,14a…設計情報検証部,14b…クラス制約条件検証部,14c
…インスタンス制約条件検証部,14d…特定インスタンス制約条件検証部,14e…設
計情報検証エラー表示部,15…設計情報トレース管理部,15a…設計情報変更点検出
部,15b…モデルドキュメントインスタンス変更点検出部,15c…関連インスタンス
変更点検出部,15d…修正影響範囲表示部,16…設計書生成部,20…データベース
格納部,21…設計メタ情報記憶部,22…設計情報記憶部,30…テンポラリデータ格
納部,31…制約エラー記憶部,32…変更点記憶部,33…トレース記憶部,40…ユ
ーザインタフェース,41…ユーザ端末,42…管理者端末,100…仕様管理装置

Claims (3)

  1. ソフトウェア若しくはシステムの開発プロセスにおいて、顧客の要件を実現するために具体化される仕様の管理者が使用する管理者端末及び前記仕様を生成するユーザが使用するユーザ端末に接続される仕様管理装置であって、
    前記管理者端末によって、開発プロセスで具体化する仕様の型を定義するモデルクラスのデータ、前記仕様に関する2つのモデル間の関連の型を定義するモデル間関連クラスのデータ、前記仕様に基づいて開発プロセスで作成されるドキュメントの型を定義するドキュメントクラスのデータ、及び任意のモデルと当該モデルの仕様に基づいて生成されるドキュメントの間の関連の型を定義するモデルドキュメント間関連クラスのデータを含む設計メタ情報を格納する設計メタ情報記憶部と、
    前記設計メタ情報記憶部内の前記設計メタ情報を継承し、前記ユーザ端末からの要求により、モデルインスタンスのデータ、モデル間関連インスタンスのデータ、ドキュメントインスタンスのデータ及びモデルドキュメント関連インスタンスのデータを含む設計情報を定義する設計情報定義部と、
    前記設計情報を格納する設計情報記憶部と、
    前記ユーザ端末より受信するドキュメント生成要求に基づいて、前記設計情報記憶部より前記設計情報を取得し、ドキュメントを作成する設計書生成部
    とを備え、
    前記モデルインスタンスのデータは、前記仕様の最小単位の実体のデータであり、
    前記ドキュメントインスタンスのデータは、前開発プロセスに係る開発のライフサイクルを通じて作成するドキュメントの最小単位の実体のデータであり、
    前記モデルドキュメント関連インスタンスのデータは、前記モデルインスタンスと前記ドキュメントインスタンスとして定義した、任意のモデルインスタンスとドキュメントインスタンス間の関連情報のデータであって、前記モデルドキュメント間関連クラスとして定義した関連の型の実体のデータであり、
    前記設計情報は、前記モデルインスタンス、前記ドキュメントインスタンス、および前記モデル間関連インスタンスを有することを特徴とする仕様管理装置。
  2. ソフトウェア若しくはシステムの開発プロセスにおいて、顧客の要件を実現するために具体化される仕様の管理を行う仕様管理装置における仕様管理方法であって、
    前記仕様管理装置が、仕様を設定する管理者端末からの要求により、開発プロセスで具体化する仕様の型を定義するモデルクラスのデータ、前記仕様に関する2つのモデル間の関連の型を定義するモデル間関連クラスのデータ、前記仕様に基づいて開発プロセスで作成されるドキュメントの型を定義するドキュメントクラスのデータ、及び任意のモデルと当該モデルの仕様に基づいて生成されるドキュメントの間の関連の型を定義するモデルドキュメント間関連クラスのデータを含む設計メタ情報を、設計メタ情報記憶部に格納するステップと、
    前記仕様管理装置が、前記仕様を生成するユーザ端末からの要求により、前記設計メタ情報記憶部内の前記設計メタ情報を継承するモデルインスタンスのデータ、モデル間関連インスタンスのデータ、ドキュメントインスタンスのデータ及びモデルドキュメント関連インスタンスのデータを含む設計情報を定義し、設計情報記憶部に格納するステップと、
    前記仕様管理装置が、前記ユーザ端末より受信するドキュメント生成要求に基づいて、前記設計情報記憶部より前記設計情報を取得し、ドキュメントを作成するステップ
    とを備え、
    前記モデルインスタンスのデータは、前記仕様の最小単位の実体のデータであり、
    前記ドキュメントインスタンスのデータは、前開発プロセスに係る開発のライフサイクルを通じて作成するドキュメントの最小単位の実体のデータであり、
    前記モデルドキュメント関連インスタンスのデータは、前記モデルインスタンスと前記ドキュメントインスタンスとして定義した、任意のモデルインスタンスとドキュメントインスタンス間の関連情報のデータであって、前記モデルドキュメント間関連クラスとして定義した関連の型の実体のデータであり、
    前記設計情報は、前記モデルインスタンス、前記ドキュメントインスタンス、および前記モデル間関連インスタンスを有することを特徴とする仕様管理方法。
  3. ソフトウェア若しくはシステムの開発プロセスにおいて、顧客の要件を実現するために具体化される仕様の管理を行うコンピュータに、
    仕様を設定する管理者端末からの要求により、開発プロセスで具体化する仕様の型を定義するモデルクラスのデータ、前記仕様に関する2つのモデル間の関連の型を定義するモデル間関連クラスのデータ、前記仕様に基づいて開発プロセスで作成されるドキュメントの最小単位の型を定義するドキュメントクラスのデータ、及び任意のモデルと当該モデルの仕様に基づいて生成されるドキュメントの間の関連の型を定義するモデルドキュメント間関連クラスのデータを含む設計メタ情報を、設計メタ情報記憶部に格納する手順と、
    前記仕様を生成するユーザ端末からの要求により、前記設計メタ情報記憶部内の前記設計メタ情報を継承するモデルインスタンスのデータ、モデル間関連インスタンスのデータ、ドキュメントインスタンスのデータ及びモデルドキュメント関連インスタンスのデータを含む設計情報を定義し、設計情報記憶部に格納する手順と、
    前記ユーザ端末より受信するドキュメント生成要求に基づいて、前記設計情報記憶部より前記設計情報を取得し、ドキュメントを作成する手順
    とを実行させるための仕様管理プログラムであって、
    前記モデルインスタンスのデータは、前記仕様の最小単位の実体のデータであり、
    前記ドキュメントインスタンスのデータは、前開発プロセスに係る開発のライフサイクルを通じて作成するドキュメントの最小単位の実体のデータであり、
    前記モデルドキュメント関連インスタンスのデータは、前記モデルインスタンスと前記ドキュメントインスタンスとして定義した、任意のモデルインスタンスとドキュメントインスタンス間の関連情報のデータであって、前記モデルドキュメント間関連クラスとして定義した関連の型の実体のデータであり、
    前記設計情報は、前記モデルインスタンス、前記ドキュメントインスタンス、および前記モデル間関連インスタンスを有することを特徴とする仕様管理プログラム。
JP2013147775A 2013-07-16 2013-07-16 仕様管理装置、仕様管理方法及び仕様管理プログラム Active JP5706480B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013147775A JP5706480B2 (ja) 2013-07-16 2013-07-16 仕様管理装置、仕様管理方法及び仕様管理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013147775A JP5706480B2 (ja) 2013-07-16 2013-07-16 仕様管理装置、仕様管理方法及び仕様管理プログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2004289257A Division JP5366351B2 (ja) 2004-09-30 2004-09-30 仕様管理装置、仕様管理方法及び仕様管理プログラム

Publications (2)

Publication Number Publication Date
JP2013254503A JP2013254503A (ja) 2013-12-19
JP5706480B2 true JP5706480B2 (ja) 2015-04-22

Family

ID=49951892

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013147775A Active JP5706480B2 (ja) 2013-07-16 2013-07-16 仕様管理装置、仕様管理方法及び仕様管理プログラム

Country Status (1)

Country Link
JP (1) JP5706480B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023026409A1 (ja) * 2021-08-25 2023-03-02 三菱電機株式会社 情報処理装置、プログラム及び情報処理方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1083420A (ja) * 1996-06-28 1998-03-31 Fujitsu Ltd モデルベースの業務支援システムおよび方法
JPH10260822A (ja) * 1997-03-18 1998-09-29 Hitachi Software Eng Co Ltd オブジェクト指向ソフトウェア文書編集管理支援装置
JP2002157120A (ja) * 2000-11-17 2002-05-31 Hitachi Software Eng Co Ltd 設計ドキュメント管理システム

Also Published As

Publication number Publication date
JP2013254503A (ja) 2013-12-19

Similar Documents

Publication Publication Date Title
US7735062B2 (en) Software development system and method
JP4822863B2 (ja) 数値解析データ作成方法及び装置並びにプログラム及び記憶媒体
US8106903B2 (en) System and method for visually representing a project using graphic elements
US9983890B2 (en) Collaborative generation of configuration technical data for a product to be manufactured
US20060168555A1 (en) Software development system and method
US20220035847A1 (en) Information retrieval
CN106649457A (zh) 基于对象关系映射技术的数据处理框架
TW201439792A (zh) 資料庫訪問系統及方法
US20230086854A1 (en) Dynamically controlling case model structure using case fragments
CN103186661A (zh) 声明性视图对象
JP5366351B2 (ja) 仕様管理装置、仕様管理方法及び仕様管理プログラム
US20140136155A1 (en) Analyzing hardware designs based on component re-use
US20150026081A1 (en) Method and system for managing standards
US7941456B2 (en) Information management method, information management program and information management apparatus
KR100987053B1 (ko) 캐드 도면 표준화 장치
JP5706480B2 (ja) 仕様管理装置、仕様管理方法及び仕様管理プログラム
CN108520032B (zh) 数据接口建立方法、系统、计算机设备及存储介质
JP6229454B2 (ja) ソフトウェア資産管理装置、ソフトウェア資産管理方法、及びソフトウェア資産管理プログラム
JP5532811B2 (ja) パーツカタログ作成支援装置、プログラム、およびパーツカタログ作成支援方法
CN104881455B (zh) 一种基于mysql的结构差异处理方法及系统
CN114124977A (zh) 跨租户间的数据分享方法、装置和电子设备
EP4365730A1 (en) Software component update system, and software component update method
JP6364786B2 (ja) 設計書管理プログラム、設計書管理方法および設計書管理装置
JP2013077177A (ja) 仕様入力支援装置およびプログラム
Poonsuph Design and Implementation of a LCDP with Enhanced Functionality

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140418

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140613

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140812

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150130

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150226

R150 Certificate of patent or registration of utility model

Ref document number: 5706480

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350