JP4925340B2 - Software product creation system, method and program thereof - Google Patents

Software product creation system, method and program thereof Download PDF

Info

Publication number
JP4925340B2
JP4925340B2 JP2007324784A JP2007324784A JP4925340B2 JP 4925340 B2 JP4925340 B2 JP 4925340B2 JP 2007324784 A JP2007324784 A JP 2007324784A JP 2007324784 A JP2007324784 A JP 2007324784A JP 4925340 B2 JP4925340 B2 JP 4925340B2
Authority
JP
Japan
Prior art keywords
task
software product
software
subject
sequence
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.)
Expired - Fee Related
Application number
JP2007324784A
Other languages
Japanese (ja)
Other versions
JP2009146283A (en
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.)
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 JP2007324784A priority Critical patent/JP4925340B2/en
Publication of JP2009146283A publication Critical patent/JP2009146283A/en
Application granted granted Critical
Publication of JP4925340B2 publication Critical patent/JP4925340B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、ソフトウェア開発においてソフトウェア成果物を作成するシステム、方法及びそのプログラムに関する。   The present invention relates to a system, a method, and a program for creating a software product in software development.

ソフトウェア開発では、開発対象のソフトウェアが有する機能等の事項が記載された仕様書を作成した後に、具体的な実装を意識したソフトウェアの構造・アーキテクチャ等が定められた設計書を仕様書に基づき作成する。そして、開発者は、設計書に基づきソフトウェアの実装を行う。これらの仕様書や設計書に記述されたソフトウェアの機能は、ソフトウェアが管理する情報等の静的な側面と、ソフトウェアの動作等の動的な側面という二つの面によって表される。また、上記の情報及び動作は、自然言語を用いた文書やUML(Unified Modeling Language)等のモデル言語を用いた図等で記述される。ところで、ソフトウェアの規模が大きくなると、ソフトウェアの動作の記述量や複雑さが増大する。これにより、開発者がソフトウェアの動作を記述するための時間が増大することから、ソフトウェア開発にかかるコストが嵩むとともにソフトウェア開発期間が長期化するという問題があった。   In software development, after creating a specification document that describes the functions, etc. of the software to be developed, a design document that defines the structure and architecture of the software with specific implementation in mind is created based on the specification document. To do. The developer then implements the software based on the design document. Software functions described in these specifications and design documents are represented by two aspects: static aspects such as information managed by software and dynamic aspects such as software operations. The information and operations described above are described in a document using a natural language, a diagram using a model language such as UML (Unified Modeling Language), and the like. By the way, as the scale of software increases, the amount of description and complexity of software operations increase. As a result, the time required for the developer to describe the operation of the software is increased, and thus there is a problem that the cost for software development increases and the software development period is prolonged.

そこで、非特許文献1では、上記問題を解決するために、ソフトウェアの動作を時系列で表現したシーケンス図を仕様書/設計書に作成する際に、既に作成されたソフトウェアにおいて頻繁に用いられるソフトウェア動作をパターン化して蓄積しておき、該パターンに基づいてシーケンス図を自動的に生成する方法を提案している。   Therefore, in Non-Patent Document 1, in order to solve the above-mentioned problem, software frequently used in software that has already been created when creating a sequence diagram that expresses software operations in time series in a specification / design document. A method is proposed in which operations are patterned and accumulated, and a sequence diagram is automatically generated based on the patterns.

例えば、ソフトウェアの動作を表すシーケンス図において、図16に示すように、ソフトウェアの振舞を表す複数のメッセージを、各メッセージ毎に抽象概念を関連付けた状態で蓄積しておく。図16では、「登録開始」という抽象概念が1番目のメッセージに、「登録」という抽象概念が2番目のメッセージに、「登録終了」という抽象概念が3番目のメッセージにそれぞれ関連付けられている。また、これらの抽象概念は、図17に示すように、ソフトウェアが扱う管理情報を表現したクラス図の管理情報にも関連付けられている。例えば、「登録開始」という抽象概念は、「装置タイプ」及び「IPアドレス」という管理情報に関連付けられており、「登録」という抽象概念は、「装置タイプ」、「装置No」及び「IPアドレス」という管理情報に関連付けられている。また、「登録終了」という抽象概念は、「装置No」という管理情報に関連付けられている。そして、図16に示された各メッセージのパラメータ部分に、該メッセージに対応する抽象概念が関連付けられた管理情報が代入されることにより、図18に示すようなシーケンス図を生成することが可能になる。
佐藤他「装置・NW管理ドメインにおけるパターンを利用したOSS要求定義方法の提案」、電子情報通信学会技術研究報告 vol.105、no.668、TM2005−70、pp.85−90、2006年3月
For example, in the sequence diagram representing the operation of the software, as shown in FIG. 16, a plurality of messages representing the behavior of the software are stored in a state where an abstract concept is associated with each message. In FIG. 16, the abstract concept “registration start” is associated with the first message, the abstract concept “registration” is associated with the second message, and the abstract concept “registration end” is associated with the third message. These abstract concepts are also associated with management information in a class diagram representing management information handled by software, as shown in FIG. For example, the abstract concept “registration start” is associated with management information “device type” and “IP address”, and the abstract concept “registration” is “device type”, “device No”, and “IP address”. Is associated with the management information. Further, the abstract concept of “registration end” is associated with management information “device No.”. Then, by assigning the management information associated with the abstract concept corresponding to the message to the parameter portion of each message shown in FIG. 16, it is possible to generate a sequence diagram as shown in FIG. Become.
Sato et al. “Proposal of OSS request definition method using pattern in device / NW management domain”, IEICE technical report vol. 105, no. 668, TM2005-70, pp. 85-90, March 2006

しかしながら、従来例では、ソフトウェア開発者が、既に作成された複数のシーケンス図から共通の動作パターンを抽象概念として抽出し、蓄積する必要がある。この場合、動作パターンをどのように定めるかはソフトウェア開発者の知識及び経験に依存していることから、動作パターンの抽出作業にかかる時間がソフトウェア開発者毎に異なり、効率的なソフトウェア開発の妨げになっている。   However, in the conventional example, the software developer needs to extract and accumulate a common operation pattern as an abstract concept from a plurality of sequence diagrams that have already been created. In this case, since how to determine the operation pattern depends on the knowledge and experience of the software developer, the time required to extract the operation pattern varies from software developer to software developer and hinders efficient software development. It has become.

本発明は前記問題点に鑑みてなされたものであり、その目的とするところは、ソフトウェア開発の効率を向上させることができるソフトウェア成果物作成システム、方法及びそのプログラムを提供することにある。   The present invention has been made in view of the above problems, and an object of the present invention is to provide a software product creation system, method, and program thereof that can improve the efficiency of software development.

本発明のソフトウェア成果物作成システムは、前記目的を達成するために、第1のソフトウェア成果物に含まれる、主体、動作及びパラメータからなるタスクに基づいて、第2のソフトウェア成果物に含まれるタスクを、コンピュータを用いて生成することによりソフトウェア成果物を作成するソフトウェア成果物作成システムであって、前記コンピュータは、既に作成された複数の第1及び第2のソフトウェア成果物を、各第1のソフトウェア成果物のタスクと、該タスクに基づいて作成された第2のソフトウェア成果物のタスクとを関連付けた状態で記憶する記憶手段と、記憶手段に記憶された各第1のソフトウェア成果物のタスクのうち、記憶手段に記憶された他の第1のソフトウェア成果物に含まれるタスクの主体及び動作と同一のタスクと、該タスクに関連付けられた第2のソフトウェア成果物のタスクとを取得するタスク取得手段と、タスク取得手段によって取得された第2のソフトウェア成果物のタスクのうち、タスク取得手段によって取得された他の第2のソフトウェア成果物に含まれるタスクの主体及び動作と同一のタスクを抽出するタスク抽出手段と、タスク抽出手段によって抽出されたタスクに基づき第2のソフトウェア成果物のタスクを作成する作成手段とを備えている。   In order to achieve the above object, the software product creation system of the present invention includes a task included in the second software product based on a task including a subject, an operation, and a parameter included in the first software product. Is a software product creation system that creates a software product by using a computer, wherein the computer generates a plurality of first and second software products that have already been created. Storage means for storing the task of the software product and the task of the second software product created based on the task in association with each other, and the task of each first software product stored in the storage means The same as the subject and operation of the task included in the other first software product stored in the storage means Task acquisition means for acquiring a task and a task of the second software product associated with the task, and a task of the second software product acquired by the task acquisition means. A task extraction unit that extracts the same task as the subject and operation of the task included in the other second software product, and creates a task of the second software product based on the task extracted by the task extraction unit Creating means.

また、本発明のソフトウェア成果物作成方法は、前記目的を達成するために、第1のソフトウェア成果物に含まれる、主体、動作及びパラメータからなるタスクに基づいて、第2のソフトウェア成果物に含まれるタスクを、コンピュータを用いて生成することによりソフトウェア成果物を作成するソフトウェア成果物作成方法であって、前記コンピュータは、既に作成された複数の第1及び第2のソフトウェア成果物を、各第1のソフトウェア成果物のタスクと、該タスクに基づいて作成された第2のソフトウェア成果物のタスクとを関連付けた状態で所定の記憶部に記憶し、前記記憶部に記憶された各第1のソフトウェア成果物のタスクのうち、該記憶部に記憶された他の第1のソフトウェア成果物に含まれるタスクの主体及び動作と同一のタスクと、該タスクに関連付けられた第2のソフトウェア成果物のタスクとを取得し、取得された第2のソフトウェア成果物のタスクのうち、取得された他の第2のソフトウェア成果物に含まれるタスクの主体及び動作と同一のタスクを抽出し、抽出されたタスクに基づき第2のソフトウェア成果物のタスクを作成している。   In addition, the software product creation method of the present invention is included in the second software product based on a task including a subject, an operation, and a parameter included in the first software product in order to achieve the object. A software product creation method for creating a software product by generating a task using a computer, wherein the computer generates a plurality of first and second software products already created. The task of one software product and the task of the second software product created based on the task are stored in association with each other, and each first stored in the storage unit is stored in a predetermined storage unit. Among the tasks of the software product, the same as the subject and the operation of the task included in the other first software product stored in the storage unit The task and the task of the second software product associated with the task are acquired, and included in the acquired second software product of the tasks of the acquired second software product The same task as the subject and the operation of the task is extracted, and a task of the second software product is created based on the extracted task.

さらに、本発明のソフトウェア成果物作成プログラムは、前記目的を達成するために、前記ソフトウェア成果物作成方法をコンピュータに実行させる。   Furthermore, the software product creation program of the present invention causes the computer to execute the software product creation method in order to achieve the object.

これにより、他の第1のソフトウェア成果物に含まれるタスクの主体及び動作と同一のタスクと、該タスクに関連付けられた第2のソフトウェア成果物のタスクとが取得され、取得された第2のソフトウェア成果物のタスクのうち、他の第2のソフトウェア成果物に含まれるタスクの主体及び動作と同一のタスクが抽出されることから、複数の第2のソフトウェア成果物で共通して用いられるタスクを抽出することが可能となる。   As a result, the same task as the subject and operation of the task included in the other first software product, and the task of the second software product associated with the task are acquired, and the acquired second Among the tasks of the software product, the same task as the subject and the operation of the task included in the other second software product is extracted, so that the task commonly used by the plurality of second software products Can be extracted.

本発明のソフトウェア成果物作成システム、方法及びそのプログラムによれば、複数の第2のソフトウェア成果物で共通して用いられるタスクを抽出することができるので、例えば抽出されたタスクを抽象概念として用いた場合には抽象概念の抽出にかかる作業時間を短縮することができ、ソフトウェア開発の効率を大幅に向上させることができる。   According to the software product creation system, method, and program thereof of the present invention, it is possible to extract a task that is used in common by a plurality of second software products. For example, the extracted task is used as an abstract concept. If this occurs, the time required for extracting abstract concepts can be shortened, and the efficiency of software development can be greatly improved.

以下に図面を参照して本発明の一実施形態を説明する。   An embodiment of the present invention will be described below with reference to the drawings.

<前提>
ソフトウェア成果物には、開発対象のソフトウェアの振舞を実現するために必要なデータ情報が規定された静的なソフトウェア成果物(以下、静的成果物と称する。)と、開発対象のソフトウェアの振舞を規定するための動的情報(タスク)が表現された動的なソフトウェア成果物(以下、動的成果物と称する。)とが存在し、本実施形態では、ソフトウェア開発において既に作成された複数の動的成果物から共通のタスクを抽象概念として抽出し、該抽象概念に基づいて新たな動的成果物を生成するソフトウェア成果物作成システムについて説明する。
<Premise>
The software product includes a static software product (hereinafter referred to as a static product) in which data information necessary for realizing the behavior of the development target software is defined, and the behavior of the development target software. There is a dynamic software product (hereinafter referred to as a dynamic product) in which dynamic information (tasks) for defining the data is expressed. In this embodiment, a plurality of software products already created in software development are present. A software product creation system for extracting a common task as an abstract concept from a dynamic product and generating a new dynamic product based on the abstract concept will be described.

本発明のソフトウェア成果物作成システム10は、周知のCPUを主体として構成されたコンピュータからなり、図1に示すとおり、表示部11、情報入力部12、動的成果物保存部13、一致タスク保存部14、抽象概念保存部15及び制御部16から構成されている。   A software product creation system 10 according to the present invention includes a computer mainly composed of a well-known CPU. As shown in FIG. 1, a display unit 11, an information input unit 12, a dynamic product storage unit 13, and a matching task storage. Unit 14, abstract concept storage unit 15, and control unit 16.

表示部11は、液晶ディスプレイ等のように情報を表示するためのモジュールであり、制御部16の制御により図2に示すような成果物描画画面20を表示する。   The display unit 11 is a module for displaying information, such as a liquid crystal display, and displays a product drawing screen 20 as shown in FIG. 2 under the control of the control unit 16.

情報入力部12は、キーボードやマウス等のように情報を入力するためのモジュールであり、入力情報を制御部16に送信する。   The information input unit 12 is a module for inputting information, such as a keyboard and a mouse, and transmits input information to the control unit 16.

動的成果物保存部13は、ソフトウェア開発において既に作成された動的成果物と、後述のタスク構造とを記憶するモジュールである。   The dynamic product storage unit 13 is a module that stores a dynamic product already created in software development and a task structure described later.

一致タスク保存部14は、動的成果物13に記憶された動的成果物に含まれるタスクのうち、他の動的成果物に含まれるタスクと同一のタスク及び該タスクに関連付けられたタスクを保存するモジュールである。   The matching task storage unit 14 selects a task that is the same as a task included in another dynamic product among tasks included in the dynamic product stored in the dynamic product 13 and a task associated with the task. The module to save.

抽象概念保存部15は、一致タスク保存部14に保存されたタスクのうち、複数の動的成果物で共通に用いられるタスクを抽象概念として保存するモジュールである。   The abstract concept storage unit 15 is a module that stores, among the tasks stored in the matching task storage unit 14, tasks commonly used by a plurality of dynamic products as abstract concepts.

制御部16は、上記各モジュール11〜15と接続され、各モジュール11〜15間の情報、または各モジュール11〜15間の情報を組合わせた情報を受け渡すモジュールである。また、制御部16には、ROM等の記憶装置が設けられており、制御部16は、記憶装置に記憶されたプログラムを実行することにより各モジュール11〜15の制御を行う。さらに、制御部16には、タスク一致判定部161と抽象概念抽出部162が設けられており、タスク一致判定部161及び抽象概念抽出部162の動作については後述する。   The control unit 16 is a module that is connected to the modules 11 to 15 and transfers information between the modules 11 to 15 or information obtained by combining information between the modules 11 to 15. Further, the control unit 16 is provided with a storage device such as a ROM, and the control unit 16 controls the modules 11 to 15 by executing a program stored in the storage device. Further, the control unit 16 is provided with a task match determination unit 161 and an abstract concept extraction unit 162, and operations of the task match determination unit 161 and the abstract concept extraction unit 162 will be described later.

成果物描画画面20は、図2に示すように、作成対象の動的成果物を選択するための成果物選択部21と、作成対象の動的成果物を表示するための描画部22と、作成対象の動的成果物よりも上流の工程で作成された動的成果物のタスクを表示するためのタスク表示部23とから構成されている。また、描画部22には、作成された動的成果物を動的成果物保存部13に登録するための登録指示部(図示省略)と、抽象概念の抽出を指示するための抽出指示部(図示省略)が設けられており、情報入力部12を用いて登録及び抽出を指示することができるようになっている。   As shown in FIG. 2, the product drawing screen 20 includes a product selecting unit 21 for selecting a dynamic product to be created, a drawing unit 22 for displaying the dynamic product to be created, The task display unit 23 displays a task of a dynamic product created in a process upstream of the dynamic product to be created. In addition, the drawing unit 22 includes a registration instruction unit (not shown) for registering the created dynamic product in the dynamic product storage unit 13, and an extraction instruction unit (instruction for extracting an abstract concept). (Not shown) is provided, and registration and extraction can be instructed using the information input unit 12.

なお、本実施形態では、図3に示すように、第1の動的成果物としてのUC(ユースケース)記述に含まれるタスクに基づいて、第2の動的成果物としてのシーケンス図のタスクを生成している。   In the present embodiment, as shown in FIG. 3, the sequence diagram task as the second dynamic product is based on the task included in the UC (use case) description as the first dynamic product. Is generated.

<動的成果物タスクの形式化>
動的成果物には、ソフトウェアが実現する機能に対する振舞が複数のタスクのフローとして記述されている。この一つのタスク30は、入力主体31、出力主体32、動作33及びパラメータ34の4つの要素からなるものとして表現される。タスクを自然言語で表現した場合、入力主体31、出力主体32、動作33、パラメータ34は、主語、間接目的語、述語、目的語にそれぞれ対応する。例えば、図4に示すように、「オペレータは装置情報をサーバに送信する」というタスクの入力主体31は「オペレータ」、出力主体32は「サーバ」、動作33は「送信する」、パラメータ34は「装置情報」となる。また、UMLにおけるシーケンス図のメッセージからタスクを表現する場合には、タスク30は図5のように示される。なお、図4及び図5のように表現された構造をタスク構造と称し、動的成果物に含まれるタスクやメッセージは、タスク構造に変換されてから動的成果物保存部13に記憶される。
<Formulation of dynamic product task>
In the dynamic product, behavior for functions realized by software is described as a flow of a plurality of tasks. This one task 30 is expressed as comprising four elements: an input main body 31, an output main body 32, an operation 33 and a parameter 34. When the task is expressed in a natural language, the input subject 31, the output subject 32, the action 33, and the parameter 34 correspond to the subject, indirect object, predicate, and object, respectively. For example, as shown in FIG. 4, the input subject 31 of the task “operator sends device information to the server” is “operator”, the output subject 32 is “server”, the operation 33 is “send”, and the parameter 34 is “Device information”. When a task is expressed from a sequence diagram message in UML, the task 30 is shown as in FIG. The structure expressed as shown in FIGS. 4 and 5 is referred to as a task structure, and tasks and messages included in the dynamic product are stored in the dynamic product storage unit 13 after being converted into the task structure. .

動的成果物は、表現する機能が同じものであっても、動的成果物に含まれるタスクの詳細度(粒度)がソフトウェア開発工程毎に異なっている。即ち、図6に示すように、ソフトウェア開発の上流工程で作成されるUC記述の複数のタスク30a〜30dのうち1番目のタスク30aの粒度は、下流工程で作成されるシーケンス図の1番目のタスク30eに記載されるタスクの粒度よりも粗くなっている。また、UC記述の2番目のタスク30bがシーケンス図の2、3、4及び5番目のタスク30f,30g,30h,30iに分解されている場合、UC記述の2番目のタスク30bとシーケンス図の2、3、4及び5番目のタスク30f,30g,30h,30iとの間には、UC記述の2番目のタスク30bがシーケンス図の各タスク30f,30g,30h,30iの基となったタスクであり、シーケンス図の各タスク30f,30g,30h,30iがUC記述の2番目のタスク30bに基づいて作成されたという関係を有している。本実施形態では、このような関係を表す情報を達成関係40として表現することとし、UC記述の1番目のタスク30aとシーケンス図の1番目のタスク30e、及びUC記述の2番目のタスク30bとシーケンス図の2、3、4及び5番目のタスク30f,30g,30h,30iは、達成関係40で結び付けられる。この場合、作成された動的成果物のタスク及び工程毎のタスク間の関係は図6に示すような構造で表現される。なお、この構造をタスク達成構造と呼び、タスク達成構造は動的成果物保存部13に記憶される。   Even if the dynamic product has the same function to be expressed, the level of detail (granularity) of the task included in the dynamic product differs for each software development process. That is, as shown in FIG. 6, the granularity of the first task 30a among the plurality of tasks 30a to 30d of the UC description created in the upstream process of software development is the first in the sequence diagram created in the downstream process. The granularity of the task described in task 30e is coarser. In addition, when the second task 30b in the UC description is decomposed into the second, third, fourth and fifth tasks 30f, 30g, 30h, and 30i in the sequence diagram, the second task 30b in the UC description and the sequence diagram in FIG. Between the second, third, fourth and fifth tasks 30f, 30g, 30h, 30i, the second task 30b in the UC description is the task on which the respective tasks 30f, 30g, 30h, 30i in the sequence diagram are based. Each of the tasks 30f, 30g, 30h, 30i in the sequence diagram is created based on the second task 30b in the UC description. In the present embodiment, information representing such a relationship is expressed as an achievement relationship 40, and the first task 30a in the UC description, the first task 30e in the sequence diagram, and the second task 30b in the UC description The second, third, fourth, and fifth tasks 30f, 30g, 30h, 30i in the sequence diagram are linked by the achievement relationship 40. In this case, the relationship between the task of the created dynamic product and the task for each process is expressed by a structure as shown in FIG. This structure is called a task achievement structure, and the task achievement structure is stored in the dynamic product storage unit 13.

<動的成果物の作成>
制御部16は、成果物描画画面20を、図2に示すような構成で表示部11に表示させる。開発者は、成果物描画画面20の成果物選択部21において作成しようとする動的成果物(例えばシーケンス図)を選択した後に、描画部22において作成対象の動的成果物を作成する。このとき、制御部16は、成果物選択部21で選択された動的成果物よりも上流の工程で作成された動的成果物(例えばUC記述)のタスクを、動的成果物保存部13から取得してタスク表示部23に表示させる。なお、描画部22に描画される動的成果物の形式は、自然言語や、アクティビティ図及びシーケンス図等のUMLに基づく図であっても構わない。
<Create dynamic product>
The control unit 16 displays the product drawing screen 20 on the display unit 11 with a configuration as shown in FIG. The developer creates a dynamic product to be created in the drawing unit 22 after selecting a dynamic product (for example, a sequence diagram) to be created in the product selection unit 21 of the product drawing screen 20. At this time, the control unit 16 converts the task of the dynamic product (for example, UC description) created in the process upstream of the dynamic product selected by the product selection unit 21 into the dynamic product storage unit 13. And is displayed on the task display unit 23. Note that the format of the dynamic product rendered in the rendering unit 22 may be a diagram based on a natural language, UML such as an activity diagram and a sequence diagram.

ここで、開発者は、タスク表示部23に表示された動的成果物のタスクと、描画部22に表示された動的成果物のタスクとの関連付けを行う。この関連付けは、開発者が、タスク表示部23に表示された動的成果物のタスクを選択した後に描画部22に表示された動的成果物のタスクを選択することにより行われる。本実施形態では、既存のGUI機能を用いて、タスク表示部23に表示されたタスクにポインタを移動させてマウスをクリックした後に、描画部22に表示された動的成果物のタスクをクリックすることにより、それぞれのタスクを関連付けることが可能である。このとき、各タスクには、互いに関連付けられていることを表すタスク間関係情報が制御部16により生成される。   Here, the developer associates the task of the dynamic product displayed on the task display unit 23 with the task of the dynamic product displayed on the drawing unit 22. This association is performed by the developer selecting the task of the dynamic product displayed on the drawing unit 22 after selecting the task of the dynamic product displayed on the task display unit 23. In the present embodiment, the existing GUI function is used to move the pointer to the task displayed in the task display unit 23 and click the mouse, and then click the dynamic product task displayed in the drawing unit 22 It is possible to associate each task. At this time, the inter-task relationship information indicating that each task is associated with each other is generated by the control unit 16.

なお、動的成果物の他の作成方法として、出願人が提案した特願2007−198845号に記載の技術を用いてもよい。   As another method for creating a dynamic product, the technique described in Japanese Patent Application No. 2007-198845 proposed by the applicant may be used.

<成果物登録>
動的成果物作成後、開発者は、成果物描画画面20の登録指示部において動的成果物の登録を指示する。このとき、制御部16は、作成された動的成果物を動的成果物保存部13に記憶する。この場合、制御部16は、各タスクのタスク間関係情報に基づいて作成された動的成果物をタスク達成構造に変換し、タスク達成構造を動的成果物保存部13に記憶する。なお、動的成果物作成時に入力されたタスク間関係情報は、タスク達成構造における達成関係40に変換される。
<Product registration>
After creating the dynamic product, the developer instructs the registration instruction unit of the product drawing screen 20 to register the dynamic product. At this time, the control unit 16 stores the created dynamic product in the dynamic product storage unit 13. In this case, the control unit 16 converts the dynamic product created based on the inter-task relationship information of each task into a task achievement structure, and stores the task achievement structure in the dynamic product storage unit 13. Note that the inter-task relationship information input at the time of creating the dynamic product is converted into the achievement relationship 40 in the task achievement structure.

また、上記と同様に他の動的成果物を成果物描画画面20にて作成し、登録を行う。なお、動的成果物の登録は、全ての動的成果物を作成してから行っても構わないし、一つのソフトウェア成果物を作成する毎に行っても構わない。   Similarly to the above, another dynamic product is created on the product drawing screen 20 and registered. The dynamic product registration may be performed after all dynamic products are created, or may be performed every time one software product is created.

<抽象概念抽出>
上記の成果物登録が行われたことを前提として、既に作成された複数の動的成果物から抽象概念を抽出する方法について図7を参照して説明する。なお、第1のソフトウェア成果物としてのUC記述及びそれに対応する第2のソフトウェア成果物としてのシーケンス図は、図8に示すようにそれぞれN個ずつ作成されており、各UC記述に含まれるタスクは、該UC記述に対応するシーケンス図のタスクと達成関係40によって関連付けられている。
<Abstract concept extraction>
A method of extracting an abstract concept from a plurality of already created dynamic products will be described with reference to FIG. 7 on the assumption that the product registration has been performed. Note that the UC description as the first software product and the sequence diagram as the second software product corresponding to the UC description are respectively created N pieces as shown in FIG. 8, and the tasks included in each UC description Are related to the task of the sequence diagram corresponding to the UC description by the achievement relationship 40.

まず、成果物描画画面20の抽出指示部において抽象概念の抽出が指示されると、制御部16は、既に作成された成果物から条件を満たすタスクを取得する(ステップS1)。具体的に説明すると、制御部16のタスク一致判定部161は、以下の1−1〜1−3の手順に記載された処理を行う。   First, when extraction of an abstract concept is instructed by the extraction instruction unit of the product drawing screen 20, the control unit 16 acquires a task that satisfies the conditions from the already created product (step S1). Specifically, the task match determination unit 161 of the control unit 16 performs the processes described in the following procedures 1-1 to 1-3.

1−1.まず、動的成果物保存部13に記憶されたN個のUC記述のうち一つのUC記述(例えば図8のUC記述1)を抽出し、抽出されたUC記述の各タスク(タスクA,B,C)毎に、該タスクと動作・入力主体・出力主体が全て一致するタスクを他のUC記述(UC記述2〜N)から取得する。   1-1. First, one UC description (for example, UC description 1 in FIG. 8) is extracted from the N UC descriptions stored in the dynamic product storage unit 13, and each task (task A, B) of the extracted UC description is extracted. , C), the task whose operation / input subject / output subject all match is obtained from other UC descriptions (UC descriptions 2 to N).

1−2.次に、取得されたタスクと達成関係40によって関連付けられたシーケンス図(シーケンス図1〜N)のタスクを取得する。   1-2. Next, the tasks of the sequence diagrams (sequence diagrams 1 to N) associated with the acquired task by the achievement relationship 40 are acquired.

1−3.そして、上記1−1及び1−2で取得されたタスクを一致タスク保存部14に記憶する。   1-3. Then, the tasks acquired in 1-1 and 1-2 are stored in the matching task storage unit 14.

このようにして、図9に示すように、複数のタスク達成構造が一致タスク保存部14に記憶される。なお、上記1−1の手順では、タスクが一致するか否かの判断が、タスクの動作、入力主体及び出力主体に基づき行われるため、上記1−3にてタスクを一致タスク保存部14に記憶する際には、タスクのパラメータを一致タスク保存部14に記憶しなくてもよい。   In this way, a plurality of task achievement structures are stored in the matching task storage unit 14 as shown in FIG. In the above procedure 1-1, whether or not the tasks match is determined based on the operation of the task, the input subject, and the output subject. Therefore, the task is stored in the matching task storage unit 14 in 1-3. When storing, the task parameters may not be stored in the matching task storage unit 14.

次に、取得されたタスクから抽象概念を抽出する(ステップS2)。具体的に説明すると、制御部16の抽象概念抽出部162は、以下の2−1〜2−3の手順に記載された処理を行う。   Next, an abstract concept is extracted from the acquired task (step S2). More specifically, the abstract concept extraction unit 162 of the control unit 16 performs the processing described in the following procedures 2-1 to 2-3.

2−1.上記1−2で取得された複数のシーケンス図のタスク列のうち、各シーケンス図間で共通に用いられるタスク列を抽出する。ここで、共通とは、各タスク列を構成するタスクの動作・入力主体・出力主体が同一であり、且つタスクの順序が同一の場合をいう。例えば、図10に示すように、3つのUC記述のタスクAのそれぞれに対応するタスク達成構造が存在する場合に、1番目のタスク達成構造と2番目のタスク達成構造には、タスク1、タスク2及びタスク3が共通に存在することから、タスク1、タスク2及びタスク3からなる第1のタスク列が抽出される。また、2番目のタスク達成構造と3番目のタスク達成構造には、タスク3及びタスク4が共通に存在することから、タスク3及びタスク4からなる第2のタスク列も抽出される。   2-1. Among the task sequences of the plurality of sequence diagrams acquired in 1-2 above, a task sequence that is used in common among the sequence diagrams is extracted. Here, “common” refers to a case where the operations, input subjects, and output subjects of the tasks constituting each task sequence are the same, and the task order is the same. For example, as shown in FIG. 10, when there are task achievement structures corresponding to the tasks A in the three UC descriptions, the first task achievement structure and the second task achievement structure include task 1, task Since 2 and task 3 exist in common, a first task sequence including task 1, task 2 and task 3 is extracted. In addition, since task 3 and task 4 exist in common in the second task achievement structure and the third task achievement structure, a second task sequence including task 3 and task 4 is also extracted.

2−2.上記2−1で取得したタスク列に基づき、動的成果物(例えばシーケンス図)を構成する。図10に示された第1のタスク列を用いて説明すると、タスク列の各タスクの動作・入力主体・出力主体は、それぞれシーケンス図のメッセージ・送信オブジェクト・受信オブジェクトに対応することから、タスク1、タスク2及びタスク3をシーケンス図で表した場合には、図11に示すシーケンス図を構成することができる。   2-2. A dynamic product (for example, a sequence diagram) is configured based on the task sequence acquired in 2-1 above. Referring to the first task sequence shown in FIG. 10, the operations, input subject, and output subject of each task in the task sequence correspond to the message, transmission object, and reception object in the sequence diagram, respectively. When 1, task 2 and task 3 are represented by sequence diagrams, the sequence diagram shown in FIG. 11 can be configured.

2−3.上記2−2で構成したシーケンス図とともに、タスク列の各タスクを抽象概念として抽出し、該抽象概念を抽象概念保存部15に保存する。例えば、図12に示すように、シーケンス図の動作1というメッセージ、即ちタスク1が「抽象概念1」という抽象概念として抽出され、シーケンス図の動作2というメッセージ、即ちタスク2が「抽象概念2」という抽象概念として抽出される。また、動作3というメッセージ、即ちタスク3が「抽象概念3」という抽象概念として抽出される。   2-3. Along with the sequence diagram configured in 2-2 above, each task in the task sequence is extracted as an abstract concept, and the abstract concept is stored in the abstract concept storage unit 15. For example, as shown in FIG. 12, a message “Operation 1” in the sequence diagram, that is, Task 1 is extracted as an abstract concept “Abstract Concept 1”, and a message “Operation 2 in the sequence diagram”, that is, Task 2 is “Abstract Concept 2”. It is extracted as an abstract concept. In addition, the message “operation 3”, that is, task 3 is extracted as an abstract concept “abstract concept 3”.

なお、前述した従来例と同様に、クラス図等の管理情報に対して抽象概念を予め関連付けておくことにより、シーケンス図の各メッセージのパラメータ部分に、該メッセージに対応する抽象概念が関連付けられた管理情報を自動的に代入することができ、パラメータを含むシーケンス図を容易に生成することができる。   As in the conventional example described above, the abstract concept corresponding to the message is associated with the parameter portion of each message in the sequence diagram by associating the abstract concept with the management information such as the class diagram in advance. Management information can be automatically substituted, and a sequence diagram including parameters can be easily generated.

ここでは、図13に示す「装置登録機能」及び「カード登録機能」という2つの機能に対応するUC記述及びシーケンス図を用いて抽象概念を抽出する場合の動作について説明する。   Here, the operation in the case of extracting an abstract concept using UC descriptions and sequence diagrams corresponding to the two functions “device registration function” and “card registration function” shown in FIG. 13 will be described.

制御部16のタスク一致判定部161は、「装置登録機能」に対応するUC記述の各タスクのうち2番目のタスク、即ち「サーバは装置情報を確認する。」というタスクを取得する。そして、タスク一致判定部161は、「カード登録機能」に対応するUC記述の各タスクのうち、「装置登録機能」に対応するUC記述の2番目のタスクと動作・入力主体・出力主体が全て一致するタスクを取得する。この場合、「カード登録機能」に対応するUC記述の2番目のタスク、即ち「サーバはカード情報を確認する。」の動作「確認する」、入力主体「サーバ」及び出力主体「無し」が互いに同一であることから、「カード登録機能」に対応するUC記述の2番目のタスクが抽出され、該タスクは、「装置登録機能」に対応するUC記述の2番目のタスクとともに一致タスク保存部14に記憶される。   The task match determination unit 161 of the control unit 16 acquires the second task among the tasks of the UC description corresponding to the “device registration function”, that is, the task “Server confirms device information”. Then, the task match determination unit 161 includes, among the tasks of the UC description corresponding to the “card registration function”, the second task of the UC description corresponding to the “device registration function” and the operation / input subject / output subject. Get matching tasks. In this case, the second task of the UC description corresponding to the “card registration function”, that is, the operation “confirm” of “the server confirms the card information”, the input subject “server”, and the output subject “none” are mutually connected. Since they are the same, the second task of the UC description corresponding to the “card registration function” is extracted, and the task is the matching task storage unit 14 together with the second task of the UC description corresponding to the “device registration function”. Is remembered.

なお、一致タスク保存部14に記憶された各タスクは、図14に示すように該タスクと達成関係40によって関連付けられたシーケンス図のタスクとともに保存されている。即ち、「装置登録機能」に対応するUC記述の2番目のタスク50には、「動作:送信する、入力主体:サーバ、出力主体:DB」というタスク50aと、「動作:検索する、入力主体:DB、出力主体:DB」というタスク50bと、「動作:送信する、入力主体:DB、出力主体:サーバ」というタスク50cと、「動作:存在確認する、入力主体:サーバ、出力主体:サーバ」というタスク50dの4つのタスクが関連付けられている。また、「カード登録機能」に対応するUC記述の2番目のタスク60には、「動作:送信する、入力主体:サーバ、出力主体:DB」というタスク60aと、「動作:検索する、入力主体:DB、出力主体:DB」というタスク60bと、「動作:送信する、入力主体:DB、出力主体:サーバ」というタスク60cと、「動作:存在確認する、入力主体:サーバ、出力主体:サーバ」というタスク60dと、「動作:非存在確認する、入力主体:サーバ、出力主体:サーバ」というタスク60eの5つのタスクが関連付けられている。   Each task stored in the matching task storage unit 14 is stored together with the task of the sequence diagram associated with the task by the achievement relationship 40 as shown in FIG. That is, the second task 50 of the UC description corresponding to the “device registration function” includes a task 50a of “operation: sending, input subject: server, output subject: DB” and “operation: input subject to search. : Task, 50b: “DB, output subject: DB”, task 50c, “operation: send, input subject: DB, output subject: server”, and “operation: confirm existence, input subject: server, output subject: server” Are associated with the task 50d. Further, the second task 60 of the UC description corresponding to the “card registration function” includes a task 60a of “operation: send, input subject: server, output subject: DB”, and “operation: input subject to search”. : Task, 60b: “DB, output subject: DB”, task 60c “operation: send, input subject: DB, output subject: server”, “operation: confirm existence, input subject: server, output subject: server” Are associated with the task 60d of “task: non-existent, input subject: server, output subject: server”.

次に、制御部16の抽象概念抽出部162は、一致タスク保存部14に記憶されたタスク列を用いて抽象概念を抽出する。図14の例では、「動作:送信する、入力主体:サーバ、出力主体:DB」というタスク50a,60aと、「動作:検索する、入力主体:DB、出力主体:DB」というタスク50b,60bと、「動作:送信する、入力主体:DB、出力主体:サーバ」というタスク50c,60cと、「動作:存在確認する、入力主体:サーバ、出力主体:サーバ」というタスク50d,60dの4つのタスクからなるタスク列が、「装置登録機能」に対応するタスク達成構造と「カード登録機能」に対応するタスク達成構造に含まれていることから、該タスク列を共通の動作パターンとして抽出する。   Next, the abstract concept extraction unit 162 of the control unit 16 extracts an abstract concept using the task sequence stored in the matching task storage unit 14. In the example of FIG. 14, tasks 50 a and 60 a “operation: send, input subject: server, output subject: DB” and tasks 50 b, 60 b called “operation: search, input subject: DB, output subject: DB”. And tasks 50c and 60c called “operation: send, input subject: DB, output subject: server”, and tasks 50d, 60d called “operation: check existence, input subject: server, output subject: server”. Since the task sequence composed of tasks is included in the task achievement structure corresponding to the “device registration function” and the task achievement structure corresponding to the “card registration function”, the task sequence is extracted as a common operation pattern.

そして、抽象概念抽出部162は、抽出されたタスク列を抽象概念として抽象概念保存部15に記憶する。なお、抽出されたタスク列に基づき構成されたシーケンス図は、図15のように示される。この場合、「動作:送信する、入力主体:サーバ、出力主体:DB」というタスク50aが「抽象概念1」という抽象概念として抽出され、「動作:検索する、入力主体:DB、出力主体:DB」というタスク50bが「抽象概念2」という抽象概念として抽出される。また、「動作:送信する、入力主体:DB、出力主体:サーバ」というタスク50cが「抽象概念3」という抽象概念として抽出され、「動作:存在確認する、入力主体:サーバ、出力主体:サーバ」というタスク50dが「抽象概念4」という抽象概念として抽出される。   Then, the abstract concept extraction unit 162 stores the extracted task sequence in the abstract concept storage unit 15 as an abstract concept. A sequence diagram configured based on the extracted task sequence is shown in FIG. In this case, the task 50a “operation: send, input subject: server, output subject: DB” is extracted as an abstract concept “abstract concept 1”, and “operation: search, input subject: DB, output subject: DB”. "50b" is extracted as an abstract concept "abstract concept 2." In addition, a task 50c “operation: send, input subject: DB, output subject: server” is extracted as an abstract concept “abstract concept 3”, and “operation: confirm existence, input subject: server, output subject: server” Is extracted as an abstract concept “abstract concept 4”.

また、開発者が、クラス図等に設定された管理情報に対して抽象概念を関連付けておくことにより、制御部16は、抽象概念として抽出されたタスク列の各タスクのパラメータ部分に、該抽象概念に対応する管理情報を代入することにより生成されたシーケンス図を描画部22に表示させることができる。   In addition, when the developer associates the abstract concept with the management information set in the class diagram or the like, the control unit 16 adds the abstract to the parameter portion of each task in the task sequence extracted as the abstract concept. A sequence diagram generated by substituting management information corresponding to a concept can be displayed on the drawing unit 22.

このようにして、複数のUC記述に含まれるタスクの主体及び動作と同一のタスクと、該タスクに関連付けられたシーケンス図のタスクとが取得され、取得されたシーケンス図のタスクのうち、他のシーケンス図に含まれるタスクの主体及び動作と同一のタスクが抽出されることから、複数のシーケンス図で共通して用いられるタスクを抽出することが可能となる。   In this way, the same task as the subject and operation of the tasks included in the plurality of UC descriptions and the task of the sequence diagram associated with the task are acquired, and among the tasks of the acquired sequence diagram, Since the same task as the subject and operation of the task included in the sequence diagram is extracted, it is possible to extract a task that is commonly used in a plurality of sequence diagrams.

前述したように上記実施形態では、複数のシーケンス図で共通して用いられるタスクを抽出することができるので、例えば抽出されたタスクを抽象概念として用いた場合には抽象概念の抽出にかかる作業時間を短縮することができ、ソフトウェア開発の効率を大幅に向上させることができる。   As described above, in the above embodiment, tasks commonly used in a plurality of sequence diagrams can be extracted. For example, when an extracted task is used as an abstract concept, the work time required to extract the abstract concept And the efficiency of software development can be greatly improved.

また、一致タスク保存部14から取得されたシーケンス図のタスク列のうち、該タスク列の各タスクの主体、動作及び順序が、取得された他のシーケンス図に含まれるタスク列の各タスクの主体、動作及び順序と同一となるタスク列を抽出し、抽出されたタスク列に基づきシーケンス図のタスクを作成するので、より詳細な動作パターンを抽出することができる。   In addition, among the task sequences in the sequence diagram acquired from the matching task storage unit 14, the subject, operation, and order of each task in the task sequence are the subjects of the tasks in the task sequence included in the other sequence diagrams acquired. Since a task sequence having the same operation and order is extracted and a sequence diagram task is created based on the extracted task sequence, a more detailed operation pattern can be extracted.

なお、上記の実施形態は本発明の具体例に過ぎず、本発明が上記実施形態のみに限定されることはない。例えば、本発明は、周知のコンピュータに記録媒体もしくは通信回線を介して、前述した作成手順を備えるプログラムをインストールすることによっても実現可能である。   In addition, said embodiment is only a specific example of this invention, and this invention is not limited only to the said embodiment. For example, the present invention can also be realized by installing a program having the above-described creation procedure on a known computer via a recording medium or a communication line.

本発明の一実施形態におけるソフトウェア成果物作成システムの構成を示す図The figure which shows the structure of the software product creation system in one Embodiment of this invention. 成果物描画画面を示す図Figure showing the product drawing screen 動的成果物の一例を示す図Diagram showing an example of a dynamic product タスクの構成を示す図Diagram showing task structure タスクの構成を示す図Diagram showing task structure タスク達成構造を示す図Diagram showing task achievement structure 抽象概念を抽出するときの動作を示すフロー図Flow diagram showing operations when extracting abstract concepts 動的成果物保存部に記憶された動的成果物の一例を示す図The figure which shows an example of the dynamic product memorize | stored in the dynamic product preservation | save part 一致タスク保存部に記憶されたタスク達成構造の一例を示す図The figure which shows an example of the task achievement structure memorize | stored in the coincidence task preservation | save part 複数のシーケンス図で共通して用いられるタスク列の一例を示す図The figure which shows an example of the task sequence used in common in two or more sequence diagrams 図10のタスク列とシーケンス図との関係を示す図The figure which shows the relationship between the task sequence of FIG. 10, and a sequence diagram 図11のシーケンス図と抽象概念との関係を示す図The figure which shows the relationship between the sequence diagram of FIG. 11, and an abstract concept UC記述とシーケンス図の一例を示す図Diagram showing an example of UC description and sequence diagram タスク達成構造を示す図Diagram showing task achievement structure 抽象概念、タスク列及びシーケンス図の関係を示す図Diagram showing the relationship between abstract concept, task sequence and sequence diagram 従来例におけるシーケンス図と抽象概念の関係を示す図Diagram showing the relationship between sequence diagrams and abstract concepts in the conventional example 従来例における管理情報と抽象概念の関係を示す図The figure which shows the relationship between the management information and the abstract concept in the conventional example 抽象概念に基づき作成されたシーケンス図の一例を示す図Diagram showing an example of a sequence diagram created based on an abstract concept

符号の説明Explanation of symbols

10…ソフトウェア成果物作成システム、11…表示部、12…情報入力部、13…動的成果物保存部、14…一致タスク保存部、15…抽象概念保存部、16…制御部、30,30a〜30i,50,50a〜50d,60,60a〜60e…タスク、40…達成関係、161…タスク一致判定部、162…抽象概念抽出部。   10 ... Software product creation system, 11 ... Display unit, 12 ... Information input unit, 13 ... Dynamic product storage unit, 14 ... Match task storage unit, 15 ... Abstract concept storage unit, 16 ... Control unit, 30, 30a ˜30i, 50, 50a˜50d, 60, 60a˜60e ... task, 40 ... achievement relation, 161 ... task matching judgment unit, 162 ... abstract concept extraction unit.

Claims (5)

第1のソフトウェア成果物に含まれる、主体、動作及びパラメータからなるタスクに基づいて、第2のソフトウェア成果物に含まれるタスクを、コンピュータを用いて生成することによりソフトウェア成果物を作成するソフトウェア成果物作成システムであって、
前記コンピュータは、
既に作成された複数の第1及び第2のソフトウェア成果物を、各第1のソフトウェア成果物のタスクと、該タスクに基づいて作成された第2のソフトウェア成果物のタスクとを関連付けた状態で記憶する記憶手段と、
記憶手段に記憶された各第1のソフトウェア成果物のタスクのうち、記憶手段に記憶された他の第1のソフトウェア成果物に含まれるタスクの主体及び動作と同一のタスクと、該タスクに関連付けられた第2のソフトウェア成果物のタスクとを取得するタスク取得手段と、
タスク取得手段によって取得された第2のソフトウェア成果物のタスクのうち、タスク取得手段によって取得された他の第2のソフトウェア成果物に含まれるタスクの主体及び動作と同一のタスクを抽出するタスク抽出手段と、
タスク抽出手段によって抽出されたタスクに基づき第2のソフトウェア成果物のタスクを作成する作成手段とを備える
ことを特徴とするソフトウェア成果物作成システム。
A software result for creating a software product by generating a task included in the second software product using a computer based on a task including an entity, an operation, and a parameter included in the first software product. An object creation system,
The computer
In a state where a plurality of first and second software products already created are associated with a task of each first software product and a task of a second software product created based on the task. Storage means for storing;
Of the tasks of each first software product stored in the storage unit, the same task as the subject and operation of the task included in the other first software product stored in the storage unit, and the task associated with the task Task acquisition means for acquiring a task of the second software product obtained,
Task extraction for extracting the same task as the subject and operation of the task included in another second software product acquired by the task acquisition unit from the tasks of the second software product acquired by the task acquisition unit Means,
A software product creation system comprising: creation means for creating a task of the second software product based on the task extracted by the task extraction means.
前記タスク抽出手段は、
タスク取得手段によって取得された第2のソフトウェア成果物のタスク列のうち、該タスク列の各タスクの主体、動作及び順序が、タスク取得手段によって取得された他の第2のソフトウェア成果物に含まれるタスク列の各タスクの主体、動作及び順序と同一となるタスク列を抽出し、
前記作成手段は、
タスク抽出手段によって抽出されたタスク列に基づき第2のソフトウェア成果物のタスクを作成する
ことを特徴とする請求項1記載のソフトウェア成果物作成システム。
The task extraction means includes
Among the task sequence of the second software product acquired by the task acquisition unit, the subject, operation, and order of each task in the task sequence are included in the other second software product acquired by the task acquisition unit. To extract the task sequence that is the same as the subject, action and order of each task
The creating means includes
The software product creation system according to claim 1, wherein a task of the second software product is created based on the task sequence extracted by the task extraction unit.
第1のソフトウェア成果物に含まれる、主体、動作及びパラメータからなるタスクに基づいて、第2のソフトウェア成果物に含まれるタスクを、コンピュータを用いて生成することによりソフトウェア成果物を作成するソフトウェア成果物作成方法であって、
前記コンピュータは、
既に作成された複数の第1及び第2のソフトウェア成果物を、各第1のソフトウェア成果物のタスクと、該タスクに基づいて作成された第2のソフトウェア成果物のタスクとを関連付けた状態で所定の記憶部に記憶し、
前記記憶部に記憶された各第1のソフトウェア成果物のタスクのうち、該記憶部に記憶された他の第1のソフトウェア成果物に含まれるタスクの主体及び動作と同一のタスクと、該タスクに関連付けられた第2のソフトウェア成果物のタスクとを取得し、
取得された第2のソフトウェア成果物のタスクのうち、取得された他の第2のソフトウェア成果物に含まれるタスクの主体及び動作と同一のタスクを抽出し、
抽出されたタスクに基づき第2のソフトウェア成果物のタスクを作成する
ことを特徴とするソフトウェア成果物作成方法。
A software result for creating a software product by generating a task included in the second software product using a computer based on a task including an entity, an operation, and a parameter included in the first software product. A method for creating objects,
The computer
In a state where a plurality of first and second software products already created are associated with a task of each first software product and a task of a second software product created based on the task. Memorize in a predetermined storage unit,
Of the tasks of each first software product stored in the storage unit, the same task as the subject and operation of the task included in the other first software product stored in the storage unit, and the task And a second software artifact task associated with the
From the acquired tasks of the second software product, extract the same task as the subject and operation of the task included in the other acquired second software product,
A software product creation method, characterized in that a task of a second software product is created based on the extracted task.
前記コンピュータは、
前記記憶部から取得された第2のソフトウェア成果物のタスク列のうち、該タスク列の各タスクの主体、動作及び順序が、取得された他の第2のソフトウェア成果物に含まれるタスク列の各タスクの主体、動作及び順序と同一となるタスク列を抽出し、
抽出されたタスク列に基づき第2のソフトウェア成果物のタスクを作成する
ことを特徴とする請求項3記載のソフトウェア成果物作成方法。
The computer
Of the task sequence of the second software product acquired from the storage unit, the subject, operation, and order of each task in the task sequence are those of the task sequence included in the other acquired second software product. Extract the task sequence that is the same as the subject, action and order of each task,
The software product creation method according to claim 3, wherein a task of the second software product is created based on the extracted task sequence.
請求項3または4項記載の方法をコンピュータに実行させるためのソフトウェア成果物作成プログラム。   A software product creation program for causing a computer to execute the method according to claim 3.
JP2007324784A 2007-12-17 2007-12-17 Software product creation system, method and program thereof Expired - Fee Related JP4925340B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007324784A JP4925340B2 (en) 2007-12-17 2007-12-17 Software product creation system, method and program thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007324784A JP4925340B2 (en) 2007-12-17 2007-12-17 Software product creation system, method and program thereof

Publications (2)

Publication Number Publication Date
JP2009146283A JP2009146283A (en) 2009-07-02
JP4925340B2 true JP4925340B2 (en) 2012-04-25

Family

ID=40916792

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007324784A Expired - Fee Related JP4925340B2 (en) 2007-12-17 2007-12-17 Software product creation system, method and program thereof

Country Status (1)

Country Link
JP (1) JP4925340B2 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006201924A (en) * 2005-01-19 2006-08-03 Nippon Telegr & Teleph Corp <Ntt> Method of converting sequence diagram in software to tree structure for analysis and its computer program
JP4678770B2 (en) * 2005-09-02 2011-04-27 日本電信電話株式会社 Sequence diagram creation method and apparatus
JP2008059276A (en) * 2006-08-31 2008-03-13 Nippon Telegr & Teleph Corp <Ntt> Ontology generation device for sequence diagram, and its program and method

Also Published As

Publication number Publication date
JP2009146283A (en) 2009-07-02

Similar Documents

Publication Publication Date Title
US8656352B2 (en) System and method for synchronized workflow management
US20140067836A1 (en) Visualizing reporting data using system models
CN113094037A (en) Interaction method, development platform, equipment and storage medium for forms and workflows
CN111679827B (en) H5 page generation method, device, equipment and storage medium
JPH10254689A (en) Application constitution design supporting system for client/server system
KR101687970B1 (en) Connection and communication apparatus and method of the 3D model viewer for shipbuilding CAD
Sangwan et al. Integrating a software architecture-centric method into object-oriented analysis and design
JP4925340B2 (en) Software product creation system, method and program thereof
US20120084683A1 (en) Seamless Integration of Additional Functionality into Enterprise Software without Customization or Apparent Alteration of Same
JP4678770B2 (en) Sequence diagram creation method and apparatus
JP2009069876A (en) Workflow system, workflow control method and program
JP2013164879A (en) Information processor, compatibility evaluation method and program
JP2015049645A (en) Information processing device, information processing device control method, and program
JP5300888B2 (en) Software development support program and apparatus
US20200310787A1 (en) Code management system and code management method
US10515330B2 (en) Real time visibility of process lifecycle
JP2004110362A (en) Application development supporting system and application development supporting method and computer program
JP5644599B2 (en) Object-oriented model design support device
JP2009104336A (en) Software deliverable management system and its method and program
JP2007034807A (en) Information processor and program
Kerdoudi et al. A bottom-up approach for reconstructing software architecture product lines
CN108241738B (en) Hot area plan realization method, system and device based on MVC and SVG
Améndola et al. Science & engineering software migration: moving from desktop to mobile applications
JP4895374B2 (en) Software product generation method and system
Buccella et al. Software product line reengineering: A case study on the geographic domain

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100113

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20110613

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110614

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20110615

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110616

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120130

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: 20120201

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120203

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150217

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees