JP5984358B2 - Software development support apparatus and program - Google Patents
Software development support apparatus and program Download PDFInfo
- Publication number
- JP5984358B2 JP5984358B2 JP2011239629A JP2011239629A JP5984358B2 JP 5984358 B2 JP5984358 B2 JP 5984358B2 JP 2011239629 A JP2011239629 A JP 2011239629A JP 2011239629 A JP2011239629 A JP 2011239629A JP 5984358 B2 JP5984358 B2 JP 5984358B2
- Authority
- JP
- Japan
- Prior art keywords
- mounting
- user
- system diagram
- function
- storage unit
- 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
Links
Images
Landscapes
- Stored Programmes (AREA)
Description
本発明は、ソフトウェアの開発を支援する技術に関する。 The present invention relates to technology for supporting software development.
例えば、LSI(large scale integration)等の設計において、仕様書作成、ソースコード作成、試験仕様書作成の各ツールを統合し、相互にデータ交換できるようにした設計支援技術は、従来より知られている(例えば、特許文献1等)。 For example, in the design of LSI (large scale integration) and the like, design support technology that integrates specifications creation, source code creation, and test specification creation tools so that they can exchange data with each other has been known. (For example, Patent Document 1).
ところで、機能追加型の手法でソフトウェア開発を行う場合、開発者(ユーザ)は、他の機能(仕様)との関係を意識しながら作業を行う必要がある。しかしながら、作成対象の機能と、他の機能との関係を判りやすくユーザに提示する等して、ソフトウェア開発を支援する技術について、未だ有効な提案がなされていないのが実情である。 By the way, when software development is performed by a function addition type method, a developer (user) needs to work while being aware of the relationship with other functions (specifications). However, the actual situation is that no effective proposal has yet been made for a technology that supports software development by, for example, presenting the relationship between the function to be created and other functions in an easy-to-understand manner.
本発明は、上記実情に鑑みてになされたものであり、ソフトウェア開発において、各機能間の関係をユーザに対して容易に理解できる態様で提示するソフトウェア開発支援装置等を提供することを目的とする。 The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a software development support apparatus and the like that presents a relationship between functions in a manner that can be easily understood by a user in software development. To do.
上記目的を達成するため、本発明に係るソフトウェア開発支援装置は、
ユーザからの操作を受け付ける入力部と、
開発対象となるソフトウェアを構成する各機能についての仕様に関する仕様情報であって、対応する機能が実行される際、他の機能との関係で制約を受ける場合には、その条件となる実行制約条件が含まれる仕様書情報を記憶する仕様記憶部と、
前記仕様記憶部に記憶されている仕様情報の階層関係を示す仕様階層情報を管理する仕様管理部と、
ユーザによる所定操作に応じて、前記仕様記憶部に記憶されている仕様情報を読み出し、読み出した仕様情報から抽出した前記実行制約条件と、前記仕様階層情報と、に基づいて、前記各機能間の関係を表した仕様系統図画面データを生成し、所定の表示装置に出力する制御部と、を備え、
前記制御部は、前記仕様系統図画面データの出力後、ユーザにより、特定の機能についての仕様情報の作成要求操作が行われると、ユーザによる当該機能に関する記述が可能な領域を含む画面であって、当該機能と親が共通する機能に対応する仕様情報から抽出した前記実行制約条件を組み入れた仕様情報作成画面データを生成し、前記表示装置に出力する。
In order to achieve the above object, a software development support apparatus according to the present invention provides:
An input unit for receiving an operation from the user;
Specification information on the specifications of each function that constitutes the software to be developed. When the corresponding function is executed, if it is restricted by the relationship with other functions, the execution restriction condition is the condition. A specification storage unit for storing specification information including
A specification management unit that manages specification hierarchy information indicating a hierarchical relationship of the specification information stored in the specification storage unit;
In accordance with a predetermined operation by the user, the specification information stored in the specification storage unit is read out, and between the functions based on the execution constraint condition extracted from the read specification information and the specification hierarchy information A controller that generates specification system diagram screen data representing the relationship and outputs it to a predetermined display device;
The control unit is a screen including an area in which a description about the function can be described by the user when a specification information creation request operation for a specific function is performed by the user after the specification system diagram screen data is output. Then, the specification information creation screen data incorporating the execution constraint condition extracted from the specification information corresponding to the function shared by the function and the parent is generated and output to the display device.
本発明によれば、各機能間の関係を表した仕様系統図を表示するため、ソフトウェアの開発において、作業の効率化や品質の向上が図れる。 According to the present invention, since the specification system diagram showing the relationship between each function is displayed, it is possible to improve work efficiency and quality in software development.
以下、本発明の実施形態について図面を参照して詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
実施形態1.
図1は、本発明の実施形態1に係るソフトウェア開発支援装置1の構成を示すブロック図である。このソフトウェア開発支援装置1は、特に、機能追加型の手法でソフトウェア開発する場合において、ユーザによる仕様書(機能仕様書)の作成をアシストする装置である。
FIG. 1 is a block diagram showing a configuration of a software
ソフトウェア開発支援装置1のハードウェア構成は、一般的なパーソナルコンピュータと同等である。即ち、ソフトウェア開発支援装置1は、何れも図示しないが、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等から構成される制御装置、読み書き可能な不揮発性の半導体メモリやハードディスクドライブ等から構成される外部記憶装置、キーボード、マウス、キーパッド、タッチパッドやタッチパネル等から構成される入力装置、CRTや液晶モニタ等から構成される表示装置等を備える。ソフトウェア開発支援装置1が実行する各処理(詳細は後述する)は、CPU等がROM又は外部記憶装置に記憶されている所定のプログラムを実行することで実現する。
The hardware configuration of the software
ソフトウェア開発支援装置1は、機能的には、図1に示すように、入力部10と、表示部11と、仕様記憶部12と、仕様管理部13と、制御部14と、を備える。
Functionally, the software
入力部10は、ユーザからの入力操作を受け付け、受け付けた入力操作に係る信号を制御部14に送出する。
The
表示部11は、制御部14の制御の下、後述する仕様系統図画面等のユーザ操作用の画面の表示を行う。
The
仕様記憶部12は、開発対象となるソフトウェアを構成する各機能毎に、その仕様内容(本体部)と、事前条件と、事後条件と、を対応付けた情報(仕様情報)を記憶する。仕様情報には、各仕様情報を一意に識別するためのID(仕様ID)が、制御部14によって割り振られている。
The
事前条件とは、当該機能(仕様)を実行する前提となる条件をいう。本実施形態では、事前条件には、依存関係と、排他関係と、が含まれる。依存関係にあるとは、例えば、他の機能(仕様)で管理されているデータを参照するケース、他の機能の実行後に当該機能を実行するケース、他の機能と併せて(並行して)実行するケース等が該当する。また、本実施形態では、機能間の依存関係を図2の(a)、(b)のように表記する。図2(a)は、機能Aが機能Bに依存していることを示す(例えば、機能Bの実行後に機能Aを実行する等)。図2(b)は、機能Bが機能Aに依存していることを示す(例えば、機能Aの実行後に機能Bを実行する等)。 The precondition refers to a condition that is a precondition for executing the function (specification). In the present embodiment, the precondition includes a dependency relationship and an exclusive relationship. Dependency is, for example, a case of referring to data managed by another function (specification), a case of executing the function after execution of another function, and a combination of other functions (in parallel) Cases to be executed are applicable. Further, in the present embodiment, the dependency relationship between functions is represented as (a) and (b) in FIG. FIG. 2A shows that the function A depends on the function B (for example, the function A is executed after the function B is executed). FIG. 2B shows that the function B depends on the function A (for example, the function B is executed after the function A is executed).
また、排他関係にあるとは、一方の機能の実行中は、他方を実行することができない関係にある場合をいう。なお、両機能の実行要求が競合した場合には、所定の優先条件に基づいて、何れか一方を優先的に実行する。また、本実施形態では、機能間の排他関係を図2(c)のように表記する。図2(c)は、機能Aと機能Bが排他の関係にあり、両者を同時に実行できないことを示している。 In addition, being in an exclusive relationship means a case in which one function cannot be executed while one function is being executed. When the execution requests for both functions compete, either one is preferentially executed based on a predetermined priority condition. In this embodiment, the exclusive relationship between functions is represented as shown in FIG. FIG. 2C shows that the functions A and B are in an exclusive relationship and cannot be executed at the same time.
事後条件とは、当該機能の実行後に成立させる条件(例えば、当該機能の実行後、設定温度に1℃加算する等)をいう。 The post condition refers to a condition that is established after the function is executed (for example, 1 ° C. is added to the set temperature after the function is executed).
仕様管理部13は、仕様記憶部12に保存されている各仕様情報の階層関係を示す情報(仕様階層情報)を保持する。
The
本実施形態で採用する仕様階層関係には、図3に示すように、2つのパターンがあり、各パターンに応じて予め決められたマークで表記される。図3(a)は、“A has−a B”の関係を示す。即ち、B(子)は、A(親)に属する、又は、B(子)は、A(親)の一部であることを示す。具体例を挙げると、A:ピアノ、B:鍵盤の関係がこれに該当する。 As shown in FIG. 3, the specification hierarchy relationship employed in the present embodiment has two patterns, which are represented by marks that are determined in advance according to each pattern. FIG. 3A shows the relationship “A has-a B”. That is, B (child) belongs to A (parent) or B (child) is a part of A (parent). For example, the relationship of A: piano and B: keyboard corresponds to this.
図3(b)は、“B is−a A”の関係を示す。即ち、B(子)は、A(親)を継承することを示す。換言すると、AはBを汎化したもの、BはAを特化したものといえる。具体例を挙げると、A:楽器、B:ピアノの関係がこれに該当する。 FIG. 3B shows the relationship “B is-a A”. That is, B (child) indicates that A (parent) is inherited. In other words, it can be said that A is a generalization of B and B is a specialization of A. For example, the relationship of A: musical instrument and B: piano corresponds to this.
仕様管理部13は、制御部14からの要求に従って、仕様記憶部12にアクセスし、仕様情報の読み出しや書き込み等を行う。また、仕様管理部13は、新たな仕様情報が書き込まれた際など、必要に応じて仕様階層情報の更新を行う。
The
制御部14は、ユーザにより、入力部10を介して、仕様系統図画面の表示を要求する操作が行われると、仕様管理部13に仕様情報の読み出しを要求する。そして、制御部14は、仕様管理部13によって読み出された各仕様情報に含まれる事前条件と、上記の仕様階層情報と、に基づいて、各機能(各仕様)間の関係を表した仕様系統図画面データを作成する。制御部14は、作成した仕様系統図画面データに基づいて、表示部11に図4に示すような仕様系統図画面401を表示させる。図4において、各“仕様”に付加されている数字が、当該仕様情報の仕様IDを示すものとする。
When the user performs an operation for requesting the display of the specification system diagram screen via the
この仕様系統図画面401から、最上位の仕様が仕様0であり、その子として、仕様1、仕様2及び仕様3が存在することが判る。また、仕様0と仕様1、仕様0と仕様2及び仕様0と仕様3は、何れも、“A has−a B”の関係(図3(a)参照)を有していることが判る。
From this specification
仕様1は、仕様1.1、1.2及び 1.3の3つの子を有し、それぞれと、“B is−a A”の関係(図3(b)参照)にある。また、仕様1.1と仕様1.2とは、排他関係(図2(c))にある。
仕様2は、仕様2.1及び2.2の2つの子を有し、それぞれと、“A has−a B”の関係(図3(a)参照)にある。また、仕様2.1が仕様2.2に依存する関係(図2(a)、(b)参照)にある。
The
仕様3は、仕様3.1及び3.2の2つの子を有し、それぞれと、“A has−a B”の関係(図3(a)参照)にある。また、仕様3.1と仕様3.2とは、排他関係(図2(c))にある。さらに、仕様3.2が仕様2.2に依存する関係(図2(a)、(b)参照)にある。
The
制御部14は、仕様系統図画面401をGUI(Graphical User Interface)の態様で表示する。これにより、ユーザは、所望の“仕様n”を示すアイコン402をマウス等を用いてクリック操作等することで、当該“仕様n”に対応する仕様を処理対象として選択することができる。
The
新規追加ボタン403は、新たな機能(仕様)を追加する際に使用される。ユーザにより、新規追加ボタン403が押下操作されると、制御部14は、ユーザに対して、親の仕様の選択を促すメッセージを表示する。かかるメッセージの表示後、ユーザにより、親となる“仕様n”を示すアイコン402がクリック操作等されて選択されると、制御部14は、当該選択された“仕様n”が、追加される仕様の親になると判定する。
A
制御部14は、親となる仕様が選択されると、ユーザに対して、図5に示すような、階層関係の指定をさせるための画面(階層関係指定画面501)を表示部11にポップアップ表示させる。
When the parent specification is selected, the
ユーザは、入力部10を介して、ラジオボタン502又は503の何れかを選択する操作を行うことで、親仕様との階層関係を指定することができる。例えば、“親 has−a 子”の階層関係を指定したい場合、ユーザは、ラジオボタン502を選択する操作を行えばよい。一方、“子 is−a 親”の階層関係を指定したい場合、ユーザは、ラジオボタン503を選択する操作を行えばよい。
The user can specify a hierarchical relationship with the parent specification by performing an operation of selecting either the
ユーザによりOKボタン504が押下操作されると、制御部14は、ユーザの指定結果を取得し、先に選択された親仕様と、今回の追加仕様との階層関係を決定し、その決定結果を仕様系統図画面401に反映する。反映後の仕様系統図画面401の一例を図6に示す。
When the user presses the
図6の仕様系統図画面401は、ユーザにより、親の仕様として、“仕様3”が選択され、階層関係として、“親 has−a 子”が選択された結果として、“仕様3.3”が追加された例を示している。また、新規追加された“仕様3.3”に対応するアイコン402は、グレー表示等、他のアイコン402と区別できる態様で強調表示される。
The specification
図6の仕様系統図画面401において、ユーザにより仕様書作成画面の表示を要求する所定操作が行われると(例えば、新規追加した“仕様3.3”に対応するアイコン402がマウス等によりダブルクリックされると)、制御部14は、“仕様3.3”と親が共通する子(“仕様3.1”、“仕様3.2”)をピックアップし、それぞれに対応する仕様情報から、事前条件及び事後条件を抽出する。そして、制御部14は、その抽出結果を組み入れた仕様書作成画面701(図7参照)を表示部11に表示させる。
In the specification
図7に示すように、仕様書作成画面701は、事前条件設定エリア702と、本体部エリア703と、事後条件設定エリア704と、から構成される。事前条件エリア702には、親が共通する他の子の仕様情報から抽出した事前条件の内容が表示され、各事前条件に対応するチェックボックスが設けられている。この例では、“仕様3.1”に対応する仕様情報の事前条件である“仕様3.2と排他実行”が表示され、これに対応するチェックボックス7020が設けられている。また、“仕様3.2”に対応する仕様情報の事前条件である“仕様3.1と排他実行”及び“仕様2.2の完了後に実行”が表示され、それぞれに対応するチェックボックス7021及び7022が設けられている。
As shown in FIG. 7, the
さらに、他の子から抽出した事前条件以外の条件も設定できるように、“その他”に対応するチェックボックス7023が設けられ、その内容をユーザが、直接、テキスト入力するための入力エリア7024が設けられている。
Further, a
本体部エリア703には、ユーザが仕様の内容を直接記載(テキスト入力)することができる入力エリア7030と、ユーザの操作内容を確定させ、仕様書作成画面701を閉じるためのOKボタン7031が設けられている。
The
事後条件設定エリア704には、親が共通する他の子の仕様情報から抽出した事後条件の内容が表示され、各事後条件に対応するチェックボックスが設けられている。この例では、例えば、“仕様3.1”に対応する仕様情報の事後条件である“設定温度=元の設定温度+1℃”が表示され、これに対応するチェックボックス7040が設けられている。さらに、他の子から抽出した事後条件以外の条件も設定できるように、“その他”に対応するチェックボックス7041が設けられ、その内容をユーザが直接にテキスト入力するための入力エリア7042が設けられている。
In the
ユーザにより、OKボタン7031が押下操作されると、制御部14は、事前条件設定エリア702、本体部エリア703及び事後条件設定エリア704における各設定や入力結果を取得して保持すると共に、事前条件設定エリア702や事後条件設定エリア704の設定結果から得られる仕様(機能)間の関連を仕様系統図画面401に反映する。例えば、仕様書作成画面701において、ユーザにより、図8に示すように事前条件が設定された場合、反映後の仕様系統図画面401は図9に示すようになる。
When the user presses the
また、ユーザは、仕様系統図画面401を介して、機能間の関連(関係)を設定することも可能である。この場合の設定方法の一例について説明する。例えば、仕様系統図画面401上にて、ユーザにより所定操作(例えば、マウスの右クリックなど)が行われると、制御部14は、図10に示すように、線種リスト1001を表示し、ユーザに所望の線種(1:“−−−−>”、又は、2:“<−−−−>”)を指定させる。ここで、ユーザは、依存関係を設定したい場合は、1の線種を選択し、排他関係を設定したい場合は、2の線種を選択する。1及び2の線種において、向かって左側が起点(新規追加した仕様等、作成や更新対象となっている仕様)になり、右側が終点(関係を設定したい他の仕様)になる。
In addition, the user can set a relationship (relation) between functions via the specification
線種の指定が完了すると、ユーザは、関係を設定したい2つの“仕様n”を選択する。例えば、ユーザは、マウス等を使用したいわゆるドラッグ操作により、異なる“仕様n”を示す2つのアイコン402を選択する。また、ユーザは起点としたい“仕様n”に対応するアイコン402を最初に選択し、終点としたい“仕様n”に対応するアイコン402を次(最後)に選択する。具体的には、例えば、依存関係の設定において、“仕様3.3は、仕様1.3の完了後に実行する”という条件を設定したい場合、ユーザは、1の線種を選択し、起点として仕様3.3を、終点として、仕様1.3を選択すればよい。この場合の選択結果が反映された仕様系統図画面401は図11に示すようになる。
When the specification of the line type is completed, the user selects two “specifications n” for which a relationship is desired to be set. For example, the user selects two
また、“仕様3.3は、仕様2.1と排他関係にある”という条件を設定したい場合、ユーザは、2の線種を選択し、起点として仕様3.3を、終点として、仕様2.1を選択すればよい。
Further, when the user wants to set a condition that “specification 3.3 is exclusive with specification 2.1”, the user selects two line types, uses specification 3.3 as the starting point, and
ユーザにより、仕様系統図画面401のOKボタン404が押下操作されると、制御部14は、仕様系統図画面401で設定された内容(依存関係や排他関係)や仕様書作成画面701で設定、入力された内容を、関係する仕様に対応する仕様情報に反映する。この際、新規追加であれば、制御部14は、仕様情報を新たに作成し、仕様記憶部12に追加保存する。また、制御部14は、仕様管理部13を介して、仕様階層情報の更新を行う。
When the user presses the
なお、当然のことながら、新規追加した仕様において、排他関係を設定した場合等では、既に作成済みの他の仕様情報もその内容に変更が生じることになる。 Naturally, when an exclusive relationship is set in a newly added specification, the content of other already created specification information is also changed.
図12は、以上の構成のソフトウェア開発支援装置1による、仕様書の作成を支援する処理(仕様書作成支援処理)の手順を示すフローチャートである。ユーザにより仕様系統図画面401の表示を要求する操作が行われると(ステップS101;YES)、制御部14は、仕様記憶部12に保存されている各仕様情報に対応する各機能(各仕様)間の関係を表した仕様系統図画面データを作成する。そして、制御部14は、作成した仕様系統図画面データに基づいて、表示部11に仕様系統図画面401(図4参照)を表示させる(ステップS102)。
FIG. 12 is a flowchart illustrating a procedure of a process for supporting the creation of a specification (specification creation support process) by the software
ユーザにより、仕様系統図画面401に対して、なんらかの操作が行われた場合(ステップS103;YES)であって、それが、新規追加ボタン403の押下操作である場合(ステップS104;YES)、制御部14は、ユーザからの親の仕様の選択を受け付ける(ステップS105)。次に制御部14は、選択された親仕様との階層関係の指定をユーザから受け付ける(ステップS106)。そして、制御部14は、新規追加された仕様を反映した仕様系統図画面401を表示部11に再表示させる(ステップS102)。
If any operation is performed on the specification
ユーザによる画面操作が、仕様書作成画面701の表示要求操作である場合(ステップS107;YES)、制御部14は、作成対象の仕様と親が共通する子をピックアップし、それぞれに対応する仕様情報から、事前条件及び事後条件を抽出する。そして、制御部14は、その抽出結果を組み入れた仕様書作成画面701(図7参照)を表示部11に表示させる(ステップS108)。
When the screen operation by the user is a display request operation on the specification creation screen 701 (step S107; YES), the
仕様書作成画面701の表示中に、ユーザにより作成が完了した旨の所定操作(ここでは、OKボタン7031の押下操作)が行われると(ステップS109;YES)、制御部14は、ユーザによる入力結果等を取得して保持すると共に、事前条件設定エリア702や事後条件設定エリア704の設定結果を反映した仕様系統図画面401を表示部11に再表示させる(ステップS102)。
If the user performs a predetermined operation (in this case, pressing operation of the OK button 7031) during the display of the specification creation screen 701 (step S109; YES), the
ユーザによる画面操作が、機能間の関連の設定操作である場合(ステップS111;YES)、制御部14は、ユーザからの機能間の関連の指定を受け付ける(ステップS112)。具体的には、上述したように、図10に示すような線種リスト1001を表示し、ユーザに所望の線種を指定させる。
When the screen operation by the user is a setting operation related to the function (step S111; YES), the
ユーザにより機能間の関連が指定されると、制御部14は、機能間の関連の設定対象となる複数の仕様の選択をユーザから受け付ける(ステップS113)。例えば、ユーザは、マウス等を使用したいわゆるドラッグ操作によりこれらの仕様を選択することができる。制御部14は、上記のようにしてユーザが操作した結果を反映した仕様系統図画面401を表示部11に再表示させる(ステップS102)。
When the association between functions is specified by the user, the
ユーザによる画面操作が、仕様系統図画面401のOKボタン404の押下操作である場合(ステップS111;NO)、制御部14は、終了処理を実行する(ステップS114)。具体的には、仕様系統図画面401で設定された内容や仕様書作成画面701で設定、入力された内容を対応する仕様情報に反映する
When the screen operation by the user is a pressing operation of the
以上のように、本実施形態のソフトウェア開発支援装置1によれば、ソフトウェア開発における仕様書の作成において、ユーザに対して、既存(作成済み)の仕様(機能)の系統や、相互の関係が容易に理解できる環境を提供する。したがって、仕様書の作成効率の向上が図れる。これにより、開発期間の短縮が図れ、さらに、品質の向上も期待できる。
As described above, according to the software
また、ユーザに、仕様系統図画面401を介して直感的な操作環境を提供するため、利便性がよく、作業効率の一層の向上が図れる。
In addition, since an intuitive operation environment is provided to the user via the specification
また、新たな仕様を追加する際、親が同じ等、関連性が強い他の仕様が有する事前・事後条件等の実行制約条件を自動的に抽出し、当該追加仕様における実行制約条件の候補として、ユーザに提示することがきる。そして、ユーザは、提示された候補の中から、所望のものを選択操作するだけで、当該追加仕様における実行制約条件を設定することが可能になる。このため、仕様書の作成における作業性が著しく向上する。 In addition, when adding a new specification, execution constraints such as pre- and post-conditions of other specifications that are strongly related, such as the same parent, are automatically extracted as candidates for execution constraints in the additional specification. Can be presented to the user. Then, the user can set execution constraint conditions in the additional specification only by selecting a desired one from the presented candidates. For this reason, the workability in creating the specifications is significantly improved.
なお、既存の仕様書を削除する場合、ユーザは、仕様系統図画面401で削除したい“仕様n”を示すアイコン402を選択した後、キーボード等の削除キーを押下操作すればよい。この場合、先ず、仕様系統図画面401から当該“仕様n”を示すアイコン402が消去され、当該“仕様n”を起点又は終点とする機能間の関連を示す線も消去される。そして、ユーザにより、OKボタン404が押下操作されると、当該“仕様n”に対応する仕様情報が仕様記憶部12から削除され、これに伴い仕様階層情報も更新される。さらに、関連する他の仕様情報の事前条件や事後条件の設定内容も更新される。
When deleting an existing specification, the user may select an
実施形態2.
図13は、本発明の実施形態2に係るソフトウェア開発支援装置1Aの構成を示すブロック図である。このソフトウェア開発支援装置1Aは、実施形態1のソフトウェア開発支援装置1と同等の機能、即ち、ユーザによる仕様書の作成を支援する機能に加え、所定のプログラム言語に則ったプログラムコード(実装コード)の作成をアシストする機能も備える。
FIG. 13 is a block diagram showing a configuration of a software development support apparatus 1A according to the second embodiment of the present invention. This software development support apparatus 1A has functions equivalent to those of the software
図13に示すように、ソフトウェア開発支援装置1Aは、ソフトウェア開発支援装置1の構成に加え、実装コード記憶部15と、テンプレート記憶部16と、実装管理部17と、仕様−実装対応管理部18と、をさらに備える。また、ソフトウェア開発支援装置1Aでは、ソフトウェア開発支援装置1の制御部14が、制御部14Aに変更されている。
As shown in FIG. 13, in addition to the configuration of the software
実装コード記憶部15は、各機能(即ち、各仕様)毎に、当該機能を実現するための実装コードを記憶する。また、各機能を構成する1又は複数の関数(モジュール)単位でのプログラムコード(関数コード)も併せて記憶する。実装コードには、各実装コードを一意に識別するためのID(実装ID)が、制御部14Aによって割り振られている。
The mounting
テンプレート記憶部16は、複数の実装コードに共通する骨組み(ひな形)のコード(以下、スケルトンコードという。)を複数パターン記憶する。
The
実装管理部17は、各実装コードの階層関係を示す情報(実装階層情報)を保持する。実装管理部17は、制御部14Aからの要求に従って、実装コード記憶部15又はテンプレート記憶部16にアクセスし、実装コード又はスケルトンコードの読み出しや書き込み等を行う。また、実装管理部17は、新たな実装コードが実装コード記憶部15に書き込まれた際など、必要に応じて実装階層情報の更新を行う。
The mounting
仕様−実装対応管理部18は、仕様記憶部12に保存されている仕様情報と、実装コード記憶部15に保存されている実装コードとの対応付けを管理する。仕様−実装対応管理部18は、仕様情報に割り振られた仕様IDと、実装コードに割り振られた実装IDと、を対応付けた仕様−実装対応情報を保持する。仕様−実装対応管理部18は、仕様情報や実装コードが新たに追加された際など、必要に応じて、仕様−実装対応情報の更新を行う。
The specification-mounting
制御部14Aは、実施形態1の制御部14と同等の処理を実行できるほか、ユーザによる実装コード作成をアシストするための様々な処理を実行する。例えば、ユーザにより、入力部10を介して、仕様−実装系統図画面の表示を要求する操作が行われると、制御部14Aは、仕様−実装系統図画面データを作成し、作成した仕様−実装系統図画面データに基づいて、表示部11に図14に示すような仕様−実装系統図画面1401を表示させる。
14 A of control parts can perform the process equivalent to the
仕様−実装系統図画面1401において、仕様の系統を示す部分(仕様系統図)は、実施形態1で説明した仕様系統図画面401で示した仕様系統図と同様である。また、実装(実装コード)の系統を示す部分(実装系統図)において、“実装n”を示すアイコン1403の“n”は、対応する実装コードの実装IDを示している。なお、仕様IDと実装IDは、それぞれ別個に付与されるものであり、上位の階層では、一致することもあるが、下位の階層では、対応する仕様と実装とで付与されるIDが必ずしも共通するとは限らない。また、階層関係も仕様と実装とでは異なることが多い。この点を判りやすくするため、仕様−実装系統図画面1401においては、実線の矢線(仕様−実装対応線)で下位の階層の仕様と実装との対応関係を明示している。
In the specification-implementation
制御部14Aは、実装管理部17が保持する実装階層情報と、仕様−実装対応管理部18が保持する仕様−実装対応情報と、に基づいて、実装系統図と、上記の仕様−実装対応線を表示するためのデータを作成する。
14 A of control parts are based on the mounting hierarchy information which the mounting
仕様−実装系統図画面1401により、ユーザは、仕様と実装コードとの対応関係を容易に理解することができる。また、制御部14Aは、先に仕様系統図画面401を介して、新たに追加された仕様(この例では、仕様3.3)に対応するアイコン1402については、グレー表示等、他のアイコン1402と区別できる態様で強調表示する。これにより、ユーザは、新規追加され、対応する実装コードが未作成である仕様を確認することができる。なお、新規追加のみならず、更新された仕様に対応するアイコン1402についても、その旨が判るように、他のアイコン1402と区別した表示を行う。
The specification-implementation
新規追加ボタン1404は、新たな実装(実装コード)を追加する際に使用される。ユーザにより、新規追加ボタン1404が押下操作されると、制御部14Aは、ユーザに対して、親(1つ上の階層)の実装の選択を促すメッセージを表示する。かかるメッセージの表示後、ユーザにより、親となる“実装n”を示すアイコン1403がクリック操作等されて選択されると、制御部14Aは、当該選択された“実装n”が、追加される実装の親になると判定する。
A
制御部14は、親となる仕様が選択されると、ユーザに対して、対応する仕様の選択を促すメッセージを表示する。かかるメッセージの表示後、ユーザにより、対応する“仕様n”を示すアイコン1402がクリック操作等されて選択されると、制御部14Aは、当該選択された“仕様n”が、今回追加する実装に対応する仕様であると判定する。
When the parent specification is selected, the
ユーザにより、上記のようにして、新規追加する実装の親と、対応する仕様と、が選択されると、制御部14Aは、これらの結果を反映した仕様−実装系統図画面1401を再表示する。例えば、ユーザにより、新規追加する実装の親として、“実装3”が選択され、対応する仕様として、“仕様3.3”が選択された場合、仕様−実装系統図画面1401は、図15に示すように再表示される。
When the user selects the parent of the newly added mounting and the corresponding specification as described above, the
図15の仕様−実装系統図画面1401において、ユーザにより実装コード作成画面の表示を要求する所定操作が行われると(例えば、新規追加した“実装3.3”に対応するアイコン1403がマウス等によりダブルクリックされると)、制御部14Aは、これに対応する“仕様3.3”の仕様情報を仕様記憶部12から読み出す。そして、制御部14Aは、読み出した仕様情報の内容を組み入れた実装コード作成画面1601(図16参照)を表示部11に表示させる。
In the specification-implementation
図16に示すように、実装コード作成画面1601は、コード入力エリア1602と、OKボタン1603と、から構成される。コード入力エリア1602は、ユーザが、キーボードやマウス等を用いて、所定のプログラム言語に則ったプログラムコードを入力する(コーディングする)ことのできるエリアである。制御部14Aは、実装コード作成画面1601を表示する際、コード入力エリア1602に、対応する仕様(例えば、“仕様3.3”)の仕様情報の内容に基づいた各種情報を予めコメント形式で記述しておく。このように、対応する仕様の内容が予め記述されていると、プログラミング作業の効率化や正確性の向上が図れる。
As shown in FIG. 16, the implementation
例えば、図16に示すように、当該実装コードの名称(実装名称)として、“実装nの実装コード”(nは、実装ID)というような仮の名称が記述される。また、対応する仕様の事前条件の内容が記述される。そして、本体部の内容が記述され、事後条件の内容が記述される。 For example, as shown in FIG. 16, a temporary name such as “implementation code of implementation n” (n is an implementation ID) is described as the name (implementation name) of the implementation code. In addition, the contents of the precondition of the corresponding specification are described. Then, the content of the main body is described, and the content of the postcondition is described.
また、上記例のほか、制御部14Aは、新規追加した実装(例えば、“実装3.3”)と親が共通する子(“実装1.3”、“実装2.2”、“実装3.1”及び“実装3.2”)に対応するスケルトンコードが存在する場合には、当該スケルトンコードをテンプレート記憶部16から読み出し、かかるコード内容も併せて記述するようにしてもよい(図17参照)。あるいは、共通の子となる実装コードや親の実装コードにおいて、関数名の一部が共通したり、引数(型、名称)が共通している場合等には、これらを予め記述しておくようにしてもよい(図18参照)。このように、実装コード作成画面1601の表示の際に、実際のコード内容も予め記述しておくようにすることで、ユーザのプログラミング作業の一層の効率化が図れる。
In addition to the above-described example, the
図19は、ソフトウェア開発支援装置1Aによる、実装コードの作成を支援する処理(実装コード作成支援処理)の手順を示すフローチャートである。 FIG. 19 is a flowchart showing a procedure of processing (implementation code creation support processing) that supports creation of the implementation code by the software development support device 1A.
ユーザにより仕様−実装系統図画面の表示を要求する操作が行われると(ステップS201;YES)、制御部14Aは、仕様記憶部12に保存されている各仕様情報に対応する各機能間の関係を表した仕様系統図データを作成する。また、制御部14Aは、実装コード記憶部15に保存されている各実装コード間の関係を表した実装系統図データを作成する。そして、制御部14Aは、作成した仕様系統図データ及び実装系統図データに基づいて、表示部11に仕様−実装系統図画面1401(図14参照)を表示させる(ステップS202)。
When an operation for requesting display of the specification-implementation system diagram screen is performed by the user (step S201; YES), the
ユーザにより、仕様−実装系統図画面1401に対して、なんらかの操作が行われた場合(ステップS203;YES)であって、それが、新規追加ボタン1404の押下操作である場合(ステップS204;YES)、制御部14Aは、ユーザから親の実装の選択を受け付ける(ステップS205)。次に制御部14Aは、追加する実装に対応する仕様の選択をユーザから受け付ける(ステップS206)。そして、制御部14Aは、新規追加された実装を反映した仕様−実装系統図画面1401を表示部11に再表示させる(ステップS202)。
When any operation is performed on the specification-implementation
ユーザによる画面操作が、実装コード作成画面の表示要求操作である場合(ステップS207;YES)、ユーザが選択した“実装n”に対応する“仕様n”の仕様情報の内容を組み入れた実装コード作成画面1601(図16〜18参照)を表示部11に表示させる。なお、既に作成済みの“実装n”が選択された場合には、制御部14Aは、実装コード記憶部15から、当該“実装n”に対応する実装コードを読み出し、その内容をコード入力エリア1602に記述した実装コード作成画面1601を表示する。
If the screen operation by the user is a display request operation for an implementation code creation screen (step S207; YES), implementation code creation incorporating the content of the specification information of “specification n” corresponding to “implementation n” selected by the user A screen 1601 (see FIGS. 16 to 18) is displayed on the
実装コード作成画面1601の表示中に、ユーザにより作成が完了した旨の所定操作(ここでは、OKボタン1603の押下操作)が行われると(ステップS209;YES)、制御部14Aは、ユーザによる入力結果(プログラミング結果)を取得して(ステップS210)、実装コード作成画面1601を閉じる。そして、制御部14Aは、再度、ステップS203の処理を行う。
If the user performs a predetermined operation (in this case, pressing the OK button 1603) during the display of the mounting code creation screen 1601 (step S209; YES), the
ユーザによる画面操作が、仕様−実装系統図画面1401のOKボタン1405の押下操作である場合(ステップS207;NO)、制御部14Aは、終了処理を実行する(ステップS211)。具体的には、新たに“実装n”が追加された場合では、当該“実装n”に対応する実装コードを仕様管理部13を介して、実装コード記憶部15に追加保存し、実装階層情報を更新する。あるいは、実装コード作成画面1601にて、既存の実装コードの内容が変更された場合には、制御部14Aは、当該変更内容が反映された実装コードを実装コード記憶部15に上書き保存する。
When the screen operation by the user is a pressing operation of the
以上のように、本実施形態のソフトウェア開発支援装置1Aによれば、仕様−実装系統図画面1401を表示することで、ソフトウェア開発における実装コードの作成において、ユーザに対して、仕様(機能)の系統、既存の実装コードの系統、仕様と実装の対応関係が容易に理解できる環境を提供する。したがって、実装コードの作成効率の向上が図れる。
As described above, according to the software development support apparatus 1A of the present embodiment, the specification (implementation system diagram)
また、ユーザは、仕様−実装系統図画面1401を介して直感的な操作により、新たに追加する実装の階層や、仕様との対応関係を設定することができる。したがって、利便性がよい。
Also, the user can set a newly added mounting hierarchy and a correspondence relationship with the specification through an intuitive operation via the specification-mounting
また、新たに追加した実装についての実装コード作成画面1601では、コード入力エリア1602において、対応する仕様情報の内容を予め記述したり、関連する他の実装コード間で共通するコード内容等を予め記述しておくこともできるため、ユーザは効率よくプログラミング作業を行うことができる。
In addition, in the implementation
なお、既存の実装を削除する場合、ユーザは、仕様−実装系統図画面1401で削除したい“実装n”を示すアイコン1403を選択した後、キーボード等の削除キーを押下操作すればよい。この場合、先ず、仕様−実装系統図画面1401から当該“実装n”を示すアイコン1403が消去される。また、対応する仕様−実装対応線も消去される。そして、ユーザにより、OKボタン1405が押下操作されると、当該“実装n”に対応する実装コードが実装コード記憶部15から削除され、これに伴い実装階層情報も更新される。
When deleting an existing implementation, the user may select an
(変形例)
図20に示すソフトウェア開発支援装置1Bは、実施形態2のソフトウェア開発支援装置1Aの変形例である。このソフトウェア開発支援装置1Bは、仕様書の作成、実装コードの作成をアシストする機能のみならず、試験ケースの作成もアシストする機能を備える。
(Modification)
A software development support apparatus 1B shown in FIG. 20 is a modification of the software development support apparatus 1A of the second embodiment. This software development support apparatus 1B has not only a function for assisting creation of specifications and creation of implementation codes, but also a function for assisting creation of test cases.
試験ケース記憶部19は、各実装コード毎の試験ケースを記憶する。試験ケースには、各試験ケースを一意に識別するためのID(試験ケースID)が、制御部14Bによって割り振られている。試験ケース管理部20は、各試験ケースの階層関係を示す情報(試験階層情報)を保持する。試験ケース管理部20は、制御部14Bからの要求に従って、試験ケース記憶部19にアクセスし、試験ケースの読み出しや書き込み等を行う。また、試験ケース管理部20は、新たな試験ケースが試験ケース記憶部19に書き込まれた際など、必要に応じて試験階層情報の更新を行う。
The test
実装−試験ケース対応管理部21は、実装コード記憶部15に保存されている実装コードと、試験ケース記憶部19に保存されている試験ケースとの対応付けを管理する。実装−試験ケース対応管理部21は、実装コードに割り振られた実装IDと、試験ケースに割り振られた試験ケースIDと、を対応付けた実装−試験ケース対応情報を保持する。実装−試験ケース対応管理部21は、実装コードや試験ケースが新たに追加された際など、必要に応じて、実装−試験ケース対応情報の更新を行う。
The mounting-test case
制御部14Bは、制御部14Aと同等の処理を実行できるほか、ユーザによる試験ケース作成を支援するための様々な処理を実行する。例えば、制御部14Bは、ユーザからの要求に応じて、図示しない実装−試験ケース系統図画面を表示部11に表示させる。この実装−試験ケース系統図画面には、実装系統図と、試験ケースの系統を示す図(試験ケース系統図)と、が表示され、また、下位の階層の実装と試験ケースとの対応関係を明示する。
The
また、制御部14Bは、試験ケースの内容をユーザに記述(設定)させるための試験ケース作成画面(図示せず)を表示する。ユーザは、実装−試験ケース系統図画面や試験ケース作成画面を介して、新規の試験ケースを作成したり、既存の試験ケースの更新や削除を行うことができる。
Further, the
また、このソフトウェア開発支援装置1Bによれば、仕様や実装のある箇所の変更等による影響が及ぶ範囲を取得し、その取得結果に基づいて、対応する試験項目を抽出して、実施すべき試験の範囲をユーザに提示することができる。したがって、仕様や実装の変更等に伴う試験作業を効率よく行うことが可能になる。 Further, according to this software development support device 1B, a range to be affected by a change in a specification or a place where an implementation is applied is acquired, and based on the acquisition result, a corresponding test item is extracted, and a test to be performed This range can be presented to the user. Therefore, it is possible to efficiently perform test work accompanying changes in specifications and mounting.
なお、本発明は、上記各実施形態に限定されず、本発明の要旨を逸脱しない範囲での種々の変更は勿論可能である。 The present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the scope of the present invention.
例えば、仕様書の作成において、仕様書作成画面701(図7参照)の代わりに、あるいは、これと併用して、図21に示すような仕様書作成画面2101を表示するようにしてもよい。仕様書作成画面2101は、仕様IDと機能名が表示されるタイトル表示エリアと、事前条件エリアと、事後条件エリアと、本体部エリアと、ボタン配置エリアと、から構成される。
For example, when creating a specification, a
事前条件エリア及び事後条件エリアは、ユーザが内容を直接にテキスト入力することができるエリアである。本体部エリアは、ユーザにより、フローチャートや、UML(Unified Modeling Language)によるアクティビティ図等を作図させるためのエリアである。図21に示す例では、本体部エリアは、当該仕様を示すフローチャートを作図するためのエリアである。また、本例では、本体部エリアは、例えば、SVG(Scalable Vector Graphics)フォーマットをサポートする図形描画ソフトウェアプログラムの実行により実現される。 The precondition area and the postcondition area are areas in which the user can directly enter the contents. The main body area is an area for a user to draw a flowchart, an activity diagram by UML (Unified Modeling Language), and the like. In the example shown in FIG. 21, the main body area is an area for drawing a flowchart showing the specification. In this example, the main body area is realized by executing a graphics drawing software program that supports, for example, the SVG (Scalable Vector Graphics) format.
ユーザは、事前条件エリア及び事後条件エリアの入力において、所定のキーワード(本例では、機能名、データ名)にタグ付けを行う。例えば、機能名には、<<機能1>>のように“<< >>”タグを付ける。また、データ名には、<$データ$>のように“<$ $>”タグを付ける。本体部エリアの各図(分岐、プロセス)中においても同様に、ユーザは、機能名、データ名にタグ付けを行う。本体部エリアでは、さらに、ユーザは、事前条件、事後条件には、それぞれ所定のヘッダを付けることとする。例えば、事前条件には、“PR:”がヘッダとして付けられ、事後条件には、“PS:”がヘッダとして付けられることになる。また、排他関係を示す場合には、さらに、“EX:”がヘッダとして付けられる。例えば、事前条件に排他関係を記述する場合は、「PR:EX:排他条件1」となる。
The user tags a predetermined keyword (in this example, a function name and a data name) when inputting the precondition area and the postcondition area. For example, a tag “<<>” is attached to the function name, such as <<
なお、キーワードのタグ付けやその解除は、例えば、予め決められた所定の操作によって行われてもよい。例えば、ユーザにより、所望のキーワードがドラッグされると、反転表示させるようにし、この状態で、さらに、“Ctrl+F”操作されることで、機能名(“<< >>”)タグを付与し、あるいは、“Ctrl+D”操作されることで、データ名(<$データ$>)タグを自動的に付与するようにしてもよい。また、ユーザ操作により、タグ付けされたキーワード内にカーソルが置かれ、“Ctrl+R”されることで、当該キーワードから、タグが外されるようにしてもよい。また、制御部14等は、所定形式のメニュー画面を表示し、ユーザにより所望の項目(例えば、「キーワードのタグ付け」等)が選択されると、その選択された項目に対応する処理を実行するようにしてもよい。
Note that keyword tagging and cancellation may be performed, for example, by a predetermined operation. For example, when a desired keyword is dragged by the user, it is displayed in reverse video. In this state, a “Ctrl + F” operation is performed to add a function name (“<< >>”) tag, Alternatively, a data name (<$ data $>) tag may be automatically assigned by performing a “Ctrl + D” operation. Further, the user may place a cursor in the tagged keyword and perform “Ctrl + R” to remove the tag from the keyword. In addition, the
以上のようにして、ユーザにより、事前条件、事後条件、本体部の各エリアにおける入力、作図が行われた後、ボタン配置エリアのチェックボタン2102が押下操作されると、制御部14等は、事前条件エリア及び事後条件エリアの入力結果と、本体部エリアにおける各図中の入力内容と、に整合が取れているか否かを判定する。
As described above, when the user performs a pre-condition, post-condition, input in each area of the main body, and drawing, and then pressing the
例えば、制御部14等は、事前条件エリアの入力内容(入力テキスト)に含まれるキーワードと、本体部エリアの各図中の入力内容に含まれる、“PR:”を付したキーワードとを比較し、双方過不足ないか否かをチェックする。また、制御部14等は、事後条件エリアの入力内容に含まれるキーワードと、本体部エリアの各図中の入力内容に含まれる、“PS:”を付したキーワードとを比較し、双方過不足ないか否かをチェックする。
For example, the
何れのチェックにおいても、過不足なければ、整合が取れているとして、制御部14等は、“整合OKです”等のメッセージを表示部11に表示させる。一方、何れかのチェックにおいて、過不足がある場合には、整合が取れていないとして、制御部14等は、その旨を示すエラーメッセージを表示部11に表示させる。その際、例えば、“<$データA$>に関する事前条件に抜けがあります!!”等、具体的にエラーの内容が判るように表示してもよい。
In any of the checks, if there is no excess or deficiency, the
以上のチェックの後、ユーザにより、ボタン配置エリアのOKボタン2103が押下操作されると、制御部14等は、事前条件、事後条件及び本体部の各エリアの入力内容等を取得して保持すると共に、取得した内容を仕様系統図画面401に反映する。なお、ボタン配置エリアのキャンセルボタン2104が押下操作されると、ユーザの入力内容は、全て破棄される(無効となる)。
After the above check, when the user presses the
以上のように、当該仕様書の記述内容をチェックすることができるので、作業性の向上を図ることができ、仕様記述の漏れや矛盾の発生を防止できるので、品質の向上も図ることができる。 As described above, the description contents of the specification can be checked, so that the workability can be improved and the omission of specification description and the occurrence of contradiction can be prevented, so that the quality can be improved. .
また、仕様系統図の表示方法も様々である。例えば、図22に示す詳細仕様系統図画面2201のように、関連する複数の仕様(機能)について、その内容が判る態様で表示するようにしてもよい。この詳細仕様系統図画面2201へは、例えば、仕様系統図画面401において、ユーザにより、所望の仕様(機能)を示すアイコン402が選択され、所定の操作が行われることで遷移する。
There are also various ways of displaying the specification system diagram. For example, as in a detailed specification
図22の詳細仕様系統図画面2201は、仕様系統図画面401において、ユーザにより、IDが1.3の仕様(機能3)が選択され、所定の操作が行われたことで表示されたものとする。かかる操作が行われると、制御部14等は、機能3における機能名と、データ名と、をそれぞれキーワードにして、関連する機能(仕様)を抽出する。そして、抽出した各機能毎に、機能名と、データ名と、をそれぞれキーワードにして、さらに、関連する機能を抽出する。また、後述するように、詳細仕様系統図画面2201上から仕様書作成画面2101に遷移することができる。その場合、遷移した仕様書作成画面2101にて、ユーザにより編集操作が行われ、OKボタン2103が押下されると、当該編集内容が確定されると共に、詳細仕様系統図画面2201へ再度遷移する。この際、制御部14等は、上記同様に、関連する機能の抽出を行う。
The detailed specification
以下、機能名をキーワードにして抽出する場合について説明する。制御部14等は、事前条件、事後条件の記述から、各条件の1項目毎に、その中で登場した機能名をチェックする。複数の機能名が登場する場合には、その組み合わせの数だけ、関連する候補のペアを抽出する。図22の例においては、機能3の事前条件には、“<<機能3>を>実行中は<<機能1>>、<<機能2>>を実行しない。”と記述されている。したがって、制御部14等は、関連付け候補のペアとして、機能3と機能1、 機能3と機能2、機能1と機能2をそれぞれ抽出する。そして、制御部14等は、各ペア毎に、図22に示すように、結線表示する。
Hereinafter, a case where the function name is extracted as a keyword will be described. The
ここで、制御部14等は、本体部のタグ付けされたキーワードや排他関係を示すヘッダの情報等により、依存関係であるか排他関係であるかを判断し、結線する線種を決定して描画する。これにより、例えば、排他関係を示す結線2202〜2204が描画される。なお、上記の関連付け候補のペアの抽出方法では、意図しないペア(機能1と機能2)が抽出されてしまい、結果として、機能1と機能2との間に不要な結線2204が描画されるが、ユーザによる結線の変更操作により、適宜、削除可能であるものとする。また、依存関係の場合、矢線の矢印の向きは不定(後で、ユーザが決定する)とし、図22に示すように、双方に矢印無しの結線2205で描画されるものとする。
Here, the
データ名をキーワードにして抽出する場合、制御部14等は、同一のデータ名を、事前条件、事後条件の少なくとも一方に持つ機能同士を関連付け候補のペアとする。
When the data name is extracted as a keyword, the
なお、結線の箇所については、制御部14等は、結線を決定する要因となったキーワードが属する領域(事前条件、事後条件)から線が出るように描画する。事前条件、事後条件双方存在する場合は、事前条件を優先する。
In addition, about the location of a connection, the
また、制御部14等は、この詳細仕様系統図画面2201上で、ユーザによる所定操作(例えば、編集対象の機能の記述上で右クリックしてポップアップメニューを出し、そこから仕様編集を選択する等)が行われると、対応する仕様書作成画面2101を表示する。これにより、ユーザは、仕様書作成画面2101上で機能の内容の編集、記述内容の整合性のチェックを行うことができる。仕様書作成画面2101にて、OKボタン2103が押下され、編集内容が確定されると、詳細仕様系統図画面2201に戻るが、その際、制御部14等により、前述の関連する機能の抽出と関連する機能間の結線表示が再度行われる。仕様の更新等により新たに関係が発生することもあり、そのような場合には、ユーザは、新たに関連することになった機能の見直しのために再び仕様書作成画面2101を開いて内容を編集、チェック、確定する作業を行う。こうして順次、全体の仕様を確定していく。
Further, the
このように、詳細仕様系統図画面2201が表示されることで、ユーザは、各機能間の関係が容易に把握でき、また、その関係を辿って、見直しが必要となった機能について仕様書作成画面2101を開き、当該機能(仕様)の内容を編集し、記述内容の整合性のチェックを行うことができるため、作業性の向上を図ることができ、仕様記述の漏れや矛盾の発生を防止できるので、品質の向上も図ることができる。
In this way, the detailed specification
また、上記実施形態のソフトウェア開発支援装置1、1A、1Bが実行したプログラムを、既存のパーソナルコンピュータ(PC)等に適用することで、当該PCを本発明に係るソフトウェア開発支援装置として機能させることも可能である。
Also, by applying the program executed by the software
このようなプログラムの配布方法は任意であり、例えば、CD−ROM(Compact Disk Read-Only Memory)、DVD(Digital Versatile Disk)、MO(Magneto Optical Disk)、メモリカードなどのコンピュータ読み取り可能な記録媒体に格納して配布してもよいし、インターネットなどの通信ネットワークを介して配布してもよい。 Such a program distribution method is arbitrary, for example, a computer-readable recording medium such as a CD-ROM (Compact Disk Read-Only Memory), a DVD (Digital Versatile Disk), an MO (Magneto Optical Disk), or a memory card. It may be stored and distributed in a network, or distributed via a communication network such as the Internet.
本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。 Various embodiments and modifications can be made to the present invention without departing from the broad spirit and scope of the present invention. Further, the above-described embodiment is for explaining the present invention, and does not limit the scope of the present invention. That is, the scope of the present invention is shown not by the embodiments but by the claims. Various modifications within the scope of the claims and within the scope of the equivalent invention are considered to be within the scope of the present invention.
1、1A、1B ソフトウェア開発支援装置
10 入力部
11 表示部
12 仕様記憶部
13 仕様管理部
14、14A、14B 制御部
15 実装コード記憶部
16 テンプレート記憶部
17 実装管理部
18 仕様−実装対応管理部
19 試験ケース記憶部
20 試験ケース管理部
21 実装−試験ケース対応管理部
DESCRIPTION OF
Claims (7)
開発対象となるソフトウェアを構成する各機能についての仕様に関する仕様情報であって、対応する機能が実行される際、他の機能との関係で制約を受ける場合には、その条件となる実行制約条件が含まれる仕様書情報を記憶する仕様記憶部と、
前記仕様記憶部に記憶されている仕様情報の階層関係を示す仕様階層情報を管理する仕様管理部と、
ユーザによる所定操作に応じて、前記仕様記憶部に記憶されている仕様情報を読み出し、読み出した仕様情報から抽出した前記実行制約条件と、前記仕様階層情報と、に基づいて、前記各機能間の関係を表した仕様系統図画面データを生成し、所定の表示装置に出力する制御部と、を備え、
前記制御部は、前記仕様系統図画面データの出力後、ユーザにより、特定の機能についての仕様情報の作成要求操作が行われると、ユーザによる当該機能に関する記述が可能な領域を含む画面であって、当該機能と親が共通する機能に対応する仕様情報から抽出した前記実行制約条件を組み入れた仕様情報作成画面データを生成し、前記表示装置に出力する、ソフトウェア開発支援装置。 An input unit for receiving an operation from the user;
Specification information on the specifications of each function that constitutes the software to be developed. When the corresponding function is executed, if it is restricted by the relationship with other functions, the execution restriction condition is the condition. A specification storage unit for storing specification information including
A specification management unit that manages specification hierarchy information indicating a hierarchical relationship of the specification information stored in the specification storage unit;
In accordance with a predetermined operation by the user, the specification information stored in the specification storage unit is read out, and between the functions based on the execution constraint condition extracted from the read specification information and the specification hierarchy information A controller that generates specification system diagram screen data representing the relationship and outputs it to a predetermined display device;
The control unit is a screen including an area in which a description about the function can be described by the user when a specification information creation request operation for a specific function is performed by the user after the specification system diagram screen data is output. A software development support apparatus that generates specification information creation screen data incorporating the execution constraint condition extracted from the specification information corresponding to the function shared by the function and the parent, and outputs it to the display device.
開発対象となるソフトウェアを構成する各機能についての仕様に関する仕様情報であって、対応する機能が実行される際、他の機能との関係で制約を受ける場合には、その条件となる実行制約条件が含まれる仕様書情報を記憶する仕様記憶部と、
前記仕様記憶部に記憶されている仕様情報の階層関係を示す仕様階層情報を管理する仕様管理部と、
ユーザによる所定操作に応じて、前記仕様記憶部に記憶されている仕様情報を読み出し、読み出した仕様情報から抽出した前記実行制約条件と、前記仕様階層情報と、に基づいて、前記各機能間の関係を表した仕様系統図画面データを生成し、所定の表示装置に出力する制御部と、
前記各機能に対応した実装コードを記憶する実装コード記憶部と、
前記実装コード記憶部に記憶されている実装コードの階層関係を示す実装階層情報を管理する実装管理部と、
前記仕様記憶部に記憶されている前記仕様情報と、前記実装コード記憶部に記憶されている前記実装コードとの対応付けを示す仕様−実装対応情報を管理する仕様−実装対応管理部と、を備え、
前記制御部は、ユーザによる所定操作に応じて、前記実装階層情報に基づいて、前記実装コード記憶部に記憶されている各実装コードの階層関係を表した実装系統図データを生成し、これと前記仕様系統図画面データとを合成した仕様−実装系統図画面データを生成して、前記表示装置に出力する、ソフトウェア開発支援装置。 An input unit for receiving an operation from the user;
Specification information on the specifications of each function that constitutes the software to be developed. When the corresponding function is executed, if it is restricted by the relationship with other functions, the execution restriction condition is the condition. A specification storage unit for storing specification information including
A specification management unit that manages specification hierarchy information indicating a hierarchical relationship of the specification information stored in the specification storage unit;
In accordance with a predetermined operation by the user, the specification information stored in the specification storage unit is read out, and between the functions based on the execution constraint condition extracted from the read specification information and the specification hierarchy information A control unit that generates specification system diagram screen data representing the relationship and outputs it to a predetermined display device;
A mounting code storage unit that stores a mounting code corresponding to each of the functions;
A mounting management unit that manages mounting hierarchy information indicating a hierarchical relationship of mounting codes stored in the mounting code storage unit;
A specification-mounting correspondence management unit that manages the specification-mounting correspondence information indicating the correspondence between the specification information stored in the specification storage unit and the mounting code stored in the mounting code storage unit; Prepared,
The control unit generates mounting system diagram data representing a hierarchical relationship of each mounting code stored in the mounting code storage unit based on the mounting hierarchy information in response to a predetermined operation by a user. A software development support apparatus that generates specification-implementation system diagram screen data obtained by combining the specification system diagram screen data and outputs the generated data to the display device.
ユーザからの操作を受け付ける入力部、
開発対象となるソフトウェアを構成する各機能についての仕様に関する仕様情報であって、対応する機能が実行される際、他の機能との関係で制約を受ける場合には、その条件となる実行制約条件が含まれる仕様書情報を記憶する仕様記憶部、
前記仕様記憶部に記憶されている仕様情報の階層関係を示す仕様階層情報を管理する仕様管理部、
ユーザによる所定操作に応じて、前記仕様記憶部に記憶されている仕様情報を読み出し、読み出した仕様情報から抽出した前記実行制約条件と、前記仕様階層情報と、に基づいて、前記各機能間の関係を表した仕様系統図画面データを生成し、所定の表示装置に出力する制御部、として機能させ、
前記制御部は、前記仕様系統図画面データの出力後、ユーザにより、特定の機能についての仕様情報の作成要求操作が行われると、ユーザによる当該機能に関する記述が可能な領域を含む画面であって、当該機能と親が共通する機能に対応する仕様情報から抽出した前記実行制約条件を組み入れた仕様情報作成画面データを生成し、前記表示装置に出力する、プログラム。 Computer
An input unit that receives operations from the user,
Specification information on the specifications of each function that constitutes the software to be developed. When the corresponding function is executed, if it is restricted by the relationship with other functions, the execution restriction condition is the condition. Specification storage unit for storing specification information including
A specification management unit that manages specification hierarchy information indicating a hierarchical relationship of the specification information stored in the specification storage unit;
In accordance with a predetermined operation by the user, the specification information stored in the specification storage unit is read out, and between the functions based on the execution constraint condition extracted from the read specification information and the specification hierarchy information Generate specification system diagram screen data representing the relationship, function as a control unit that outputs to a predetermined display device,
The control unit is a screen including an area in which a description about the function can be described by the user when a specification information creation request operation for a specific function is performed by the user after the specification system diagram screen data is output. A program that generates specification information creation screen data incorporating the execution constraint condition extracted from the specification information corresponding to the function shared by the function and the parent, and outputs the screen to the display device.
ユーザからの操作を受け付ける入力部、
開発対象となるソフトウェアを構成する各機能についての仕様に関する仕様情報であって、対応する機能が実行される際、他の機能との関係で制約を受ける場合には、その条件となる実行制約条件が含まれる仕様書情報を記憶する仕様記憶部、
前記仕様記憶部に記憶されている仕様情報の階層関係を示す仕様階層情報を管理する仕様管理部、
ユーザによる所定操作に応じて、前記仕様記憶部に記憶されている仕様情報を読み出し、読み出した仕様情報から抽出した前記実行制約条件と、前記仕様階層情報と、に基づいて、前記各機能間の関係を表した仕様系統図画面データを生成し、所定の表示装置に出力する制御部、
前記各機能に対応した実装コードを記憶する実装コード記憶部、
前記実装コード記憶部に記憶されている実装コードの階層関係を示す実装階層情報を管理する実装管理部、
前記仕様記憶部に記憶されている前記仕様情報と、前記実装コード記憶部に記憶されている前記実装コードとの対応付けを示す仕様−実装対応情報を管理する仕様−実装対応管理部、として機能させ、
前記制御部は、ユーザによる所定操作に応じて、前記実装階層情報に基づいて、前記実装コード記憶部に記憶されている各実装コードの階層関係を表した実装系統図データを生成し、これと前記仕様系統図画面データとを合成した仕様−実装系統図画面データを生成して、前記表示装置に出力する、プログラム。 Computer
An input unit that receives operations from the user,
Specification information on the specifications of each function that constitutes the software to be developed. When the corresponding function is executed, if it is restricted by the relationship with other functions, the execution restriction condition is the condition. Specification storage unit for storing specification information including
A specification management unit that manages specification hierarchy information indicating a hierarchical relationship of the specification information stored in the specification storage unit;
In accordance with a predetermined operation by the user, the specification information stored in the specification storage unit is read out, and between the functions based on the execution constraint condition extracted from the read specification information and the specification hierarchy information A control unit that generates specification system diagram screen data representing the relationship and outputs it to a predetermined display device,
A mounting code storage unit for storing a mounting code corresponding to each function;
A mounting management unit that manages mounting hierarchy information indicating a hierarchical relationship of mounting codes stored in the mounting code storage unit;
Functions as a specification-mounting correspondence management unit that manages the specification-mounting correspondence information indicating the association between the specification information stored in the specification storage unit and the mounting code stored in the mounting code storage unit Let
The control unit generates mounting system diagram data representing a hierarchical relationship of each mounting code stored in the mounting code storage unit based on the mounting hierarchy information in response to a predetermined operation by a user. A program that generates specification-implementation system diagram screen data obtained by combining the specification system diagram screen data and outputs the screen to the display device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011239629A JP5984358B2 (en) | 2011-10-31 | 2011-10-31 | Software development support apparatus and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011239629A JP5984358B2 (en) | 2011-10-31 | 2011-10-31 | Software development support apparatus and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013097564A JP2013097564A (en) | 2013-05-20 |
JP5984358B2 true JP5984358B2 (en) | 2016-09-06 |
Family
ID=48619446
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011239629A Active JP5984358B2 (en) | 2011-10-31 | 2011-10-31 | Software development support apparatus and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5984358B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6312039B2 (en) * | 2016-09-29 | 2018-04-18 | 株式会社コナミデジタルエンタテインメント | Terminal device and program |
JP6935825B1 (en) * | 2020-03-31 | 2021-09-15 | ダイキン工業株式会社 | Control specification readable program and control specification readable method |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03116228A (en) * | 1989-03-31 | 1991-05-17 | Hitachi Ltd | Design back-up method |
JPH06103049A (en) * | 1992-09-18 | 1994-04-15 | Hitachi Software Eng Co Ltd | System for making specification abstract and detailed |
US5675753A (en) * | 1995-04-24 | 1997-10-07 | U.S. West Technologies, Inc. | Method and system for presenting an electronic user-interface specification |
JPH1040088A (en) * | 1996-07-25 | 1998-02-13 | Hitachi Ltd | Method and device for supporting acquisition of software specification and storage medium |
JP2000112611A (en) * | 1998-10-02 | 2000-04-21 | Ricoh Co Ltd | Method for displaying software development document and storage medium |
JP3856969B2 (en) * | 1998-11-02 | 2006-12-13 | 株式会社日立製作所 | Object analysis design support method |
JP2005242721A (en) * | 2004-02-26 | 2005-09-08 | Hokkaido Univ | Gui programming support system and state chart preparation program |
JP2007286694A (en) * | 2006-04-12 | 2007-11-01 | Hitachi Software Eng Co Ltd | Progress management system and progress level calculation method |
JP5505690B2 (en) * | 2009-07-22 | 2014-05-28 | 日本電気株式会社 | System design support apparatus, system design support method, and system design support program |
-
2011
- 2011-10-31 JP JP2011239629A patent/JP5984358B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2013097564A (en) | 2013-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8296721B2 (en) | Template-based software development | |
CN111886579A (en) | System and method for providing an instant messaging channel within an integrated development environment | |
CN111602114A (en) | System and method for providing an instant messaging channel within an integrated development environment | |
US20080209328A1 (en) | User interface annotations | |
US8458648B2 (en) | Graphical modelization of user interfaces for data intensive applications | |
JP2015014939A (en) | Work management method and work management program | |
JP2010003291A (en) | Apparatus, method, program and computer readable recording medium for assisting software development | |
US20100077325A1 (en) | In Situ Editing of GUI Features | |
JP2014010512A (en) | Application cooperation system, application cooperation method and application cooperation program | |
US11822878B2 (en) | Systems, methods and devices for structured dynamic electronic forms | |
US9684738B2 (en) | Text-based command generation | |
JP5984358B2 (en) | Software development support apparatus and program | |
KR101989634B1 (en) | Creating logic using pre-built controls | |
JP3713466B2 (en) | Program creation support method, program creation support program, and program creation support apparatus | |
US20130297517A1 (en) | Web-based workflow automation system | |
US20110218979A1 (en) | Document revision control | |
JP6336922B2 (en) | Business impact location extraction method and business impact location extraction device based on business variations | |
CN114860125A (en) | Flow chart processing method, device, equipment and medium | |
JP6564267B2 (en) | Document creation apparatus, method and program | |
JP7059917B2 (en) | Ontology creation device, method and program | |
JP7105683B2 (en) | Electronic computer, method and program | |
JP2012118933A (en) | Screen design evaluation device, screen design evaluation method and program | |
JP5651873B2 (en) | Operation support method and computer | |
JP2020160854A (en) | Code management system, and code management method | |
JP2008027340A (en) | Web service design method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140911 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150430 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150602 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150714 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160105 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160209 |
|
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: 20160705 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160802 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5984358 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |