JP7484206B2 - ソフトウェア開発支援装置、ソフトウェア開発支援方法、プログラム、及びソフトウェア開発支援システム - Google Patents

ソフトウェア開発支援装置、ソフトウェア開発支援方法、プログラム、及びソフトウェア開発支援システム Download PDF

Info

Publication number
JP7484206B2
JP7484206B2 JP2020021675A JP2020021675A JP7484206B2 JP 7484206 B2 JP7484206 B2 JP 7484206B2 JP 2020021675 A JP2020021675 A JP 2020021675A JP 2020021675 A JP2020021675 A JP 2020021675A JP 7484206 B2 JP7484206 B2 JP 7484206B2
Authority
JP
Japan
Prior art keywords
source code
information
review information
development support
software development
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020021675A
Other languages
English (en)
Other versions
JP2021128435A (ja
Inventor
仁志 古村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2020021675A priority Critical patent/JP7484206B2/ja
Publication of JP2021128435A publication Critical patent/JP2021128435A/ja
Application granted granted Critical
Publication of JP7484206B2 publication Critical patent/JP7484206B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、ソフトウェア開発支援装置、ソフトウェア開発支援方法、プログラム、及びソフトウェア開発支援システムに関する。
近年、ソフトウェア開発の大規模化が進んでおり、多数の開発者が参加してソフトウェア開発を行うことが増えている。このようなソフトウェア開発では、担当する開発者の変更や開発者の新規参加等、開発者が過去に自ら開発していない部分を参照して開発を進めていく場合がある。しかしながら、新規に担当する開発者が過去に開発された部分を十分に理解することは困難であり、例えば当該ソフトウェアの暗黙的な前提条件、制約条件を設計書から読み取れず、バグを作りこんでしまう虞がある。
バグの作りこみを減らすための方法として、過去の開発時になされたレビューの記録を参照することが考えられる。過去開発時のレビュー記録には、過去に開発者がバグを作りこんだ箇所やその解決策及び修正内容に対する議論の結果等のレビュー情報が含まれている。したがって、過去開発時のレビュー記録を参照することによって、バグを作りこみやすい箇所を確認する等できるため、バグの作りこみを減らすことができる。
例えば特許文献1には、ソースコードの修正情報をソースコード内に蓄積し、該ソースコード内に記憶される修正履歴を並べかえて修正履歴情報を生成して表示する技術が開示されている。
特開2008-134900号公報
しかしながら、特許文献1に開示されている技術は、修正履歴を使用するものであるため、修正が行われなかった部分のレビュー情報を活用することができない。つまり、過去の開発者がレビューによって得たノウハウを十分に活用することができない。
本発明は、このような問題に鑑みなされたものであり、過去に行われたソフトウェア開発のレビュー記録から得られたノウハウを開発者に提供するソフトウェア開発支援装置、ソフトウェア開発支援方法、プログラム、及びソフトウェア開発支援システムを提供することを目的とする。
本発明の一態様に係るソフトウェア開発支援装置は、
ソフトウェア開発を行うシステム上で動作して開発を支援する開発支援部と、
前記開発支援部の動作によって生じた成果物を管理する成果物管理部と、を備え、
前記開発支援部は、
前記ソフトウェアのソースコードに前記ソースコードのレビュー情報を埋め込んで情報付きソースコードを生成し、前記情報付きソースコードを前記成果物管理部に記録するレビュー情報埋込手段と、
前記成果物管理部に記録された前記情報付きソースコードを読み出し、前記レビュー情報を抽出して前記ソースコードが含む関数ごとに表示させるレビュー情報表示手段と、を有し、
前記情報付きソースコードが含む前記レビュー情報は、修正が行われなかった関数に対する指摘事項を含む。
本発明の一態様に係るソフトウェア開発支援方法は、
ソフトウェアのソースコードに前記ソースコードのレビュー情報を埋め込んだ情報付きソースコードを生成する工程と、
前記情報付きソースコードから前記レビュー情報を抽出して前記ソースコードが含む関数ごとに表示させる工程と、を備え、
前記情報付きソースコードが含む前記レビュー情報は、修正が行われなかった関数に対する指摘事項を含む。
本発明の一態様に係るプログラムは、
ソフトウェア開発を行うシステム上で動作して開発を支援する開発支援部として動作するコンピュータに、
前記ソフトウェアのソースコードに前記ソースコードのレビュー情報を埋め込んだ情報付きソースコードを生成する工程と、
前記情報付きソースコードから前記レビュー情報を抽出して前記ソースコードが含む関数ごとに表示させる工程と、を実行させ、
前記情報付きソースコードが含む前記レビュー情報は、修正が行われなかった関数に対する指摘事項を含む。
本発明の一態様に係るソフトウェア開発支援システムは、
ソフトウェア開発支援装置と、前記ソフトウェア開発支援装置と通信可能な端末と、を備え、
前記ソフトウェア開発支援装置は、
ソフトウェア開発を行うシステム上で動作して開発を支援する開発支援部と、
前記開発支援部の動作によって生じた成果物を管理する成果物管理部と、を有し、
前記開発支援部は、
前記ソフトウェアのソースコードに前記ソースコードのレビュー情報を埋め込んで情報付きソースコードを生成し、前記情報付きソースコードを前記成果物管理部に記録するレビュー情報埋込手段と、
前記成果物管理部に記録された前記情報付きソースコードを読み出し、前記レビュー情報を抽出して前記ソースコードが含む関数ごとに表示させるレビュー情報表示手段と、を有し、
前記情報付きソースコードが含む前記レビュー情報は、修正が行われなかった関数に対する指摘事項を含む。
本発明によれば、過去に行われたソフトウェア開発のレビュー記録から得られたノウハウを開発者に提供するソフトウェア開発支援装置、ソフトウェア開発支援方法、プログラム、及びソフトウェア開発支援システムを提供することができる。
本実施形態に係るソフトウェア開発支援装置の構成を示すブロック図である。 本実施形態に係るソフトウェア開発支援システムの構成を示すブロック図である。 ソフトウェア開発時におけるレビュー情報埋込手段の動作を示すフロー図である。 ソフトウェアが含むソースコードと、レビュー記録、との対応を示す図である。 レビュー記録の一例を示す図である。 情報付きソースコードの一例を示す図である。 レビュー情報表示手段の動作を示すフロー図である。 端末に表示する画面の一例を示す図である。 レビュー情報を抽出する処理を示すフロー図である。 並べ替えされたレビュー情報の一例を示す図である。 2回目以降のソフトウェア開発時におけるレビュー情報埋込手段の動作を示すフロー図である。
(実施形態)
以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。ただし、本発明が以下の実施の形態に限定される訳ではない。また、説明を明確にするため、以下の記載及び図面は、適宜、簡略化されている。
まず、図1を参照して本実施形態に係るソフトウェア開発支援装置の構成を説明する。図1は、本実施形態に係るソフトウェア開発支援装置の構成を示すブロック図である。図1に示すように、ソフトウェア開発支援装置1は、開発支援部2、及び成果物管理部3を備える。開発支援部2は、レビュー情報埋込手段21、及びレビュー情報表示手段22を備える。成果物管理部3には、情報付きソースコード31が格納されている。
ソフトウェア開発では、開発者がソースコードを作成した後に、開発者及びレビューアが当該ソースコードをレビューしてバグの修正等を行う。ソースコードのレビューは、通常、バグが検出されなくなるまで繰り返し行われる。レビュー記録には、ソースコード上のバグ及び問題点、その解決策、指摘内容に対する議論の結果等のレビュー情報が含まれている。ソフトウェア開発支援装置1は、過去に開発されたソースコードのレビュー情報を開発者に提供することによってソフトウェア開発を支援する装置である。
開発支援部2は、ソフトウェア開発を行うシステム上で動作する。開発支援部2が備えるレビュー情報埋込手段21は、過去に開発されたソースコードに当該ソースコードのレビュー情報を埋め込んで情報付きソースコード31を生成して成果物管理部3に記録する。成果物管理部3は、ソフトウェア開発時における開発支援部2の動作によって生じた成果物、具体的には情報付きソースコード31を管理する。レビュー情報表示手段22は、成果物管理部3に記録された情報付きソースコード31を読み出して表示させる。このようにして、ソフトウェア開発支援装置1は、過去に開発されたソースコードのレビュー情報を開発者に提示することができる。
次に、図2を参照して、本実施形態に係るソフトウェア開発装置を利用したソフトウェア開発支援システム(本実施形態に係るソフトウェア開発支援システム)の構成及び動作を説明する。ソフトウェア開発支援システム10は、ソフトウェア開発支援装置1、及び端末4を備える。なお、図2~4には、ソフトウェア開発支援システム10に加えて開発者5を図示している。
図2は、本実施形態に係るソフトウェア開発支援システムの構成を示すブロック図である。端末4は、ソフトウェア開発支援装置1と通信可能である。開発者5は、端末4を操作してソフトウェアのソースコードを作成する。ソースコードは、C言語、Java(登録商標)等のプログラミング言語によって記述されたテキストデータである。ソフトウェアは、複数のファイルを含んでおり、各々のファイルは、複数の関数を含む。ソースコードは、各々のファイルごとに作成される。ソフトウェア開発支援システム10は、開発者5が端末4を操作してソースコードを作成する際に、過去に開発されたソースコードのレビュー情報をソフトウェア開発支援装置1が端末4に表示させることによって、開発者5の作業を支援することができる。
次に、図3~6を参照して、レビュー情報埋込手段21の動作について詳細に説明する。図3は、ソフトウェア開発時におけるレビュー情報埋込手段の動作を示すフロー図である。図4は、ソフトウェアが含むソースコードと、レビュー記録と、の対応を示す図である。図5は、レビュー記録の一例を示す図である。図6は、情報付きソースコードの一例を示す図である。なお、図3では、レビュー情報表示手段22の図示を省略している。
図3に示すように、ソフトウェア開発時には、開発者5は、端末4を操作してソースコード6を作成し、その後、レビューアと共にソースコード6のレビューを行う。開発者5は、端末4を操作してレビューアに受けた指摘事項をレビュー情報として含むレビュー記録7を作成する。レビュー情報は、具体的には、例えば、ソースコード上のバグ及び問題点、その解決策、指摘内容に対する議論の結果等である。レビュー情報埋込手段21は、ソースコード6にレビュー記録7を埋め込んだ情報付きソースコード31を作成し、成果物管理部3に情報付きソースコード31を記録する。
図4は、ソフトウェアが含むソースコードと、レビュー記録と、の対応を示す図である。ソフトウェア62は、複数のファイル61を含む。各々のファイル61には、それぞれソースコード6が作成される。各々のファイル61は、複数の関数を含む。レビュー記録7は、各々のファイル61ごとに作成される。ソースコード6が含む関数のロジックが複雑である場合、レビューアが誤って当該関数に指摘してしまうことがある。レビュー記録7には、レビューアが指摘を行ったが修正を行わなかった場合の記録も記述される。つまり、レビュー情報は、修正が行われなかった関数に対する指摘事項を含む。
図5は、レビュー記録の一例を示す図である。図5に示すように、開発者5は、レビュー情報をリスト化してレビュー記録7を作成する。図5に示す例では、レビュー情報として、レビュー実施日、指摘対象の関数名、開発者名等の開発者情報、レビューア名等のレビューア情報、指摘内容、及び修正した関数の関数名を含む処置内容を含む。レビュー記録7は、ソースコード6に対して1回又は複数回行われたレビューの結果を含むことができる。レビュー記録7は、XML及びJSON等のデータ記述言語を用いて記述されたテキストデータである。
図6は、情報付きソースコードの一例を示す図である。情報付きソースコード31は、1つのソースコード6のファイルにつき1つ作成される。情報付きソースコード31は、ソースコード6にレビュー記録7が埋め込まれたファイルである。一般的なプログラム言語は、任意のテキストをコメントとして入力した状態でファイルを作成可能である。したがって、レビュー情報埋込手段21は、図6に示すように、レビュー情報をソースコード6のコメントとして埋め込むことができる。
次に、図7~10を参照して、レビュー情報表示手段22の動作について詳細に説明する。図7は、レビュー情報表示手段の動作を示すフロー図である。図8は、端末に表示する画面の一例を示す図である。図9は、レビュー情報を抽出する処理を示すフロー図である。図10は、並べ替えされたレビュー情報の一例を示す図である。
例えば、開発者5が過去に開発されたソースコード6を改変して新たなソースコード6を作成する場合には、新たなソースコード6の一部が過去に開発されたソースコード6と類似している。そのため、開発者5が過去に開発されたソースコード6のレビュー情報を参照することによって、バグの作り込みを減らすことができる。図7に示すように、レビュー情報表示手段22は、成果物管理部3から情報付きソースコード31を読み出し、情報付きソースコード31からレビュー情報を抽出して端末4に表示させることによって、開発者5にレビュー情報を提供する。
情報付きソースコード31が含むレビュー情報は、膨大であり、開発者5にとって不要な情報も多く含んでいる。そのため、全てのレビュー情報を端末4に表示させると、開発者5は、レビュー情報を活用して必要な情報を受け取ることが困難である。そこで、レビュー情報表示手段22は、ソースコード6が含む関数ごとにレビュー情報を並べ替えて、端末4に表示させる。図8に示す例では、開発者5が端末4の画面上で各関数を参照すると、レビュー情報表示手段22は、当該関数に関する指摘事項を画面上のポップアップで表示させる。このように、ソフトウェア開発支援装置1は、開発者5が必要とするレビュー情報のみを端末4に表示させることができる。そのため、開発者5は、必要なレビュー情報のみを受け取り、当該レビュー情報を十分に活用することができる。
図9は、レビュー情報を抽出する処理を示すフロー図である。レビュー情報を抽出する際には、まず、情報付きソースコード31から関数名を抽出してリストアップする(ステップS1)。ステップS1において、抽出した関数名に重複があった場合は、削除して一意にする。情報付きソースコード31が含むソースコード6では、関数名は、プログラミング言語の規則に従って記述されているため、機械的に抽出可能である。また、レビュー記録7に記載ルールを設ける等によって記述方法を統一し、情報付きソースコード31が含むレビュー情報に記載された関数名を機械的に抽出してもよい。
次に、情報付きソースコード31が含むレビュー情報から、ステップS1において抽出した関数ごとに、当該関数名が含まれるレビュー情報を抽出してリストアップする(ステップS2)。ステップS2において抽出されるレビュー情報は、少なくとも当該関数に対する指摘事項を含み、さらに、処置内容に当該関数名が記述されている指摘事項を含んでいてもよいものとする。ステップS2において、抽出したレビュー情報に重複があった場合は、削除して一意にする。ステップS2において抽出されるレビュー情報が処置内容に当該関数名が記述されている指摘事項を含んでいると、含んでいない場合に比較して、レビュー情報の漏れを減らすことができる。
ステップS1において抽出された全ての関数についてレビュー情報のリストアップが終了した場合(ステップS3Yes)、リストアップされたレビュー情報を関数ごとに並べ替える(ステップS4)。ステップS4では、各関数についてリストアップされたレビュー情報をレビュー実施日の降順に並べ替えてもよい。ステップS1において抽出された関数についてレビュー情報のリストアップが終了していないものがある場合(ステップS3No)、レビュー情報のリストアップ(ステップS2)をもう一度行う。
図10は、並べ替えされたレビュー情報の一例を示す図である。図10に示す例では、レビュー情報として、各関数に対する指摘事項に加えて、処置内容に当該関数名が含まれている指摘事項も抽出している。したがって、各関数について開発者5が必要とする情報をより漏れなく抽出することができる。
次に、図11を参照して、2回目以降のソフトウェア開発時におけるレビュー情報埋込手段21の動作について説明する。図11は、2回目以降のソフトウェア開発時におけるレビュー情報埋込手段の動作を示すフロー図である。2回目以降のソフトウェア開発時には、レビュー情報埋込手段21は、前回のソフトウェア開発時に作成された情報付きソースコード31にレビュー記録7を埋め込んだ情報付きソースコード31を新たに作成し、成果物管理部3に新たな情報付きソースコード31を記録する。
ソフトウェア開発支援装置1は、上述のように修正が行われていない関数に対しての指摘事項を含むレビュー情報を開発者5に提示することができる。したがって、開発者5は、例えば、レビューアが誤って指摘してしまった関数について、当該関数のロジックが複雑で間違えやすいというノウハウを得ることができる。このように、ソフトウェア開発支援装置1は、修正が行われていない関数について、過去に行われたソフトウェア開発のレビュー記録7から得られたノウハウを開発者5に提供することができる。
(変形例)
上述の実施形態では、過去に作成された1つの情報付きソースコード31に新たなレビュー記録7を埋め込んで新たな情報付きソースコード31を作成していたが、過去に作成された複数の情報付きソースコード31からレビュー情報を抽出して新たな情報付きソースコード31を作成してもよい。この場合、開発支援部2は、さらに図示しないレビュー情報集計手段を備えている。レビュー情報集計手段は、複数の情報付きソースコードに埋め込まれたレビュー情報を集計して情報付きソースコード31に埋め込み直す。過去に作成された複数の情報付きソースコード31が含むレビュー情報を埋め込むことによって、別のファイル61が含む関数に対して処置を行った場合の情報をレビュー情報として活用することができる。
なお、過去に作成された複数の情報付きソースコード31は、他のソフトウェアのファイルのものであってもよい。これによって、他のソフトウェア開発時に行われたレビュー記録7を活用することができる。過去に開発されたソフトウェアのソードコードを流用する際に、ファイル61単位で流用するルールを設けることによって、他のソフトウェアのレビュー記録7を容易に活用することができる。また、リリース後に判明したバグの修正情報をレビュー記録7と同様にソースコード6に埋め込むことによって、開発者5が当該バグのレビュー情報を活用可能としてもよい。当該バグのレビュー情報を活用することによって、同様のバグの作り込みを減らすことができる。
レビュー記録7には、さらに、関数同士の呼び出し関係も記録されていてもよい。関数同士の呼び出し関係を記録することによって、レビュー情報として各関数の呼び出し先及び呼び出し元の関数に対する指摘事項を抽出することができる。これによって、関数の改変によって影響を受ける範囲を、関数を辿って確認することができる。
図9に示したステップS2よりも後にリストアップされた指摘事項を分析する工程を実施してもよい。リストアップされた指摘事項を分析し、その結果を表示してもよい。例えば、指摘事項の件数が多い関数は、開発者5が間違えやすい関数であると考えられる。そこで、指摘事項の件数を分析し、件数が多い関数については開発者5に注意を促す表示を端末4の画面上にすることによって、バグの作り込みを減らすことができる。
以上で説明した本実施の形態に係る発明により、過去に行われたソフトウェア開発のレビュー記録から得られたノウハウを開発者に提供するソフトウェア開発支援装置、ソフトウェア開発支援方法、プログラム、及びソフトウェア開発支援システムを提供することができる。
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
例えば、上述の実施の形態において、様々な処理を行う機能ブロックとして図面に記載される各要素は、ハードウェア的には、CPU(Central Processing Unit)、メモリ、その他の回路で構成することができ、ソフトウェア的には、メモリにロードされたプログラム等によって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、又はそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータ(情報通知装置を含むコンピュータ)に供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)を含む。さらに、この例は、CD-ROM(Read Only Memory)、CD-R、CD-R/Wを含む。さらに、この例は、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
(付記A1)
ソフトウェア開発を行うシステム上で動作して開発を支援する開発支援部と、
前記開発支援部の動作によって生じた成果物を管理する成果物管理部と、を備え、
前記開発支援部は、
前記ソフトウェアのソースコードに前記ソースコードのレビュー情報を埋め込んで情報付きソースコードを生成し、前記情報付きソースコードを前記成果物管理部に記録するレビュー情報埋込手段と、
前記成果物管理部に記録された前記情報付きソースコードを読み出し、前記レビュー情報を抽出して前記ソースコードが含む関数ごとに表示させるレビュー情報表示手段と、を有し、
前記情報付きソースコードが含む前記レビュー情報は、修正が行われなかった関数に対する指摘事項を含む、
ソフトウェア開発支援装置。
(付記A2)
前記レビュー情報は、各関数名が記述された指摘事項を含む、付記A1に記載のソフトウェア開発支援装置。
(付記A3)
前記レビュー情報は、各関数の呼び出し先及び呼び出し元の関数に対する指摘事項を含む、付記A1又はA2に記載のソフトウェア開発支援装置。
(付記A4)
レビュー情報表示手段は、抽出した前記レビュー情報を関数ごとにポップアップで表示する、付記A1~A3のいずれか一項に記載のソフトウェア開発支援装置。
(付記A5)
前記開発支援部は、複数の情報付きソースコードに埋め込まれた前記レビュー情報を集計して前記情報付きソースコードに埋め込み直すレビュー情報集計手段をさらに備える、付記A1~A4のいずれか一項に記載のソフトウェア開発支援装置。
(付記A6)
前記複数の情報付きソースコードは、異なるソフトウェアのソースコードを含む、付記A5に記載のソフトウェア開発支援装置。
(付記A7)
前記レビュー情報表示手段は、各関数の指摘事項の件数をさらに表示させる、付記A1~A6のいずれか一項に記載のソフトウェア開発支援装置。
(付記A8)
前記レビュー情報埋込手段は、リリースされたソフトウェアから発見されたバグの情報をさらにソースコードに埋め込む、付記A1~A7のいずれか一項に記載のソフトウェア開発支援装置。
(付記B1)
ソフトウェアのソースコードに前記ソースコードのレビュー情報を埋め込んだ情報付きソースコードを生成する工程と、
前記情報付きソースコードから前記レビュー情報を抽出して前記ソースコードが含む関数ごとに表示させる工程と、を備え、
前記情報付きソースコードが含む前記レビュー情報は、修正が行われなかった関数に対する指摘事項を含む、
ソフトウェア開発支援方法。
(付記C1)
ソフトウェア開発を行うシステム上で動作して開発を支援する開発支援部として動作するコンピュータに、
前記ソフトウェアのソースコードに前記ソースコードのレビュー情報を埋め込んだ情報付きソースコードを生成する工程と、
前記情報付きソースコードから前記レビュー情報を抽出して前記ソースコードが含む関数ごとに表示させる工程と、を実行させ、
前記情報付きソースコードが含む前記レビュー情報は、修正が行われなかった関数に対する指摘事項を含む、
プログラム。
(付記D1)
ソフトウェア開発支援装置と、前記ソフトウェア開発支援装置と通信可能な端末と、を備え、
前記ソフトウェア開発支援装置は、
ソフトウェア開発を行うシステム上で動作して開発を支援する開発支援部と、
前記開発支援部の動作によって生じた成果物を管理する成果物管理部と、を有し、
前記開発支援部は、
前記ソフトウェアのソースコードに前記ソースコードのレビュー情報を埋め込んで情報付きソースコードを生成し、前記情報付きソースコードを前記成果物管理部に記録するレビュー情報埋込手段と、
前記成果物管理部に記録された前記情報付きソースコードを読み出し、前記レビュー情報を抽出して前記ソースコードが含む関数ごとに表示させるレビュー情報表示手段と、を有し、
前記情報付きソースコードが含む前記レビュー情報は、修正が行われなかった関数に対する指摘事項を含む、
ソフトウェア開発支援システム。
(付記D2)
前記レビュー情報は、各関数に対する指摘事項を含む、付記D1に記載のソフトウェア開発支援システム。
1 ソフトウェア開発支援装置
10 ソフトウェア開発支援システム
2 開発支援部
21 レビュー情報埋込手段
22 レビュー情報表示手段
3 成果物管理部
31 情報付きソースコード
4 端末
5 開発者
6 ソースコード
61 ファイル
62 ソフトウェア
7 レビュー記録

Claims (10)

  1. ソフトウェア開発を行うシステム上で動作して開発を支援する開発支援部と、
    前記開発支援部の動作によって生じた成果物を管理する成果物管理部と、を備え、
    前記開発支援部は、
    フトウェアのソースコードに前記ソースコードのレビュー情報を埋め込んで情報付きソースコードを生成し、前記情報付きソースコードを前記成果物管理部に記録するレビュー情報埋込手段と、
    前記成果物管理部に記録された前記情報付きソースコードを読み出し、前記レビュー情報を抽出して前記ソースコードが含む関数ごとに表示させるレビュー情報表示手段と、を有し、
    前記情報付きソースコードが含む前記レビュー情報は、修正が行われなかった関数に対する指摘事項を含む、
    ソフトウェア開発支援装置。
  2. 前記レビュー情報は、各関数名が記述された指摘事項を含む、請求項1に記載のソフトウェア開発支援装置。
  3. 前記レビュー情報は、各関数の呼び出し先及び呼び出し元の関数に対する指摘事項を含む、請求項1又は2に記載のソフトウェア開発支援装置。
  4. レビュー情報表示手段は、抽出した前記レビュー情報を関数ごとにポップアップで表示する、請求項1~3のいずれか一項に記載のソフトウェア開発支援装置。
  5. 前記開発支援部は、複数の情報付きソースコードに埋め込まれた前記レビュー情報を集計して前記情報付きソースコードに埋め込み直すレビュー情報集計手段をさらに備える、請求項1~4のいずれか一項に記載のソフトウェア開発支援装置。
  6. 前記複数の情報付きソースコードは、異なるソフトウェアのソースコードを含む、請求項5に記載のソフトウェア開発支援装置。
  7. 前記レビュー情報表示手段は、各関数の指摘事項の件数をさらに表示させる、請求項1~6のいずれか一項に記載のソフトウェア開発支援装置。
  8. ソフトウェア開発を行うシステム上で動作して開発を支援する開発支援部として動作するコンピュータが、
    ソフトウェアのソースコードに前記ソースコードのレビュー情報を埋め込んだ情報付きソースコードを生成する工程と、
    前記情報付きソースコードから前記レビュー情報を抽出して前記ソースコードが含む関数ごとに表示させる工程と、を備え、
    前記情報付きソースコードが含む前記レビュー情報は、修正が行われなかった関数に対する指摘事項を含む、
    ソフトウェア開発支援方法。
  9. ソフトウェア開発を行うシステム上で動作して開発を支援する開発支援部として動作するコンピュータに、
    フトウェアのソースコードに前記ソースコードのレビュー情報を埋め込んだ情報付きソースコードを生成する工程と、
    前記情報付きソースコードから前記レビュー情報を抽出して前記ソースコードが含む関数ごとに表示させる工程と、を実行させ、
    前記情報付きソースコードが含む前記レビュー情報は、修正が行われなかった関数に対する指摘事項を含む、
    プログラム。
  10. ソフトウェア開発支援装置と、前記ソフトウェア開発支援装置と通信可能な端末と、を備え、
    前記ソフトウェア開発支援装置は、
    ソフトウェア開発を行うシステム上で動作して開発を支援する開発支援部と、
    前記開発支援部の動作によって生じた成果物を管理する成果物管理部と、を有し、
    前記開発支援部は、
    フトウェアのソースコードに前記ソースコードのレビュー情報を埋め込んで情報付きソースコードを生成し、前記情報付きソースコードを前記成果物管理部に記録するレビュー情報埋込手段と、
    前記成果物管理部に記録された前記情報付きソースコードを読み出し、前記レビュー情報を抽出して前記ソースコードが含む関数ごとに表示させるレビュー情報表示手段と、を有し、
    前記情報付きソースコードが含む前記レビュー情報は、修正が行われなかった関数に対する指摘事項を含む、
    ソフトウェア開発支援システム。
JP2020021675A 2020-02-12 2020-02-12 ソフトウェア開発支援装置、ソフトウェア開発支援方法、プログラム、及びソフトウェア開発支援システム Active JP7484206B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020021675A JP7484206B2 (ja) 2020-02-12 2020-02-12 ソフトウェア開発支援装置、ソフトウェア開発支援方法、プログラム、及びソフトウェア開発支援システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020021675A JP7484206B2 (ja) 2020-02-12 2020-02-12 ソフトウェア開発支援装置、ソフトウェア開発支援方法、プログラム、及びソフトウェア開発支援システム

Publications (2)

Publication Number Publication Date
JP2021128435A JP2021128435A (ja) 2021-09-02
JP7484206B2 true JP7484206B2 (ja) 2024-05-16

Family

ID=77488572

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020021675A Active JP7484206B2 (ja) 2020-02-12 2020-02-12 ソフトウェア開発支援装置、ソフトウェア開発支援方法、プログラム、及びソフトウェア開発支援システム

Country Status (1)

Country Link
JP (1) JP7484206B2 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005234856A (ja) 2004-02-19 2005-09-02 Mitsubishi Electric Corp プログラム編集支援装置、プログラム編集支援方法およびプログラム
JP2010152428A (ja) 2008-12-24 2010-07-08 Hitachi Ltd プログラム開発支援機器、方法およびプログラム
JP2011081496A (ja) 2009-10-05 2011-04-21 Toshiba Corp 成果物レビュー支援装置
US20150242206A1 (en) 2014-02-26 2015-08-27 Ebay Inc. Adding on-the-fly comments to code
JP2016133946A (ja) 2015-01-19 2016-07-25 株式会社日立製作所 ソースコードレビュー方法及びそのシステム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005234856A (ja) 2004-02-19 2005-09-02 Mitsubishi Electric Corp プログラム編集支援装置、プログラム編集支援方法およびプログラム
JP2010152428A (ja) 2008-12-24 2010-07-08 Hitachi Ltd プログラム開発支援機器、方法およびプログラム
JP2011081496A (ja) 2009-10-05 2011-04-21 Toshiba Corp 成果物レビュー支援装置
US20150242206A1 (en) 2014-02-26 2015-08-27 Ebay Inc. Adding on-the-fly comments to code
JP2016133946A (ja) 2015-01-19 2016-07-25 株式会社日立製作所 ソースコードレビュー方法及びそのシステム

Also Published As

Publication number Publication date
JP2021128435A (ja) 2021-09-02

Similar Documents

Publication Publication Date Title
WO2020006910A1 (zh) 业务组件式开发方法、装置、计算机设备及存储介质
CN107644286B (zh) 工作流处理方法及装置
US20170277624A1 (en) Method and system for automated user interface (ui) testing through model driven techniques
CN106775744B (zh) 一种生成静态库的方法和装置
US9152539B2 (en) Tag-based graphical user interface production systems and methods
US10067856B2 (en) Employing code overlays to facilitate software development
US8589877B2 (en) Modeling and linking documents for packaged software application configuration
EP2098954A1 (en) Systems and methods for template reverse engineering
US10169218B2 (en) Method for automatically validating data against a predefined data specification
CN112561370A (zh) 软件发版的管理方法、装置、计算机设备及存储介质
KR20130102763A (ko) 개발도구의 로직생성장치 및 방법과, 그 방법을 실행하기 위한 프로그램이 기록된 저장매체
JP7484206B2 (ja) ソフトウェア開発支援装置、ソフトウェア開発支援方法、プログラム、及びソフトウェア開発支援システム
CN117215558A (zh) 安卓的基于可视化的软件开发方法、装置、设备及介质
JP2015026262A (ja) コンパイル方法、プログラム及びコンパイル装置
JP6287093B2 (ja) ソフトウェア開発支援装置、ソフトウェア開発支援方法及びプログラム
CN113672509A (zh) 自动化测试方法、装置、测试平台及存储介质
WO2006071368A2 (en) System and method for information encapsulation for providing multiple deliverable formats from one information source
JP6281239B2 (ja) プログラム開発サポート装置および方法
CN113934748A (zh) 混合型sql脚本文件生成方法、执行方法及装置
JP2017054217A (ja) テスト支援装置、テスト支援方法およびテスト支援プログラム
CN117234466B (zh) 企业管理软件开发方法、系统、设备及存储介质
JP2001273125A (ja) ソースプログラム自動生成方法およびシステム、ならびにそのプログラム記録媒体
JP2020087087A (ja) 修正候補特定プログラム
US20230385056A1 (en) Removing inactive code to facilitate code generation
CN107479899B (zh) 文件处理方法和装置、存储介质及处理器

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230111

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240202

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240415

R150 Certificate of patent or registration of utility model

Ref document number: 7484206

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150