JP2004038490A - Method for measuring step of program according to classification by development - Google Patents
Method for measuring step of program according to classification by development Download PDFInfo
- Publication number
- JP2004038490A JP2004038490A JP2002193778A JP2002193778A JP2004038490A JP 2004038490 A JP2004038490 A JP 2004038490A JP 2002193778 A JP2002193778 A JP 2002193778A JP 2002193778 A JP2002193778 A JP 2002193778A JP 2004038490 A JP2004038490 A JP 2004038490A
- Authority
- JP
- Japan
- Prior art keywords
- program
- development
- steps
- counter
- classification
- 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
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明はプログラムの開発段階におけるプログラムの構成を生産方法により分類する方法と、前記プログラムの開発完了段階における前記分類毎のプログラムステップ数を求める開発分類別プログラムステップ測定方式に関するものである。
【0002】
【従来の技術】
開発完了したプログラムの構成例を図13に示す。21は新規設計分、22は再利用設計分、23は流用設計分、24は改造設計分であり、生産方法により分類した構成とみることができる。新規設計分21とは新たに設計した部分で、再利用設計分22とは例えば設計部門内で標準モジュールとして設計され登録されている標準登録モジュール25をそのまま使用する部分で、流用設計分23とは過去に設計して動作実績有りのプログラム26全体を母体として流用する部分で、改造設計分24とは前記流用設計分23の一部を必要に応じて改造した部分である。前記夫々の分類のステップ数は、ステップ数カウントプログラム(以下、ステップ数カウンタと記す)やテキスト作成プログラム(以下、エディタと記す)、更に翻訳プログラム(以下、コンパイラと記す)などを使用してカウントし、自動的に測定する技術が知られている。ステップ数カウンタは、単にプログラムステップをカウントするものであり、エディタはプログラム作成または変更する際に使用するテキスト作成プログラムで、新規に入力、作成したプログラムステップ数や、入力したプログラムステップ数に対して変更したステップ数、追加したステップ数の差分情報にて自動的に改造分、追加分ステップ数を算出可能なもので、例えば入力したプログラムが本当に新規設計分か過去に設計した分の流用分かなどまでは判別できないものである。コンパイラについても同様である。また、プログラムの生産性について、特開平7−319686号公報に記載されているようにプログラム開発開始から完了までの経過時間を、編集の都度、編集開始から終了までの時間を計測し、編集前の計測時間に加算して更新し、プログラムステップ数についても同様に、プログラム開発開始から完了まで編集の都度、編集終了後のステップ数を計測して更新し、プログラム開発完了時に全プログラムについて前記処理結果を集計し、ステップ数の総和を編集時間の総和で除して総合生産性を求める技術が知られている。
【0003】
【発明が解決しようとする課題】
従来の技術では単純にプログラムのステップ数を計測するため、また、前記エディタで入力ステップ数と変更ステップ数の差分情報から改造ステップ数を求めて、編集の都度、前記変更ステップ数を更新したとしても、前記入力したプログラムが過去の開発済のプログラムからの流用分か、本当に新規入力したプログラム分かどうかなど、プログラム開発担当者以外では本当の意味でのプログラムの新規設計分、再利用設計分、改造設計分、流用設計分等の開発分類を区別して開発分類毎のプログラムステップ数を求めることができず開発担当者自らが手作業でカウントもしくは、前記各種開発分類別にソースプログラムファイルを別々に作成しない限り、前記各種開発分類別のプログラムステップ数を正確に把握することができない。従って、前記各種開発分類ステップ数と開発所要時間から求まる各種指標をプログラム開発担当者以外の第三者が正確に算出することは難しいという欠点がある。
【0004】
【課題を解決するための手段】
上記欠点を解決するために、プログラム開発段階において、プログラムソースファイルに新規、再利用、流用、改造を示す分類コメント(以下、キーワードと記す)を入力しておき、ステップ数測定時に前記キーワードを検出し、該キーワード毎にステップ数測定を行うものである。
【0005】
【発明の実施の形態】
本発明の一実施例でプログラム開発段階において作成するプログラムソースコード例を図1に示す。1はプログラムまたはモジュールの管理情報であるヘッダコメントで、2は前記プログラムまたはモジュールの処理内容を示すステートメントで、3はヘッダコメント1内に記述する開発者名前で、4は同コメント内に記述する本プログラムまたはモジュールを使用するプロジェクト名称で、5は開発分類を示すキーワードである。更に、6はプログラムステートメント2内に記述する開発分類を示すキーワードである。
【0006】
図1の「KKKKKK」で示す前記キーワード5、6の種類例を図5に示す。図5に示すように、例えば開発分類のキーワードを「新規開発」=「NEW」、「再利用」=「RECYCLE」、「流用」=「DIVERT」、「改造」=「ALT」とし、プログラム設計時にヘッダコメント1やプログラムステートメント2のステップにコメントとして記述する。
【0007】
図2に本発明の開発分類別プログラムステップ測定プログラム10の構成例を示す。11は開発者A用のカウンタで、12は開発者B用カウンタで、13は開発者C用カウンタで、14は開発者D用カウンタである。15は前記開発者用カウンタ内に設けてある開発分類別プログラムカウンタであって新規ステップ用カウンタで、16は再利用ステップ用カウンタで、17は流用ステップ用カウンタで、18は改造ステップ用カウンタである。19は前記開発分類別のキーワードを記入してある開発済のプログラム例である。
【0008】
開発分類別プログラムステップ測定プログラム10には、「開発者名」毎に前記開発分類キーワード5の「KKKKKK」、すなわち図5のキーワード毎の独立したカウンタを設ける。ステップ数カウントは開発済プログラム19を開発分類別プログラムステップ測定プログラム10に読み込むことで行う。
【0009】
開発分類別プログラムステップ数測定の手順:開発分類別プログラムステップ数測定を行うプログラムソースファイルを指定する。プログラムソースファイル内のヘッダコメント1からプロジェクト名称4である「PPPPPP」と開発者名前3、開発分類キーワード5である「KKKKKK」を摘出する。前記開発分類キーワード5により通常使うスッテプ数カウンタを選定する。例えば、図3の例ではヘッダコメント1内の開発分類キーワード5が「NEW」であるので、新規ステップ用カウンタ15を使用してステップ数をカウントする。また、図4の例ではヘッダコメント1内の開発分類キーワード5が「RECYCLE」であるので、再利用ステップ用カウンタ16を使用してステップ数をカウントする。
【0010】
だだし、図4の例のようにプログラムステートメント2内のステートメントステップ後部にコメントとして開発分類キーワード6「KKKKKK」が記述されている場合は前記通常使うステップ数カウンタを一時的に切り替えてカウントを行う。この例の場合は、通常使うスッテプ数カウンタは再利用ステップ用カウンタ16でカウンタし、ステートメントステップ後部にコメントとして開発分類キーワード6「ALT」が記述されているステップは改造ステップ用カウンタ18に切り替えてカウントする。次のステートメントステップでは開発キーワード6の記述がないので再び通常使う再利用ステップ用カウンタ16に戻しカウントを継続する。
【0011】
開発指数出力として、開発分類別プログラムステップ数、開発効率、品質、プログラム開発者評価、プロジェクト全体の開発指標などがある。開発分類別プログラムステップ数は前記の開発者名前毎であって開発分類キーワード5および6毎にカウント集計した値で、出力形態の例を図7に示す。
【0012】
開発効率は別途用意する図6の例のような開発者毎の開発に要した開発時間、発生した不具合件数、プログラム設計の経験年数、担当したプログラムの難易度などの開発者データと前記開発者毎の開発分類別プログラムステップ数集計結果から以下に示す計算式により定義する各種効率を求める。該各種効率計算結果出力例を図8に示す。
開発効率=(新規ステップ用カウンタ集計値+改造ステップ用カウンタ集計値)÷開発時間
生産効率=(新規ステップ用カウンタ集計値+改造ステップ用カウンタ集計値+再利用ステップ用カウンタ集計値)÷開発時間
完成効率=(新規ステップ用カウンタ集計値+改造ステップ用カウンタ集計値+再利用ステップ用カウンタ集計値+流用ステップ用カウンタ集計値)÷開発効率品質は前記図6の開発者毎の不具合件数データと前記開発者毎の開発分類別プログラムステップ数集計結果から以下に示す計算式により品質を求める。該品質計算結果出力例を図9に示す。
品質=不具合件数÷(新規ステップ用カウンタ集計値+改造ステップ用カウンタ集計値+再利用ステップ用カウンタ集計値+流用ステップ用カウンタ集計値)
プログラム開発者評価は前記開発効率と品質計算で求まる結果と図10の例に示す経験年数から決める経験年数係数、効率係数、品質係数や、図11の例に示す難易度から決める難易度係数などの評価基準から以下に示す計算式によりプログラム開発者毎の評価を求める。該評価計算結果出力例を図12に示す。
評価=(完成効率×効率係数×難易度係数−品質×品質係数)×経験年数係数
プロジェクト全体の開発指標についても前述のヘッダコメント1内のプロジェクト名称4毎に同様に計算し、出力することで求めることができる。
【0013】
【発明の効果】
プログラム開発時に開発者が開発分類キーワードを分類コメントとしてプログラムに記述するだけで、各種開発分類別にプログラムステップ数が測定でき、各種開発指標も容易に出力することができ、プログラム開発者以外の例えば上長などの第三者がプログラム開発者別に各種開発指標を把握することができる。
【図面の簡単な説明】
【図1】本発明の一実施例であるソースプログラムの記述例
【図2】本発明の一実施例である開発分類別プログラムステップ数測定プログラムの構成例
【図3】本発明の一実施例である新規開発したソースプログラムの記述
【図4】本発明の一実施例である再利用したソースプログラムの記述
【図5】本発明の一実施例である開発分類キーワード
【図6】本発明の一実施例であるプログラム開発者データ
【図7】本発明の一実施例である開発分類別プログラムステップ数測定結果出力
【図8】本発明の一実施例であるプログラム開発指標:開発効率出力
【図9】本発明の一実施例であるプログラム開発指標:開発品質
【図10】本発明の一実施例であるプログラム開発指標:経験年数による評価基準
【図11】本発明の一実施例であるプログラム開発指標:難易度係数
【図12】本発明の一実施例であるプログラム開発指標:開発者評価
【図13】従来の一実施例である開発プログラムの生産方法による開発分類構成
【符号の説明】
1:ヘッダコメント、2:プログラムステートメント、3:開発者名前、4:プロジェクト名称、5:ヘッダコメント内開発分類キーワード、6:プログラムステートメント内開発分類キーワード、10:開発分類別プログラムステップ数測定プログラム、11:開発者A用カウンタ、12:開発者B用カウンタ、13:開発者C用カウンタ、14:開発者D用カウンタ、15:新規ステップ用カウンタ、16:再利用ステップ用カウンタ、17:流用ステップ用カウンタ、18:改造ステップ用カウンタ、19:開発分類キーワード記入の開発済のプログラム、21:新規設計分プログラムステップ、22:再利用設計分プログラムステップ、23:流用設計分プログラムステップ、24:改造設計分プログラムステップ、25:標準登録モジュール、26:動作実績有プログラム[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a method for classifying a program configuration in a program development stage by a production method, and a program step measurement method for each development class for obtaining the number of program steps for each of the classes in a program development completion stage.
[0002]
[Prior art]
FIG. 13 shows a configuration example of a program whose development has been completed.
[0003]
[Problems to be solved by the invention]
In the prior art, in order to simply measure the number of steps of the program, and also obtain the number of remodeling steps from the difference information between the number of input steps and the number of changed steps in the editor, and for each edit, update the number of changed steps. Also, if the input program is a diverted part from a past developed program or a truly newly input program, a person who is not the person in charge of program development has a truly new design part and a reusable design part of the program. The number of program steps for each development class cannot be determined by distinguishing between development classes such as remodeling design, diversion design, etc., and the developer in charge himself manually counts or separates the source program files for each of the various development classes. Unless it is created, the number of program steps for each of the development categories cannot be accurately grasped. Therefore, there is a disadvantage that it is difficult for a third party other than the person in charge of program development to accurately calculate various indices obtained from the number of the various development classification steps and the required development time.
[0004]
[Means for Solving the Problems]
In order to solve the above-mentioned drawbacks, in the program development stage, a classification comment (hereinafter, referred to as a keyword) indicating new, reuse, reuse, or modification is input to a program source file, and the keyword is detected when measuring the number of steps. Then, the number of steps is measured for each keyword.
[0005]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 shows an example of a program source code created in a program development stage according to an embodiment of the present invention. 1 is a header comment as management information of the program or module, 2 is a statement indicating the processing content of the program or module, 3 is a developer name described in the
[0006]
FIG. 5 shows examples of the types of the
[0007]
FIG. 2 shows a configuration example of the program
[0008]
The development category-specific program
[0009]
Procedure for measuring the number of program steps by development category: Specify the program source file for measuring the number of program steps by development category. From the
[0010]
However, if the development classification keyword 6 "KKKKKK" is described as a comment at the end of the statement step in the
[0011]
The output of the development index includes the number of program steps for each development category, development efficiency, quality, program developer evaluation, and development indexes for the entire project. The number of program steps by development category is a value obtained by counting and totaling for each of the developer names and the
[0012]
The development efficiency is prepared separately as in the example of FIG. 6, such as the development time required for development by each developer, the number of defects that occurred, the years of experience in program design, the difficulty of the program in charge, and the developer. From the results of counting the number of program steps for each development category, various efficiencies defined by the following formula are obtained. FIG. 8 shows an output example of the various efficiency calculation results.
Development efficiency = (Total value of counter for new step + Total value of counter for modified step) ÷ Development time Production efficiency = (Total value of counter for new step + Total value of counter for modified step + Total value of counter for reuse step) 再 Development time Completion efficiency = (Total value of counter for new step + Total value of counter for remodeling step + Total value of counter for reuse step + Total value of counter for diversion step) ÷ The development efficiency quality is the same as the defect count data for each developer shown in Fig. 6 above. The quality is obtained from the result of counting the number of program steps by development category for each developer by the following formula. FIG. 9 shows an example of the quality calculation result output.
Quality = Number of defects / (Total value of counter for new step + Total value of counter for remodeling step + Total value of counter for reuse step + Total value of counter for diversion step)
The program developer evaluation is based on the results obtained by the development efficiency and the quality calculation and the experience years coefficient, efficiency coefficient, and quality coefficient determined from the years of experience shown in the example of FIG. 10, and the difficulty coefficient determined from the difficulty shown in the example of FIG. From the evaluation criteria described above, an evaluation for each program developer is obtained by the following formula. FIG. 12 shows an example of the evaluation calculation result output.
Evaluation = (Completion efficiency × Efficiency coefficient × Difficulty coefficient−Quality × Quality coefficient) × Experience coefficient The development index of the entire project is calculated and output in the same way for each
[0013]
【The invention's effect】
When a program is developed, the developer can simply describe the development classification keywords in the program as classification comments, measure the number of program steps for each development category, and easily output various development indices. The third party, such as the director, can grasp various development indexes for each program developer.
[Brief description of the drawings]
FIG. 1 is a description example of a source program according to an embodiment of the present invention. FIG. 2 is a configuration example of a program step number measurement program for each development class according to an embodiment of the present invention. FIG. 3 is an embodiment of the present invention. Description of a newly developed source program which is: [FIG. 4] Description of a reused source program which is an embodiment of the present invention [FIG. 5] Development classification keyword which is an embodiment of the present invention [FIG. 6] Program developer data according to one embodiment [FIG. 7] Output of measurement result of program steps by development classification according to one embodiment of the present invention [FIG. 8] Program development index: development efficiency output according to one embodiment of the present invention FIG. 9: Program development index according to one embodiment of the present invention: development quality [FIG. 10] Program development index according to one embodiment of the present invention: evaluation criteria based on years of experience [FIG. 11] One embodiment of the present invention Blog System development index: Difficulty coefficient [FIG. 12] Program development index according to one embodiment of the present invention: developer evaluation [FIG. 13] Development classification configuration based on development program production method according to a conventional embodiment [Description of reference numerals] ]
1: Header comment, 2: Program statement, 3: Developer name, 4: Project name, 5: Development category keyword in header comment, 6: Development category keyword in program statement, 10: Program step number measurement program by development category, 11: Developer A counter, 12: Developer B counter, 13: Developer C counter, 14: Developer D counter, 15: New step counter, 16: Reuse step counter, 17: Divert Step counter, 18: Modification step counter, 19: Developed program with development classification keyword entry, 21: New design program step, 22: Reuse design program step, 23: Diverted design program step, 24: Modification design program step, 25: Standard registration Jules, 26: Operation proven Yes program
Claims (2)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002193778A JP2004038490A (en) | 2002-07-02 | 2002-07-02 | Method for measuring step of program according to classification by development |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002193778A JP2004038490A (en) | 2002-07-02 | 2002-07-02 | Method for measuring step of program according to classification by development |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004038490A true JP2004038490A (en) | 2004-02-05 |
Family
ID=31702660
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002193778A Pending JP2004038490A (en) | 2002-07-02 | 2002-07-02 | Method for measuring step of program according to classification by development |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004038490A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010061440A1 (en) * | 2008-11-26 | 2010-06-03 | 株式会社ジャステック | Software modification estimate method and software modification estimate system |
JP2011258076A (en) * | 2010-06-10 | 2011-12-22 | Exa Corp | Java source code check program |
WO2015063954A1 (en) * | 2013-11-01 | 2015-05-07 | 株式会社日立製作所 | Program diagram creation device, program diagram creation method, and program diagram creation program |
-
2002
- 2002-07-02 JP JP2002193778A patent/JP2004038490A/en active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010061440A1 (en) * | 2008-11-26 | 2010-06-03 | 株式会社ジャステック | Software modification estimate method and software modification estimate system |
US8595686B2 (en) | 2008-11-26 | 2013-11-26 | Jastec Co., Ltd. | Software modification estimate method and software modification estimate system |
JP5818439B2 (en) * | 2008-11-26 | 2015-11-18 | 株式会社ジャステック | Software modification estimation method and software modification estimation system |
JP2011258076A (en) * | 2010-06-10 | 2011-12-22 | Exa Corp | Java source code check program |
WO2015063954A1 (en) * | 2013-11-01 | 2015-05-07 | 株式会社日立製作所 | Program diagram creation device, program diagram creation method, and program diagram creation program |
JPWO2015063954A1 (en) * | 2013-11-01 | 2017-03-09 | 株式会社日立製作所 | Program diagram creating apparatus, program diagram creating method, and program diagram creating program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112199506B (en) | Information detection method, device and equipment for application program | |
US9292410B2 (en) | Using traceability links strength for software development integrity monitoring | |
CN103262105B (en) | Clinical document debugging decision support | |
US7908583B2 (en) | Evidentiary enrichment of traceability links between software specification requirements | |
JP2010211457A (en) | Flow comparison processing method and device | |
CN111127068B (en) | Automatic pricing method and device for engineering quantity list | |
CN110728422A (en) | Building information model, method, device and settlement system for construction project | |
EP1102189A2 (en) | Electronic catalog maintenance system for enabling out of standard electronic catalog changes | |
Viviani et al. | What design topics do developers discuss? | |
CN101341483B (en) | User interface searching and displaying legal case histories | |
JP2004038490A (en) | Method for measuring step of program according to classification by development | |
KR102455321B1 (en) | Apparatus and method for providing service for detecting violation of copyright guide on product page of online marketplace | |
US6553361B1 (en) | Knowledge based system | |
WO2009098766A1 (en) | Work flow processing program, work flow processing method and work flow processor | |
US8166453B2 (en) | Method and system for inconsistency resolution with cycle detection in a model-driven software environment | |
JP2006011744A (en) | Defective reoccurrence prevention device, defective reoccurrence prevention method, program and recording medium | |
Kupferman et al. | Relating word and tree automata | |
CN116126790A (en) | Railway engineering archive archiving method and device, electronic equipment and storage medium | |
KR102321871B1 (en) | Pattern Dictionary Establish Method by Data Classify and Analysis | |
KR20130109601A (en) | Decision method of ontology instance similarity and ontology system using the method | |
JP2003280901A (en) | Program for supporting estimation evaluation and system for supporting estimation evaluation | |
JP2007241347A (en) | Program quality management device, and method for creating quality management report of program | |
US20110125762A1 (en) | Method for generating processing specifications for a stream of data items | |
JP2008052347A (en) | Document processor and document processing program | |
Kim et al. | RFM analysis for detecting future core technology |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050308 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070914 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070925 |
|
A02 | Decision of refusal |
Effective date: 20080205 Free format text: JAPANESE INTERMEDIATE CODE: A02 |