コーディング規準遵守状況監視システム
【課題】ソフトウエア開発プロジェクト全体の、コーディング規準遵守のための管理作業を容易なものとする。
【解決手段】 コーディング規準遵守監視システム100は、全体制御部101と、ソース取得部102と、インスペクション処理部103と、検出情報集計部104と、集計結果表示部105の各処理部から構成されている。コーディング規準遵守監視システム100では、インスペクション担当者により各プロジェクト毎に予め作成,指定された実行定義情報111,ルール情報112に基づき、定期的にインスペクション処理を実行するとともに、インスペクション処理の結果を集計して各プロジェクト毎にコーディング規準遵守状況レポート130を生成する。
【解決手段】 コーディング規準遵守監視システム100は、全体制御部101と、ソース取得部102と、インスペクション処理部103と、検出情報集計部104と、集計結果表示部105の各処理部から構成されている。コーディング規準遵守監視システム100では、インスペクション担当者により各プロジェクト毎に予め作成,指定された実行定義情報111,ルール情報112に基づき、定期的にインスペクション処理を実行するとともに、インスペクション処理の結果を集計して各プロジェクト毎にコーディング規準遵守状況レポート130を生成する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ソフトウエア開発プロジェクトにおいて、開発者により作成されたソースコードについて、予め定義されたコーディング規準に違反するか否かを監視するシステムに関する。
【背景技術】
【0002】
一般に、ソフトウェア開発プロジェクトでは、開発対象となるシステムを構成するソースコードに対し、予めコーディング規準が設定されており、各開発者はこれに従いコーディングを行う。この場合、実際に各ルールに従ってコーディングされているか否かを各開発者自身がチェックするとともに、プロジェクト全体のソースコードについて各ルールが遵守されているかについて、インスペクション担当者がチェック作業を行っていた。
この場合、ソースコードのチェック作業は、コーディング規準に基づき、ソースコードを目視することにより行われていたため、チェック作業における工数が多大なものとなっていた。
そこで、チェック作業における工数削減のためのツールとして、従来より、予め定義されたコーディング規準に基づき、開発者によりコーディングされたソースコードについてチェックを行う手段を備えた診断装置についての構成が公知となっている(例えば、特許文献1参照。)。
【特許文献1】特開平06−028165号公報
【0003】
このような診断装置では、通常、コーディング規準として用いる数百のルールが予め用意されており、チェック作業を行う開発者又はインスペクション担当者により選択されたルールに基づきチェック処理を行っていた。
チェック処理としては、選択された各ルールに基づきソースコードを全て走査し、ルールに違反する箇所を検出すると、指摘項目としてファイル名、行、ルール名、指摘事項などを開発者用端末又はインスペクション担当者用端末に表示させていた。
インスペクション工程では、インスペクション担当者が診断装置により指摘された箇所を確認し、必要があれば開発者に修正を指示し、開発者により確実に修正が行われたか否かを再度診断装置を用いること等によって確認していた。
一方、開発者自身のチェックの場合、診断装置により指摘された箇所を任意に修正していた。
インスペクション工程では、通常、このようなチェックと修正のサイクルを何度か繰り返すことにより、コーディング規準の徹底を図っており、前記特許文献1記載の診断装置等を用いることにより、チェック作業に関する工数削減を図っていた。
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかし、前記特許文献1は、開発者又はインスペクション担当者が個々にチェック作業を行うことを想定したものであるため、コーディング規準に含まれるルール等は任意に指定可能なものであり、また、開発者によるチェック処理のタイミングも任意なものとなっていた。従って、各開発者毎のチェック処理では、適用するルールに過不足が生じる等、開発者毎に異なる恐れがあり、また、必要なタイミングでのチェック処理が行われない可能性があった。また、他の開発者のルール違反状況等、開発プロジェクト全体の状況を把握させることができないため、適切なタイミングでの修正作業が行われない可能性があった。
この場合、インスペクション担当者により、コーディング規準に含めるルールの指定や、チェック処理の有無の確認を行う必要があるとともに、各開発者によるチェック結果の集計作業等を行う必要があるため、インスペクション担当者の負担が過大なものとなり、本来のチェック作業等に支障を来たす可能性があった。
一方、インスペクション担当者が全てのソースコードについてチェック作業を行う場合には、適用されるルールやチェック処理のタイミング等は容易に管理できるものの、膨大な量のソースコードについて処理が作業が必要となり、また、インスペクション担当者からの指示がなければ開発者がソースコードを修正できないという問題があった。
特に、近時のソフトウエア開発プロジェクトでは、参考文献として挙げた従来技術が示されたころには想定し得ない、Webシステム等のような大規模システムを短期間に開発する必要を要求され、ソースコードのステップ数や開発者数が膨大なものとなる一方、チェック作業については可能な限り短時間で行うことが求められており、インスペクション担当者の負担は増加する傾向にあった。
また、プロジェクト管理上、各プロジェクト内のルール違反の件数及び傾向等を考慮して、プロジェクトの進捗状況等を管理することが必要となるが、インスペクション担当者の集計作業結果の報告を待つか、各開発者の状況を個々に確認することが必要となるため、お互いの作業効率が落ちるという問題があった。
さらに、インスペクション担当者は、プロジェクト全体におけるルール違反検出情報の集計結果(ルール違反の傾向等)に基づき、より適切なルールを定義する場合があるが、個々のチェック結果の集計を行い、さらにその結果に基づき、ルールの再定義の必要性等を判断することは過大な負担となっていた。
【0005】
本発明は前記課題を解決するためのものであり、多数の開発者によりコーディングされたソースコードについて、コーディング規準遵守状況のチェック及びチェック結果の集計等を定期的に行い、集計結果をプロジェクト関係者に確認可能なものとすることにより、ソフトウエア開発プロジェクト全体の管理作業を容易なものとするとともに、開発者による迅速な修正作業を可能とし、さらに、コーディング規準の再定義を行うための資料の提示を可能とするコーディング規準遵守状況監視システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
前記課題を解決するため、本発明は、ソフトウェア開発プロジェクトの開発対象を構成するソースコードが、コーディング規準に基づいてコーディングされているか否かを監視するシステムであって、前記ソースコードを収集してインスペクション処理手段に提供するソース取得手段と、提供された前記ソースコードの中から前記コーディング規準に違反するソースコードを検出するインスペクション処理手段と、前記インスペクション処理手段から得られた検出結果を集計する検出情報集計手段と、前記集計結果を表示する集計結果表示手段と、予め設定された実行頻度情報に基づいて、前記ソースコード取得手段と、前記インスペクション処理手段と、前記検出情報集計手段と、前記集計結果表示手段とのそれぞれの実行を制御する全体制御手段とを備えることを特徴とする。
また、前記集計結果表示手段は、予め定義されたコーディング規準に含まれるルールの一覧を生成し、各ルールについて、違反するソースコードの件数を表示する手段を備えることを特徴とする。
また、前記集計結果表示手段は、一覧表示の表示項目を取捨選択し、表示項目の表示順序を変更する手段を備えることを特徴とする。
また、前記コーディング規準遵守状況監視システムは、前記ソフトウエア開発プロジェクト毎にコーディング規準に含まれるルールを取捨選択して設定し、実行する手段を備えることを特徴とする。
【発明の効果】
【0007】
以上の構成により、本発明では、コーディング規準遵守状況のチェック及びチェック結果の集計等を定期的に行い、集計結果を開発者,インスペクション担当者を含むプロジェクト関係者に確認させることが可能となる。
従って、インスペクション担当者にとっては、集計結果を確認することにより、プロジェクト全体のルール違反の傾向や修正状況等を把握することができ、本来の管理作業及びルールの再定義作業等に集中させることが可能となる。
また、開発者にとっては、プロジェクト毎に統一した規準により、チェックされた結果に基づくルール違反検出情報を確認することができるため、チェック結果に基づき、適切な修正を行うことができるとともに、プロジェクト全体におけるルール違反の状況,修正状況等を確認しながら各自の作業を進めることが可能となる。
また、プロジェクト管理者にとっては、プロジェクト全体におけるルール違反の状況,修正状況等を考慮した進捗管理等を行うことが可能となる。
また、集計結果として、各コーディング規準について、違反件数を表示とすることにより、ルール違反の傾向の把握を容易なものとすることができる。
また、集計結果の表示項目を任意に設定可能としたので、インスペクション担当者又はプロジェクト管理者の管理作業に適した表示形態とすることが可能となる。
また、プロジェクト毎にコーディング規準に含まれるルールを設定可能としたので、プロジェクト毎に異なる規準での管理を行うことが可能となる。
【発明を実施するための最良の形態】
【0008】
以下、本発明の一実施の形態に係るコーディング規準遵守監視システムについて、図面に基づき説明する。
図1は、本実施の形態に係るコーディング規準遵守監視システムの概略構成を示すブロック図である。
コーディング規準遵守監視システム100は、全体制御部101と、ソース取得部102と、インスペクション処理部103と、検出情報集計部104と、集計結果表示部105の各処理部から構成されている。
また、コーディング規準遵守監視処理に必要な情報として、実行定義情報111とルール情報112とが予め定義されており、また、コーディング規準遵守監視処理に必要な情報を格納するソースファイル格納部113と、検出情報格納部114と、集計結果格納部115とを備える。
全体制御部101は、インスペクション担当者により指定された実行定義情報111を読込み、実行定義情報111に定義されている日時,頻度等の設定情報に基づき、ソース取得部102,インスペクション処理部103,検出情報集計部104,集計結果表示部105の起動,実行指示等の制御を行う。また、本実施の形態では、全体制御部101に、実行定義情報111及びルール情報の設定手段を備えるものとし、インスペクション担当者による実行定義情報111,ルール情報の編集,設定等を可能としている。
ソース取得部102は、全体制御部101からの指示に応じて、指定された開発対象格納手段120からソースファイル121を取得し、ソースファイル格納部113に格納する。この場合、ソース取得部102は、取得したソースファイル121の一覧も生成してソースファイル格納部113に格納する。
インスペクション処理部103は、全体制御部101からの指示に応じて、指定されたルール情報112に基づき、ソースファイル格納部113に格納された各ソースファイル毎にインスペクション処理を実行して、処理結果を検出情報格納部114に格納する。
検出情報集計部104は、全体制御部101からの指示に応じて、検出情報格納部114に格納された処理結果を集計し、集計結果格納部115に格納する。
集計結果表示部105は、全体制御部101からの指示に応じて、集計結果格納部115から集計結果情報を取得して、コーディング規準遵守状況レポート130を出力する。
以上の構成により、本実施の形態に係るコーディング規準遵守監視システム100では、インスペクション担当者により各プロジェクト毎に予め作成,指定された実行定義情報111,ルール情報112に基づき、定期的にインスペクション処理を実行するとともに、インスペクション処理の結果を集計して、各プロジェクト毎にコーディング規準遵守状況レポート130を生成する。
【0009】
以上のように構成されたコーディング規準遵守監視システム100の行うコーディング規準遵守監視処理の概要について説明する。
図2は、コーディング規準遵守監視処理の概要を示すフローチャートである。
まず、全体制御部101は、実行定義情報において各プロジェクト毎に定義された実行頻度に基づいてスケジューリングを行い(ステップS201)、各プロジェクト毎の指定時刻に、各処理部102〜105を起動する(ステップS202)。
ソース取得部102は、全体制御部101からの指示に応じて、開発対象格納手段120(実行定義情報に含まれるソースファイルの格納場所)からソースファイル121を取得して、ソースファイル格納部113に格納する(ステップ203)。この場合、実行定義情報におけるソース位置には、ネットワークパス等により示されるソースファイル121の格納場所の他、必要に応じて、FTP(File Transfer Protocol)やHTTP(Hypertext Transfer Protocol)などのソースのコピーのためのプロトコルや、ソースファイル又は格納場所へのログインのためのID,パスワード等が含まれ、それらの情報に基づきソースファイルにアクセスして、コピーを行う。
インスペクション処理部103は、全体制御部101からの指示に応じて、実行定義情報に含まれるルール識別情報に基づき、ルール情報に定義された適用ルールを参照して、ソースファイル格納部に格納されたソースファイル121についてインスペクション処理を行い、各ルールに違反する箇所の検出結果を検出情報格納部114に格納する(ステップ204)。
検出情報集計部104は、全体制御部101からの指示に応じて、各プロジェクト毎に検出情報格納部114に格納された検出結果を集計して、集計結果を集計結果格納部115に格納する(ステップ205)。この場合、検出結果の集計としては、例えば、ソースファイル121毎の検出件数,ルール毎の検出件数等について行う。
集計結果表示部105は、全体制御部101からの指示に応じて、各プロジェクト毎に集計結果情報格納部115に格納された集計結果に基づき、コーディング規準遵守状況レポート130の生成を行う(ステップ206)。
以上のように、指定時刻毎にステップ202〜206の処理を定期的に繰返し行い、ルール違反検出情報を集計した結果にコーディング規準遵守状況レポートを生成する。
【0010】
以下、本実施の形態に係るコーディング規準遵守状況監視システム100の詳細について説明する。
図3は、コーディング規準遵守監視処理に用いられる実行定義情報111のデータ構造の一例を示す図である。
実行定義情報111は、監視対象となるプロジェクトの一覧301と、各プロジェクトに関連付けて実行項目302毎の定義内容303を有する。
実行項目302としては、実行頻度311,適用ルール312,ソース位置313が含まれている。
実行頻度311は、インスペクション処理を行う日時,頻度を示す情報であり、例えば、「毎週土曜日,18時」のように定義されている。なお、実行頻度についてはソースファイルの修正履歴等をリアルタイムに監視するような場合には、例えば、10分毎のような設定も可能である。
適用ルール312は、予め定義されたルールの中から各プロジェクトについて適用するルールを設定したものである。
ソース位置313は、各プロジェクト毎にソースファイル121を格納する場所を示しており、ソースファイル121の格納場所を示すネットワークパスの他、必要に応じて、プロトコル,ログインID,パスワード等が含まれる。
【0011】
図4は、ルール情報112のデータ構造の一例を示す図である。
ルール情報112は、インスペクション担当者又はプロジェクト管理者により任意に定義されたコーディング規準を示すものであり、各ルールを一意に識別するためのルール名401と、カテゴリ402と、チェック内容403と、重要度404とを有する。
【0012】
図5は、検出情報格納部に格納される検出情報のデータ構造の一例を示す図である。
検出情報500は、ルール情報に違反する箇所が検出されたソースファイルを示すソースファイル名501と、違反箇所を示すソースファイル中の行番号502と、違反したルールを示す違反ルール名503とが含まれる。
【0013】
図6は、集計結果情報格納部を構成するソース集計結果情報を示す図であり、図7はルール集計結果情報を示す図である。
ソース集計結果情報600は、集計対象となるソースファイルを一意に識別するためのソースファイル名601と、当該ソースファイル中に検出された違反についての各重要度毎の件数602〜605とが格納されている。
ルール集計結果情報700は、集計対象となるルールを一意に識別するためのルール名701と、当該ルールに設定されている重要度702と、チェック対象となったプロジェクトにおける検出件数703とが格納されている。
【0014】
以上のように集計結果情報格納部に格納された各情報についての集計処理の詳細を説明する。
図8は、検出結果集計部104の行う集計処理手順を示すフローチャートである。
検出情報集計部104は、ソースファイル格納部113に格納されているソースファイルの一覧を取得し(ステップ801)、集計結果格納部115に、集計対象となるソースファイル名を設定するとともに(ステップ802)、ソース集計結果情報600における各重要度毎の件数を初期設定(「0」に設定)する(ステップ803)。
一方、ルール情報に含まれるルールの中から、全体制御部101により指定された適用ルールの一覧を取得し(ステップ804)、集計結果格納部115に、集計対象となるルール名を設定するとともに(ステップ805)、ルール集計結果情報700における件数を初期設定(「0」に設定)する(ステップ806)。
検出情報集計部は、検出情報格納部に格納されている各レコードを順に取得する(ステップ807)。
取得したレコードに含まれるソースファイル名について、ソース集計結果情報600から検索するとともに(ステップ808)、レコードに含まれるルール名に基づきルール定義情報から重要度を取得して(ステップ809)、ソース集計結果情報600から検索したソースファイル名のレコードにおいて、ルール情報112から取得した重要度に該当するカラムの値に「1」を加えて更新する(ステップ810)。
また、レコードに含まれるルール名について、ルール集計結果情報700から検索して(ステップ811)、検索したルール名の重要度カラムに、ルール情報112から取得した重要度を格納するとともに(ステップ812)、件数カラムに「1」を加えて更新する(ステップ813)。
ステップ808〜813の処理を全てのレコードについて繰返し実行することにより(ステップ814)、ソース集計結果情報600及びルール集計結果情報700を生成する。
【0015】
次に、集計結果情報格納部115に格納されたソース集計結果情報600及びルール集計結果情報700に基づき、集計結果表示部105が作成するコーディング規準遵守状況レポート130の具体例について図9〜12に基づき説明する。
図9は、コーディング規準遵守状況レポート130の一部を構成するソース状況確認表の一例を示す図である。
ソース状況確認表900は、違反が検出されたソースファイルを一意に識別するためのソースファイル名901と、当該ソースファイル中に検出された重要度毎の件数902〜905と、最重要から通知までの重要度毎の違反件数を特定の計算式によって数値化した合計値906、合計値906の数値に基づいて評価しアイコン化した評価907により構成されている。
ソースファイル名901は、例えば、これをクリックすることにより、当該ソースファイルに関する詳細情報表示画面に表示が変わるようにしても良い。
件数902〜905は、例えば、集計結果表示部の設定により、その表示項目を取捨選択及び順序を変更できるようにしてもよい。
合計値906を算出するための計算式は、例えば、件数902〜905の単純合計にしたり、重要度毎に重み付けをした合計にしたり、いくつかの方法を用意しておき、設定により変更できるようにしても良い。
評価907を表示するための処理方式は、例えば、合計値806の値の範囲により、表示を変えても良い。なお、本例では、最重要のルール違反が1件でもある場合には、評価を星1つとしている。
【0016】
図10は、図9に示すソース状況確認表において指定されたソースファイルについて表示する詳細確認表の一例を示す図である。
ソース状況詳細確認表1000は、表示対象ソースファイル名1001、検出されたルールの一覧表1010、ソースファイル表示部1020により構成されている。
一覧表1010は、さらに、検出されたルール名1011、当該ルールごとの状況を確認するレポートへのリンク1012、当該ルールの重要度1013、ルール違反の内容を示すメッセージ1014、当該ルールの違反が検出されたソースファイル中の行番号1015により構成されている。
ルール名1011は、例えば、これをクリックすることにより、当該ルールに関する説明や修正方法を記述した別の画面を表示できるようにしても良い。
リンク1012は、例えば、これをクリックすることにより、ルール別の詳細情報表示画面に表示が変わるようにしても良い。
メッセージ1014及び行番号1015は、例えば、これをクリックすることにより、ソースファイル表示部1020における表示部分が、該当する行番号を先頭としたものに表示変更するようにしても良い。
【0017】
図11は、コーディング規準遵守状況レポートの一部を構成するルール状況確認表の一例を示す図である。
ルール状況確認表1100は、重要度ごとのレポート1110,1120,1130,1140により構成されている。例えば、最重要ルールに関するレポート1110は、最重要に分類されるルール数1111、それらに分類されたルールが検出した違反件数1112、重要度毎のルール確認表1113で構成される。
重要度毎のルール確認表1113は、ルール名1114、当該ルールのカテゴリ1115、当該ルールの重要度1116、当該ルールのタイトル1117、当該ルールが検出した違反件数1118により構成されている。
ルール名1114は、例えば、これをクリックすることにより、当該ルールに関する詳細情報表示画面に表示が変わるようにしても良い。
【0018】
図12は、図11に示すルール状況確認表において指定されたルールについて表示する詳細確認表の一例を示す図である。
ルール状況詳細確認表1200は、表示対象ルール名1201、当該ルールの違反が検出されたソースの一覧表1210、ソースファイル表示部1220により構成されている。
一覧表1210は、さらに、検出されたファイル名1211、当該ファイルの状況を確認するレポートへのリンク1212、当該ルールの重要度1213、ルール違反の内容を示すメッセージ1214、当該ルールの違反が検出されたソースファイル中の行番号1215により構成されている。
リンク1212は、例えば、これをクリックすることにより、ソース状況詳細確認表1000等のソース別の詳細情報表示画面に表示が変わるようにしても良い。
メッセージ1214及び行番号1215は、例えば、これをクリックすることにより、ソースファイル表示部1020における表示部分が、該当する行番号を先頭としたものに表示変更するようにしても良い。
【0019】
以上のように、本実施の形態に係るコーディング規準遵守状況監視システム100では、コーディング規準遵守状況のチェック及びチェック結果の集計等を定期的に行い、集計結果を開発者,インスペクション担当者を含むプロジェクト関係者に確認させることが可能となる。
従って、インスペクション担当者にとっては、集計結果を確認することにより、プロジェクト全体のルール違反の傾向や修正状況等を把握することができ、本来の管理作業及びルールの再定義作業等に集中させることが可能となる。
また、開発者にとっては、プロジェクト毎に統一した規準によりチェックされた結果に基づくルール違反検出情報を確認することができるため、チェック結果に基づき、適切な修正を行うことができるとともに、プロジェクト全体におけるルール違反状況,修正状況等を確認しながら各自の作業を進めることが可能となる。特に、ルール違反検出情報に各ルールの重要度を含めることとしたので、修正作業の必要性等を容易に判断させることが可能となる。
また、プロジェクト管理者にとっては、プロジェクト全体におけるルール違反状況,修正状況等を考慮した進捗管理等を行うことが可能となる。
また、集計結果として、ルールの重要度毎に違反件数を表示することとしたので、ルール違反の傾向の把握を容易なものとすることができる。
また、集計結果の表示項目を任意に設定可能としたので、インスペクション担当者又はプロジェクト管理者の管理作業に適した表示形態とすることが可能となる。
また、プロジェクト毎にコーディング規準に含まれるルールを設定可能としたので、プロジェクト毎に異なる規準での管理を行うことが可能となる。
また、各レポートにおいて、ルール違反箇所を表示可能としたので、開発者等に違反箇所及び違反内容を把握させることが容易なものとなる。
【0020】
なお、前記実施の形態では、コーディング規準遵守監視システムを一つの端末で構成した例を示しているが、これに限られるものでは無く、各処理部を複数の端末に備えることとしてもよい。
また、コーディング規準遵守監視処理に必要な各情報格納部のデータ構造等についても、前記実施の形態に示したものに限らず、他の情報を加えることとしても良い。
【図面の簡単な説明】
【0021】
【図1】本発明の一実施の形態に係るコーディング規準遵守監視システムの概略構成を示すブロック図である。
【図2】本発明の一実施の形態に係るコーディング規準遵守監視システムの行う処理の概要を示すフローチャートである。
【図3】コーディング規準遵守監視処理に用いられる実行定義情報のデータ構造の一例を示す図である。
【図4】コーディング規準遵守監視処理に用いられるルール情報のデータ構造の一例を示す図である。
【図5】検出情報格納部のデータ構造の一例を示す図である。
【図6】ソース集計結果情報のデータ構造の一例を示す図である。
【図7】ルール集計結果情報のデータ構造の一例を示す図である。
【図8】検出情報集計部の行う集計処理手順を示すフローチャートである。
【図9】集計結果表示部の生成するコーディング規準遵守状況レポートの一例としてのソース状況確認表を示す図である。
【図10】集計結果表示部の生成するコーディング規準遵守状況レポートの一例としてのソース状況詳細確認表を示す図である。
【図11】集計結果表示部の生成するコーディング規準遵守状況レポートの一例としてのルール状況確認表を示す図である。
【図12】集計結果表示部の生成するコーディング規準遵守状況レポートの一例としてのルール状況詳細確認表を示す図である。
【符号の説明】
【0022】
100 コーディング規準遵守状況監視システム、101 全体制御部、102 ソース取得部、103 インスペクション処理部、104 検出情報集計部、105 集計結果表示部、111 実行定義情報、112 ルール情報、113 ソースファイル格納部、114 検出情報格納部、115 集計結果格納部、130 コーディング規準遵守状況レポート。
【技術分野】
【0001】
本発明は、ソフトウエア開発プロジェクトにおいて、開発者により作成されたソースコードについて、予め定義されたコーディング規準に違反するか否かを監視するシステムに関する。
【背景技術】
【0002】
一般に、ソフトウェア開発プロジェクトでは、開発対象となるシステムを構成するソースコードに対し、予めコーディング規準が設定されており、各開発者はこれに従いコーディングを行う。この場合、実際に各ルールに従ってコーディングされているか否かを各開発者自身がチェックするとともに、プロジェクト全体のソースコードについて各ルールが遵守されているかについて、インスペクション担当者がチェック作業を行っていた。
この場合、ソースコードのチェック作業は、コーディング規準に基づき、ソースコードを目視することにより行われていたため、チェック作業における工数が多大なものとなっていた。
そこで、チェック作業における工数削減のためのツールとして、従来より、予め定義されたコーディング規準に基づき、開発者によりコーディングされたソースコードについてチェックを行う手段を備えた診断装置についての構成が公知となっている(例えば、特許文献1参照。)。
【特許文献1】特開平06−028165号公報
【0003】
このような診断装置では、通常、コーディング規準として用いる数百のルールが予め用意されており、チェック作業を行う開発者又はインスペクション担当者により選択されたルールに基づきチェック処理を行っていた。
チェック処理としては、選択された各ルールに基づきソースコードを全て走査し、ルールに違反する箇所を検出すると、指摘項目としてファイル名、行、ルール名、指摘事項などを開発者用端末又はインスペクション担当者用端末に表示させていた。
インスペクション工程では、インスペクション担当者が診断装置により指摘された箇所を確認し、必要があれば開発者に修正を指示し、開発者により確実に修正が行われたか否かを再度診断装置を用いること等によって確認していた。
一方、開発者自身のチェックの場合、診断装置により指摘された箇所を任意に修正していた。
インスペクション工程では、通常、このようなチェックと修正のサイクルを何度か繰り返すことにより、コーディング規準の徹底を図っており、前記特許文献1記載の診断装置等を用いることにより、チェック作業に関する工数削減を図っていた。
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかし、前記特許文献1は、開発者又はインスペクション担当者が個々にチェック作業を行うことを想定したものであるため、コーディング規準に含まれるルール等は任意に指定可能なものであり、また、開発者によるチェック処理のタイミングも任意なものとなっていた。従って、各開発者毎のチェック処理では、適用するルールに過不足が生じる等、開発者毎に異なる恐れがあり、また、必要なタイミングでのチェック処理が行われない可能性があった。また、他の開発者のルール違反状況等、開発プロジェクト全体の状況を把握させることができないため、適切なタイミングでの修正作業が行われない可能性があった。
この場合、インスペクション担当者により、コーディング規準に含めるルールの指定や、チェック処理の有無の確認を行う必要があるとともに、各開発者によるチェック結果の集計作業等を行う必要があるため、インスペクション担当者の負担が過大なものとなり、本来のチェック作業等に支障を来たす可能性があった。
一方、インスペクション担当者が全てのソースコードについてチェック作業を行う場合には、適用されるルールやチェック処理のタイミング等は容易に管理できるものの、膨大な量のソースコードについて処理が作業が必要となり、また、インスペクション担当者からの指示がなければ開発者がソースコードを修正できないという問題があった。
特に、近時のソフトウエア開発プロジェクトでは、参考文献として挙げた従来技術が示されたころには想定し得ない、Webシステム等のような大規模システムを短期間に開発する必要を要求され、ソースコードのステップ数や開発者数が膨大なものとなる一方、チェック作業については可能な限り短時間で行うことが求められており、インスペクション担当者の負担は増加する傾向にあった。
また、プロジェクト管理上、各プロジェクト内のルール違反の件数及び傾向等を考慮して、プロジェクトの進捗状況等を管理することが必要となるが、インスペクション担当者の集計作業結果の報告を待つか、各開発者の状況を個々に確認することが必要となるため、お互いの作業効率が落ちるという問題があった。
さらに、インスペクション担当者は、プロジェクト全体におけるルール違反検出情報の集計結果(ルール違反の傾向等)に基づき、より適切なルールを定義する場合があるが、個々のチェック結果の集計を行い、さらにその結果に基づき、ルールの再定義の必要性等を判断することは過大な負担となっていた。
【0005】
本発明は前記課題を解決するためのものであり、多数の開発者によりコーディングされたソースコードについて、コーディング規準遵守状況のチェック及びチェック結果の集計等を定期的に行い、集計結果をプロジェクト関係者に確認可能なものとすることにより、ソフトウエア開発プロジェクト全体の管理作業を容易なものとするとともに、開発者による迅速な修正作業を可能とし、さらに、コーディング規準の再定義を行うための資料の提示を可能とするコーディング規準遵守状況監視システムを提供することを目的とする。
【課題を解決するための手段】
【0006】
前記課題を解決するため、本発明は、ソフトウェア開発プロジェクトの開発対象を構成するソースコードが、コーディング規準に基づいてコーディングされているか否かを監視するシステムであって、前記ソースコードを収集してインスペクション処理手段に提供するソース取得手段と、提供された前記ソースコードの中から前記コーディング規準に違反するソースコードを検出するインスペクション処理手段と、前記インスペクション処理手段から得られた検出結果を集計する検出情報集計手段と、前記集計結果を表示する集計結果表示手段と、予め設定された実行頻度情報に基づいて、前記ソースコード取得手段と、前記インスペクション処理手段と、前記検出情報集計手段と、前記集計結果表示手段とのそれぞれの実行を制御する全体制御手段とを備えることを特徴とする。
また、前記集計結果表示手段は、予め定義されたコーディング規準に含まれるルールの一覧を生成し、各ルールについて、違反するソースコードの件数を表示する手段を備えることを特徴とする。
また、前記集計結果表示手段は、一覧表示の表示項目を取捨選択し、表示項目の表示順序を変更する手段を備えることを特徴とする。
また、前記コーディング規準遵守状況監視システムは、前記ソフトウエア開発プロジェクト毎にコーディング規準に含まれるルールを取捨選択して設定し、実行する手段を備えることを特徴とする。
【発明の効果】
【0007】
以上の構成により、本発明では、コーディング規準遵守状況のチェック及びチェック結果の集計等を定期的に行い、集計結果を開発者,インスペクション担当者を含むプロジェクト関係者に確認させることが可能となる。
従って、インスペクション担当者にとっては、集計結果を確認することにより、プロジェクト全体のルール違反の傾向や修正状況等を把握することができ、本来の管理作業及びルールの再定義作業等に集中させることが可能となる。
また、開発者にとっては、プロジェクト毎に統一した規準により、チェックされた結果に基づくルール違反検出情報を確認することができるため、チェック結果に基づき、適切な修正を行うことができるとともに、プロジェクト全体におけるルール違反の状況,修正状況等を確認しながら各自の作業を進めることが可能となる。
また、プロジェクト管理者にとっては、プロジェクト全体におけるルール違反の状況,修正状況等を考慮した進捗管理等を行うことが可能となる。
また、集計結果として、各コーディング規準について、違反件数を表示とすることにより、ルール違反の傾向の把握を容易なものとすることができる。
また、集計結果の表示項目を任意に設定可能としたので、インスペクション担当者又はプロジェクト管理者の管理作業に適した表示形態とすることが可能となる。
また、プロジェクト毎にコーディング規準に含まれるルールを設定可能としたので、プロジェクト毎に異なる規準での管理を行うことが可能となる。
【発明を実施するための最良の形態】
【0008】
以下、本発明の一実施の形態に係るコーディング規準遵守監視システムについて、図面に基づき説明する。
図1は、本実施の形態に係るコーディング規準遵守監視システムの概略構成を示すブロック図である。
コーディング規準遵守監視システム100は、全体制御部101と、ソース取得部102と、インスペクション処理部103と、検出情報集計部104と、集計結果表示部105の各処理部から構成されている。
また、コーディング規準遵守監視処理に必要な情報として、実行定義情報111とルール情報112とが予め定義されており、また、コーディング規準遵守監視処理に必要な情報を格納するソースファイル格納部113と、検出情報格納部114と、集計結果格納部115とを備える。
全体制御部101は、インスペクション担当者により指定された実行定義情報111を読込み、実行定義情報111に定義されている日時,頻度等の設定情報に基づき、ソース取得部102,インスペクション処理部103,検出情報集計部104,集計結果表示部105の起動,実行指示等の制御を行う。また、本実施の形態では、全体制御部101に、実行定義情報111及びルール情報の設定手段を備えるものとし、インスペクション担当者による実行定義情報111,ルール情報の編集,設定等を可能としている。
ソース取得部102は、全体制御部101からの指示に応じて、指定された開発対象格納手段120からソースファイル121を取得し、ソースファイル格納部113に格納する。この場合、ソース取得部102は、取得したソースファイル121の一覧も生成してソースファイル格納部113に格納する。
インスペクション処理部103は、全体制御部101からの指示に応じて、指定されたルール情報112に基づき、ソースファイル格納部113に格納された各ソースファイル毎にインスペクション処理を実行して、処理結果を検出情報格納部114に格納する。
検出情報集計部104は、全体制御部101からの指示に応じて、検出情報格納部114に格納された処理結果を集計し、集計結果格納部115に格納する。
集計結果表示部105は、全体制御部101からの指示に応じて、集計結果格納部115から集計結果情報を取得して、コーディング規準遵守状況レポート130を出力する。
以上の構成により、本実施の形態に係るコーディング規準遵守監視システム100では、インスペクション担当者により各プロジェクト毎に予め作成,指定された実行定義情報111,ルール情報112に基づき、定期的にインスペクション処理を実行するとともに、インスペクション処理の結果を集計して、各プロジェクト毎にコーディング規準遵守状況レポート130を生成する。
【0009】
以上のように構成されたコーディング規準遵守監視システム100の行うコーディング規準遵守監視処理の概要について説明する。
図2は、コーディング規準遵守監視処理の概要を示すフローチャートである。
まず、全体制御部101は、実行定義情報において各プロジェクト毎に定義された実行頻度に基づいてスケジューリングを行い(ステップS201)、各プロジェクト毎の指定時刻に、各処理部102〜105を起動する(ステップS202)。
ソース取得部102は、全体制御部101からの指示に応じて、開発対象格納手段120(実行定義情報に含まれるソースファイルの格納場所)からソースファイル121を取得して、ソースファイル格納部113に格納する(ステップ203)。この場合、実行定義情報におけるソース位置には、ネットワークパス等により示されるソースファイル121の格納場所の他、必要に応じて、FTP(File Transfer Protocol)やHTTP(Hypertext Transfer Protocol)などのソースのコピーのためのプロトコルや、ソースファイル又は格納場所へのログインのためのID,パスワード等が含まれ、それらの情報に基づきソースファイルにアクセスして、コピーを行う。
インスペクション処理部103は、全体制御部101からの指示に応じて、実行定義情報に含まれるルール識別情報に基づき、ルール情報に定義された適用ルールを参照して、ソースファイル格納部に格納されたソースファイル121についてインスペクション処理を行い、各ルールに違反する箇所の検出結果を検出情報格納部114に格納する(ステップ204)。
検出情報集計部104は、全体制御部101からの指示に応じて、各プロジェクト毎に検出情報格納部114に格納された検出結果を集計して、集計結果を集計結果格納部115に格納する(ステップ205)。この場合、検出結果の集計としては、例えば、ソースファイル121毎の検出件数,ルール毎の検出件数等について行う。
集計結果表示部105は、全体制御部101からの指示に応じて、各プロジェクト毎に集計結果情報格納部115に格納された集計結果に基づき、コーディング規準遵守状況レポート130の生成を行う(ステップ206)。
以上のように、指定時刻毎にステップ202〜206の処理を定期的に繰返し行い、ルール違反検出情報を集計した結果にコーディング規準遵守状況レポートを生成する。
【0010】
以下、本実施の形態に係るコーディング規準遵守状況監視システム100の詳細について説明する。
図3は、コーディング規準遵守監視処理に用いられる実行定義情報111のデータ構造の一例を示す図である。
実行定義情報111は、監視対象となるプロジェクトの一覧301と、各プロジェクトに関連付けて実行項目302毎の定義内容303を有する。
実行項目302としては、実行頻度311,適用ルール312,ソース位置313が含まれている。
実行頻度311は、インスペクション処理を行う日時,頻度を示す情報であり、例えば、「毎週土曜日,18時」のように定義されている。なお、実行頻度についてはソースファイルの修正履歴等をリアルタイムに監視するような場合には、例えば、10分毎のような設定も可能である。
適用ルール312は、予め定義されたルールの中から各プロジェクトについて適用するルールを設定したものである。
ソース位置313は、各プロジェクト毎にソースファイル121を格納する場所を示しており、ソースファイル121の格納場所を示すネットワークパスの他、必要に応じて、プロトコル,ログインID,パスワード等が含まれる。
【0011】
図4は、ルール情報112のデータ構造の一例を示す図である。
ルール情報112は、インスペクション担当者又はプロジェクト管理者により任意に定義されたコーディング規準を示すものであり、各ルールを一意に識別するためのルール名401と、カテゴリ402と、チェック内容403と、重要度404とを有する。
【0012】
図5は、検出情報格納部に格納される検出情報のデータ構造の一例を示す図である。
検出情報500は、ルール情報に違反する箇所が検出されたソースファイルを示すソースファイル名501と、違反箇所を示すソースファイル中の行番号502と、違反したルールを示す違反ルール名503とが含まれる。
【0013】
図6は、集計結果情報格納部を構成するソース集計結果情報を示す図であり、図7はルール集計結果情報を示す図である。
ソース集計結果情報600は、集計対象となるソースファイルを一意に識別するためのソースファイル名601と、当該ソースファイル中に検出された違反についての各重要度毎の件数602〜605とが格納されている。
ルール集計結果情報700は、集計対象となるルールを一意に識別するためのルール名701と、当該ルールに設定されている重要度702と、チェック対象となったプロジェクトにおける検出件数703とが格納されている。
【0014】
以上のように集計結果情報格納部に格納された各情報についての集計処理の詳細を説明する。
図8は、検出結果集計部104の行う集計処理手順を示すフローチャートである。
検出情報集計部104は、ソースファイル格納部113に格納されているソースファイルの一覧を取得し(ステップ801)、集計結果格納部115に、集計対象となるソースファイル名を設定するとともに(ステップ802)、ソース集計結果情報600における各重要度毎の件数を初期設定(「0」に設定)する(ステップ803)。
一方、ルール情報に含まれるルールの中から、全体制御部101により指定された適用ルールの一覧を取得し(ステップ804)、集計結果格納部115に、集計対象となるルール名を設定するとともに(ステップ805)、ルール集計結果情報700における件数を初期設定(「0」に設定)する(ステップ806)。
検出情報集計部は、検出情報格納部に格納されている各レコードを順に取得する(ステップ807)。
取得したレコードに含まれるソースファイル名について、ソース集計結果情報600から検索するとともに(ステップ808)、レコードに含まれるルール名に基づきルール定義情報から重要度を取得して(ステップ809)、ソース集計結果情報600から検索したソースファイル名のレコードにおいて、ルール情報112から取得した重要度に該当するカラムの値に「1」を加えて更新する(ステップ810)。
また、レコードに含まれるルール名について、ルール集計結果情報700から検索して(ステップ811)、検索したルール名の重要度カラムに、ルール情報112から取得した重要度を格納するとともに(ステップ812)、件数カラムに「1」を加えて更新する(ステップ813)。
ステップ808〜813の処理を全てのレコードについて繰返し実行することにより(ステップ814)、ソース集計結果情報600及びルール集計結果情報700を生成する。
【0015】
次に、集計結果情報格納部115に格納されたソース集計結果情報600及びルール集計結果情報700に基づき、集計結果表示部105が作成するコーディング規準遵守状況レポート130の具体例について図9〜12に基づき説明する。
図9は、コーディング規準遵守状況レポート130の一部を構成するソース状況確認表の一例を示す図である。
ソース状況確認表900は、違反が検出されたソースファイルを一意に識別するためのソースファイル名901と、当該ソースファイル中に検出された重要度毎の件数902〜905と、最重要から通知までの重要度毎の違反件数を特定の計算式によって数値化した合計値906、合計値906の数値に基づいて評価しアイコン化した評価907により構成されている。
ソースファイル名901は、例えば、これをクリックすることにより、当該ソースファイルに関する詳細情報表示画面に表示が変わるようにしても良い。
件数902〜905は、例えば、集計結果表示部の設定により、その表示項目を取捨選択及び順序を変更できるようにしてもよい。
合計値906を算出するための計算式は、例えば、件数902〜905の単純合計にしたり、重要度毎に重み付けをした合計にしたり、いくつかの方法を用意しておき、設定により変更できるようにしても良い。
評価907を表示するための処理方式は、例えば、合計値806の値の範囲により、表示を変えても良い。なお、本例では、最重要のルール違反が1件でもある場合には、評価を星1つとしている。
【0016】
図10は、図9に示すソース状況確認表において指定されたソースファイルについて表示する詳細確認表の一例を示す図である。
ソース状況詳細確認表1000は、表示対象ソースファイル名1001、検出されたルールの一覧表1010、ソースファイル表示部1020により構成されている。
一覧表1010は、さらに、検出されたルール名1011、当該ルールごとの状況を確認するレポートへのリンク1012、当該ルールの重要度1013、ルール違反の内容を示すメッセージ1014、当該ルールの違反が検出されたソースファイル中の行番号1015により構成されている。
ルール名1011は、例えば、これをクリックすることにより、当該ルールに関する説明や修正方法を記述した別の画面を表示できるようにしても良い。
リンク1012は、例えば、これをクリックすることにより、ルール別の詳細情報表示画面に表示が変わるようにしても良い。
メッセージ1014及び行番号1015は、例えば、これをクリックすることにより、ソースファイル表示部1020における表示部分が、該当する行番号を先頭としたものに表示変更するようにしても良い。
【0017】
図11は、コーディング規準遵守状況レポートの一部を構成するルール状況確認表の一例を示す図である。
ルール状況確認表1100は、重要度ごとのレポート1110,1120,1130,1140により構成されている。例えば、最重要ルールに関するレポート1110は、最重要に分類されるルール数1111、それらに分類されたルールが検出した違反件数1112、重要度毎のルール確認表1113で構成される。
重要度毎のルール確認表1113は、ルール名1114、当該ルールのカテゴリ1115、当該ルールの重要度1116、当該ルールのタイトル1117、当該ルールが検出した違反件数1118により構成されている。
ルール名1114は、例えば、これをクリックすることにより、当該ルールに関する詳細情報表示画面に表示が変わるようにしても良い。
【0018】
図12は、図11に示すルール状況確認表において指定されたルールについて表示する詳細確認表の一例を示す図である。
ルール状況詳細確認表1200は、表示対象ルール名1201、当該ルールの違反が検出されたソースの一覧表1210、ソースファイル表示部1220により構成されている。
一覧表1210は、さらに、検出されたファイル名1211、当該ファイルの状況を確認するレポートへのリンク1212、当該ルールの重要度1213、ルール違反の内容を示すメッセージ1214、当該ルールの違反が検出されたソースファイル中の行番号1215により構成されている。
リンク1212は、例えば、これをクリックすることにより、ソース状況詳細確認表1000等のソース別の詳細情報表示画面に表示が変わるようにしても良い。
メッセージ1214及び行番号1215は、例えば、これをクリックすることにより、ソースファイル表示部1020における表示部分が、該当する行番号を先頭としたものに表示変更するようにしても良い。
【0019】
以上のように、本実施の形態に係るコーディング規準遵守状況監視システム100では、コーディング規準遵守状況のチェック及びチェック結果の集計等を定期的に行い、集計結果を開発者,インスペクション担当者を含むプロジェクト関係者に確認させることが可能となる。
従って、インスペクション担当者にとっては、集計結果を確認することにより、プロジェクト全体のルール違反の傾向や修正状況等を把握することができ、本来の管理作業及びルールの再定義作業等に集中させることが可能となる。
また、開発者にとっては、プロジェクト毎に統一した規準によりチェックされた結果に基づくルール違反検出情報を確認することができるため、チェック結果に基づき、適切な修正を行うことができるとともに、プロジェクト全体におけるルール違反状況,修正状況等を確認しながら各自の作業を進めることが可能となる。特に、ルール違反検出情報に各ルールの重要度を含めることとしたので、修正作業の必要性等を容易に判断させることが可能となる。
また、プロジェクト管理者にとっては、プロジェクト全体におけるルール違反状況,修正状況等を考慮した進捗管理等を行うことが可能となる。
また、集計結果として、ルールの重要度毎に違反件数を表示することとしたので、ルール違反の傾向の把握を容易なものとすることができる。
また、集計結果の表示項目を任意に設定可能としたので、インスペクション担当者又はプロジェクト管理者の管理作業に適した表示形態とすることが可能となる。
また、プロジェクト毎にコーディング規準に含まれるルールを設定可能としたので、プロジェクト毎に異なる規準での管理を行うことが可能となる。
また、各レポートにおいて、ルール違反箇所を表示可能としたので、開発者等に違反箇所及び違反内容を把握させることが容易なものとなる。
【0020】
なお、前記実施の形態では、コーディング規準遵守監視システムを一つの端末で構成した例を示しているが、これに限られるものでは無く、各処理部を複数の端末に備えることとしてもよい。
また、コーディング規準遵守監視処理に必要な各情報格納部のデータ構造等についても、前記実施の形態に示したものに限らず、他の情報を加えることとしても良い。
【図面の簡単な説明】
【0021】
【図1】本発明の一実施の形態に係るコーディング規準遵守監視システムの概略構成を示すブロック図である。
【図2】本発明の一実施の形態に係るコーディング規準遵守監視システムの行う処理の概要を示すフローチャートである。
【図3】コーディング規準遵守監視処理に用いられる実行定義情報のデータ構造の一例を示す図である。
【図4】コーディング規準遵守監視処理に用いられるルール情報のデータ構造の一例を示す図である。
【図5】検出情報格納部のデータ構造の一例を示す図である。
【図6】ソース集計結果情報のデータ構造の一例を示す図である。
【図7】ルール集計結果情報のデータ構造の一例を示す図である。
【図8】検出情報集計部の行う集計処理手順を示すフローチャートである。
【図9】集計結果表示部の生成するコーディング規準遵守状況レポートの一例としてのソース状況確認表を示す図である。
【図10】集計結果表示部の生成するコーディング規準遵守状況レポートの一例としてのソース状況詳細確認表を示す図である。
【図11】集計結果表示部の生成するコーディング規準遵守状況レポートの一例としてのルール状況確認表を示す図である。
【図12】集計結果表示部の生成するコーディング規準遵守状況レポートの一例としてのルール状況詳細確認表を示す図である。
【符号の説明】
【0022】
100 コーディング規準遵守状況監視システム、101 全体制御部、102 ソース取得部、103 インスペクション処理部、104 検出情報集計部、105 集計結果表示部、111 実行定義情報、112 ルール情報、113 ソースファイル格納部、114 検出情報格納部、115 集計結果格納部、130 コーディング規準遵守状況レポート。
【特許請求の範囲】
【請求項1】
ソフトウェア開発プロジェクトの開発対象を構成するソースコードが、コーディング規準に基づいてコーディングされているか否かを監視するシステムであって、
前記ソースコードを収集してインスペクション処理手段に提供するソース取得手段と、
提供された前記ソースコードの中から前記コーディング規準に違反するソースコードを検出するインスペクション処理手段と、
前記インスペクション処理手段から得られた検出結果を集計する検出情報集計手段と、
前記集計結果を表示する集計結果表示手段と、
予め設定された実行頻度情報に基づいて、前記ソースコード取得手段と、前記インスペクション処理手段と、前記検出情報集計手段と、前記集計結果表示手段とのそれぞれの実行を制御する全体制御手段と
を備えることを特徴とするコーディング規準遵守状況監視システム。
【請求項2】
前記集計結果表示手段は、
予め定義されたコーディング規準に含まれるルールの一覧を生成し、各ルールについて、違反するソースコードの件数を表示する手段を備えることを特徴とする請求項1に記載するコーディング規準遵守状況監視システム。
【請求項3】
前記集計結果表示手段は、
一覧表示の表示項目を取捨選択し、表示項目の表示順序を変更する手段を備えることを特徴とする請求項1又は2のいずれかに記載するコーディング規準遵守状況監視システム。
【請求項4】
前記コーディング規準遵守状況監視システムは、
前記ソフトウエア開発プロジェクト毎にコーディング規準に含まれるルールを取捨選択して設定し、実行する手段を備えることを特徴とする請求項1〜3のいずれかに記載するコーディング規準遵守状況監視システム。
【請求項1】
ソフトウェア開発プロジェクトの開発対象を構成するソースコードが、コーディング規準に基づいてコーディングされているか否かを監視するシステムであって、
前記ソースコードを収集してインスペクション処理手段に提供するソース取得手段と、
提供された前記ソースコードの中から前記コーディング規準に違反するソースコードを検出するインスペクション処理手段と、
前記インスペクション処理手段から得られた検出結果を集計する検出情報集計手段と、
前記集計結果を表示する集計結果表示手段と、
予め設定された実行頻度情報に基づいて、前記ソースコード取得手段と、前記インスペクション処理手段と、前記検出情報集計手段と、前記集計結果表示手段とのそれぞれの実行を制御する全体制御手段と
を備えることを特徴とするコーディング規準遵守状況監視システム。
【請求項2】
前記集計結果表示手段は、
予め定義されたコーディング規準に含まれるルールの一覧を生成し、各ルールについて、違反するソースコードの件数を表示する手段を備えることを特徴とする請求項1に記載するコーディング規準遵守状況監視システム。
【請求項3】
前記集計結果表示手段は、
一覧表示の表示項目を取捨選択し、表示項目の表示順序を変更する手段を備えることを特徴とする請求項1又は2のいずれかに記載するコーディング規準遵守状況監視システム。
【請求項4】
前記コーディング規準遵守状況監視システムは、
前記ソフトウエア開発プロジェクト毎にコーディング規準に含まれるルールを取捨選択して設定し、実行する手段を備えることを特徴とする請求項1〜3のいずれかに記載するコーディング規準遵守状況監視システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【公開番号】特開2006−18735(P2006−18735A)
【公開日】平成18年1月19日(2006.1.19)
【国際特許分類】
【出願番号】特願2004−197988(P2004−197988)
【出願日】平成16年7月5日(2004.7.5)
【出願人】(000233055)日立ソフトウエアエンジニアリング株式会社 (1,610)
【Fターム(参考)】
【公開日】平成18年1月19日(2006.1.19)
【国際特許分類】
【出願日】平成16年7月5日(2004.7.5)
【出願人】(000233055)日立ソフトウエアエンジニアリング株式会社 (1,610)
【Fターム(参考)】
[ Back to top ]