JP2006059276A - Source code evaluating system - Google Patents

Source code evaluating system Download PDF

Info

Publication number
JP2006059276A
JP2006059276A JP2004242837A JP2004242837A JP2006059276A JP 2006059276 A JP2006059276 A JP 2006059276A JP 2004242837 A JP2004242837 A JP 2004242837A JP 2004242837 A JP2004242837 A JP 2004242837A JP 2006059276 A JP2006059276 A JP 2006059276A
Authority
JP
Japan
Prior art keywords
source code
evaluation
quality
inspection
engineer
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.)
Pending
Application number
JP2004242837A
Other languages
Japanese (ja)
Inventor
Takashi Tamori
崇史 田森
Hiroshi Suganuma
弘 菅沼
Kenji Arai
健司 新居
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.)
Hitachi Software Engineering Co Ltd
Original Assignee
Hitachi Software Engineering Co Ltd
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 Hitachi Software Engineering Co Ltd filed Critical Hitachi Software Engineering Co Ltd
Priority to JP2004242837A priority Critical patent/JP2006059276A/en
Publication of JP2006059276A publication Critical patent/JP2006059276A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a source code evaluating system capable of objectively evaluating a coding capability of a software engineer or a company to which the engineer belongs. <P>SOLUTION: The source code evaluating system 100 has: a source code management part 101 for managing information on an engineer unitarily who has coded a source code 103; a quality inspecting part 104 for inspecting the source code 103; a data storage part 111 for storing a variety of information necessary for inspection or the like; and a quality evaluating part 107 for analyzing the result of inspection and the stored data to output an evaluation report 110 which has evaluated a quality state of the source code 103 and the capability of the engineer. The quality evaluating part 107 performs inspection and evaluates the source code and the capability by the source code 103 unit, the engineer unit, the company unit, and the project 102 unit. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、ソフトウェアにおいて、技術者のコーディング能力を評価するソースコード評価システムに関する。   The present invention relates to a source code evaluation system for evaluating an engineer's coding ability in software.

コンピュータソフトウェア(以下単に「ソフトウェア」と称する)の開発において、複数のプログラム開発を行う技術者が携わる開発を予定通り、履行するために各技術者のコーディング能力を一定水準以上に維持し、かつ向上させる必要があり、そのため各技術者のコーディング能力を随時評価する必要がある。   In the development of computer software (hereinafter simply referred to as “software”), maintain and improve the coding ability of each engineer to a certain level or higher in order to carry out the development that engineers who develop multiple programs are engaged as planned. Therefore, it is necessary to evaluate the coding ability of each engineer at any time.

なお、ここでいうコーディングとは、仕様書やフローチャートなど抽象的な設計文書の内容を、プログラミング言語を用いて具体的なソースコードに翻訳生成する作業を示す。   Note that coding here refers to the work of translating and generating the contents of abstract design documents such as specifications and flowcharts into specific source code using a programming language.

ソフトウェア開発を行う技術者のコーディング能力を把握する場合、情報処理試験や各種ベンダー試験の資格の有無や、過去に携わった開発業務の内容や年数など開発履歴を参考にする方法が知られているが、資格の有無は技術者のコーディング実務の実力、経験をそのまま示すものではなく、資格があるからといってソースコードを作成できるとは限らない。また、開発履歴は技術者の開発業務開始前の能力しか把握できない。   When grasping the coding ability of a software development engineer, there is a known method of referring to development history such as information processing test and vendor test qualifications, development work contents and years involved in the past. However, the presence or absence of qualifications does not directly indicate the ability and experience of engineers in coding practice, and just because they are qualified does not necessarily mean that source code can be created. Moreover, the development history can only grasp the ability of engineers before starting the development work.

従来知られている技術では開発作業期間中にインスペクションを行って各技術者の能力を把握し、また能力の向上を図る手法がとられている。ここで、インスペクションとはソースコードに不具合がないかをレビュアー等が解析および検討することを指す。   In the conventionally known technology, a technique is used in which inspection is performed during the development work period to grasp the ability of each engineer and to improve the ability. Here, inspection means that a reviewer or the like analyzes and examines whether there is a defect in the source code.

図29は従来実施されているインスペクションの業務フローの説明図である。
ソフトウェアの開発のために組まれたソフトウェア開発プロジェクト102において、プログラマなどソフトウェアの開発に従事する技術者(以下単に「技術者」と称する。)2901は仕様書やフローチャートなど抽象的な設計文書の内容をもとにコーディングを行い、プログラミング言語を用いて記述したソフトウェアの設計図となるソースコードを作成する。このソースコード103は、図30の模式図に示すとおり、プログラミング言語によって作成されたコンピュータに実行させるための命令群である。
FIG. 29 is an explanatory diagram of a work flow of inspection conventionally performed.
In the software development project 102 designed for software development, engineers (such as programmers) 2901 who are engaged in software development (hereinafter simply referred to as “engineers”) 2901 are the contents of abstract design documents such as specifications and flowcharts. Coding based on the above, and creating a source code that will be a blueprint of software written using a programming language. The source code 103 is a group of instructions for causing a computer created by a programming language to execute, as shown in the schematic diagram of FIG.

また、プロジェクトとはソフトウェア開発のための業務全般を示すものであり、開発するソフトウェアの内容や規模や開発に要する期間などを問わないものとする。   In addition, the project indicates the entire business for software development, and the content and scale of the software to be developed, the time required for development, etc. are not limited.

図29に示すとおり、レビュアー2902はこのソースコード103に対してバグの有無や参照ルールが正しいかどうかを判定するインスペクションを行う。このレビュアー2902とは技術者2901の作成したプログラムの解析検討を業務とする熟練技術者専門家であり(通常は各プログラマの上長)、インスペクションは、各ソースコードをプログラミング言語やプロジェクトごとに設けられた規格や基準によって検討行われる。   As shown in FIG. 29, the reviewer 2902 performs inspection on the source code 103 to determine whether there is a bug and whether the reference rule is correct. This reviewer 2902 is a skilled engineer expert who is in charge of analyzing and analyzing programs created by engineers 2901 (usually the superior of each programmer), and inspection provides each source code for each programming language and project. It will be examined in accordance with the established standards and standards.

レビュアー2902はインスペクションの結果を評価し、評価結果をインスペクション結果レポートとしてまとめる。   The reviewer 2902 evaluates the inspection results and summarizes the evaluation results as an inspection result report.

図31にインスペクション結果レポート2904の一例としての模式図を示す。
インスペクション結果レポート2904には「作成者」欄2904Aにレビュアー2902の氏名が、「作成日」欄2904Bにレポート作成日が記載され、「実施内容」欄2904Cにソースコード103の種類やソースファイルの数量などインスペクションの対象や分量を特定する情報が記載される。
FIG. 31 shows a schematic diagram as an example of the inspection result report 2904.
In the inspection result report 2904, the name of the reviewer 2902 is described in the “author” column 2904A, the report creation date is described in the “creation date” column 2904B, and the type of the source code 103 and the quantity of the source file are recorded in the “execution contents” column 2904C. Information that specifies the target and quantity of inspection.

「検出項目一覧」表2904Dには、インスペクションを行った日時を記入する「登録日」列2904aと、コーディングが行われたプロジェクト名を記入する「プロジェクト名」列2904bと、ソースコード103を作成した技術者2901の氏名を記入する「技術者」列2904cと、インスペクションの対象としてのソースファイル名を記入する「ソース名」列2904dと、作成されたソースコード103中から検出された不適当と思われる箇所が存在する行番号を記入する「行番号」列2904eと、不適当と思われる根拠を記載する「見直し観点」列2904fとに該当項目が記入される。また、「エラーの傾向と分析」欄2904Eには、インスペクションの結果の総括および評価としてソースコード103に確認されたエラーの傾向が記入される。   In the “Detection Item List” table 2904D, a “registration date” column 2904a for entering the inspection date and time, a “project name” column 2904b for entering the name of the project in which the coding was performed, and a source code 103 were created. “Engineer” column 2904c for filling in the name of engineer 2901, “Source name” column 2904d for filling in the source file name to be inspected, and inadequate detected from the generated source code 103 Corresponding items are entered in a “line number” column 2904e in which the line number where the location is present is entered and a “review point” column 2904f in which the grounds considered to be inappropriate are entered. In the “error tendency and analysis” column 2904E, the error tendency confirmed in the source code 103 is entered as a summary and evaluation of the inspection results.

図29に示すとおり、レビュアー2902のインスペクションの結果としてのインスペクション結果レポート2904は、ソフトウェア開発プロジェクト102において、プロジェクトの運営・管理に責任を持つプロジェクト管理者2205に通知される。そしてプロジェクト管理者2205はインスペクション結果レポート2904を解析検討し、見つかった不具合を取り除くために、各技術者2901に対しソースコード103の修正指示を出す。   As shown in FIG. 29, the inspection result report 2904 as a result of the inspection by the reviewer 2902 is notified to the project manager 2205 responsible for the operation and management of the project in the software development project 102. Then, the project manager 2205 analyzes and examines the inspection result report 2904, and issues an instruction to correct the source code 103 to each engineer 2901 in order to remove the found defect.

しかし、上記のインスペクション結果レポート2904は、レビュアー2902が「指摘項目一覧」表2904Dや「エラーの傾向と分析」欄2904Eに手作業で記載したものを所轄の技術者2901ごとに作成しなければならず、レビュアー2902の負担は大きい。   However, the above inspection result report 2904 must be prepared by the reviewer 2902 for each engineer 2901 who has the manual entry in the “List of items to be pointed out” table 2904D and the “Error trend and analysis” column 2904E. The burden on the reviewer 2902 is large.

特に、複数の技術者2901が複数の端末からなる分散開発環境で開発を行う、複数の作業工程を含むような大規模な設計開発プロジェクトにおいては、多数の技術者2901が大量のソースコード103を作成するため、ソースコード103の分量がレビュアー2902の処理能力を超えてしまい、プロジェクト中にインスペクションを継続的に行うことは困難になる場合も多い。   In particular, in a large-scale design and development project that involves multiple work processes where multiple engineers 2901 develop in a distributed development environment consisting of multiple terminals, many engineers 2901 receive a large amount of source code 103. As a result, the amount of the source code 103 exceeds the processing capability of the reviewer 2902, and it is often difficult to perform inspection continuously during the project.

一方、ソースコードによって技術者のコーディング能力を推し図ることは大規模プロジェクトにおいて品質を確保する為に重要な要素であり、現在の技術者のコーディング能力を数値として定量化し、客観的な資料として提示することが求められているが、従来のシステムにおいてはこのような情報提示が可能なシステムは存在しない。   On the other hand, promoting the coding ability of engineers using source code is an important factor for ensuring quality in large-scale projects. The coding ability of current engineers is quantified numerically and presented as objective data. However, there is no system capable of presenting such information in the conventional system.

また、大規模プロジェクトにおいてはコーディングをソフトウェア会社に委託することも多く、プロジェクトの委託者側からは、各会社単位でのコーディング能力を客観的に分析するための指標を提供するよう要求があるが、従来のソフトウェア会社について会社単位でのコーディング能力を定量的に分析し判断するための仕組み、体制や具体的なシステムなどは現時点では存在していない。   In large-scale projects, coding is often outsourced to software companies, and there is a request from the project consignor to provide an index for objectively analyzing the coding ability of each company. At present, there is no mechanism, system, or specific system for quantitatively analyzing and judging the coding ability of a conventional software company.

本発明はこのような事情に鑑みてなされたものであり、ソフトウェア技術者や技術者の属する会社のコーディング能力を客観的に評価することができるソースコード評価システムを提供することを目的とする。   The present invention has been made in view of such circumstances, and an object thereof is to provide a source code evaluation system capable of objectively evaluating the coding ability of a software engineer or a company to which the engineer belongs.

本発明に係る上記目的は、複数の端末からなる分散開発環境で開発されている複数の作業工程を含む設計開発プロジェクトにおいて、前記作業工程毎に生成されるソースコードを評価するソースコード評価システムであって、前記生成されるソースコード毎にインスペクションを行う品質検査手段と、前記品質検査手段から出力された前記インスペクションの結果と、前記ソースコードを作成した技術者に関する技術者情報を一元管理する一元管理記憶手段と、前記ソースコードの不具合の種類に関するルール情報および前記品質検査手段が過去に前記ソースコードに対して行った前記インスペクションの結果に関する診断履歴情報を有するデータ格納手段と、前記診断履歴情報と前記品質検査手段が出力した前記インスペクションの結果をもとに前記ソースコードの品質および前記技術者の前記ソースコードを作成する能力を評価する品質評価手段とを有し、前記品質評価手段は、前記データ格納手段に格納されたインスペクション結果情報に対して前記作業工程単位、前記ソースコード単位、開発者単位に前記ソースコードの品質を診断する品質診断を行い、前記診断結果に前記一元管理記憶手段を参照して、それぞれの単位毎に集計し、出力するソースコード評価システムによって達成される。   The object of the present invention is to provide a source code evaluation system for evaluating a source code generated for each work process in a design development project including a plurality of work processes developed in a distributed development environment including a plurality of terminals. A quality inspection unit that performs inspection for each generated source code, a result of the inspection that is output from the quality inspection unit, and centralized management of engineer information regarding the engineer who created the source code Management storage means, data storage means having rule information relating to the type of defect in the source code, and diagnosis history information relating to the result of the inspection performed by the quality inspection means on the source code in the past, and the diagnosis history information And the inspection result output by the quality inspection means. And quality evaluation means for evaluating the quality of the source code and the ability of the engineer to create the source code, the quality evaluation means for the inspection result information stored in the data storage means. Perform quality diagnosis for diagnosing the quality of the source code in the work process unit, the source code unit, and the developer unit, refer to the centralized management storage means for the diagnosis result, and totalize and output each unit Achieved by a source code evaluation system.

本発明によれば、品質検査手段が技術者の作成したソースコードを自動的に検査し、技術者の作成したソースコードを検査してインスペクションを自動的に行うとともに、品質評価手段がソースコードの品質および品質の推移を確認出来る評価レポートを自動的に作成することができるので、類似のエラーを何度もチェックするレビュアーの作業負担が大幅に軽減できて、中間品質の確認作業の効率化が図れる。   According to the present invention, the quality inspection means automatically inspects the source code created by the engineer, inspects the source code created by the engineer for automatic inspection, and the quality evaluation means An evaluation report that can check the quality and quality transition can be automatically created, greatly reducing the workload of reviewers who check for similar errors over and over, and improving the efficiency of checking intermediate quality. I can plan.

さらに、大量のソースコードのインスペクションや品質の評価を定期的に、また自動的に行うことが可能になるため、大規模プロジェクトに導入することによってソースコードのインスペクションや評価に対するレビュアーの負担を軽減し、大規模プロジェクトにおいても技術者に対するインスペクションを容易に継続的に行うことができる。   In addition, inspection and quality evaluation of a large amount of source code can be performed regularly and automatically, so introducing it to a large-scale project reduces the burden of reviewers on the inspection and evaluation of source code. Inspect large-scale projects easily and continuously for engineers.

さらに、継続的に行われるインスペクション結果に基づき、ソフトウェア技術者や技術者の属する会社単位でのコーディング能力を定量的に分析し判断するための指標を作成することができ、その指標によって各会社のコーディング能力を客観的に評価することができる。   In addition, based on the results of ongoing inspections, it is possible to create an index to quantitatively analyze and judge the coding ability of the software engineer and the company to which the engineer belongs. The coding ability can be evaluated objectively.

以下、本発明の一つの実施の形態について図面を参照して説明する。なお、図面で同一の記号が付された構成およびステップは、同じ構成要件および同じステップを示している。   Hereinafter, an embodiment of the present invention will be described with reference to the drawings. In addition, the structure and step which attached | subjected the same code | symbol in drawing have shown the same structural requirement and the same step.

図1は、本発明の一つの実施の形態に係るソースコード評価システムを用いた、コードインスペクションを示すシステム構成図である。   FIG. 1 is a system configuration diagram showing code inspection using a source code evaluation system according to an embodiment of the present invention.

コードインスペクションシステム100Aは、ソフトウェアを開発するためのプロジェクト(以下単に「プロジェクト」と称する。)102の中で用いられる開発マシン121と、本発明に係るソースコード評価システム100と、管理端末123とを備える。ソースコード評価システム100は、ソースコード管理部101と品質検査部104と品質評価部107とデータ格納部111とを備え、品質検査部104は制御部105とソース検査部106とを有し、品質評価部107は品質診断部108と能力診断部109とを有する。   The code inspection system 100A includes a development machine 121 used in a project (hereinafter simply referred to as “project”) 102 for developing software, a source code evaluation system 100 according to the present invention, and a management terminal 123. Prepare. The source code evaluation system 100 includes a source code management unit 101, a quality inspection unit 104, a quality evaluation unit 107, and a data storage unit 111. The quality inspection unit 104 includes a control unit 105 and a source inspection unit 106. The evaluation unit 107 includes a quality diagnosis unit 108 and a capability diagnosis unit 109.

開発マシン121はプロジェクト102の技術者2901がソースコード103を開発するために用いられる各種コンピュータ端末であって、イントラネット122を介してソースコード評価システム100に接続され、管理端末123はプロジェクト102における管理業務を行うプロジェクト管理者2205が管理業務を行うために用いられる各種コンピュータ端末であり、LAN等を介してソースコード評価システム100と接続されている。   The development machine 121 is various computer terminals used by the engineer 2901 of the project 102 to develop the source code 103. The development machine 121 is connected to the source code evaluation system 100 via the intranet 122, and the management terminal 123 is managed by the project 102. These are various computer terminals used by the project manager 2205 for performing business operations, and are connected to the source code evaluation system 100 via a LAN or the like.

このコードインスペクションシステム100Aにおいて、技術者2901は各自の開発マシン121を用いてソースコード103を記述する。開発段階または開発終了後において技術者2901は、イントラネット122を通してソースコード評価システム100のソースコード管理部101にアクセスし、開発したソースコード103と技術者2901の情報を登録する。また、プロジェクト管理者2205は、管理端末123から評価レポート110をダウンロードして内容を検討し、プロジェクト102におけるソースコード103の品質と技術者2901のコーディング能力を確認する。   In this code inspection system 100A, engineers 2901 describe the source code 103 using their development machines 121. At the development stage or after completion of development, the engineer 2901 accesses the source code management unit 101 of the source code evaluation system 100 through the intranet 122, and registers the developed source code 103 and information of the engineer 2901. Further, the project manager 2205 downloads the evaluation report 110 from the management terminal 123, examines the contents, and confirms the quality of the source code 103 in the project 102 and the coding ability of the engineer 2901.

図2は本発明の一つの実施形態であるソースコード評価システムの構成を示すブロック図である。
ソースコード評価システム100のデータ格納部111は外部記憶装置であり、技術者情報112とコーディング経過情報113と診断履歴情報114とルール情報115とインスペクション結果情報116が格納されている。図3については詳細フローと一緒に後述する。
FIG. 2 is a block diagram showing a configuration of a source code evaluation system according to an embodiment of the present invention.
The data storage unit 111 of the source code evaluation system 100 is an external storage device, and stores engineer information 112, coding progress information 113, diagnosis history information 114, rule information 115, and inspection result information 116. FIG. 3 will be described later together with a detailed flow.

図4は技術者情報112のデータ構成を示す図である。
技術者情報112はコーディングに携わった技術者2901に関するデータである。
FIG. 4 is a diagram showing a data structure of the engineer information 112.
The engineer information 112 is data relating to an engineer 2901 who is involved in coding.

「社員番号」欄401に示される技術者2901の社員番号と、「氏名」欄402に示される技術者2901の氏名と、「会社名」欄403に示される技術者2901の所属する会社名と、「ソース種類」欄404に示されるソースコード103を作成するために用いられたプログラミング言語としてのソース種類と、「プロジェクト数」欄405に示される技術者2901が過去に携わったプロジェクト数と、「能力評価推移」406欄に示される技術者2901の作成したソースコード103に対する評価の推移および修正能力に関するデータによって構成される。なお、「能力評価推移」欄406に表示される能力評価の詳細については後述する。   The employee number of the engineer 2901 shown in the “employee number” column 401, the name of the engineer 2901 shown in the “name” column 402, the company name to which the engineer 2901 belongs in the “company name” column 403, and , The source type as the programming language used to create the source code 103 shown in the “source type” column 404, the number of projects that the engineer 2901 shown in the “number of projects” column 405 has engaged in the past, It consists of data on evaluation transition and correction ability for the source code 103 created by the engineer 2901 shown in the “ability evaluation transition” column 406. Details of the ability evaluation displayed in the “ability evaluation transition” column 406 will be described later.

図5はコーディング経過情報113におけるデータ構成の具体例を示す図である。
コーディング経過情報113はプロジェクト102におけるコーディング経過の概要を記録するデータである。
FIG. 5 is a diagram showing a specific example of the data structure in the coding progress information 113.
The coding progress information 113 is data for recording an outline of coding progress in the project 102.

「プロジェクト名」欄501に示されるソースコード103が作成されたプロジェクト102の名称と、「ソース名」欄502に示されるソースコード103に付けられたソース名と、「更新日時」欄503に示される最新のソースコード103の一覧が作成された日時を年月日時分秒単位で記録した表示と、「ソース種類」欄504に示されるソースコード103のソース種類と、「ステップ数」欄505に示されるソースコード103中に含まれるステップ数と、「社員番号」欄506に示されるソースコード103を作成した技術者2901の社員番号と、「検査日」欄507に示されるソースコード103のインスペクションが行われた日とによって構成される。   The name of the project 102 in which the source code 103 shown in the “project name” column 501 is created, the source name given to the source code 103 shown in the “source name” column 502, and the “update date / time” column 503 The date and time when the list of the latest source code 103 to be created was recorded in year, month, day, hour, minute and second, the source type of the source code 103 shown in the “source type” column 504, and the “number of steps” column 505 The number of steps included in the displayed source code 103, the employee number of the engineer 2901 who created the source code 103 shown in the "employee number" column 506, and the inspection of the source code 103 shown in the "inspection date" column 507 Is made up of the date of

図6は診断履歴情報114のデータ構成の具体例を示す図である。
診断履歴情報114は過去にソースコード103に対して行ったインスペクションの結果に関するデータをデータベースとして蓄積したものである。
FIG. 6 is a diagram showing a specific example of the data structure of the diagnosis history information 114. As shown in FIG.
The diagnosis history information 114 is a database of data related to the results of inspections performed on the source code 103 in the past.

「プロジェクト名」欄601に示されるソースコード103が作成されたプロジェクト102の名称と、「診断日」欄602に示されるインスペクションが行われた日と、「ソース名」欄603に示されるインスペクションを行ったソースコード103のソース名と、「更新日時」欄604に示される最新のソースコード103の一覧が作成された日時を年月日時分秒単位で記録した表示とによって構成される。なお、「診断日」欄602に表示される診断日とソースコードの検査日とは必ずしも一致するとは限らない。   The name of the project 102 in which the source code 103 shown in the “project name” column 601 is created, the date of the inspection shown in the “diagnosis date” column 602, and the inspection shown in the “source name” column 603 are displayed. The source name of the performed source code 103 and a display in which the date and time when the list of the latest source code 103 shown in the “update date and time” column 604 is created are recorded in units of year, month, day, hour, minute and second. It should be noted that the diagnosis date displayed in the “diagnosis date” column 602 does not necessarily match the inspection date of the source code.

図7はルール情報115のデータ構成の具体例を示す構成図である。
ルール情報115はインスペクション106において確認が行われるコーディングの不具合の種類のデータを示すものである。
FIG. 7 is a configuration diagram showing a specific example of the data configuration of the rule information 115.
The rule information 115 indicates data on the type of coding defect to be confirmed in the inspection 106.

「ルール名」欄701に示される不具合の種類ごとに付された識別記号であるルール名と、「重要度」欄702に示される不具合がシステムに及ぼす影響度を示す重要度と、「ルール種類」欄703に示される不具合のカテゴリとしてのルール種類、「チェック内容」欄704に示される文章で表された不具合の具体的内容とによって構成される。この不具合の具体的内容とは、プログラミング言語でソースコード103を記載する際の間違いや間違いの可能性が高いと考えられる事項であり、たとえばループ内で変数を初期化している等のパフォーマンス上の記載不備や、本文が空のwhile文になっている、if条件式の中で代入が行われている等の文法的記載不備などが該当する。   The rule name, which is an identification symbol assigned to each type of defect shown in the “Rule Name” column 701, the importance level indicating the degree of influence that the failure shown in the “Importance” column 702 has on the system, and the “Rule Type” "", The rule type as the defect category shown in the "703" field, and the specific contents of the defect represented by the text shown in the "check content" field 704. The specific contents of this bug are items that are considered to be likely to be mistakes and mistakes when describing the source code 103 in the programming language. For example, the variables are initialized in the loop, etc. This includes deficiencies in the description, grammatical deficiencies such as an empty while statement, substitution in if conditional expressions, and the like.

図8は重要度を示す定義テーブルの構成を示す図である。
「重要度」欄702に表示される重要度の定義は定義テーブルとして別途設けられている。定義テーブル801は「重要度」欄801a、「修正の必要」欄801b、「システムの影響」欄801c、「評価ポイント」欄801dを有する。そして、「重要度」欄801aの記載が「最重要」のルールは、必ず修正が必要であり(「修正の必要」欄801bに「必須」と表示される。)、仮に放置した場合、システムに深刻な障害が発生する可能性がある(「システムへの影響」欄801cに「大」と表示される。)不具合を示す。
FIG. 8 is a diagram showing the structure of a definition table indicating importance.
The definition of importance displayed in the “importance” column 702 is provided separately as a definition table. The definition table 801 includes an “importance” column 801a, a “need to be modified” column 801b, a “system influence” column 801c, and an “evaluation point” column 801d. A rule whose “importance” column 801a is “most important” needs to be corrected (displayed as “required” in the “need to be corrected” column 801b). A serious failure may occur ("Large" is displayed in the "System Impact" column 801c).

「重要度」欄801aの記載が「重要」のルールは必ず修正が必要であり、仮に放置した場合、システムに軽度の障害が発生する可能性がある(「システムの影響」)欄801cに「小」と表示される。)不具合を示す。「重要度」欄801aが「警告」のルールは、個別に見て修正が必要であり、仮に放置した場合、システムに深刻な障害が発生する可能性がある不具合を示す。「重要度」欄801aの記載が「通知」のルールは、個別に見て修正が必要であり、仮に放置した場合、システムに軽度の障害が発生する可能性がある不具合を示す。   A rule with “important” in the “importance” column 801a needs to be corrected, and if left unattended, a minor failure may occur in the system (“system impact”) column 801c “Small” is displayed. ) Indicates a defect. The rule of “Warning” in the “Importance” column 801a needs to be corrected individually and indicates a problem that may cause a serious failure in the system if left unattended. The rule of “notification” in the “importance” column 801a needs to be corrected individually and indicates a problem that may cause a minor failure in the system if left unattended.

図9はルール種類の定義を示す定義テーブルの構成を示す図である。
「ルール種類」欄703に表示されるルール種類の定義も定義テーブルとして別途設けられている。
FIG. 9 is a diagram showing the structure of a definition table showing the definition of rule types.
The definition of the rule type displayed in the “rule type” column 703 is also provided as a definition table.

「ルール種類」欄901aに手続型プログラミング言語の代表的な記述ルールが列挙されており、この記述ルールについてのエラーの概要を「内容」欄901bに表示する。コーディングの具体的な不具合に該当するものがルール情報115に読み出される。   Representative description rules of the procedural programming language are listed in the “rule type” column 901a, and an error summary for this description rule is displayed in the “content” column 901b. A rule corresponding to a specific defect in coding is read into the rule information 115.

図10はインスペクション結果情報116のデータ構成の具体例を示す図である。
インスペクション結果情報116はインスペクションの結果、抽出された不具合を記録したデータ群を示す。
FIG. 10 is a diagram showing a specific example of the data structure of the inspection result information 116.
The inspection result information 116 indicates a data group in which defects extracted as a result of the inspection are recorded.

「プロジェクト名」欄1001に示されるソースコード103が作成されたプロジェクト102の名称と、「ソース名」欄1002に示されるインスペクションを行ったソースコード103のソース名と、「更新日時」欄1003に示される最新のソースコード103の一覧が作成された日時を年月日時分秒単位で記録した表示と、「ルール名」欄1004に示される不具合の種類ごとに付された識別記号であるルール名と、「行番号」欄1005に示されるソースコード103中で不具合が検出された行番号と、「メッセージ」欄1006に示される不具合の具体的内容を文章で表したメッセージと、「検査日」欄1007に示されるインスペクションが行われた日とによって構成される。なお、「メッセージ」欄1006に示されるメッセージは図9の定義テーブルにおける「ルール種類」欄901aの表示に対応するものである。   The name of the project 102 in which the source code 103 shown in the “project name” column 1001 is created, the source name of the source code 103 that has been inspected shown in the “source name” column 1002, and the “update date” column 1003 The date and time when the list of the latest source code 103 shown was created, recorded in units of year, month, day, hour, minute and second, and the rule name that is the identification symbol assigned to each type of defect shown in the “Rule Name” column 1004 A line number in which a defect is detected in the source code 103 indicated in the “line number” column 1005, a message expressing the specific content of the defect indicated in the “message” column 1006, and an “inspection date” And the date when the inspection shown in the column 1007 is performed. The message shown in the “message” column 1006 corresponds to the display in the “rule type” column 901a in the definition table of FIG.

次に本実施の形態に係るソースコード評価システム100に適用されるソースコード103の品質評価の基準と表示方法について説明する。   Next, the quality evaluation criteria and display method of the source code 103 applied to the source code evaluation system 100 according to the present embodiment will be described.

図11は本実施の形態に係るソースコード評価システム100の品質評価基準を示す説明図である。
ソースコード評価システム100は、図8に示すとおり、定義テーブル801の「重要度」欄801aの項目に依存して重み付けされた評価ポイントを「評価ポイント」欄801dに表示するとおりに設定している。インスペクションの結果不具合が検出された全てのソースについて、「ステップ数」欄505に表示された値に「評価ポイント」欄801dに記載された値を重み付け関数として乗じて得た値の総和をソースコード103のキロステップ単位の規模で割った値を評価ポイントと呼び、ポイントが低いほどソースコードの品質が高いことを示す。
FIG. 11 is an explanatory diagram showing quality evaluation criteria of the source code evaluation system 100 according to the present embodiment.
As shown in FIG. 8, the source code evaluation system 100 sets the evaluation points weighted depending on the items in the “importance” column 801a of the definition table 801 as displayed in the “evaluation points” column 801d. . For all sources in which defects were detected as a result of inspection, the source code is the sum of the values obtained by multiplying the value displayed in the “number of steps” column 505 by the value described in the “evaluation point” column 801d as a weighting function. The value divided by the scale of 103 kilosteps is called the evaluation point, and the lower the point, the higher the quality of the source code.

図11では「評価ポイント」欄1101cに示すとおり、0ポイントから30ポイントまでの評価ポイントが設けられている。一方、この評価ポイントを適当な値ごとに区分けして見やすい記号で表示したものを品質評価記号という。   In FIG. 11, as shown in the “evaluation points” column 1101c, evaluation points from 0 points to 30 points are provided. On the other hand, what these evaluation points are divided into appropriate values and displayed with easy-to-read symbols are called quality evaluation symbols.

図11では評価ポイントを5ポイントごとの合計6区域に区切り、「品質評価記号」欄1101bに示すとおり、0〜5ポイント区域に対して白星5つ、6〜10ポイント区域に対して白星4つ、・・・21〜25ポイント区域に対して白星1つ、26〜30ポイント区域に対して黒星1つをそれぞれ品質評価記号として設定し、星の数が多いほど、また黒星よりも白星の方が、ソースコード103の品質が高いことを示している。なお、図11の具体例においては、「能力評価」欄1101aに示すとおり、「評価ポイント」欄1101cに記載した評価ポイントが0〜10ポイントのものを能力評価水準A、11〜20ポイントのものを能力評価水準B、21〜30ポイントのものを能力評価水準Cと設定している。
そして、この能力評価水準に基づく能力評価推移の例を図12に示す。
In FIG. 11, the evaluation points are divided into a total of 6 areas every 5 points. As shown in the “quality evaluation symbol” column 1101b, 5 white stars for the 0-5 point areas and 4 white stars for the 6-10 point areas. .... 1 white star for the 21-25 point area and 1 black star for the 26-30 point area as the quality evaluation symbols. The more stars, the white star than the black star. Shows that the quality of the source code 103 is high. In the specific example of FIG. 11, as shown in the “ability evaluation” column 1101a, the evaluation points described in the “evaluation point” column 1101c are 0 to 10 points, and the ability evaluation level A is 11 to 20 points. Is set as a capability evaluation level C, with a capability evaluation level B of 21 to 30 points.
And the example of the capability evaluation transition based on this capability evaluation level is shown in FIG.

図12は能力評価推移および修正能力の判断基準の模式図である。
図12において能力は縦軸方向の評価軸(評価ポイント)と横軸方向の時間軸(時間)との相関関係によって評価される。
FIG. 12 is a schematic diagram of judgment criteria for ability evaluation transition and correction ability.
In FIG. 12, the ability is evaluated by the correlation between the evaluation axis (evaluation point) in the vertical axis direction and the time axis (time) in the horizontal axis direction.

縦軸はソースコード103の品質に関する確認項目において減点対象ごとに付加されるポイントの数がパラメータであり、能力評価水準A(0ポイント以上10ポイント未満)、能力評価水準B(10ポイント以上20ポイント未満)、能力評価水準C(20ポイント以上30ポイント未満)の3段階に区分されている。   The vertical axis is the number of points added for each deduction target in the confirmation items related to the quality of the source code 103, and the ability evaluation level A (0 points or more and less than 10 points), ability evaluation level B (10 points or more and 20 points) Less than) and ability evaluation level C (20 points or more and less than 30 points).

図12においてはソースコード103の評価はAが最高でCが最低ということになる。一方、横軸はソースコード103の作成に要する日数がパラメータであり、ソース作成開始期間である期間a、作成途中期間である期間b、作成終了期間である期間cの3期間に区分されている。そして、+修正能力記号1202aと−修正能力記号1202bとは技術者2901がソースコード103中の不具合を修正する能力としての修正能力(以下単に「修正能力」と称する。)を示したものである。   In FIG. 12, the evaluation of the source code 103 is that A is the highest and C is the lowest. On the other hand, the horizontal axis is a parameter for the number of days required to create the source code 103, and is divided into three periods: a period a which is a source creation start period, a period b which is a creation intermediate period, and a period c which is a creation end period. . The + correction capability symbol 1202a and the −correction capability symbol 1202b indicate the correction capability (hereinafter simply referred to as “correction capability”) as the capability of the engineer 2901 to correct the defect in the source code 103. .

+修正能力記号1202aは、当初能力評価水準BまたはCであるソースコード103が短期間で不具合が修正されて能力評価水準Aになることを示しており、−修正能力記号1202bは当初能力評価水準BまたはCであるソースコード103の不具合が修正されて能力評価水準Aになるまでに長期間を要するか、または最後まで能力評価水準がAに至らない状態を示している。   The + corrected ability symbol 1202a indicates that the source code 103 of the initial ability evaluation level B or C is corrected in a short period of time and the defect is corrected to the ability evaluation level A, and the -corrected ability symbol 1202b is the initial ability evaluation level. It shows a state where it takes a long time until the defect of the source code 103 which is B or C is corrected and reaches the ability evaluation level A, or the ability evaluation level does not reach A until the end.

能力評価推移の診断は、次の手順によって行う。まず、開始時と終了時で品質評価が変わらない場合は、能力評価記号をそのまま表示する。たとえば、プロジェクト102の開始時に評価がAで、終了時の評価がAの技術者2901は、能力評価推移Aと診断する。開始時と終了時で品質評価が変わる場合、開始時の評価と終了時の評価を並べて表示する。たとえば、プロジェクト102の開始時に評価がBで、終了時の評価がAの技術者2901は、能力評価推移BAと診断する。   Diagnosis of ability evaluation transition is performed according to the following procedure. First, when the quality evaluation does not change between the start time and the end time, the ability evaluation symbol is displayed as it is. For example, an engineer 2901 whose evaluation is A at the start of the project 102 and whose evaluation at the end is A is diagnosed as ability evaluation transition A. When the quality evaluation changes between the start time and the end time, the evaluation at the start time and the evaluation at the end time are displayed side by side. For example, an engineer 2901 whose evaluation is B at the start of the project 102 and whose evaluation at the end is A diagnoses the ability evaluation transition BA.

次に開始時と終了時で品質評価が変わる場合、次の能力評価基準まで変動した期間を計測する。   Next, when the quality evaluation changes between the start time and the end time, the period of time until the next ability evaluation standard is measured.

本実施の形態においては、説明の簡単のため、能力評価基準Aに移行する期間の平均が14日以内であれば+修正能力記号1202aを、14日以上かかったか、または最後までAにならなかった場合は、−修正能力記号1202bを記号の末尾に加えるものとする。なお、本実施の形態においては、説明の簡単のため、ソースコード103の作成が開始されてから14日経過時と28日経過時にインスペクションを行い、先のインスペクションにおける評価と後のインスペクションにおける評価を対比することで能力評価推移および修正能力を判断するものとする。   In the present embodiment, for the sake of simplicity of explanation, if the average period of transition to the ability evaluation standard A is within 14 days, the + corrected ability symbol 1202a takes 14 days or more or does not become A until the end. In such a case, the -correction ability symbol 1202b is added to the end of the symbol. In the present embodiment, for the sake of simplicity, inspection is performed at the elapse of 14 days and 28 days after the creation of the source code 103 is started, and the evaluation in the previous inspection and the evaluation in the subsequent inspection are performed. By contrast, ability evaluation transition and correction ability shall be judged.

図12は上述の基準に基づいて作成されたに能力評価推移および修正能力の判断基準の模式図である。上述の基準に基づいて作成された技術力評価推移および修正能力の判断基準例が示されている。   FIG. 12 is a schematic diagram of judgment criteria for ability evaluation transition and correction ability created based on the above-mentioned criteria. An example of criteria for judging technical ability evaluation transition and correction ability created based on the above-mentioned criteria is shown.

第1評価例1201aはコーディングの開始後14日経過時に技術力評価水準Aに達しているので「A」とのみ評価され+修正能力記号1202aも−修正能力記号1202bも表示されないことになる。   Since the first evaluation example 1201a has reached the technical skill evaluation level A when 14 days have passed since the start of coding, only “A” is evaluated, and neither the + correction ability symbol 1202a nor the −correction ability symbol 1202b is displayed.

第2評価例1201bおよび第3評価例1201cはコーディングの開始後14日経過時に技術力評価水準Bだったものが28日経過後に技術力評価水準Aに達しているので、技術力評価推移「BA」と評価され、+修正能力記号1202aが表示される。   In the second evaluation example 1201b and the third evaluation example 1201c, since the technical evaluation level B was 14 days after the start of coding and reached the technical evaluation level A after 28 days, the technical evaluation transition “BA ”And a + correction ability symbol 1202a is displayed.

第3評価例1201cはコーディングの開始後14日経過時に技術力評価水準Cだったものが28日経過時に技術力評価水準Aに到達しているので、技術力評価推移「CA」と評価され、+修正能力記号1202aが表示される。   The third evaluation example 1201c is evaluated as the technical ability evaluation transition “CA” because the technical ability evaluation level C has reached the technical ability evaluation level A when 28 days have elapsed since 14 days have elapsed since the start of coding. A + correction ability symbol 1202a is displayed.

第4評価例1201dはコーディングの開始後14日経過後よりも28日経過後の方が評価ポイントは向上しているものの28日経過時に技術力評価水準Aに到達していないので、技術力評価推移「CB」と評価され、−修正能力記号1202bが表示される。   In the fourth evaluation example 1201d, although the evaluation point is improved after 28 days than after 14 days from the start of coding, the technical ability evaluation level A is not reached when 28 days have passed. "CB" is evaluated, and the -correction ability symbol 1202b is displayed.

第5評価例1201eはコーディングの開始後14日経過時と28日経過時のいずれも技術力評価水準Bのままであり、技術力評価推移「BB」と評価されて、−修正能力記号1202bが表示される。   In the fifth evaluation example 1201e, the technical skill evaluation level B remains at both 14th and 28th days after the start of coding, and the technical skill evaluation transition “BB” is evaluated. Is displayed.

図4の「技術力評価推移」欄406に示された表記は上記例で示すコーディングの技術力評価推移およびソースコード103の修正能力を表示したものである。   The notation shown in the “technical skill evaluation transition” column 406 of FIG. 4 displays the technical skill evaluation transition of coding and the correction ability of the source code 103 shown in the above example.

なお、本実施の形態におけるインスペクションの回数および間隔は例示であり、実施の態様に応じ、インスペクションは2回より多く行われてもよく、また、インスペクションの間隔は14日より長くても短くてもよい。   In addition, the frequency | count and interval of an inspection in this Embodiment are illustrations, Depending on the aspect, inspection may be performed more than twice, and the interval of inspection may be longer or shorter than 14 days. Good.

図3は、図2に示すソースコード評価システム100の接続構成を示すデータ構成図である。   FIG. 3 is a data configuration diagram showing a connection configuration of the source code evaluation system 100 shown in FIG.

以下、本図を参照して本実施の形態に係るソースコード評価システム100の各部の動作を説明する。   Hereinafter, the operation of each unit of the source code evaluation system 100 according to the present embodiment will be described with reference to this drawing.

ソースコード管理部101は、ソースコード103を読み込む。このとき、ソースコード103に含まれるプロジェクトに関する情報や技術者2901の氏名などの情報も併せてソースコード管理部101に読み込まれて登録され、ソースコード103を作成した技術者2901の技術者情報112がソースコード管理部101に読み込まれる。なお、登録された情報は技術者情報112やコーディング経過情報113に格納される。   The source code management unit 101 reads the source code 103. At this time, information on the project included in the source code 103 and information such as the name of the engineer 2901 are also read and registered in the source code management unit 101, and engineer information 112 of the engineer 2901 who created the source code 103 is registered. Is read into the source code management unit 101. The registered information is stored in the engineer information 112 and the coding progress information 113.

ソースコード管理部101は複数のプロジェクト102単位でソースコード103を管理するため、技術者2901がいくつかのプロジェクト102にまたがって開発をしていた場合であってもインスペクションの対象としてのソースコード103を取得することができる。なお、このソースコード103は、図30の模式図に示す態様のものである。   Since the source code management unit 101 manages the source code 103 in units of a plurality of projects 102, even if the engineer 2901 is developing across several projects 102, the source code 103 as an inspection target is used. Can be obtained. The source code 103 has the form shown in the schematic diagram of FIG.

ソースコード管理部101からコーディング経過情報113に対し、技術者2901とソースコード名の対応付けが出力される。   The source code management unit 101 outputs a correspondence between the engineer 2901 and the source code name for the coding progress information 113.

制御部105は、定期的にコーディング経過情報113として格納された各プロジェクト102ごとの情報を調査し、新規に登録されたソースコード103の一覧を作成する。そして、制御部105は、コーディング経過情報113を読み込んでソースコード103を取得する。制御部105が取得したソースコード103はソース検査部106に送られて、ソース検査部106は受け取ったソースコード103についてインスペクションを行う。制御部105は、診断したソースコード103について診断履歴情報114を出力する。ソース検査部106は、プロジェクト102毎に指定されたルール情報115を読み込んでソースコード103についてインスペクションを行い、結果を出力する。インスペクションの結果はインスペクション結果情報116において登録されて蓄積される。   The control unit 105 periodically checks the information for each project 102 stored as the coding progress information 113, and creates a list of newly registered source codes 103. Then, the control unit 105 reads the coding progress information 113 and acquires the source code 103. The source code 103 acquired by the control unit 105 is sent to the source inspection unit 106, and the source inspection unit 106 inspects the received source code 103. The control unit 105 outputs diagnosis history information 114 for the diagnosed source code 103. The source inspection unit 106 reads the rule information 115 designated for each project 102, inspects the source code 103, and outputs the result. The inspection result is registered and accumulated in the inspection result information 116.

インスペクション結果情報116は品質診断部108に読み込まれ、品質診断部108は、読み込んだインスペクション結果情報116における各不具合について、図8に示す定義テーブル801に基づいて修正の必要とシステムへの影響に鑑みた重要度を判断し、「重要度」欄801aの定義に基づいて「評価ポイント」欄801dに規定された評価ポイントを評価ポイント変数とする。品質診断部108はこの評価ポイント変数をソースコード103の規模(ステップ数)で除した値を評価ポイントとして算出する。品質診断部108はこの評価ポイントを図8に示すルールごと、ソースコード103ごと、技術者2901ごとに集計して評価レポート110として出力する。   The inspection result information 116 is read into the quality diagnosis unit 108, and the quality diagnosis unit 108 considers each defect in the read inspection result information 116 based on the definition table 801 shown in FIG. 8 and the influence on the system. The importance is determined, and the evaluation point defined in the “evaluation point” column 801d based on the definition of the “importance” column 801a is used as an evaluation point variable. The quality diagnosis unit 108 calculates a value obtained by dividing the evaluation point variable by the scale (number of steps) of the source code 103 as an evaluation point. The quality diagnosis unit 108 aggregates the evaluation points for each rule, source code 103, and engineer 2901 shown in FIG.

品質診断部108はインスペクション結果情報116を能力診断部109にも出力し、能力診断部109は、プロジェクト102の終了時に、各技術者2901が各プロジェクト102において作成したソースコード103が所望の品質に収束するまでにどの程度の期間を要したか等に関する過去の評価の推移を技術者2901ごとに分析し、コーディングの能力の評価推移およびソースコード103の修正能力を算出して技術者情報112を更新し、処理を最初から繰り返す。技術者情報112に保存された前述の各種情報は、データ化することにより、次のプロジェクト102を行う際に各技術者2901が所望の品質のソースコード103を書くことができるのか、および所望の品質のソースコード103を書くまでにどの程度の期間を要するかを判断するための指標として用いることができる。   The quality diagnosis unit 108 also outputs the inspection result information 116 to the capability diagnosis unit 109. At the end of the project 102, the capability diagnosis unit 109 sets the source code 103 created by each engineer 2901 in each project 102 to a desired quality. Analyze the transition of past evaluation on how long it took to converge, etc. for each engineer 2901, calculate the evaluation transition of coding ability and the correction ability of the source code 103, and obtain the engineer information 112 Update and repeat the process from the beginning. The above-mentioned various information stored in the engineer information 112 is converted into data, so that each engineer 2901 can write the source code 103 with a desired quality when the next project 102 is performed, and the desired information It can be used as an index for determining how long it takes to write the quality source code 103.

ソースコード評価システム100は評価レポート110を電子情報として出力し、管理端末123のディスプレイに表示する。   The source code evaluation system 100 outputs the evaluation report 110 as electronic information and displays it on the display of the management terminal 123.

以下、本発明の実施の一形態であるソースコード評価システム100から出力される評価レポート110の例について図13を参照して説明する。   Hereinafter, an example of the evaluation report 110 output from the source code evaluation system 100 according to the embodiment of the present invention will be described with reference to FIG.

図13はプロジェクト102に関する品質評価レポート1301の帳票レイアウトを示す図である。
品質評価レポート1301はタイトル表示部1302と、インスペクションによってソースコード103が診断された日を表示する診断日表示部1303と、ソースコード103が作成されたプロジェクト102の名称を表示するプロジェクト名表示部1304と、プロジェクト情報表示領域1305と、評価ポイントの推移グラフ1306と、診断結果の概要をルール単位で表示する診断結果表示領域1307とで構成されている。
FIG. 13 is a diagram showing a form layout of the quality evaluation report 1301 related to the project 102.
The quality evaluation report 1301 includes a title display unit 1302, a diagnosis date display unit 1303 that displays the date on which the source code 103 was diagnosed by inspection, and a project name display unit 1304 that displays the name of the project 102 in which the source code 103 was created. A project information display area 1305, a transition graph 1306 of evaluation points, and a diagnosis result display area 1307 for displaying an outline of the diagnosis result in units of rules.

プロジェクト情報表示領域1305には、インスペクションおよび評価の対象となったプロジェクト102の品質評価および評価値を図12に示された基準に基づいて表示する品質評価および評価値表示部1305aが設けられ、その他に評価対象のプロジェクト102におけるソース数や、キロステップ単位で表示したソースコード103の規模や、技術者2901の数や、評価結果における検出された不具合の数の合計や重要度ごとの不具合の検出件数が表示される。   The project information display area 1305 is provided with a quality evaluation and evaluation value display unit 1305a for displaying the quality evaluation and evaluation value of the project 102 subject to inspection and evaluation based on the criteria shown in FIG. The number of sources in the project 102 to be evaluated, the size of the source code 103 displayed in kilosteps, the number of engineers 2901, the total number of detected defects in the evaluation results, and detection of defects for each importance level The number of cases is displayed.

診断結果表示領域1307においては、「ルール名」欄1307aにルール名、「重要度」欄1307bに定義テーブル801で定義された重要度、「ルール種類」欄1307cに定義テーブル901の「ルール種類」欄901aで定義されたルール種類、「検出内容」欄1307dに不具合として検出された定義テーブル901の「内容」欄901bで定義されたルールの内容、「検出数」欄1307eに検出された不具合の集計結果、「ソース数」欄1307fに不具合として検出されたソースコード数の集計結果が、「人数」欄1307gに不具合を作成したとして検出された技術者2901の集計結果が、それぞれルール単位で表示される。   In the diagnosis result display area 1307, the rule name in the "rule name" column 1307a, the importance defined in the definition table 801 in the "importance" column 1307b, and the "rule type" in the definition table 901 in the "rule type" column 1307c The rule type defined in the column 901a, the content of the rule defined in the “content” column 901b of the definition table 901 detected as a defect in the “detected content” column 1307d, and the defect detected in the “detected number” column 1307e Aggregation result, “Number of sources” column 1307f displays the aggregation result of the number of source codes detected as a defect, and “Number of people” column 1307g displays the aggregation result of engineer 2901 detected as having created a defect for each rule. Is done.

図14はソースコードに関する品質評価レポート1401の帳票レイアウト例を示す説明図である。
品質評価レポート1401はタイトル表示部1402と、診断日表示部1303と、プロジェクト名表示部1304とプロジェクト情報表示領域1305と、評価グラフ1403と、診断結果の概要をソース単位で表示する診断結果表示領域1404とで構成されている。
FIG. 14 is an explanatory diagram showing a form layout example of the quality evaluation report 1401 regarding the source code.
The quality evaluation report 1401 includes a title display unit 1402, a diagnosis date display unit 1303, a project name display unit 1304, a project information display region 1305, an evaluation graph 1403, and a diagnosis result display region that displays an overview of the diagnosis result in source units. It consists of 1404.

診断結果表示領域1404においては、「ソース名」欄1404aにソース名、「更新日」欄1404bに更新日、「氏名」欄1404cに技術者2901の氏名、「評価」欄1404dに図11で定義した品質評価記号、「評価P」記載欄1404eに図11で定義した評価ポイント、「規模」欄1404fにはソース規模が、「ルール」欄1404g、1404g、・・・にはルールごとに検出された不具合の数、「合計」欄1404hには検出された不具合の数の合計、「必須」欄1404iには必ず直さねばならない不具合(図7の「重要度」欄702に表示された定義中「最重要」および「重要」に該当する不具合)の検出数の和、「個別」欄1404jには個別に直すべき不具合(図7の「重要度」欄702に表示された定義中「警告」および「通知」に該当する不具合)の検出数の和が、それぞれ表示される。   In the diagnosis result display area 1404, the “source name” column 1404a is defined as the source name, the “update date” column 1404b is the updated date, the “name” column 1404c is the name of the engineer 2901, and the “evaluation” column 1404d is defined in FIG. , The evaluation point defined in FIG. 11 in the “Evaluation P” column 1404e, the source size in the “Scale” column 1404f, and the rule in the “Rule” columns 1404g, 1404g,. In the “total” column 1404h, the total number of detected defects, and in the “required” column 1404i, defects that must be corrected (the definition “displayed in the“ importance ”column 702 in FIG. The sum of the number of detections of “most important” and “failures corresponding to“ important ””, the “individual” column 1404j, the failure to be corrected individually (the “warning” in the definition displayed in the “importance” column 702 of FIG. 7 and The sum of the number of detections of “failure corresponding to“ notification ”” is displayed.

評価グラフ1403には「評価P」、記載欄1404eの評価ポイントが高いソースのうち上位10ソースまでが「評価ワースト10」として棒グラフで表示される。グラフの単位は「評価P」記載欄1404eと同じ評価ポイントである。   In the evaluation graph 1403, “evaluation P” and the top 10 sources among the sources with high evaluation points in the description column 1404e are displayed as “evaluation worst 10” as a bar graph. The unit of the graph is the same evaluation point as the “Evaluation P” entry column 1404e.

図15は管理端末123のディスプレイに表示される、技術者2901に関する品質評価レポート1501の帳票レイアウト例を示す説明図である。   FIG. 15 is an explanatory diagram showing a form layout example of the quality evaluation report 1501 regarding the engineer 2901 displayed on the display of the management terminal 123.

品質評価レポート1501はタイトル表示部1502と診断日表示部1303とプロジェクト名表示部1304と、プロジェクト情報表示領域1305と評価が悪い技術者2901の上位10名までの評価を示す評価グラフ1503と診断結果の概要を技術者2901単位で表示する診断結果表示領域1504とで構成されている。   The quality evaluation report 1501 includes a title display unit 1502, a diagnosis date display unit 1303, a project name display unit 1304, a project information display region 1305, an evaluation graph 1503 showing evaluations of the top 10 engineers 2901 with bad evaluations, and diagnosis results Are displayed in a diagnosis result display area 1504 for displaying an outline of the engineer in units of 2901 engineers.

診断結果表示領域1504にはそれぞれ以下の内容が表示される。
「技術者」欄1504aには技術者2901の氏名、「会社名」欄1504bには技術者2901の所属する会社名、「評価」欄1504cには図11で定義した品質評価記号、「評価P」欄1504dには図11で定義した評価ポイント、「規模」欄1504eにはソース規模、「ルール」欄1504f、1504f、・・・にはルールごとの不具合の検出数が「合計」欄にそれぞれ表示される。
The following contents are displayed in the diagnosis result display area 1504, respectively.
The “engineer” column 1504a has the name of the engineer 2901, the “company name” column 1504b has the company name to which the engineer 2901 belongs, the “evaluation” column 1504c has the quality evaluation symbol defined in FIG. ”Column 1504d is the evaluation point defined in FIG. 11,“ Scale ”column 1504e is the source size,“ Rule ”columns 1504f, 1504f,. Is displayed.

1504gには不具合の検出数の合計が表示され、「必須」欄1504hには図7の「重要度」欄702に表示された定義中「最重要」と「重要」に該当する不具合の検出数の和が表示される。   The total number of detected defects is displayed in 1504g, and the number of detected defects corresponding to “most important” and “important” in the definition displayed in the “importance” column 702 of FIG. 7 is displayed in the “required” column 1504h. The sum of is displayed.

「個別」欄1504iには図7の「重要度」欄702に表示された定義中「警告」および「通知」に該当する不具合の検出数の和が表示され、「前回の評価推移」欄1504jには前回のプロジェクト102における能力評価推移および修正能力がそれぞれ表示される。   In the “individual” column 1504i, the sum of the detected numbers of defects corresponding to “warning” and “notification” in the definition displayed in the “importance” column 702 of FIG. 7 is displayed, and the “last evaluation transition” column 1504j. Is displayed with the ability evaluation transition and the correction ability in the previous project 102, respectively.

評価グラフ1503には「評価P」記載欄1504dの評価ポイントが高い技術者2901のうち上位10人までの評価が「評価ワースト10」として棒グラフで表示される。   In the evaluation graph 1503, the evaluations of the top 10 engineers 2901 having high evaluation points in the “Evaluation P” entry field 1504d are displayed as “Evaluation worst 10” in a bar graph.

図16は、管理端末123のディスプレイに表示される、会社に関する品質評価レポート1601の帳票レイアウト例を示す説明図である。   FIG. 16 is an explanatory diagram showing a form layout example of a quality evaluation report 1601 related to a company displayed on the display of the management terminal 123.

品質評価レポート1601はタイトル表示部1602と診断日表示部1303とプロジェクト名表示部1304とプロジェクト情報表示領域1305と、評価が悪い会社のトップ10を示すグラフ1603と、診断結果の概要を技術者2901それぞれの所属する会社単位で表示する診断結果表示領域1604とで構成されている。   The quality evaluation report 1601 includes a title display unit 1602, a diagnosis date display unit 1303, a project name display unit 1304, a project information display region 1305, a graph 1603 indicating the top 10 companies with poor evaluations, and an overview of the diagnosis results. It consists of a diagnosis result display area 1604 that is displayed for each company to which it belongs.

「会社名」欄1604aには技術者2901それぞれが所属する会社名、「評価」欄1604bには図11で定義した品質評価記号、「評価P」欄1604cには図11で定義した評価ポイント、
「規模」欄1604cにはソース規模が、「ルール」欄1604e、1604e、・・・にはルールごとに検出された不具合の数がそれぞれ表示される。
The “company name” column 1604a includes the company names to which the engineers 2901 belong, the “evaluation” column 1604b includes the quality evaluation symbols defined in FIG. 11, the “evaluation P” column 1604c includes the evaluation points defined in FIG.
The “scale” column 1604c displays the source size, and the “rule” columns 1604e, 1604e,... Each display the number of defects detected for each rule.

さらに「合計」欄1604fには不具合の検出数の合計、「必須」欄1604gには図7の「重要度」欄702に表示された定義中「最重要」と「重要」に該当する不具合の検出数の和、
「個別」欄1604hには図7の「重要度」欄702に表示された定義中「警告」および「通知」に該当する不具合の検出数の和、「前回の評価推移」欄1604iには前回のプロジェクト102における能力評価推移および修正能力が、それぞれ表示される。
Furthermore, the “total” column 1604f displays the total number of defects detected, and the “required” column 1604g displays the defects corresponding to “most important” and “important” in the definition displayed in the “importance” column 702 of FIG. The sum of the number of detections,
In the “Individual” column 1604h, the sum of the number of detected defects corresponding to “Warning” and “Notification” in the definition displayed in the “Importance” column 702 of FIG. The ability evaluation transition and the correction ability in the project 102 are respectively displayed.

グラフ1603には「評価P」記載欄1604cの評価ポイントが高い会社のうち上位10社までの評価が「評価ワースト10」として棒グラフで表示される。   In the graph 1603, the evaluations of the top 10 companies among the companies with the high evaluation points in the “Evaluation P” entry field 1604c are displayed as “Evaluation worst 10” in a bar graph.

本実施の形態においてはソースコード103の品質に加え、ソースコード103を開発する技術者2901や技術者2901の所属する会社のコーディング能力の評価を行うこともできる。   In the present embodiment, in addition to the quality of the source code 103, it is also possible to evaluate the coding ability of the engineer 2901 who develops the source code 103 and the company to which the engineer 2901 belongs.

図17は技術評価レポート1701の帳票レイアウト例を示す説明図である。
管理端末123のディスプレイに表示される、技術者2901に関する技術評価レポート1701のレイアウトは以下の項目で構成されている。
FIG. 17 is an explanatory diagram showing a form layout example of the technical evaluation report 1701.
The layout of the technical evaluation report 1701 related to the engineer 2901 displayed on the display of the management terminal 123 includes the following items.

能力評価レポート1701はタイトル表示部1702と診断日表示部1303と、技術者名および会社名表示部1703と技術者情報表示領域1704と、能力評価推移表示領域1705と、評価ポイントの推移を示す推移グラフ1706と、ルールごとの診断結果表示領域1707とで構成されている。   The ability evaluation report 1701 includes a title display section 1702, a diagnosis date display section 1303, an engineer name and company name display section 1703, an engineer information display area 1704, an ability evaluation transition display area 1705, and a transition indicating evaluation point transition. It is composed of a graph 1706 and a diagnostic result display area 1707 for each rule.

技術者情報表示領域1704にはプロジェクト情報表示領域1305と同様の項目が表示され、能力評価推移表示領域1705には前回のプロジェクト102における能力評価推移および修正能力が表示され、図7に定義されたルール種類のうち不具合としての検出数が最も多いものトップ3が「要注意分野」として出力される。   The engineer information display area 1704 displays the same items as the project information display area 1305, and the ability evaluation transition display area 1705 displays the ability evaluation transition and correction ability in the previous project 102, which are defined in FIG. Of the rule types, the top 3 items with the highest number of detected defects are output as “areas requiring attention”.

推移グラフ1706において縦軸が評価ポイントであり、横軸がインスペクションを行った日付を指す。
技術者名および会社名表示部1703に表示された技術者2901の日ごとの評価ポイントの推移が折れ線グラフで表示される。
In the transition graph 1706, the vertical axis represents the evaluation point, and the horizontal axis represents the date on which the inspection was performed.
The transition of evaluation points for each day of the engineer 2901 displayed in the engineer name and company name display unit 1703 is displayed in a line graph.

診断結果表示領域1707において、「ルール名」欄1707aにルール名、「重要度」欄1707bに図8で定義された重要度、「種類」欄1707cには図8で定義されたルール種類、「チェック内容」欄1707dには図9で定義されたルールの内容、「検出数」欄1707eには検出された不具合の数の合計、「ソース数」欄1707fには不具合として検出されたソースコードの数がそれぞれ表示される。   In the diagnosis result display area 1707, the “rule name” column 1707a has the rule name, the “importance” column 1707b has the importance defined in FIG. 8, the “type” column 1707c has the rule type defined in FIG. The contents of the rule defined in FIG. 9 are displayed in the “check content” column 1707d, the total number of detected defects in the “detected number” column 1707e, and the source code detected as a defect in the “number of sources” column 1707f. Each number is displayed.

図18は、能力評価レポート1801の帳票レイアウト例を示す説明図である。
管理端末123のディスプレイに表示される、会社に関する能力評価レポート1801のレイアウトは以下の項目で構成されている。
FIG. 18 is an explanatory diagram showing a form layout example of the capability evaluation report 1801.
The layout of the company capability evaluation report 1801 displayed on the display of the management terminal 123 is composed of the following items.

タイトル表示部1802と、診断日表示部1303と、会社名表示部1803と、会社情報の表示領域1804と、評価ポイントの推移グラフ1805と診断結果の概要を技術者2901単位で表示する診断結果表示領域1806とで構成されている。   Title display section 1802, diagnosis date display section 1303, company name display section 1803, company information display area 1804, evaluation point transition graph 1805, and diagnosis result display that displays an overview of diagnosis results in units of engineers 2901 An area 1806 is included.

推移グラフ1805には縦軸には評価ポイントが指標となり、横軸はインスペクションを行った日付が指標となる。   In the transition graph 1805, the vertical axis represents an evaluation point and the horizontal axis represents an inspection date.

会社名表示部1803に表示された会社の評価ポイントの推移が折れ線グラフで表示される。   Changes in the evaluation points of the company displayed in the company name display area 1803 are displayed as a line graph.

「技術者名」欄1806aにソースコードの作成を行った技術者2901の名、「重要度」欄1806bに図8で定義された重要度、「評価P」欄1806dには図11で定義した評価ポイント、「規模」欄1806eにはソース規模、「ルール」欄1806e、1806e、・・・にはルールごとに検出された不具合の数、「合計」欄1806fには検出された不具合の数の合計、「必須」欄1806gには図7の「重要度」欄702に表示された定義中「最重要」および「重要」に該当する不具合の検出数の和、「個別」欄1806hには図7の「重要度」欄702に表示された定義中「警告」および「通知」に該当する不具合の検出数の和、「前回の評価推移」欄1806iには前回のプロジェクト102における能力評価推移および修正能力がそれぞれ表示される。   The name of the engineer 2901 who created the source code in the “engineer name” column 1806a, the importance defined in FIG. 8 in the “importance” column 1806b, and the definition defined in FIG. 11 in the “evaluation P” column 1806d Evaluation point, “Scale” column 1806e is the source size, “Rules” column 1806e, 1806e,... Is the number of defects detected for each rule, and “Total” column 1806f is the number of defects detected. Total, “required” column 1806g shows the sum of the number of detected defects corresponding to “most important” and “important” in the definition displayed in “importance” column 702 of FIG. 7, and “individual” column 1806h shows 7 is the sum of the number of detected defects corresponding to “Warning” and “Notification” in the definition displayed in the “Importance” column 702, and the “Last evaluation change” column 1806i shows the capability evaluation change in the previous project 102 and Each correction ability is displayed.

図19はプロジェクト102に関する品質推移レポート1901の帳票レイアウト例を示す説明図である。   FIG. 19 is an explanatory diagram showing a form layout example of the quality transition report 1901 related to the project 102.

管理端末123のディスプレイに表示される、プロジェクト102に関する品質推移評価レポート1901は、タイトル表示部1902とプロジェクト名表示部1903とプロジェクトの品質推移結果表示領域1904によって構成される。   The quality transition evaluation report 1901 related to the project 102 displayed on the display of the management terminal 123 includes a title display unit 1902, a project name display unit 1903, and a project quality transition result display area 1904.

「日付」欄1904aにはインスペクションが行われた日付、「評価」欄1904bには図11で定義した品質評価記号、「評価P」欄1904cには図11で定義した評価ポイント、「規模」欄1904dにはソース規模、「ルール」欄1904e、1904e、・・・にはルールごとの不具合の検出数、「合計」欄1904fには不具合の検出数の合計、「必須」欄1904gには図7の「重要度」欄702に表示された定義中「最重要」と「重要」に該当する不具合の検出数の和、個別」欄1904hには図7の「重要度」欄702に表示された定義中「警告」および「通知」に該当する不具合の検出数の和、「推移」欄1904iには「個別」欄1904h欄に表示された不具合の検出数を50個単位で黒四角に表示するとともに「必須」欄1904gに表示された不具合の検出数を50個単位に白四角で表示して不具合の検出数の概数をあらわしたグラフが、それぞれ表示される。   “Date” column 1904a is the date of inspection, “Evaluation” column 1904b is the quality evaluation symbol defined in FIG. 11, “Evaluation P” column 1904c is the evaluation point defined in FIG. 11, and “Scale” column 1904d is the source size, “rule” columns 1904e, 1904e,... Are the number of detected defects for each rule, “total” column 1904f is the total number of detected defects, and “required” column 1904g is FIG. 7 is displayed in the “importance” column 702 of FIG. 7 in the sum of the number of detected defects corresponding to “most important” and “important” in the definition displayed in the “importance” column 702 The sum of the detected number of defects corresponding to “Warning” and “Notification” in the definition, and the “Transition” field 1904i display the detected number of defects displayed in the “Individual” field 1904h in black squares in units of 50. In addition, the number of detected defects displayed in the “Required” column 1904g is displayed in white squares in units of 50. Graph represents the approximate number is displayed respectively.

図20はソースに関する品質推移レポート2001の帳票レイアウト例を示す説明図である。管理端末123のディスプレイに表示される品質推移レポート2001は、タイトル表示部2002とソース名表示部2003とソースの品質推移結果表示領域2004とで構成される。   FIG. 20 is an explanatory diagram showing a form layout example of the quality transition report 2001 related to the source. A quality transition report 2001 displayed on the display of the management terminal 123 includes a title display unit 2002, a source name display unit 2003, and a source quality transition result display region 2004.

品質推移結果表示領域2004の「日付」欄2004a、「評価」欄2004b、「評価P」欄2004c、「規模」欄2004d、「ルール」欄2004e、2004e、・・・、「合計」欄2004f、「必須」欄2004g、「個別」欄2004h、「推移」欄2004iの表示内容は、図19に示すプロジェクトに関する評価レポート1901における品質推移結果表示領域1904の表示内容と同じである。   “Date” column 2004a, “Evaluation” column 2004b, “Evaluation P” column 2004c, “Scale” column 2004d, “Rules” column 2004e, 2004e,..., “Total” column 2004f, The display contents of the “required” column 2004g, the “individual” column 2004h, and the “transition” column 2004i are the same as the display contents of the quality transition result display area 1904 in the evaluation report 1901 related to the project shown in FIG.

図21は技術者2901に関する品質推移レポート2101の帳票レイアウト例を示す説明図である。
管理端末123のディスプレイに表示される品質推移レポート2101は、タイトル表示部2102と技術者名および会社名表示部2103と技術者2901の品質推移結果表示領域2104とで構成されている。
FIG. 21 is an explanatory diagram showing a form layout example of the quality transition report 2101 regarding the engineer 2901.
The quality transition report 2101 displayed on the display of the management terminal 123 includes a title display unit 2102, a technician name / company name display unit 2103, and a quality transition result display region 2104 of the technician 2901.

品質推移結果表示領域2104の「日付」欄2104a、「評価」欄2104b、「評価P」欄2104c、「規模」欄2104d、「ルール」欄2104e、2104e、・・・、「合計」欄2104f、「必須」欄2104g、「個別」欄2104h、「推移」欄2104iの表示内容は、図19に示すプロジェクトに関する評価レポート1901における品質推移結果表示領域1904の表示内容と同じである。   “Date” field 2104a, “Evaluation” field 2104b, “Evaluation P” field 2104c, “Scale” field 2104d, “Rule” fields 2104e, 2104e,..., “Total” field 2104f, The display contents of the “essential” column 2104g, the “individual” column 2104h, and the “transition” column 2104i are the same as the display contents of the quality transition result display area 1904 in the evaluation report 1901 related to the project shown in FIG.

図22は技術者2901に関する品質推移レポート2201の帳票レイアウト例を示す説明図である。
管理端末123のディスプレイに表示される品質推移レポート2201はタイトル表示部2202と会社名表示部2203と会社の品質推移結果表示領域2204とで構成されている。
FIG. 22 is an explanatory diagram showing a form layout example of the quality transition report 2201 related to the engineer 2901.
The quality transition report 2201 displayed on the display of the management terminal 123 is composed of a title display section 2202, a company name display section 2203, and a company quality transition result display area 2204.

そして、品質推移結果表示領域2204の「日付」欄2204a、「評価」欄2204b、「評価P」欄2204c、「規模」欄2204d、「ルール」欄2204e、2204e、・・・、「合計」欄2204f、「必須」欄2204g、「個別」欄2204h、「推移」欄2204iの表示内容は、図19に示すプロジェクトに関する評価レポート1901における品質推移結果表示領域1904の表示内容と同じである。   The “date” field 2204a, “evaluation” field 2204b, “evaluation P” field 2204c, “scale” field 2204d, “rule” fields 2204e, 2204e,..., “Total” field in the quality transition result display area 2204 The display contents of 2204f, “required” field 2204g, “individual” field 2204h, and “transition” field 2204i are the same as the display contents of the quality transition result display area 1904 in the evaluation report 1901 related to the project shown in FIG.

図23はソースコード評価システムのソースコード管理部におけるソース管理機能の処理の流れを示すフローチャートである。   FIG. 23 is a flowchart showing the flow of processing of the source management function in the source code management unit of the source code evaluation system.

以下、このフローチャートに基づいてソースコード管理部101のソース管理のための処理動作を説明する。   Hereinafter, the processing operation for source management of the source code management unit 101 will be described based on this flowchart.

ソースコード管理部101は開発マシン121のディスプレイに、アクセスした技術者2901にプロジェクト102の名称と社員番号を入力するよう促す画面を表示し(ステップ2301)、ソースコード管理部101は、開発マシン121に技術者2901が入力したプロジェクト102の名称のデータを取得し(ステップ2302)、社員番号のデータを取得する(ステップ2303)。   The source code management unit 101 displays a screen prompting the accessing engineer 2901 to input the name and employee number of the project 102 on the display of the development machine 121 (step 2301). The data of the name of the project 102 input by the engineer 2901 is acquired (step 2302), and the employee number data is acquired (step 2303).

プロジェクト102の名称と社員番号を取得するとソースコード管理部101は、開発マシン121のディスプレイに技術者2901が作成した最新のソースコード103を入力するように促す画面を表示し、技術者2901が入力した最新のソースコード103を取得する(ステップ2304)。   When the name and employee number of the project 102 are acquired, the source code management unit 101 displays a screen prompting the engineer 2901 to input the latest source code 103 created by the engineer 2901 on the display of the development machine 121. The latest source code 103 is acquired (step 2304).

次にソースコード管理部101は取得したソースコード103のファイル名と最終更新日時を調べる(ステップ2305)。ソースコード管理部101はソースコードのファイル名の拡張子からソースコードの種類を判別する(ステップ2306)。   Next, the source code management unit 101 checks the file name and the last update date / time of the acquired source code 103 (step 2305). The source code management unit 101 determines the type of the source code from the extension of the file name of the source code (step 2306).

ソースコード管理部101はソースコードの行数を計測する(ステップ2307)。ソースコード管理部101はデータ格納部111のコーディング経過情報113の、「プロジェクト名」欄501、「ソース名」欄502、「ファイルの更新日時」欄503、「ソース種類」欄504、「ステップ数」欄505、「社員番号」欄506に取得したソースコード103を挿入し登録する(ステップ2308)。   The source code management unit 101 measures the number of lines in the source code (step 2307). The source code management unit 101 includes a “project name” column 501, a “source name” column 502, a “file update date / time” column 503, a “source type” column 504, “number of steps” in the coding progress information 113 of the data storage unit 111. The obtained source code 103 is inserted and registered in the “column” 505 and the “employee number” column 506 (step 2308).

図24はソースコード評価システム100の制御部105における命令処理機能の処理の流れを示すフローチャート図である。   FIG. 24 is a flowchart showing a process flow of the instruction processing function in the control unit 105 of the source code evaluation system 100.

以下、このフローチャートに基づいて制御部105の命令処理の動作を説明する。   Hereinafter, the operation of the instruction processing of the control unit 105 will be described based on this flowchart.

制御部105はインスペクションの実行時間になると定期的に起動し(ステップ2401)、実行中にエラーが発生した場合に備えて実行環境をバックアップする(ステップ2402)。   The control unit 105 periodically starts when the inspection execution time comes (step 2401), and backs up the execution environment in case an error occurs during execution (step 2402).

制御部105はソースコード103をコンパイルするのに必要となるライブラリやモジュール等のコンパイル環境を読み込む(ステップ2403)。   The control unit 105 reads a compilation environment such as a library or a module necessary for compiling the source code 103 (step 2403).

制御部105はインスペクションにおける検討の規則として、プロジェクト102の状態にあったルールモジュールを選択し設定する(ステップ2404)。制御部105は、コーディング経過情報113を検索し、蓄積されたソースコード103について最新のソースコード103の一覧を作成する(ステップ2405)。   The control unit 105 selects and sets a rule module suitable for the state of the project 102 as a rule for examination in the inspection (step 2404). The control unit 105 searches the coding progress information 113 and creates a list of the latest source code 103 for the accumulated source code 103 (step 2405).

制御部105は現在の日付を調べ、診断履歴情報114にインスペクション対象とするソースコードのデータとして「プロジェクト名」欄601のプロジェクト名、「診断日」欄602の診断日、「ソース名」欄603のソース名、「更新日時」欄604に表示されたソースファイルの最終更新日時を挿入する(ステップ2406)。次に、制御部105は最新のソースコード103を読み込み(ステップ2407)、コンパイルする(ステップ2408)。   The control unit 105 checks the current date, and in the diagnosis history information 114, as the source code data to be inspected, the project name in the “project name” column 601, the diagnosis date in the “diagnosis date” column 602, and the “source name” column 603 The last update date and time of the source file displayed in the “update date and time” column 604 is inserted (step 2406). Next, the control unit 105 reads the latest source code 103 (step 2407) and compiles (step 2408).

制御部105は最新のソースコード103の一覧から、前回の診断以降に更新されているファイルを選択する(ステップ2409)。制御部105は、前回の診断以降に更新されているファイルにおいて、インスペクション対象外とされている部分に目印をつけるためフィルタリングする(ステップ2410)。   The control unit 105 selects a file that has been updated since the previous diagnosis from the list of the latest source code 103 (step 2409). The control unit 105 performs filtering in order to mark a portion that is not subject to inspection in the file that has been updated since the previous diagnosis (step 2410).

制御部105はソース検査部106を呼び出し、インスペクションを実行する(ステップ2411)。制御部105は品質診断部108を呼び出し、インスペクションの結果を集計し、評価をつける(ステップ2412)。   The control unit 105 calls the source inspection unit 106 and executes inspection (step 2411). The control unit 105 calls the quality diagnosis unit 108, totals the inspection results, and gives an evaluation (step 2412).

制御部105は能力診断部109を呼び出し、コーディングの能力評価推移およびソースコード103の修正能力を分析し、評価レポート110を出力する。   The control unit 105 calls the capability diagnosis unit 109, analyzes the coding capability evaluation transition and the correction capability of the source code 103, and outputs an evaluation report 110.

図25はソースコード評価システム100のソース検査部106におけるインスペクション機能の処理の流れを示すフローチャート図である。   FIG. 25 is a flowchart showing the flow of processing of the inspection function in the source inspection unit 106 of the source code evaluation system 100.

以下、このフローチャートに基づいてソース検査部106の動作を説明する。   Hereinafter, the operation of the source inspection unit 106 will be described based on this flowchart.

ソース検査部106はインスペクションの規則として設定されているルールモジュールを読み込む(ステップ2501)。ソース検査部106は、ソースコード評価システム100を構成するハードウェアのマシンスペックに基づいて、一度に解析するソースコード103の数を決定する(ステップ2502)。   The source inspection unit 106 reads a rule module set as an inspection rule (step 2501). The source inspection unit 106 determines the number of source codes 103 to be analyzed at one time based on the machine specifications of the hardware that constitutes the source code evaluation system 100 (step 2502).

ソース検査部106は、解析対象のソースコード103を幾つかのソースコード103のセットにまとめる(ステップ2503)。ソース検査部106は、全てのソースコード103のセットについて一つずつ(ステップ2504)、全てのソースコード103のセットについて実行するまで(ステップ2519)、ステップ2505からステップ2518までを実行する。   The source inspection unit 106 collects the source code 103 to be analyzed into a set of several source codes 103 (step 2503). The source checking unit 106 executes step 2505 to step 2518 one by one for all sets of source codes 103 (step 2504) until it is executed for all sets of source codes 103 (step 2519).

ソース検査部106は、全てのソースコード103について一つずつ(ステップ2505)、全てのソースコード103について実行するまで(ステップ2518)、ステップ2506からステップ2517までを実行する。   The source checking unit 106 executes step 2506 to step 2517 one by one for all the source codes 103 (step 2505) until it is executed for all the source codes 103 (step 2518).

ソース検査部106はソースコード103を読み込み、コーディング経過情報113の対応するソースコード103の「検査日」欄507に現在日を挿入する(ステップ2506)。ソース検査部106は読み込んだソースコード103から構文木を生成する(ステップ2507)。ソース検査部106はファイルの内容を解析し、構文木に対応するファイル情報を生成する(ステップ2508)。ソース検査部106は、対応するソースコード103の中で呼ばれているネイティブコード読み込む(ステップ2509)。   The source inspection unit 106 reads the source code 103 and inserts the current date into the “inspection date” column 507 of the corresponding source code 103 of the coding progress information 113 (step 2506). The source checking unit 106 generates a syntax tree from the read source code 103 (step 2507). The source checking unit 106 analyzes the contents of the file and generates file information corresponding to the syntax tree (step 2508). The source inspection unit 106 reads the native code called in the corresponding source code 103 (step 2509).

次に、ソース検査部106は、ネイティブコードを解析し、変数や関数についての基本情報を生成する。ネイティブコードが読み込めなかった場合、リフレクションを使用し、同等の情報を生成する(ステップ2510)。ソース検査部106は、登録されているルールにつき一つずつ(ステップ2511)、全てのルールについて実行するまで(ステップ2517)、ステップ2512からステップ2516までを実行する。ソース検査部106は、構文木を辿るプログラムを走らせ、構文木のトークンについて一つずつ(ステップ2512)、全てのトークンを辿るまで(ステップ2516)、ステップ2513からステップ2515までを実行する。   Next, the source inspection unit 106 analyzes the native code and generates basic information about variables and functions. If the native code cannot be read, reflection is used to generate equivalent information (step 2510). The source inspection unit 106 executes steps 2512 to 2516 one by one for each registered rule (step 2511) until it is executed for all rules (step 2517). The source checking unit 106 runs a program that follows the syntax tree, and executes steps 2513 to 2515 one by one for each token in the syntax tree (step 2512) until all tokens are traced (step 2516).

ソース検査部106は読み込んだルールモジュールを実行し、インスペクションの確認内容に引っ掛かったか判定する(ステップ2513)。   The source inspection unit 106 executes the read rule module, and determines whether it is caught by the inspection confirmation content (step 2513).

ソース検査部106は、井インスペクションの結果が正の場合、そのコードが記述されている行番号がインスペクション対象外としてフィルタリングされているか判定する(ステップ2514)。次に、ソース検査部106は、判定結果が否の場合、チェック結果(ステップ2515)をデータ格納部111のインスペクション結果情報116に出力し蓄積する。   When the result of the well inspection is positive, the source inspection unit 106 determines whether or not the line number in which the code is described is filtered out of the inspection target (step 2514). Next, when the determination result is negative, the source inspection unit 106 outputs the check result (step 2515) to the inspection result information 116 of the data storage unit 111 and accumulates it.

図26は本実施の形態におけるソースコード評価システム100の品質診断部108におけるデータ分析機能の分析処理および品質評価処理の流れを示すフローチャートである。   FIG. 26 is a flowchart showing the flow of analysis processing and quality evaluation processing of the data analysis function in the quality diagnosis unit 108 of the source code evaluation system 100 in this embodiment.

以下、このフローチャートに基づいて品質管理部108のデータ分析処理および品質評価処理について説明する。   Hereinafter, data analysis processing and quality evaluation processing of the quality management unit 108 will be described based on this flowchart.

品質管理部108はプロジェクト102の診断履歴情報114を読み込む(ステップ2601)、品質管理部108は「プロジェクト名」欄601に表示されたプロジェクト名と「ソース名」欄603に表示されたソース名と「更新日時」欄604に表示された更新日時に対応するソースのインスペクション結果情報116を全て読み込む(ステップ2602)。品質管理部108はコーディング経過情報113から対応するソースのデータを読み込む(ステップ2603)。   The quality management unit 108 reads the diagnosis history information 114 of the project 102 (step 2601). The quality management unit 108 reads the project name displayed in the “project name” column 601 and the source name displayed in the “source name” column 603. All the inspection result information 116 of the source corresponding to the update date displayed in the “update date” column 604 is read (step 2602). The quality management unit 108 reads corresponding source data from the coding progress information 113 (step 2603).

技術者情報112から対応する技術者2901のデータを読み込む(ステップ2604)。
品質管理部108はルール情報115を読み込む(2605)。品質管理部108は診断結果につき一つずつ(ステップ2606)、全ての日付を辿るまで(ステップ2619)、ステップ2609からステップ2608までを実行する。
The data of the corresponding engineer 2901 is read from the engineer information 112 (step 2604).
The quality management unit 108 reads the rule information 115 (2605). The quality management unit 108 executes step 2609 to step 2608 one by one for each diagnosis result (step 2606) until all dates are traced (step 2619).

品質管理部108は診断日に一致するソース一覧を取得する(ステップ2607)。品質管理部108は、ソース一覧に対応するインスペクション結果情報116を取得し、以上のデータを結合し1レコードとしたコレクションを生成する(ステップ2608)。   The quality management unit 108 acquires a source list that matches the diagnosis date (step 2607). The quality management unit 108 acquires the inspection result information 116 corresponding to the source list, and generates a collection that combines the above data into one record (step 2608).

品質管理部108はコレクションをプロジェクト102全体で集計する(ステップ2609)。品質管理部108はコレクションをルールごとに集計する(ステップ2610)。品質管理部108はコレクションをソースごとに集計する(ステップ2611)。品質管理部108はコレクションを技術者2901ごとに集計する(ステップ2612)。品質管理部108はコレクションを所属会社ごとに集計する(ステップ2613)。   The quality control unit 108 totals the collection for the entire project 102 (step 2609). The quality management unit 108 aggregates the collection for each rule (step 2610). The quality management unit 108 aggregates the collection for each source (step 2611). The quality management unit 108 totals the collection for each engineer 2901 (step 2612). The quality management unit 108 aggregates the collection for each company (step 2613).

品質管理部108は更新日付が最新のものか判定する(ステップ2614)。品質管理部108はステップ2614の結果が正であった場合、評価が最も悪いソースを10個選択する(ステップ2615)。   The quality management unit 108 determines whether the update date is the latest (step 2614). If the result of step 2614 is positive, the quality management unit 108 selects 10 sources with the worst evaluation (step 2615).

品質管理部108は評価が最も悪い技術者2901を10人選択する(ステップ2616)、品質管理部108は評価が最も悪い会社を10社選択する(ステップ2617)。ステップ2605の判定結果が負の場合には、品質管理部108は特段の処理は行わない。なお、ステップ2615、ステップ2616、ステップ2617においてそれぞれの評価の悪いものを選択するときの選択個個数は任意に設定することができる。   The quality management unit 108 selects 10 engineers 2901 having the worst evaluation (step 2616), and the quality management unit 108 selects 10 companies having the worst evaluation (step 2617). If the determination result in step 2605 is negative, the quality management unit 108 does not perform any special processing. It should be noted that the number of items to be selected at the time of selecting each of the poor evaluations at step 2615, step 2616, and step 2617 can be arbitrarily set.

品質管理部108はプロジェクト102に関する品質評価レポート1301を出力し(ステップ2619)、品質管理部108はソースに関する品質評価レポート1401を出力する(ステップ2620)。   The quality management unit 108 outputs a quality evaluation report 1301 related to the project 102 (step 2619), and the quality management unit 108 outputs a quality evaluation report 1401 related to the source (step 2620).

品質管理部108は技術者2901に関する品質評価レポート1501を出力し(ステップ2621)、品質管理部108は会社に関する品質評価レポート1601を出力する(ステップ2622)。   The quality management unit 108 outputs a quality evaluation report 1501 related to the engineer 2901 (step 2621), and the quality management unit 108 outputs a quality evaluation report 1601 related to the company (step 2622).

品質管理部108は技術者2901に関する能力評価レポート1701を出力する(ステップ2623)。そして、品質管理部108は会社に関する能力評価レポート1801を出力する(ステップ2624)。   The quality management unit 108 outputs a capability evaluation report 1701 related to the engineer 2901 (step 2623). Then, the quality management unit 108 outputs a capability evaluation report 1801 about the company (step 2624).

品質管理部108はプロジェクト102に関する品質推移レポート1901を出力する(ステップ2625)。品質管理部108はソースに関する品質推移レポート2001を出力する(ステップ2626)。品質管理部108は技術者2901に関する品質推移レポート2101を出力する(ステップ2627)。品質管理部108は会社に関する品質推移レポート2201を出力する(ステップ2628)。   The quality management unit 108 outputs a quality transition report 1901 related to the project 102 (step 2625). The quality management unit 108 outputs a quality transition report 2001 related to the source (step 2626). The quality management unit 108 outputs a quality transition report 2101 regarding the engineer 2901 (step 2627). The quality management unit 108 outputs a quality transition report 2201 regarding the company (step 2628).

図27は、本実施の形態に係るソースコード評価システム100の品質診断部108におけるデータ集計機能の集計処理の流れを示すフローチャートである。
以下、品質診断部108のデータ集計処理の詳細をフローチャートに従って説明する。
FIG. 27 is a flowchart showing a flow of a totaling process of the data totaling function in the quality diagnosis unit 108 of the source code evaluation system 100 according to the present embodiment.
Hereinafter, details of the data totaling process of the quality diagnosis unit 108 will be described with reference to a flowchart.

品質診断部108はコレクションに含まれるインスペクション結果情報116のデータレコード数を取得する(ステップ2701)。品質診断部108は必須変数と個別変数とルールごとの変数を用意し、値を0に初期化する(ステップ2702)。必須変数とは図8に示す「修正の必要」欄801bにおいて修正の必要が「必須」と定義された項目を変動させる関数であり、個別変数とは図8に示す「修正の必要」欄801bにおいて「個別」と定義された項目を変動させる関数である。次に、品質診断部108は評価ポイントを格納する評価ポイント変数を用意し、値を0に初期化する(ステップ2703)。次に、品質診断部108はステップ数を格納するステップ数変数を用意し、値を0に初期化する(ステップ2704)。品質診断部108はコレクションに含まれる全てのデータに対して一つずつ(ステップ2705)、全てのデータについて実行するまで(ステップ2712)、ステップ2706からステップ2711までの処理を実行する。   The quality diagnosis unit 108 acquires the number of data records of the inspection result information 116 included in the collection (step 2701). The quality diagnosis unit 108 prepares essential variables, individual variables, and variables for each rule, and initializes the values to 0 (step 2702). The essential variable is a function that fluctuates the item defined as “required” that needs to be corrected in the “necessary correction” column 801b shown in FIG. 8, and the individual variable is the “necessary correction” column 801b shown in FIG. This is a function that fluctuates items defined as “individual” in FIG. Next, the quality diagnosis unit 108 prepares an evaluation point variable for storing the evaluation point, and initializes the value to 0 (step 2703). Next, the quality diagnosis unit 108 prepares a step number variable for storing the number of steps, and initializes the value to 0 (step 2704). The quality diagnosis unit 108 executes processing from step 2706 to step 2711 one by one for all data included in the collection (step 2705) until it is executed for all data (step 2712).

品質診断部108はルールに対応する変数を1繰り上げる(ステップ2706)。品質診断部108はインスペクション結果情報116のルールIDからルールの重要度を検索する(ステップ2707)。品質診断部108はルールの重要度が最重要か又は重要であるか判定する(ステップ2708)。   The quality diagnosis unit 108 increments the variable corresponding to the rule by 1 (step 2706). The quality diagnosis unit 108 retrieves the importance of the rule from the rule ID of the inspection result information 116 (step 2707). The quality diagnosis unit 108 determines whether the importance of the rule is the most important or important (step 2708).

ステップ2708の判定結果が正である場合、品質診断部108は必須変数を1繰り上げる(ステップ2709)。ステップ2708の判定結果が負である場合、品質診断部108は個別変数を1繰り上げる(ステップ2710)。   If the determination result in step 2708 is positive, the quality diagnosis unit 108 increments the essential variable by 1 (step 2709). If the determination result in step 2708 is negative, the quality diagnosis unit 108 increments the individual variable by 1 (step 2710).

品質診断部108はルールの重要度と対応する評価ポイントを評価ポイント変数に加算する(ステップ2711)。品質診断部108はコレクションに含まれる技術者2901の数を技術者変数に代入する(ステップ2713)。品質診断部108はコレクションに含まれる会社の数を会社変数に代入する(ステップ2714)。品質診断部108はコレクションに含まれる全てのソースに対して一つずつ(ステップ2715)、全てのソースについて実行するまで(ステップ2717)、ステップ2716の処理を実行する。   The quality diagnosis unit 108 adds the evaluation point corresponding to the importance of the rule to the evaluation point variable (step 2711). The quality diagnosis unit 108 assigns the number of engineers 2901 included in the collection to the engineer variable (step 2713). The quality diagnosis unit 108 substitutes the number of companies included in the collection into a company variable (step 2714). The quality diagnosis unit 108 executes the process of step 2716 one by one for all sources included in the collection (step 2715) until it is executed for all sources (step 2717).

品質診断部108はソースの規模をステップ数変数に加算する(ステップ2716)。品質診断部108はソース変数にソースの数を代入する(ステップ2718)。品質診断部108は評価ポイント変数に対しステップ数変数によって除算を行い、得られた値を評価ポイント変数に代入する(ステップ2719)。   The quality diagnosis unit 108 adds the size of the source to the step number variable (step 2716). The quality diagnosis unit 108 substitutes the number of sources into the source variable (step 2718). The quality diagnosis unit 108 divides the evaluation point variable by the step number variable, and substitutes the obtained value for the evaluation point variable (step 2719).

図28は本実施の形態に係るソースコード評価システム100の能力評価部109における能力評価機能の処理の流れを示すフローチャートである。
以下、このフローチャートに基づいて能力評価部109の能力評価処理を説明する。
FIG. 28 is a flowchart showing a processing flow of the capability evaluation function in the capability evaluation unit 109 of the source code evaluation system 100 according to the present embodiment.
Hereinafter, the capability evaluation process of the capability evaluation unit 109 will be described based on this flowchart.

能力評価部109は、プロジェクト102の終了時のみ、以降の処理を行う。能力評価部109は、プロジェクト102の期間中で最初の技術者2901の品質評価ポイントを取得し、対応する能力評価を算出する(ステップ2801)。   The ability evaluation unit 109 performs the subsequent processing only at the end of the project 102. The capability evaluation unit 109 acquires quality evaluation points of the first engineer 2901 during the period of the project 102, and calculates a corresponding capability evaluation (step 2801).

能力評価部109は、プロジェクト102の開発期間中で最後の技術者2901の品質評価ポイントを取得し、対応する能力評価を算出する(ステップ2802)。能力評価部109は最初と最後の能力評価が一致するか判定する(ステップ2803)。ステップ2803の判定結果が正の場合、能力評価部109は最初の能力評価を最終能力評価とし(ステップ2804)、技術者情報112の「社員番号」欄401に表示される社員番号と「ソース種類」欄404に表示されるソース種類と「能力評価推移」欄406に表示される能力評価推移および修正能力を更新し、プロジェクト数を1加算する(ステップ2812)。   The capability evaluation unit 109 acquires the quality evaluation point of the last engineer 2901 during the development period of the project 102, and calculates the corresponding capability evaluation (step 2802). The ability evaluation unit 109 determines whether the first and last ability evaluations match (step 2803). If the determination result in step 2803 is positive, the ability evaluation unit 109 sets the first ability evaluation as the final ability evaluation (step 2804), and displays the employee number and “source type” displayed in the “employee number” column 401 of the engineer information 112. The source type displayed in the “404” field, the capability evaluation transition and the correction capability displayed in the “ability evaluation transition” column 406 are updated, and the number of projects is incremented by 1 (step 2812).

一方、ステップ2803の判定結果が負の場合、能力評価部109は、最初と最後の能力評価記号を並べるとともに−修正能力記号1202bを表示する(ステップ2805)。   On the other hand, if the determination result in step 2803 is negative, the ability evaluation unit 109 arranges the first and last ability evaluation symbols and displays the -corrected ability symbol 1202b (step 2805).

能力評価部109はプロジェクト102の期間中で最初に技術者2901の評価ポイントが変化した診断日を調べる(ステップ2806)。能力評価部109はプロジェクト102の期間中で技術者2901の能力評価がAに変化した診断日を調べる(ステップ2807)。能力評価部109はステップ2807の診断日からステップ2806の診断日を引き変動期間を調査する(ステップ2808)。   The ability evaluation unit 109 first checks the diagnosis date when the evaluation point of the engineer 2901 has changed during the period of the project 102 (step 2806). The capability evaluation unit 109 checks the diagnosis date when the capability evaluation of the engineer 2901 has changed to A during the period of the project 102 (step 2807). The ability evaluation unit 109 checks the fluctuation period by subtracting the diagnosis date of step 2806 from the diagnosis date of step 2807 (step 2808).

能力評価部109は、変動期間が14日以内か判定する(ステップ2809)。ステップ2810の判定結果が正の場合、能力評価部109は能力評価記号の後ろに+修正能力記号1202aを表示する。一方、ステップ2810の判定結果が負の場合、能力評価部109は能力評価記号の後ろに−修正能力記号1202bを表示する。そして、能力評価部109はステップ2812を実行する。   The ability evaluation unit 109 determines whether the variation period is within 14 days (step 2809). If the determination result in step 2810 is positive, the ability evaluation unit 109 displays a + corrected ability symbol 1202a after the ability evaluation symbol. On the other hand, if the determination result in step 2810 is negative, the ability evaluation unit 109 displays a -corrected ability symbol 1202b after the ability evaluation symbol. Then, the ability evaluation unit 109 executes Step 2812.

本発明の一の実施の形態におけるソースコード評価システムを用いたコードインスペクションシステムのシステム構成図である。It is a system configuration figure of a code inspection system using a source code evaluation system in one embodiment of the present invention. 同上ソースコード評価システムの構成を示すブロック図である。It is a block diagram which shows the structure of a source code evaluation system same as the above. 同上ソースコード評価システムの処理フローを示すフロー図である。It is a flowchart which shows the processing flow of a source code evaluation system same as the above. 同上ソースコード評価システムの技術者情報のデータ構成を示す説明図である。It is explanatory drawing which shows the data structure of the engineer information of a source code evaluation system same as the above. 同上ソースコード評価システムのコーディング経過情報のデータ構成を示す説明図である。It is explanatory drawing which shows the data structure of the coding progress information of a source code evaluation system same as the above. 同上ソースコード評価システムの診断履歴のデータ構成を示す説明図である。It is explanatory drawing which shows the data structure of the diagnostic history of a source code evaluation system same as the above. 同上ソースコード評価システムのルール情報のデータ構成を示す説明図である。It is explanatory drawing which shows the data structure of the rule information of a source code evaluation system same as the above. 同上ソースコード評価システムにおけるルールの重要度を示す説明図である。It is explanatory drawing which shows the importance of the rule in a source code evaluation system same as the above. 同上ソースコード評価システムにおけるルールの種類を示す説明図である。It is explanatory drawing which shows the kind of rule in a source code evaluation system same as the above. 同上ソースコード評価システムのインスペクション結果情報のデータ構成を示す説明図である。It is explanatory drawing which shows the data structure of the inspection result information of a source code evaluation system same as the above. 同上ソースコード評価システムの品質評価基準を示す説明図である。It is explanatory drawing which shows the quality evaluation criteria of a source code evaluation system same as the above. 同上ソースコード評価システムの能力評価推移および修正能力の表示例を示す説明図である。It is explanatory drawing which shows the example of a display of the capability evaluation transition and correction capability of a source code evaluation system same as the above. 同上ソースコード評価システムのプロジェクトに関する品質評価レポートの帳票レイアウト例を示す説明図である。It is explanatory drawing which shows the form layout example of the quality evaluation report regarding the project of a source code evaluation system same as the above. 同上ソースコード評価システムのソースに関する品質評価レポートの帳票レイアウト例を示す説明図である。It is explanatory drawing which shows the form layout example of the quality evaluation report regarding the source of a source code evaluation system same as the above. 同上ソースコード評価システムの会社に関する品質評価レポートの帳票レイアウト例を示す説明図である。It is explanatory drawing which shows the form layout example of the quality evaluation report regarding the company of a source code evaluation system same as the above. 同上ソースコード評価システムの会社に関する品質評価レポートの帳票レイアウト例を示す説明図である。It is explanatory drawing which shows the form layout example of the quality evaluation report regarding the company of a source code evaluation system same as the above. 同上ソースコード評価システムの技術者に関する技術評価レポートの帳票レイアウト例を示す説明図である。It is explanatory drawing which shows the form layout example of the technical evaluation report regarding the engineer of a source code evaluation system same as the above. 同上ソースコード評価システムの会社に関する能力評価レポートの帳票レイアウト例を示す説明図である。It is explanatory drawing which shows the form layout example of the capability evaluation report regarding the company of a source code evaluation system same as the above. 同上ソースコード評価システムのプロジェクトに関する品質推移レポートの帳票レイアウト例を示す説明図である。It is explanatory drawing which shows the form layout example of the quality transition report regarding the project of a source code evaluation system same as the above. 同上ソースコード評価システムのソースに関する品質推移レポートの帳票レイアウト例を示す説明図である。It is explanatory drawing which shows the form layout example of the quality transition report regarding the source of a source code evaluation system same as the above. 同上ソースコード評価システムの技術者に関する品質推移レポートの帳票レイアウト例を示す説明図である。It is explanatory drawing which shows the form layout example of the quality transition report regarding the engineer of a source code evaluation system same as the above. 同上ソースコード評価システムの会社に関する品質推移レポートの帳票レイアウト例を示す説明図である。It is explanatory drawing which shows the form layout example of the quality transition report regarding the company of a source code evaluation system same as the above. 同上ソースコード評価システムのソースコード管理部におけるソース管理機能の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of the source management function in the source code management part of a source code evaluation system same as the above. 同上ソースコード評価システムの制御部における命令処理機能の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of the instruction processing function in the control part of a source code evaluation system same as the above. 同上ソースコード評価システムのソース検査部におけるインスペクション機能の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of the inspection function in the source test | inspection part of a source code evaluation system same as the above. 同上ソースコード評価システムの品質診断部における品質診断機能の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of the quality diagnostic function in the quality diagnostic part of a source code evaluation system same as the above. 同上ソースコード評価システムの品質診断部におけるデータ集計機能の処理の流れを示すフローチャート図である。It is a flowchart figure which shows the flow of a process of the data totaling function in the quality diagnostic part of a source code evaluation system same as the above. 同上ソースコード評価システムの能力診断部における能力診断機能の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process of the capability diagnosis function in the capability diagnosis part of a source code evaluation system same as the above. 従来のインスペクションにおける業務フローを説明した説明図である。It is explanatory drawing explaining the work flow in the conventional inspection. 従来のインスペクションにおいて評価の対象となるソースコードの模式図である。It is a schematic diagram of the source code to be evaluated in the conventional inspection. 従来のインスペクションの結果の例を示す模式図である。It is a schematic diagram which shows the example of the result of the conventional inspection.

符号の説明Explanation of symbols

100・・ソースコード評価システム、101・・ソースコード管理部、102・・プロジェクト、103・・ソースコード、104・・品質検査部、105・・制御部、106・・ソース検査部、107・・品質評価部、108・・品質診断部、109・・能力診断部、110・・評価レポート、111・・データ格納部、112・・技術者情報、113・・コーディング経過情報、114・・診断情報、115・・ルール情報、116・・インスペクション結果情報、121・・開発マシン、122・・イントラネット、123・・管理端末、406・・「能力評価推移」欄、801・・ルールの重要度の一例、901・・ルールの種類の一例、1101・・品質評価基準の一例、1201・・能力評価推移および修正能力の表示の一例、1301・・プロジェクトに関する評価レポートの一例、1306・・推移グラフ、1307・・ルールごとの診断結果表示領域、1401・・ソースに関する評価レポートの一例、1403・・評価が悪いソースのトップ10を示すグラフ、1404・・ソースごとの診断結果表示領域、1501・・技術者に関する評価レポートの一例、1503・・評価が悪い技術者のトップ10を示すグラフ、1504・・技術者ごとの診断結果表示領域、1601・・会社に関する品質評価レポートの一例、1604・・会社ごとの診断結果表示領域、1701・・技術者に関する能力評価レポートの一例、1705・・技術者の能力評価推移の表示領域、1706・・評価ポイントの推移グラフ、1707・・ルールごとの診断結果表示領域、1801・・会社に関する能力評価レポートの一例、1805・・評価ポイントの推移グラフ、1806・・技術者ごとの診断結果表示領域、1901・・プロジェクトに関する品質推移レポートの一例、1904・・プロジェクトの品質推移結果表示領域、2001・・ソースに関する品質評価推移レポートの一例、2004・・ソースの品質推移結果表示領域、2101・・技術者に関する品質評価推移レポートの一例、2104・・技術者の品質推移結果表示領域、2201・・会社に関する品質推移レポートの一例、2204・・会社の品質推移結果推移領域、2901・・技術者、2902・・レビュアー、2904・・インスペクション結果レポート、2905・・プロジェクト管理者 100 ... Source code evaluation system 101 ... Source code management part 102 ... Project 103 ... Source code 104 ... Quality inspection part 105 ... Control part 106 ... Source inspection part 107 ... Quality evaluation unit, 108 ... Quality assessment unit, 109 ... Ability diagnosis unit, 110 ... Evaluation report, 111 ... Data storage unit, 112 ... Engineer information, 113 ... Coding progress information, 114 ... Diagnosis information , 115 ・ ・ Rule information, 116 ・ ・ Inspection result information, 121 ・ ・ Development machine, 122 ・ ・ Intranet, 123 ・ ・ Management terminal, 406 ・ ・ “Capability evaluation transition” column, 801 ・ ・ Example of rule importance 901 ... Example of rule types 1101 ... Example of quality evaluation criteria 1201 ... Example of ability evaluation transition and correction ability display 1301 ... Example of project evaluation report 1306 ... Change graph 1307 ..Diagnostic result display area for each rule 1401 ··· An example of an evaluation report on sources, 1403 ··· A graph showing the top 10 of poorly rated sources, 1404 · · A diagnostic result display area for each source, 1501 · · · An example of an evaluation report on engineers, 1503 Graph showing the top 10 engineers with poor performance, 1504 ... Diagnosis result display area for each engineer, 1601 ... Example of quality evaluation report for company, 1604 ... Diagnosis result display area for each company, 1701 ... Engineer Example of ability evaluation report for 1705, ... Display area for engineer ability evaluation transition, 1706, ... Change graph of evaluation points, 1707 ..., Diagnostic result display area for each rule, 1801 ... Example of ability evaluation report for company・ 1805 ・ ・ Change graph of evaluation points, 1806 ・ ・ Diagnostic result display area for each engineer, 1901 ・ ・ Example of quality transition report about the project, 1904 ・ ・Quality transition result display area, 2001 ... Example of quality evaluation transition report on source, 2004 ... Source quality transition result display area, 2101 ... Example of quality evaluation transition report on engineer, 2104 ... Quality transition of engineer Result display area, 2201 ・ ・ Example of quality transition report about company, 2204 ・ ・ Quality transition result transition area of company, 2901 ・ ・ Engineer, 2902 ・ ・ Reviewer, 2904 ・ ・ Inspection result report, 2905 ・ ・ Project manager

Claims (5)

複数の端末からなる分散開発環境で開発されている複数の作業工程を含む設計開発プロジェクトにおいて、前記作業工程毎に生成されるソースコードを評価するソースコード評価システムであって、
前記生成されるソースコード毎にインスペクションを行う品質検査手段と、
前記品質検査手段から出力された前記インスペクションの結果と、前記ソースコードを作成した技術者に関する技術者情報を一元管理する一元管理記憶手段と、
前記ソースコードの不具合の種類に関するルール情報および前記品質検査手段が過去に前記ソースコードに対して行った前記インスペクションの結果に関する診断履歴情報を有するデータ格納手段と、
前記診断履歴情報と前記品質検査手段が出力した前記インスペクションの結果をもとに前記ソースコードの品質および前記技術者の前記ソースコードを作成する能力を評価する品質評価手段とを有し、
前記品質評価手段は、
前記データ格納手段に格納されたインスペクション結果情報に対して前記作業工程単位、前記ソースコード単位、開発者単位に前記ソースコードの品質を診断する品質診断を行い、前記診断結果に前記一元管理記憶手段を参照して、それぞれの単位毎に集計し、出力する
ことを特徴とするソースコード評価システム。
In a design development project including a plurality of work processes developed in a distributed development environment composed of a plurality of terminals, a source code evaluation system for evaluating a source code generated for each work process,
Quality inspection means for performing inspection for each generated source code;
A centralized management storage means for centrally managing the inspection result output from the quality inspection means and the engineer information relating to the engineer who created the source code;
Data storage means having rule information relating to the type of defect in the source code and diagnostic history information relating to a result of the inspection performed by the quality inspection means on the source code in the past;
Quality evaluation means for evaluating the quality of the source code and the ability of the engineer to create the source code based on the diagnosis history information and the inspection result output by the quality inspection means,
The quality evaluation means includes
The inspection result information stored in the data storage means is subjected to quality diagnosis for diagnosing the quality of the source code in units of the work process, the source code, and the developer, and the unified management storage means is included in the diagnosis result. A source code evaluation system characterized in that each unit is aggregated and output with reference to
前記データ格納手段は、前記ソースコード作成の経過を記録するコーディング経過情報をさらに有し、
前記品質検査手段は、前記診断履歴情報を参照し前記コーディング経過情報に含まれる前記ソースコードの一覧から選択した前記ソースコードのインスペクションを行うソース検査手段と、
定期的に前記ソース検査手段に前記インスペクションを実行させる命令処理手段と
をさらに備えたことを特徴とする請求項1に記載のソースコード評価システム。
The data storage means further includes coding progress information for recording the progress of the source code creation,
The quality inspection means refers to the diagnosis history information, the source inspection means for performing inspection of the source code selected from the list of the source code included in the coding progress information;
The source code evaluation system according to claim 1, further comprising: instruction processing means for causing the source inspection means to execute the inspection periodically.
前記品質評価手段は、前記データ格納手段に格納された前記インスペクション結果情報を、前記ルール情報および前記ソースコードおよび前記技術者ごとにそれぞれ集計し、前記ソースコード中から不具合として検出した項目の数に基づいた値をソースコードの規模で除して得た密度を用いて前記ソースコードの品質を診断する品質診断手段と、
前記品質診断手段の診断結果を元に、前記技術者が前記ソースコードの前記不具合を修正する能力としての修正能力を診断する能力診断手段と
をさらに備えたことを特徴とする請求項1または2に記載のソースコード評価システム。
The quality evaluation unit aggregates the inspection result information stored in the data storage unit for each of the rule information, the source code, and the engineer, and determines the number of items detected as defects from the source code. Quality diagnosis means for diagnosing the quality of the source code using the density obtained by dividing the value based on the scale of the source code;
The capability diagnosis means which diagnoses the correction capability as the capability which the said engineer corrects the said malfunction of the said source code based on the diagnostic result of the said quality diagnostic means further, These are characterized by the above-mentioned. Source code evaluation system described in
前記品質評価手段は前記ソースコードの品質と前記技術者の能力との評価に基づいた評価レポートを出力し、前記評価レポートは、前記ソースコードの品質を評価する品質評価レポート、前記ソースコードの品質の推移を評価する品質推移レポート、前記ソースコードを作成する能力を評価する能力評価レポートのうちの一部または全部であることを特徴とする請求項1から3までのいずれか1項に記載のソースコード評価システム。   The quality evaluation means outputs an evaluation report based on the evaluation of the quality of the source code and the ability of the engineer. The evaluation report includes a quality evaluation report for evaluating the quality of the source code, and the quality of the source code. The quality transition report for evaluating the transition of the source code, and the capability evaluation report for evaluating the ability to create the source code are part or all of the report. Source code evaluation system. 前記評価レポートは前記技術者単位、前記ソースコード単位、前記技術者の所属する会社単位、前記設計開発プロジェクトにおけるソフトウェア開発単位のうちの一部または全部の単位で出力されることを特徴とする請求項4に記載のソースコード評価システム。   The evaluation report is output in a part or all of the engine unit, the source code unit, a company unit to which the engineer belongs, and a software development unit in the design development project. Item 5. The source code evaluation system according to Item 4.
JP2004242837A 2004-08-23 2004-08-23 Source code evaluating system Pending JP2006059276A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004242837A JP2006059276A (en) 2004-08-23 2004-08-23 Source code evaluating system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004242837A JP2006059276A (en) 2004-08-23 2004-08-23 Source code evaluating system

Publications (1)

Publication Number Publication Date
JP2006059276A true JP2006059276A (en) 2006-03-02

Family

ID=36106679

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004242837A Pending JP2006059276A (en) 2004-08-23 2004-08-23 Source code evaluating system

Country Status (1)

Country Link
JP (1) JP2006059276A (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010176192A (en) * 2009-01-27 2010-08-12 Mitsubishi Electric Corp Support method and apparatus for designing system collaboration platform, and design support program
JP2010186394A (en) * 2009-02-13 2010-08-26 Hitachi Software Eng Co Ltd Result evaluation system for system developer, system for evaluating difficulty of module development, and delay state determination system
JP2011180811A (en) * 2010-03-01 2011-09-15 Nec Corp Apparatus, system and method for evaluating content, method for displaying content evaluation, and program
JP2014123246A (en) * 2012-12-21 2014-07-03 Mitsubishi Electric Corp Software reliability evaluation device, software reliability evaluation method, and program
JP2015146176A (en) * 2014-09-04 2015-08-13 ギノ株式会社 Programming skill evaluation apparatus, programming skill evaluation method, recruiting information selection apparatus, and recruiting information selection method
KR101547248B1 (en) * 2013-12-10 2015-08-25 슈어소프트테크주식회사 Moulde and method for producting total quality score of software, and computer readable recording medium having program the method
JP2021163016A (en) * 2020-03-31 2021-10-11 株式会社日本総合研究所 Management server in system for evaluating serviceability of source code, management method and program
US11392371B2 (en) 2018-11-28 2022-07-19 Fujitsu Limited Identification of a partial code to be refactored within a source code

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010176192A (en) * 2009-01-27 2010-08-12 Mitsubishi Electric Corp Support method and apparatus for designing system collaboration platform, and design support program
JP2010186394A (en) * 2009-02-13 2010-08-26 Hitachi Software Eng Co Ltd Result evaluation system for system developer, system for evaluating difficulty of module development, and delay state determination system
JP2011180811A (en) * 2010-03-01 2011-09-15 Nec Corp Apparatus, system and method for evaluating content, method for displaying content evaluation, and program
JP2014123246A (en) * 2012-12-21 2014-07-03 Mitsubishi Electric Corp Software reliability evaluation device, software reliability evaluation method, and program
KR101547248B1 (en) * 2013-12-10 2015-08-25 슈어소프트테크주식회사 Moulde and method for producting total quality score of software, and computer readable recording medium having program the method
JP2015146176A (en) * 2014-09-04 2015-08-13 ギノ株式会社 Programming skill evaluation apparatus, programming skill evaluation method, recruiting information selection apparatus, and recruiting information selection method
US11392371B2 (en) 2018-11-28 2022-07-19 Fujitsu Limited Identification of a partial code to be refactored within a source code
JP2021163016A (en) * 2020-03-31 2021-10-11 株式会社日本総合研究所 Management server in system for evaluating serviceability of source code, management method and program

Similar Documents

Publication Publication Date Title
CN110232024B (en) Software automation test framework and test method
US7904802B1 (en) System and method for software code review
US7895565B1 (en) Integrated system and method for validating the functionality and performance of software applications
Felderer et al. Integrating risk-based testing in industrial test processes
US20140123110A1 (en) Monitoring and improving software development quality
CN112817865A (en) Coverage precision test method and system based on componentized distributed system
Wen et al. Blimp tracer: Integrating build impact analysis with code review
Bigonha et al. The usefulness of software metric thresholds for detection of bad smells and fault prediction
Bandi et al. Empirical evidence of code decay: A systematic mapping study
WO2014207644A2 (en) Method and system for grading a computer program
JP2005222108A (en) Bug analysis method and device
Nilson et al. Do internal software quality tools measure validated metrics?
JP2006209354A (en) Inspection system for vehicle software
JP2006059276A (en) Source code evaluating system
Plösch et al. The EMISQ method and its tool support-expert-based evaluation of internal software quality
Herraiz et al. Impact of installation counts on perceived quality: A case study on debian
JP4502535B2 (en) Software quality inspection support system and method
Tarhan et al. Investigating the effect of variations in the test development process: a case from a safety-critical system
JP2015072644A (en) Interactive method of predicting facility failure
Wang et al. ACCA: An architecture-centric concern analysis method
CN116089270A (en) Layered test system, layered test method and layered test medium
Tan et al. The lifecycle of Technical Debt that manifests in both source code and issue trackers
CN115629956A (en) Software defect management method and system based on interface automatic test
Wang et al. Quantitative analysis of requirements evolution across multiple versions of an industrial software product
Doganaksoy et al. Getting the right data up front: A key challenge

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061214

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090617

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090707

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090907

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100209