JP2021128431A - リスク評価システム及びリスク評価方法 - Google Patents
リスク評価システム及びリスク評価方法 Download PDFInfo
- Publication number
- JP2021128431A JP2021128431A JP2020021647A JP2020021647A JP2021128431A JP 2021128431 A JP2021128431 A JP 2021128431A JP 2020021647 A JP2020021647 A JP 2020021647A JP 2020021647 A JP2020021647 A JP 2020021647A JP 2021128431 A JP2021128431 A JP 2021128431A
- Authority
- JP
- Japan
- Prior art keywords
- source code
- information
- past
- project
- risk
- 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.)
- Granted
Links
- 238000012502 risk assessment Methods 0.000 title claims abstract description 73
- 238000000034 method Methods 0.000 title claims description 47
- 230000008859 change Effects 0.000 claims abstract description 82
- 238000011161 development Methods 0.000 claims abstract description 38
- 239000000284 extract Substances 0.000 claims abstract 3
- 238000011156 evaluation Methods 0.000 claims description 30
- 238000012360 testing method Methods 0.000 claims description 10
- 238000007726 management method Methods 0.000 description 45
- 230000008569 process Effects 0.000 description 25
- 230000006870 function Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000015654 memory Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0635—Risk analysis of enterprise or organisation activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/10—Requirements analysis; Specification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Human Resources & Organizations (AREA)
- General Physics & Mathematics (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Strategic Management (AREA)
- Computer Security & Cryptography (AREA)
- Educational Administration (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Development Economics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Stored Programmes (AREA)
Abstract
【課題】ソフトウェア開発における要件に関する問題を早期に検出し、要件の再検討及び開発人員の確保を可能とするため、要件に基づいてリスクを評価したい。【解決手段】プロセッサ部と、記憶部と、を有するリスク評価システムであって、記憶部は、リスク評価の対象であるソフトウェア開発プロジェクトにおいて開発するソフトウェアに対する要求を示す要求情報と、過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求を示す過去要求情報と、過去のソフトウェア開発プロジェクトにおけるソースコードの変更履歴と、を記憶し、プロセッサ部は、要求情報と過去要求情報との類似度を算出し、過去要求情報と変更履歴とに基づいて、過去要求情報に対応するソースコードの変更履歴を抽出し、類似度と、過去要求情報に対応するソースコードの変更履歴とに基づいて、要求情報を実現するソフトウェア開発におけるリスクを評価する。【選択図】図2
Description
本発明はソフトウェア開発における要件リスクを評価する技術に関する。
ソフトウェア開発における要件は、開発対象のソフトウェアが満たすべき性質であり、ソフトウェアの開発者が定義する。ウォーターフォール型のソフトウェア開発プロセスでは、開発開始時に要件を定義するが、その時点では開発者であってもソフトウェアが何を満たすべきか十分に理解できない場合がある。そのため、要件があいまいになることや不正確になることなどの問題があり、その問題を設計、プログラミング又はテストが進んだ時点で初めて発見することがある。このとき、設計、プログラミング又はテストのやり直しが必要となるが、納期が近づく中で開発人員を追加することは難しく、開発が納期に間に合わない原因となる。このような事態に対し、要件に関する問題を早期に検出できれば、要件の再検討や開発人員の確保が可能になるため、要件に基づいてソフトウェア開発プロジェクトのリスクを評価したい。
ソフトウェア開発プロジェクトのリスクを評価する手法として、特許文献1では、プロジェクトの計画段階において、その計画に潜在するリスクを客観的に評価するリスク評価システムが提案されている。
特許文献1では、計画したプロジェクトに類似する過去のプロジェクトの情報を参照し、その実績から計画プロジェクトのリスクを評価するシステムが提案されている。ただし、このシステムはプロジェクト単位でリスクを評価するため、個々の要件に関する問題を検出することはできない。要件の再検討、及び、当該要件に関する専門知識を有するソフトウェア開発人員の確保のため、個々の要件に関するリスクを評価することが課題となる。
上記課題の少なくとも一つを解決するため、本発明は、プロセッサ部と、記憶部と、を有するリスク評価システムであって、前記記憶部は、リスク評価の対象であるソフトウェア開発プロジェクトにおいて開発するソフトウェアに対する要求を示す要求情報と、過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求を示す過去要求情報と、前記過去のソフトウェア開発プロジェクトにおけるソースコードの変更履歴と、を記憶し、前記プロセッサ部は、前記要求情報と前記過去要求情報との類似性を示す類似度を算出し、前記過去要求情報と前記変更履歴とに基づいて、前記過去要求情報に対応するソースコードの変更履歴を抽出し、前記類似度と、前記過去要求情報に対応するソースコードの変更履歴とに基づいて、前記要求情報を実現するソフトウェア開発におけるリスクを評価することを特徴とする。
本発明の一態様によれば、ソフトウェア開発プロジェクトにおいて要件を満たす上でのリスクを評価する要件リスク評価システムを提供することができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
実施形態について、図面を参照して説明する。なお、以下に説明する実施形態は特許請求の範囲に係る発明を限定するものではなく、また、実施形態の中で説明されている諸要素およびその組み合わせの全てが発明の解決手段に必須であるとは限らない。
図1は、本発明の実施例1の要件リスク評価システムのハードウェア構成を示すブロック図である。
図1に示すように、要件リスク評価システム10は、プロセッサ101、主記憶装置102、補助記憶装置103、入力装置104、出力装置105、及び通信装置106を備える。
プロセッサ101は、例えば、CPU(Central Processing Unit)又はMPU(Micro Processing Unit)を用いて構成される。主記憶装置102は、プログラム及びデータを記憶する装置であり、例えば、ROM(Read Only Memory)、RAM(Random Access Memory)、NVRAM(Non Volatile RAM)等である。プロセッサ101及び主記憶装置102は情報処理装置を構成する。プロセッサ101が、主記憶装置102に格納されているプログラムを読み出して実行することによって、要件リスク評価システム10の様々な機能が実現される。補助記憶装置103は、例えば、SSD(Solid State Drive)、ハードディスクドライブ、光学式記憶装置、記録媒体の読取/書込装置等である。補助記憶装置103に格納されているプログラム及びデータは主記憶装置102に随時ロードされる。
入力装置104は、ユーザから情報を取得する装置であり、例えば、キーボード、マウス及びタッチパネル等である。出力装置105は、ユーザに情報を提供する装置であり、例えば、液晶モニタ、LCD(Liquid Crystal Display)、グラフィックカード及びスピーカ等である。通信装置106は、LAN又はインターネット等の通信手段を介した他の装置との間の通信を実現する有線方式又は無線方式の通信インタフェースであり、例示すれば、NIC(Network Interface Card)、無線通信モジュール、USB(Universal Serial Interface)モジュール、シリアル通信モジュール等である。
図2は、本発明の実施例1の要件リスク評価システムの機能を示すブロック図である。
ユーザインタフェース202は、ユーザ201からの要件情報の入力を受け付け、入力された要件に関して要件リスク評価部204が算出したリスクを表示する。
類似要件検索部203は、ユーザ201がユーザインタフェース202に入力した要件情報と、要件情報管理部205から取得した過去要件情報とから、要件に類似する過去要件情報を検索する。
要件リスク評価部204は、ユーザ201がユーザインタフェース202に入力した要件情報と、類似要件検索部203が検索した過去要件情報と、ソースコード変更情報管理部207が管理するソースコード変更情報とから、要件情報に関するソフトウェア開発上のリスクを評価する。
要件情報管理部205は、要件管理システム211から過去要件情報を収集し、要件情報データベース208に保存する。要件管理システム211は、ソフトウェア開発プロジェクトにおける要件を記録するシステムである。
要件−ソースコード対応関係管理部206は、トレーサビリティ管理システム212から要件−ソースコード対応関係情報を収集し、要件−ソースコード対応関係データベース209に保存する。また、要件−ソースコード対応関係管理部206は、過去要件情報の入力を受け付け、それを満たすために開発されたソフトウェアのソースコード情報を提供する。トレーサビリティ管理システム212は、過去のソフトウェア開発プロジェクトの開発者によって記録された要件、ソフトウェア仕様およびソースコードの対応関係を管理するシステムである。
ソースコード変更情報管理部207は、ソースコード構成管理システム213からソースコード変更情報を収集し、ソースコード変更情報データベース210に保存し、要件リスク評価部204からの要求に応じてソースコード変更情報を出力する。ソースコード構成管理システム213は、ソフトウェア開発者が、ソースコードに対する変更を行うたびに、変更ファイル、変更日時、コメントおよび変更者名を登録し、ソースコードに対する変更の履歴を参照できるシステムである。
ユーザインタフェース202、類似要件検索部203、要件リスク評価部204、要件情報管理部205、要件−ソースコード対応関係管理部206及びソースコード変更情報管理部207の機能は、プロセッサ101が主記憶装置102に格納されたプログラムに従って、必要に応じて要件リスク評価システム10の各部を制御することによって実現される。すなわち、以下の説明において上記の各部が実行する処理は、実際にはプロセッサ101が実行する。また、要件情報データベース208、要件−ソースコード対応関係データベース209及びソースコード変更情報データベース210は、主記憶装置102又は補助記憶装置103に格納される。
要件管理システム211と、要件−ソースコード対応関係管理システム212と、ソースコード構成管理システム213とはそれぞれ、要件リスク評価システム10と接続されている。図2の例では、要件リスク評価システム10、要件管理システム211、要件−ソースコード対応関係管理システム212及びソースコード構成管理システム213をそれぞれ独立したシステムとして記載しているが、このような構成は一例であり、これらの任意の二つ以上の機能が一つの計算機システムによって実現されてもよい。
図3は、本発明の実施例1の要件リスク評価システムが保持する要件情報の一例を示す説明図である。
要件情報30は、分類301及び要件302を備える。分類301は、要件の特徴に基づく分類である。図3において分類301は構成要素として大分類と小分類を備えるが、これ以外の構成要素を持っていてもよい。要件302は、開発対象のソフトウェアの要件の内容を示す文章である。
図4は、本発明の実施例1の要件リスク評価システムが保持する過去要件情報の一例を示す説明図である。
過去要件情報40は、要件ID401、プロジェクト名402、分類403及び要件404を備える。要件ID401は、過去要件情報を一意に特定する情報である。プロジェクト名402は、プロジェクトを一意に特定する名称である。分類403および要件404は、それぞれ分類301および要件302と同様の情報である。
図3に示した要件情報30は、今回の開発対象のソフトウェアの要件に関する情報である。これに対して、過去要件情報40は、過去に実行されたプロジェクトにおいて開発されたソフトウェアに関する情報である。これらは、いずれも、要件情報データベース208に格納される。
図5は、本発明の実施例1の要件リスク評価システムが保持する要件−ソースコード対応関係情報の一例を示す説明図である。
要件−ソースコード対応関係情報50は、要件ID501及びソースコードファイル名502を備える。要件ID501は、要件を一意に特定するIDであり、過去要件情報40の要件ID401と同一である。ソースコードファイル名502は、ソースコードのファイルを一意に特定する名称である。要件−ソースコード対応関係情報50は、要件ID501で特定される過去要件情報の要件を、ソースコードファイル名502で特定されるソースコードによって実現していることを表す。
要件−ソースコード対応関係情報50は、トレーサビリティ管理システム212が保持するトレーサビリティ情報から導出される。トレーサビリティ情報は、要件とソフトウェア仕様との対応関係、及び、ソフトウェア仕様とソースコードとの対応関係を示す情報であり、ソフトウェア開発において要件がソフトウェア仕様およびソースコードに反映されているかを確認するために開発時に記録される。この情報を利用し、過去プロジェクトにおける要件−ソースコード対応関係情報50が導出される。
ここで、一つの要件が複数のソースコードで実現される場合があり、このとき一つの要件ID501の値に対して複数のソースコードファイル名502の値が対応する。
図6は、本発明の実施例1の要件リスク評価システムが保持するソースコード変更情報の一例を示す説明図である。
ソースコード変更情報60は、プロジェクト名601、変更日時602及び変更ファイル603を備える。プロジェクト名601は、プロジェクトを一意に特定する名称である。変更日時602は、ソースコードが変更された日時である。変更ファイル603は、変更したソースコードのファイル名である。
ソースコード変更情報60は、ソースコード構成管理システム213が管理する情報を根拠に間接的に導出された情報であってもよい。例えば、ソースコード構成管理システム213における管理単位がリポジトリであるとき、リポジトリ名とプロジェクト名称との対応関係に基づき、ソースコード変更情報管理部207がプロジェクト名称を特定してもよい。
図7は、本発明の実施例1の要件リスク評価システムの利用方法を示すフローチャートである。図7のフローチャートに基づく動作は以下の通りである。
ステップ701:ユーザ201は、ユーザインタフェース202に、ソフトウェア開発プロジェクトにおいて満たすべき要件の要件情報を入力する。このときに入力される条件の例については後述する(図8参照)。
ステップ702:類似要件検索部203は、ステップ701で入力された要件情報に類似する過去要件情報を、要件情報管理部205から検索し取得する。過去要件情報の取得は、例えば、要件情報30の分類301と同一の項目を過去要件情報40の分類403が含んでいる場合に、その過去要件情報40を取得することで行う。
ステップ703:類似要件検索部203は、ステップ702で取得した過去要件情報40の各々に対し、ステップ701で入力された要件情報との類似度を評価する。類似度の評価は、例えば、要件情報の分類301と過去要件情報40の分類403とが同一である組の数を類似度とすることで行う。
ステップ704:要件リスク評価部204は、ステップ702で取得した過去要件情報40の各々を満たすためのソースコードのファイル名を、要件−ソースコード対応関係管理部206から取得する。
ステップ705:要件リスク評価部204は、ステップ704で取得したソースコードファイル名をソースコード変更情報管理部207へ入力し、ソースコードファイル名で特定されるソースコードの変更履歴を取得する。
ステップ706:要件リスク評価部204は、ステップ703で評価した類似度と、ステップ705で取得したソースコードの変更履歴から、ステップ701でユーザ201が要件情報を入力した要件の各々に対し、ソフトウェア開発上のリスクを算出して、その結果を出力する。このときのリスク算出の詳細については後述する(図9参照)。
図8は、本発明の実施例1の要件リスク評価システムによって表示される要件情報入力画面の一例を示す説明図である。これは、図7のステップ701でユーザインタフェース202に表示されるものである。
要件情報入力画面80は、分類入力部801、要件入力部802、リスク表示部803及び確定ボタン804を備える。
分類入力部801は、要件に関する分類に関し、予めシステムに与えられたリストの中からの選択による入力を受け付ける。リストの構成要素は、例えば、大分類として機能要件、非機能要件の各分類、小分類として機能に関する分類、信頼性、保守性のような非機能要件分類などがある。
要件入力部802は、文章による要件の入力を受け付ける。
ユーザが確定ボタン804を押すと、ステップ702の処理が開始する。
リスク表示部803は、ステップ706の処理によって出力されたリスクを表示する。
図9は、本発明の実施例1の要件リスク評価システムがリスクを評価する処理を示すフローチャートである。具体的には、これは、ステップ706で要件リスク評価部204がリスクを評価するときの、データの流れを示す。
処理903は、要件リスク評価部204が、ソースコード変更履歴902に基づき、ソースコード変更量の時系列分布を算出する処理である。ソースコード変更量の時系列分布は、例えば、日付とそれまでに変更されたソースコードの行数との組で表される。
処理904は、要件リスク評価部204が、処理903で算出したソースコード変更量の時系列分布から、開発後半のソースコード変更量を評価する処理である。評価の方法は、例えば、最初のソースコード変更の実行日と最後のソースコード変更の実行日との間を開発期間とし、開発期間の所定の割合が経過して以降の期間を開発後半と定義してその期間内のソースコード変更量を算出するといったものである。ここで、所定の割合とは、50%に限らず、例えば70%など、任意に設定することができる。このため、「後半」を「後期」と読み替えてもよい。
処理905は、要件リスク評価部204が、要件情報と過去要件情報の類似度と、処理904で算出した開発後半のソースコード変更量とから、ソフトウェア開発上のリスクを算出する処理である。算出は、例えば、(類似度)×(開発後半のソースコード変更量)の値が所定の値以上であればリスク高と算出する、といった方法による。
この場合、類似度が高く、かつ、開発後半のソースコード変更量が大きいほどリスクが高いと評価される。ソースコードの変更は、それが発生する時期が開発期間の終わりに近いほど、開発の遅延、開発人員の追加及び開発費用の増大といった望ましくない結果を引き起こしやすいと推定され、また、そのようなことが発生した要件と評価対象の要件との類似度が高いほど、評価対象の要件でも同様のことが発生しやすいと推定されるためである。
上記の実施例1に示した要件に基づくリスク評価によって、要件定義時点での要件の再検討、及び、当該要件に関する専門知識を有するソフトウェア開発人員の確保といった対策を取ることが可能となる。
次に、本発明の実施例2を説明する。本実施例は、実施例1において機能構成を変更し、過去のプロジェクト情報を利用したリスク評価を可能にするものである。以下に説明する相違点を除き、実施例2のシステムの各部は、図1から図9に示した実施例1の同一の符号を付された各部と同一の機能を有するため、それらの説明は省略する。
図10は、本発明の実施例2の要件リスク評価システムの機能を示すブロック図である。
要件−ソースコード対応関係管理部206は、ソースコード変更情報管理部207からソースコード変更情報を、プロジェクト情報管理部1001からプロジェクト情報110(図11参照)をそれぞれ収集し、要件−ソースコード対応関係情報50を導出する。導出は、例えば下記のように行われる。すなわち、プロジェクト情報110のチケットID1101及び対応要件ID1104、並びに、ソースコード変更情報60の対応チケットID1201(図12参照)及び変更ファイル603を使用し、プロジェクト情報110のチケットID1101の値とソースコード変更情報60の対応チケットID1201の値とが一致する場合に、そのプロジェクト情報110の対応要件ID1104の値によって特定される要件と、そのソースコード変更情報60の変更ファイル603の値によって特定されるソースコードとが対応関係にあるものとして導出される。
プロジェクト情報管理部1001は、プロジェクト管理システム1003からプロジェクト情報を収集し、プロジェクト情報データベース1002に保存し、他の機能へプロジェクト情報を提供する。プロジェクト管理システム1003は、プロジェクトにおける工程及び作業の内容と実施時期とを管理するシステムである。
プロジェクト管理システム1003は、要件リスク評価システム10と接続されている。
なお、実施例1と共通する各部と同様に、プロジェクト情報管理部1001の機能は、プロセッサ101が主記憶装置102に格納されたプログラムに従って、必要に応じて要件リスク評価システム10の各部を制御することによって実現される。すなわち、以下の説明においてプロジェクト情報管理部1001が実行する処理は、実際にはプロセッサ101が実行する。また、プロジェクト情報データベース1002は、主記憶装置102又は補助記憶装置103に格納される。
図11は、本発明の実施例2の要件リスク評価システムが保持するプロジェクト情報の一例を示す説明図である。
プロジェクト情報110は、チケットID1101、チケット区分1102、チケット名1103、対応要件ID1104、開始日1105及び終了日1106を備える。チケットID1101は、プロジェクト情報を一意に特定するIDである。チケット区分1102は、プロジェクト情報の分類を示すものであり、例えば、要件定義の情報であれば要件、テストの情報であればテストとする。チケット名1103はプロジェクト情報の名称である。対応要件ID1104は、そのプロジェクト情報がどの要件に関するものかを示すIDであり、図4の要件ID401と対応する。開始日1105、終了日1106は、チケット名1103で表される作業の開始日および終了日を表す。
図12は、本発明の実施例2の要件リスク評価システムが保持するソースコード変更情報の一例を示す説明図である。なお、実施例1の図6と同様の項目については、図6と同じ符号を記載し、その説明を省略する。
対応チケットID1201は、そのソースコード変更がどのプロジェクト情報に関して実施されたかを示すIDであり、図11のチケットID1101と対応する。
図13は、本発明の実施例2の要件リスク評価システムがリスクを評価する処理を示すフローチャートである。具体的には、これは、図7のステップ706で要件リスク評価部204がリスクを評価するときの、データの流れを示す。なお、図13に示す項目のうち、実施例1の図9と同様の項目については、図9と同じ符号を記載し、その説明を省略する。
処理904は、要件リスク評価部204が、処理903で算出したソースコード変更量の時系列分布から、開発後半のソースコード変更量を評価する処理である。評価の方法は、例えば、プロジェクト1301におけるテスト工程の開始日から終了日までの期間を開発後半と定義してその期間内のソースコード変更量を算出するといったものである。これは、テスト工程が開始してからのソースコードの変更が、開発の遅延等につながりやすいであろうという推定に基づく。
上記の実施例2によれば、プロジェクト情報を利用することで、工程単位で変更時期を特定し、プロジェクトごとの工程の実施時期を考慮したリスクの評価が可能となる。
上記の本発明の実施形態は、次のような例を含んでもよい。
(1)プロセッサ部(例えばプロセッサ101)と、記憶部(例えば主記憶装置102及び補助記憶装置103の少なくともいずれか)と、を有するリスク評価システム(例えば要件リスク評価システム10)であって、記憶部は、リスク評価の対象であるソフトウェア開発プロジェクトにおいて開発するソフトウェアに対する要求を示す要求情報(例えば要件情報30)と、過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求を示す過去要求情報(例えば過去要件情報40)と、過去のソフトウェア開発プロジェクトにおけるソースコードの変更履歴(例えばソースコード変更履歴60)と、を記憶し、プロセッサ部は、要求情報と過去要求情報との類似性を示す類似度を算出し(例えばステップ703)、過去要求情報と変更履歴とに基づいて、過去要求情報に対応するソースコードの変更履歴を抽出し(例えばステップ704から705)、類似度と、過去要求情報に対応するソースコードの変更履歴とに基づいて、要求情報を実現するソフトウェア開発におけるリスクを評価する(例えばステップ706)。
これによって、ソフトウェア開発プロジェクトにおいて要求を満たす上でのリスクを評価するリスク評価システムを提供することができる。
(2)上記(1)において、プロセッサ部は、過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求と、要求を満たす仕様と、仕様に対応するソースコードと、を対応付けるトレーサビリティ情報(例えばトレーサビリティ管理システム212からの情報)を取得し、トレーサビリティ情報とソースコードの変更履歴とに基づいて、過去要求情報に対応するソースコードの変更履歴を抽出する。
これによって、トレーサビリティが管理されているソフトウェア開発プロジェクトにおいて本発明のリスク評価を行うことができる。
(3)上記(1)において、記憶部は、過去のソフトウェア開発プロジェクトにおける作業とソースコードとを対応付けるプロジェクト情報(例えばプロジェクト情報110)を記憶し、プロセッサ部は、プロジェクト情報とソースコードの変更履歴とに基づいて、過去要求情報に対応するソースコードの変更履歴を抽出する。
これによって、プロジェクト情報が管理されているソフトウェア開発プロジェクトにおいて本発明のリスク評価を行うことができる。
(4)上記(1)において、プロセッサ部は、ソースコードの変更履歴に基づいて、リスク評価の対象であるソフトウェア開発プロジェクトの開発期間の後期に実行されたソースコード変更量を算出し(例えばステップ904)、算出した開発期間の後期のソースコード変更量に基づいてリスクを評価する。
これによって、的確にリスクを評価することができる。
(5)上記(4)において、プロセッサ部は、開発期間のうち、所定の割合の期間が経過した後の期間を開発期間の後期と定義する。
これによって、的確にリスクを評価することができる。
(6)上記(4)において、記憶部は、過去のソフトウェア開発プロジェクトにおける作業とソースコードとを対応付けるプロジェクト情報を記憶し、プロセッサ部は、プロジェクト情報に基づいて、過去のソフトウェア開発プロジェクトにおけるソフトウェアのテストが行われた期間を特定し、テストが行われた期間を開発期間の後期と定義する。
これによって、的確にリスクを評価することができる。
(7)上記(4)において、プロセッサ部は、リスク評価の対象であるソフトウェア開発プロジェクトにおいて開発するソフトウェアに対する要求と過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求との類似度が高く、かつ、当該過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求に対応するソースコードの開発期間の後期における変更量が多いほど高くなるように、リスクを評価する。
これによって、的確にリスクを評価することができる。
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明のより良い理解のために詳細に説明したのであり、必ずしも説明の全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることが可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によってハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによってソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、不揮発性半導体メモリ、ハードディスクドライブ、SSD(Solid State Drive)等の記憶デバイス、または、ICカード、SDカード、DVD等の計算機読み取り可能な非一時的データ記憶媒体に格納することができる。
また、制御線及び情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線及び情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。
10…要件リスク評価システム、201…ユーザ、202…ユーザインタフェース、203…類似要件検索部、204…要件リスク評価部、205…要件情報管理部、206…要件−ソースコード対応関係管理部、207…ソースコード変更情報管理部、208…要件情報データベース、209…要件−ソースコード対応関係データベース、210…ソースコード変更情報データベース、211…要件管理システム、212…要件−ソースコード対応関係管理システム、213…ソースコード構成管理システム
Claims (14)
- プロセッサ部と、記憶部と、を有するリスク評価システムであって、
前記記憶部は、
リスク評価の対象であるソフトウェア開発プロジェクトにおいて開発するソフトウェアに対する要求を示す要求情報と、
過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求を示す過去要求情報と、
前記過去のソフトウェア開発プロジェクトにおけるソースコードの変更履歴と、を記憶し、
前記プロセッサ部は、
前記要求情報と前記過去要求情報との類似性を示す類似度を算出し、
前記過去要求情報と前記変更履歴とに基づいて、前記過去要求情報に対応するソースコードの変更履歴を抽出し、
前記類似度と、前記過去要求情報に対応するソースコードの変更履歴とに基づいて、前記要求情報を実現するソフトウェア開発におけるリスクを評価することを特徴とするリスク評価システム。 - 請求項1に記載のリスク評価システムであって、
前記プロセッサ部は、
前記過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求と、前記要求を満たす仕様と、前記仕様に対応するソースコードと、を対応付けるトレーサビリティ情報を取得し、
前記トレーサビリティ情報と前記ソースコードの変更履歴とに基づいて、前記過去要求情報に対応するソースコードの変更履歴を抽出することを特徴とするリスク評価システム。 - 請求項1に記載のリスク評価システムであって、
前記記憶部は、前記過去のソフトウェア開発プロジェクトにおける作業とソースコードとを対応付けるプロジェクト情報を記憶し、
前記プロセッサ部は、前記プロジェクト情報と前記ソースコードの変更履歴とに基づいて、前記過去要求情報に対応するソースコードの変更履歴を抽出することを特徴とするリスク評価システム。 - 請求項1に記載のリスク評価システムであって、
前記プロセッサ部は、前記ソースコードの変更履歴に基づいて、前記リスク評価の対象であるソフトウェア開発プロジェクトの開発期間の後期に実行されたソースコード変更量を算出し、算出した開発期間の後期のソースコード変更量に基づいてリスクを評価することを特徴とするリスク評価システム。 - 請求項4に記載のリスク評価システムであって、
前記プロセッサ部は、前記開発期間のうち、所定の割合の期間が経過した後の期間を前記開発期間の後期と定義することを特徴とするリスク評価システム。 - 請求項4に記載のリスク評価システムであって、
前記記憶部は、前記過去のソフトウェア開発プロジェクトにおける作業とソースコードとを対応付けるプロジェクト情報を記憶し、
前記プロセッサ部は、前記プロジェクト情報に基づいて、前記過去のソフトウェア開発プロジェクトにおけるソフトウェアのテストが行われた期間を特定し、前記テストが行われた期間を前記開発期間の後期と定義することを特徴とするリスク評価システム。 - 請求項4に記載のリスク評価システムであって、
前記プロセッサ部は、前記リスク評価の対象であるソフトウェア開発プロジェクトにおいて開発するソフトウェアに対する要求と前記過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求との類似度が高く、かつ、当該過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求に対応するソースコードの前記開発期間の後期における変更量が多いほど高くなるように、リスクを評価することを特徴とするリスク評価システム。 - プロセッサ部と、記憶部と、を有するリスク評価システムが実行するリスク評価方法であって、
前記記憶部は、
リスク評価の対象であるソフトウェア開発プロジェクトにおいて開発するソフトウェアに対する要求を示す要求情報と、
過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求を示す過去要求情報と、
前記過去のソフトウェア開発プロジェクトにおけるソースコードの変更履歴と、を記憶し、
前記リスク評価方法は、
前記プロセッサ部が、前記要求情報と前記過去要求情報との類似性を示す類似度を算出する第1手順と、
前記プロセッサ部が、前記過去要求情報と前記変更履歴とに基づいて、前記過去要求情報に対応するソースコードの変更履歴を抽出する第2手順と、
前記プロセッサ部が、前記類似度と、前記過去要求情報に対応するソースコードの変更履歴とに基づいて、前記要求情報を実現するソフトウェア開発におけるリスクを評価する第3手順と、を含むことを特徴とするリスク評価方法。 - 請求項8に記載のリスク評価方法であって、
前記第2手順において、前記プロセッサ部は、前記過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求と、前記要求を満たす仕様と、前記仕様に対応するソースコードと、を対応付けるトレーサビリティ情報を取得し、前記トレーサビリティ情報と前記ソースコードの変更履歴とに基づいて、前記過去要求情報に対応するソースコードの変更履歴を抽出することを特徴とするリスク評価方法。 - 請求項8に記載のリスク評価方法であって、
前記記憶部は、前記過去のソフトウェア開発プロジェクトにおける作業とソースコードとを対応付けるプロジェクト情報を記憶し、
前記第2手順において、前記プロセッサ部は、前記プロジェクト情報と前記ソースコードの変更履歴とに基づいて、前記過去要求情報に対応するソースコードの変更履歴を抽出することを特徴とするリスク評価方法。 - 請求項8に記載のリスク評価方法であって、
前記第3手順において、前記プロセッサ部は、前記ソースコードの変更履歴に基づいて、前記リスク評価の対象であるソフトウェア開発プロジェクトの開発期間の後期に実行されたソースコード変更量を算出し、算出した開発期間の後期のソースコード変更量に基づいてリスクを評価することを特徴とするリスク評価方法。 - 請求項11に記載のリスク評価方法であって、
前記第3手順において、前記プロセッサ部は、前記開発期間のうち、所定の割合の期間が経過した後の期間を前記開発期間の後期と定義することを特徴とするリスク評価方法。 - 請求項11に記載のリスク評価方法であって、
前記記憶部は、前記過去のソフトウェア開発プロジェクトにおける作業とソースコードとを対応付けるプロジェクト情報を記憶し、
前記第3手順において、前記プロセッサ部は、前記プロジェクト情報に基づいて、前記過去のソフトウェア開発プロジェクトにおけるソフトウェアのテストが行われた期間を特定し、前記テストが行われた期間を前記開発期間の後期と定義することを特徴とするリスク評価方法。 - 請求項11に記載のリスク評価方法であって、
前記第3手順において、前記プロセッサ部は、前記リスク評価の対象であるソフトウェア開発プロジェクトにおいて開発するソフトウェアに対する要求と前記過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求との類似度が高く、かつ、当該過去のソフトウェア開発プロジェクトにおいて開発したソフトウェアに対する要求に対応するソースコードの前記開発期間の後期における変更量が多いほど高くなるように、リスクを評価することを特徴とするリスク評価方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020021647A JP7349927B2 (ja) | 2020-02-12 | 2020-02-12 | リスク評価システム及びリスク評価方法 |
EP21754347.9A EP4105859A4 (en) | 2020-02-12 | 2021-01-19 | RISK ASSESSMENT SYSTEM AND METHOD |
PCT/JP2021/001703 WO2021161739A1 (ja) | 2020-02-12 | 2021-01-19 | リスク評価システム及びリスク評価方法 |
US17/793,631 US20230081100A1 (en) | 2020-02-12 | 2021-01-19 | Risk evaluation system and risk evaluation method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020021647A JP7349927B2 (ja) | 2020-02-12 | 2020-02-12 | リスク評価システム及びリスク評価方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021128431A true JP2021128431A (ja) | 2021-09-02 |
JP7349927B2 JP7349927B2 (ja) | 2023-09-25 |
Family
ID=77293134
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020021647A Active JP7349927B2 (ja) | 2020-02-12 | 2020-02-12 | リスク評価システム及びリスク評価方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20230081100A1 (ja) |
EP (1) | EP4105859A4 (ja) |
JP (1) | JP7349927B2 (ja) |
WO (1) | WO2021161739A1 (ja) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0916389A (ja) * | 1995-07-03 | 1997-01-17 | Nippon Telegr & Teleph Corp <Ntt> | プログラム部品自動生成方法及び装置 |
JP2007058409A (ja) * | 2005-08-23 | 2007-03-08 | Ricoh Co Ltd | プロジェクト管理システム、該システムのプログラムおよび該プログラムを記録した記録媒体 |
JP2007264757A (ja) * | 2006-03-27 | 2007-10-11 | Nec Commun Syst Ltd | リスク予測装置および方法 |
US20080270210A1 (en) * | 2006-01-12 | 2008-10-30 | International Business Machines Corporation | System and method for evaluating a requirements process and project risk-requirements management methodology |
JP2010072817A (ja) * | 2008-09-17 | 2010-04-02 | Hitachi Software Eng Co Ltd | 設計ドキュメント品質評価支援システム |
US20110295643A1 (en) * | 2001-12-07 | 2011-12-01 | Accenture Global Service Limited | Accelerated process improvement framework |
JP2013257821A (ja) * | 2012-06-14 | 2013-12-26 | Mitsubishi Electric Corp | 情報処理装置及び情報処理方法及びプログラム |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005038085A (ja) * | 2003-07-17 | 2005-02-10 | Hitachi Ltd | 既存コンテンツ利用支援方法、情報処理装置、プログラム、および記録媒体 |
US7735068B2 (en) * | 2005-12-01 | 2010-06-08 | Infosys Technologies Ltd. | Automated relationship traceability between software design artifacts |
US8266591B2 (en) * | 2006-08-31 | 2012-09-11 | Serena Software, Inc. | Method and system for identifying suspect links between objects |
US8191044B1 (en) * | 2006-12-14 | 2012-05-29 | Fannie Mae | System and method for maintaining requirements traceability |
US9342279B2 (en) * | 2009-07-02 | 2016-05-17 | International Business Machines Corporation | Traceability management for aligning solution artifacts with business goals in a service oriented architecture environment |
US8661052B2 (en) * | 2011-04-29 | 2014-02-25 | Bae Systems Information And Electronic Systems Integration Inc. | Functional change tracking for independent software products |
US9075544B2 (en) * | 2013-01-15 | 2015-07-07 | International Business Machines Corporation | Integration and user story generation and requirements management |
US10437586B2 (en) * | 2017-01-03 | 2019-10-08 | Infosys Limited | Method and system for dynamic impact analysis of changes to functional components of computer application |
KR20180119857A (ko) * | 2017-04-26 | 2018-11-05 | 현대자동차주식회사 | 소프트웨어 변경 영향성 분석 방법 및 장치 |
US10417115B1 (en) * | 2018-04-27 | 2019-09-17 | Amdocs Development Limited | System, method, and computer program for performing production driven testing |
JP7098469B2 (ja) | 2018-08-01 | 2022-07-11 | キヤノン電子管デバイス株式会社 | 回転陽極x線管 |
US20200167154A1 (en) * | 2018-11-26 | 2020-05-28 | International Business Machines Corporation | Cognition-based analysis, interpretation, reporting and recommendations for customizations of cloud-implemented applications |
US10922075B2 (en) * | 2019-04-10 | 2021-02-16 | Morgan Stanley Services Group Inc. | System and method for creating and validating software development life cycle (SDLC) digital artifacts |
-
2020
- 2020-02-12 JP JP2020021647A patent/JP7349927B2/ja active Active
-
2021
- 2021-01-19 US US17/793,631 patent/US20230081100A1/en active Pending
- 2021-01-19 WO PCT/JP2021/001703 patent/WO2021161739A1/ja unknown
- 2021-01-19 EP EP21754347.9A patent/EP4105859A4/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0916389A (ja) * | 1995-07-03 | 1997-01-17 | Nippon Telegr & Teleph Corp <Ntt> | プログラム部品自動生成方法及び装置 |
US20110295643A1 (en) * | 2001-12-07 | 2011-12-01 | Accenture Global Service Limited | Accelerated process improvement framework |
JP2007058409A (ja) * | 2005-08-23 | 2007-03-08 | Ricoh Co Ltd | プロジェクト管理システム、該システムのプログラムおよび該プログラムを記録した記録媒体 |
US20080270210A1 (en) * | 2006-01-12 | 2008-10-30 | International Business Machines Corporation | System and method for evaluating a requirements process and project risk-requirements management methodology |
JP2007264757A (ja) * | 2006-03-27 | 2007-10-11 | Nec Commun Syst Ltd | リスク予測装置および方法 |
JP2010072817A (ja) * | 2008-09-17 | 2010-04-02 | Hitachi Software Eng Co Ltd | 設計ドキュメント品質評価支援システム |
JP2013257821A (ja) * | 2012-06-14 | 2013-12-26 | Mitsubishi Electric Corp | 情報処理装置及び情報処理方法及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
EP4105859A4 (en) | 2024-03-13 |
US20230081100A1 (en) | 2023-03-16 |
EP4105859A1 (en) | 2022-12-21 |
JP7349927B2 (ja) | 2023-09-25 |
WO2021161739A1 (ja) | 2021-08-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11755319B2 (en) | Code development management system | |
US8707268B2 (en) | Testing operations of software | |
US9703692B2 (en) | Development supporting system | |
US8589734B2 (en) | Verifying correctness of processor transactions | |
US10678864B2 (en) | Analysis model preparing system, programming apparatus, and analysis model preparing method | |
JP2019219848A (ja) | ソースコード解析方法およびソースコード解析装置 | |
Ostrand et al. | A Tool for Mining Defect-Tracking Systems to Predict Fault-Prone Files. | |
WO2021161739A1 (ja) | リスク評価システム及びリスク評価方法 | |
Abdeen et al. | An approach for performance requirements verification and test environments generation | |
An et al. | Challenges and issues of mining crash reports | |
Villanes et al. | A multivocal literature mapping on mobile compatibility testing | |
JP2019125042A (ja) | テスト実行順序生成装置、テスト実行順序生成方法及び記憶媒体 | |
EP3901862B1 (en) | Process management assistance system, process management assistance method, and process management assistance program | |
KR102106696B1 (ko) | 소프트웨어 검사 장치 및 방법 | |
Albeanu et al. | Total quality for software engineering management | |
JP6841667B2 (ja) | ソフトウェア性能測定システム及びプログラム | |
JP6941826B2 (ja) | Pdi規約の準拠性分析プログラム、pdi規約の準拠性分析装置及びpdi規約の準拠性分析方法 | |
JP6890795B1 (ja) | プログラム、方法、情報処理装置、及びシステム | |
JPWO2019030884A1 (ja) | レビュア管理システムおよび方法 | |
Perez et al. | Dataset of open-source software developers labeled by their experience level in the project and their associated software metrics | |
Gruszczyński et al. | The Benefits of Modeling Software-Related Exceptional Paths of Business Processes | |
JP2021033649A (ja) | Pdi規約の準拠性分析プログラム、pdi規約の準拠性分析装置及びpdi規約の準拠性分析方法 | |
JP2018088026A (ja) | 構成精度フィードバック装置および構成精度フィードバック方法 | |
CN117056216A (zh) | 测试方法、药品交易系统、电子设备和存储介质 | |
CN114003494A (zh) | 数据模型自动测试方法、装置与电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220701 |
|
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: 20230822 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230912 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7349927 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |