JP4883700B2 - Repository server management system - Google Patents

Repository server management system Download PDF

Info

Publication number
JP4883700B2
JP4883700B2 JP2007066762A JP2007066762A JP4883700B2 JP 4883700 B2 JP4883700 B2 JP 4883700B2 JP 2007066762 A JP2007066762 A JP 2007066762A JP 2007066762 A JP2007066762 A JP 2007066762A JP 4883700 B2 JP4883700 B2 JP 4883700B2
Authority
JP
Japan
Prior art keywords
developer
database
voting
project
time
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.)
Expired - Fee Related
Application number
JP2007066762A
Other languages
Japanese (ja)
Other versions
JP2008226122A (en
Inventor
剛 川尻
嘉之 河村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Solutions Ltd
Original Assignee
Hitachi Solutions 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 Solutions Ltd filed Critical Hitachi Solutions Ltd
Priority to JP2007066762A priority Critical patent/JP4883700B2/en
Publication of JP2008226122A publication Critical patent/JP2008226122A/en
Application granted granted Critical
Publication of JP4883700B2 publication Critical patent/JP4883700B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、アプリケーション開発におけるレポジトリサーバの管理に関するものであり、特にレポジトリの更新の可否を、投票と開発者の過去の実績に従って決定するシステムに関するものである。   The present invention relates to management of a repository server in application development, and more particularly to a system that determines whether or not a repository can be updated according to voting and past performance of a developer.

近年、アプリケーションの規模の拡大に伴い、多数の開発者が関わるアプリケーションの開発が増えてきている。このような開発プロジェクトにおいては、開発者間で開発状況を共有するために、レポジトリサーバと呼ばれる保管場所でソースコードを管理することが一般的になってきた。
レポジトリサーバを利用した開発システムにおいては、更新された内容がアプリケーション全体に影響して深刻な不具合を引き起こすことが良くある。そこで、ソースコードをレポジトリに格納する前に、更新した内容をチーム内で精読し、問題点を洗い出して修正することがよく行われている。このような精読作業はソースコードレビューと呼ばれている。
In recent years, with the expansion of the scale of applications, the development of applications involving many developers has increased. In such development projects, it has become common to manage source code in a storage location called a repository server in order to share the development status among developers.
In a development system using a repository server, the updated contents often affect the entire application and cause serious problems. Therefore, before storing the source code in the repository, it is often performed that the updated contents are thoroughly read by the team, and the problems are identified and corrected. This kind of careful reading is called source code review.

図21は、レポジトリサーバを利用した開発システムの構成を示す図であり、本システムは開発PC2101と、課題データベース2102と、スケジュールデータベース2103と、レポジトリサーバ2104から構成されており、開発PC2101と、課題データベース2102、スケジュールデータベース2103、レポジトリサーバ2104はネットワークで接続されている。   FIG. 21 is a diagram showing the configuration of a development system that uses a repository server. This system is composed of a development PC 2101, an issue database 2102, a schedule database 2103, and a repository server 2104, and the development PC 2101, The database 2102, the schedule database 2103, and the repository server 2104 are connected via a network.

開発PC2101にはソースコードを記述するアプリケーションと、レポジトリサーバ2104のクライアントアプリケーションが搭載されており、それらを操作するためのマウス2105とキーボード2106が設けられている。
課題データベース2102には、アプリケーションの開発中に発覚した不具合や、要望の内容が格納されている。
スケジュールデータベース2103は、開発者ごとに予定の開始時刻や終了時刻が格納されている。
レポジトリサーバ2104は、開発者が登録したソースコードが格納されており、ファイルごとに更新履歴を記憶する手段を備えている。
The development PC 2101 is equipped with an application for writing source code and a client application for the repository server 2104, and a mouse 2105 and a keyboard 2106 for operating them are provided.
The problem database 2102 stores defects found during application development and the contents of requests.
The schedule database 2103 stores a scheduled start time and end time for each developer.
The repository server 2104 stores source code registered by the developer, and includes means for storing an update history for each file.

このような開発システムにおいては、開発者は課題データベース2102の内容(課題や要望)に従って開発PC2101でソースコードを記述し、スケジュールデータベース2103に登録された開発プロジェクト内の開発者のスケジュールを調整した上でソースコードレビューを実施する。
ソースコードレビューで妥当であると承認された場合はクライアントアプリケーションで更新内容をレポジトリサーバ2104に反映する。
このように、レポジトリサーバ2104にソースコードの更新内容を反映させることを、一般にコミットと呼ぶ。
コミット後にソースコードに不具合が発覚した場合は、その内容を課題データベース2102に登録した上で、レポジトリサーバ2104から対象のソースコードを取得し、修正を加えて再度コミットする。
本発明に関連する公知技術文献としては下記特許文献1があげられる。
In such a development system, the developer describes the source code on the development PC 2101 according to the contents (issues and requests) of the issue database 2102 and adjusts the developer's schedule in the development project registered in the schedule database 2103. Conduct a source code review at
If it is confirmed that the source code review is valid, the updated contents are reflected in the repository server 2104 by the client application.
Reflecting the update contents of the source code in the repository server 2104 in this way is generally called commit.
If a problem is found in the source code after committing, the contents are registered in the assignment database 2102, the target source code is acquired from the repository server 2104, corrected, and committed again.
The following patent document 1 is given as a known technical document related to the present invention.

特開2006−18735号JP 2006-18735 A

ソースコードレビューはアプリケーションの品質を高める点で有力であるが、多くの場合、会議形式で実施するので各開発者のスケジュールを調整した上で実施する必要があった。
これは、開発者ごとにスケジュールの空きを予約した上で、その時間に更新する内容の妥当性に対して投票を実施し、その投票結果に従ってレポジトリサーバに反映させるかどうか決定するシステムを構築することで解決できる。
しかし、開発の規模が大きくなると、ソースコードの量が膨大となるため、全ての開発者の更新内容を確認することは現実的ではない。多くの開発の現場では効率的にソースコードレビューを実施するために、不具合の発生率といった開発者の過去の実績からソースコードレビューを実施するか決定しているので、同様に過去の実績に基づいて投票を実施することが望ましい。
また、ソースコードレビューに必要となる時間は開発者ごとに異なるので、一律に同じ時間を割り当てるのは非効率と言える。過去の遅延時間に基づいて投票時間を決定することが望ましい。
Source code review is effective in improving the quality of applications, but in many cases it is conducted in a conference format, so it is necessary to adjust the schedule of each developer.
This is to build a system that reserves vacant schedules for each developer, performs voting on the validity of the contents updated at that time, and decides whether to reflect in the repository server according to the voting results Can be solved.
However, as the scale of development increases, the amount of source code becomes enormous, so it is not realistic to check the update contents of all developers. In many development sites, in order to perform source code review efficiently, it is decided whether to perform source code review from the past performance of the developer such as the occurrence rate of defects. It is desirable to conduct voting.
Also, since the time required for source code review varies from developer to developer, it is inefficient to assign the same time uniformly. It is desirable to determine the voting time based on the past delay time.

本発明の目的は、コミットした開発者の過去の実績を基にコミットの可否を判定し、不可の場合は、過去の投票の遅延時間から投票時間を算出し、その投票結果に従って、レポジトリサーバに反映させるかを決定することにより効率的にソースコードレビューを実施することができるレポジトリサーバ管理システムを提供することにある。   The object of the present invention is to determine whether or not to commit based on the past performance of the committed developer, and if not, calculate the voting time from the past voting delay time, and in accordance with the voting result, It is an object of the present invention to provide a repository server management system capable of efficiently performing a source code review by determining whether to reflect.

上記目的を達成するために、本発明のレポジトリサーバ管理システムは、開発プロジェクトに属する複数の開発者が各自の開発者用コンピュータを使用してそれぞれ開発したプログラムをレポジトリサーバに保管するのを管理するシステムであって、
開発者用コンピュータからのプログラム保管申請を受け、そのプログラム保管申請を送付した開発者について過去の実績を含めた評価値を第1のデータベースから取得し、保管申請を受けたプログラムを前記レポジトリサーバに保管するか否かを前記評価値に基づいて判定し、前記評価値が予め設定された設定値を満たしていない場合には保管申請されたプログラムを第2のデータベースに退避格納し、設定値を満たしていた場合には前記レポジトリサーバに保管する第1の手段と、
前記第2のデータベースに退避格納したプログラムについて同一開発プロジェクトに属する他の開発者の承認投票により前記レポジトリサーバに保管するか否かを決定するために各開発者のスケジュールを第3のデータベースから取得し、各開発者が承認投票を行うためのスケジュールを決定し、各開発者に通知する第2の手段と、
各開発者の開発者用コンピュータから前記第2のデータベースに退避格納したプログラムについてレポジトリサーバに保管するか否かを記述した承認可否通知を受け付けて集計し、承認率が予め設定された設定値を満たしていた場合には前記退避格納したプログラムを前記レポジトリサーバに保管し、設定値を満たしていなかった場合に前記退避格納したプログラムを破棄する第3の手段と
を備えることを特徴とする。
In order to achieve the above object, the repository server management system of the present invention manages the storage of programs developed by a plurality of developers belonging to a development project, using the respective developer computers, in the repository server. A system,
The evaluation value including the past performance is acquired from the first database for the developer who has received the program storage application from the developer computer and sent the program storage application, and the program that has received the storage application is stored in the repository server. It is determined whether or not to store based on the evaluation value. If the evaluation value does not satisfy a preset setting value, the storage application program is saved and stored in the second database. A first means for storing in the repository server if satisfied;
Obtain the schedule of each developer from the third database in order to determine whether to save the program stored in the second database in the repository server by an approval vote of another developer belonging to the same development project. A second means for determining a schedule for each developer to vote for approval and notifying each developer;
Accepts and approves approval approval notifications that describe whether or not to save the programs saved in the second database from the developer computer of each developer in the repository server, and sets a preset value for which the approval rate is preset. And a third means for storing the saved and stored program in the repository server when the condition is satisfied, and discarding the saved and stored program when the set value is not satisfied.

本発明のレポジトリサーバ管理システムによれば、次のような効果がある。
ソースコードレビューを、開発者の過去の実績に基づいて実施でき、アプリケーションの品質を上げることができる。また、開発者の時間を有効活用することができるなど、効率的にソースコードレビューを実施することができる。
The repository server management system of the present invention has the following effects.
A source code review can be performed based on the past performance of the developer, and the quality of the application can be improved. In addition, the source code review can be carried out efficiently, such as making effective use of the developer's time.

以下、本発明を適用したレポジトリサーバ管理システムの一実施の形態について説明する。
図1は、本発明の実施の形態の一例を示すレポジトリサーバ管理システムのシステム構成図である。
本実施形態のシステムは、共通システム101と、n個の開発システム102から構成されており、共通システム101と、開発システム102はネットワークによって接続されている。
なお、n個の開発システムを例示しているが、1つの場合であっても適用可能である。
共通システム101は、開発プロジェクト間で共有する情報を管理するものであり、開発プロジェクトの定義情報を保持するプロジェクトデータベース103と、開発者ごとに、参加した開発プロジェクトの履歴や評価、実績を格納する開発者データベース104と、開発者のスケジュールを格納するスケジュールデータベース105が設けられている。
プロジェクトデータベース103及び開発者データベース104には、プロジェクト履歴を更新するプロジェクト入力部106が設けられている。
スケジュールデータベース105には、スケジュールを更新するスケジュール入力部107が設けられている。プロジェクト入力部106及びスケジュール入力部107の内容は、Webサーバ108によってブラウザに表示される。開発者はブラウザでWebサーバ108にアクセスすることで、共通システム101が管理する情報を更新する。
Hereinafter, an embodiment of a repository server management system to which the present invention is applied will be described.
FIG. 1 is a system configuration diagram of a repository server management system showing an example of an embodiment of the present invention.
The system according to this embodiment includes a common system 101 and n development systems 102, and the common system 101 and the development system 102 are connected by a network.
In addition, although n development systems are illustrated, even if it is one, it is applicable.
The common system 101 manages information shared among development projects, and stores a project database 103 that holds development project definition information, and the history, evaluation, and results of participating development projects for each developer. A developer database 104 and a schedule database 105 for storing developer schedules are provided.
The project database 103 and developer database 104 are provided with a project input unit 106 for updating the project history.
The schedule database 105 is provided with a schedule input unit 107 for updating the schedule. The contents of the project input unit 106 and the schedule input unit 107 are displayed on the browser by the Web server 108. The developer updates the information managed by the common system 101 by accessing the Web server 108 with a browser.

開発システム102は、開発プロジェクトごとに設けられるものであり、ソースコードを記述する環境である開発PC109と、開発者を評価して投票を実施する投票システム110と、作成したソースコードを格納するレポジトリサーバ111から構成される。
開発PC109は、投票システム110を経由してレポジトリサーバ111にネットワークで接続されている。
開発PC109は、開発者ごとに設けられるものであり、ソースコードを編集するアプリケーションと、レポジトリサーバ111のクライアントアプリケーションが備わっている。また、それらを操作するためのマウス112とキーボード113が設けられている。レポジトリサーバのクライアントアプリケーションは、ソースコードの取得やコミットといった、レポジトリサーバ111を操作するための基本的な機能が備わっている。
通常、クライアントアプリケーションの接続先はレポジトリサーバ111に設定するが、本システムでは投票システム110に設定する。以降では、投票システム110に対するコミットを特に、コミット申請と呼び、投票システム110がレポジトリ111を更新することをコミットと呼ぶ。なお、クライアントアプリケーションの動作については公知であるので説明を省略する。
The development system 102 is provided for each development project, and includes a development PC 109 that is an environment for describing source code, a voting system 110 that evaluates developers and performs voting, and a repository that stores the created source code. The server 111 is configured.
The development PC 109 is connected to the repository server 111 via the voting system 110 via a network.
The development PC 109 is provided for each developer, and includes a source code editing application and a repository server 111 client application. A mouse 112 and a keyboard 113 are provided for operating them. The client application of the repository server has basic functions for operating the repository server 111 such as source code acquisition and commit.
Normally, the connection destination of the client application is set in the repository server 111, but in this system, it is set in the voting system 110. Hereinafter, the commit to the voting system 110 is particularly referred to as a commit application, and the update of the repository 111 by the voting system 110 is referred to as a commit. Since the operation of the client application is known, the description thereof is omitted.

投票システム110は、投票システム110の設定情報を保持するシステム設定データベース114と、コミット申請した開発者の評価を取得して、レポジトリサーバ111に反映させるか判断するコミット可否判定部115と、コミット申請された内容を保留する保留データベース116と、保留された内容に対して投票結果を格納する投票データベース117と、開発者ごとに投票予定日時を決定してスケジュールを予約するスケジュール調整部118と、決定した投票予定日と保留内容を、メールで投票者に伝達するメールサーバ119と、投票者から投票を受け付ける投票入力部120が設けられている。また、開発者から要望や不具合を受け付ける課題入力部121と、入力された内容を記憶する課題データベース122が設けられている。   The voting system 110 includes a system setting database 114 that holds setting information of the voting system 110, a commit availability determination unit 115 that determines whether to acquire the evaluation of the developer who applied for the commit and reflect it in the repository server 111, and a commit application A hold database 116 that holds the content that has been held, a voting database 117 that stores the voting results for the held content, a schedule adjustment unit 118 that determines the scheduled voting date and time for each developer and reserves the schedule, and a decision A mail server 119 for transmitting the scheduled voting date and pending content to the voter by e-mail and a vote input unit 120 for receiving a vote from the voter are provided. In addition, a task input unit 121 that receives requests and defects from the developer and a task database 122 that stores input contents are provided.

ここで要望とは、開発するアプリケーションが実装する必要がある個々の機能を指し、要望を全て満たすとアプリケーションは完成となる。また、不具合とはプログラムの実装ミスといった問題点を指す。以降では要望と不具合をあわせて課題と呼ぶ。
また、投票システム110は、投票入力部119と課題入力部120の内容をブラウザに表示するWebサーバ123が設けられている。また、コミット可否判定部115の判定結果と、課題データベース122と、投票データベース117の内容を基に、開発者の評価を算出して開発者データベース104に格納する評価格納部124が設けられている。
Here, the request indicates an individual function that needs to be implemented by the application to be developed. When all the requests are satisfied, the application is completed. A defect indicates a problem such as a program implementation error. In the following, the request and the defect are collectively referred to as an issue.
The voting system 110 is provided with a Web server 123 that displays the contents of the voting input unit 119 and the assignment input unit 120 on a browser. In addition, an evaluation storage unit 124 is provided that calculates the evaluation of the developer based on the determination result of the commit permission determination unit 115, the contents of the assignment database 122, and the contents of the voting database 117, and stores it in the developer database 104. .

コミット可否判定部115は、開発者の評価を、プロジェクトデータベース103と開発者データベース104から取得して、コミット申請された内容をレポジトリサーバ111に反映させるか判定する。
本システムにおいて、評価は不具合の発生といった項目ごとに重要度に応じて数値で表現され、評価の合計を統合評価と呼ぶ。統合評価は、経過日数や開発プロジェクトの経験実績も考慮されて算出される。統合評価がシステム設定データベース114に格納されている閾値に満たない場合、コミット可否判定部115は、コミット申請された内容を保留データベースに退避する。保留された内容は、投票によって承認された場合にレポジトリサーバ111に反映される。しかし、投票によって却下となった場合、保留された内容は破棄される。また、統合評価が閾値より高い場合は投票を実施せず、即時にレポジトリサーバに反映する。
なお、コミット可否判定部115は、クライアントアプリケーションのソースコードの取得や、更新履歴の取得といったコミット申請以外の要求をレポジトリサーバ111に伝え、結果を返す手段を備える。
The commit permission determination unit 115 acquires developer evaluation from the project database 103 and the developer database 104, and determines whether or not to reflect the contents of the commit application on the repository server 111.
In this system, the evaluation is expressed numerically according to the importance for each item such as occurrence of a defect, and the total evaluation is called integrated evaluation. The integrated evaluation is calculated taking into account the number of days elapsed and experience of development projects. When the integrated evaluation does not satisfy the threshold value stored in the system setting database 114, the commit permission determination unit 115 saves the content of the commit application to the pending database. The suspended content is reflected in the repository server 111 when approved by voting. However, if the vote is rejected, the pending content will be discarded. If the integrated evaluation is higher than the threshold, voting is not performed, but it is immediately reflected in the repository server.
The commit permission / non-commitment determination unit 115 includes means for transmitting a request other than a commit application such as acquisition of a source code of a client application or acquisition of an update history to the repository server 111 and returning the result.

スケジュール調整部118は、投票データベース117に記録された、過去の投票における遅延時間を基に、開発者ごとに投票時間を算出し、スケジュールデータベース105に記録された開発者の空き時間に投票予定日時を予約する。
ここで、遅延時間とは、予約した投票予定日時に対して開発者が実際に投票するまでの遅れ時間のことである。
レポジトリサーバ111は、登録されたソースコードごとに変更履歴を管理し、クライアントアプリケーションの指示に従ってソースコードを更新したり、ある時点でのソースコードの内容を開発者PC109に送信したりする。なお、レポジトリサーバ111の内部動作については公知であるので説明を省略する。
The schedule adjustment unit 118 calculates the voting time for each developer based on the delay time in the past voting recorded in the voting database 117, and the voting scheduled date and time is calculated in the developer's free time recorded in the schedule database 105. Make a reservation.
Here, the delay time is a delay time until the developer actually votes for the reserved voting scheduled date and time.
The repository server 111 manages the change history for each registered source code, updates the source code in accordance with an instruction from the client application, and transmits the contents of the source code at a certain point to the developer PC 109. Note that the internal operation of the repository server 111 is well-known and will not be described.

図2は、プロジェクトデータベース103のデータ構造を示す図であり、プロジェクトデータベース103は、プロジェクトを一意に特定するプロジェクトID201と、プロジェクト名を指定するプロジェクト名202と、プロジェクトの特徴を指定する属性203から構成される。
プロジェクトID201は開発プロジェクト間で重複しない値がプロジェクト入力部106によって設定される。また、プロジェクト名202は、開発者が入力した、プロジェクトを解かりやすく区別する名前が格納される。属性203は、開発プロジェクトのキーワードを指定するものであり、一つのプロジェクトにつき任意のものを複数指定することができる。属性203の内容は、統合評価の算出に使用される。
FIG. 2 is a diagram showing the data structure of the project database 103. The project database 103 includes a project ID 201 for uniquely identifying a project, a project name 202 for designating a project name, and an attribute 203 for designating a feature of the project. Composed.
The project input unit 106 sets a value for the project ID 201 that does not overlap between development projects. Further, the project name 202 stores a name input by the developer to easily distinguish the project. The attribute 203 designates a keyword of a development project, and a plurality of arbitrary items can be designated for one project. The content of the attribute 203 is used for calculation of the integrated evaluation.

図3は、開発者データベース104のデータ構造を示す図であり、開発者データベース104は、開発者を一意に特定する開発者ID301と、プロジェクト履歴302から構成される。開発者IDは、開発者ごとに重複しない値が設定されている。プロジェクト履歴は、開発者ID301で指定された開発者が、これまでに参加してきたプロジェクトと、その評価の記録であり、プロジェクトID303と、参加日304と、終了日305と、種別306と、評価307から構成される。
プロジェクトID303には図2のプロジェクトID201で定義されたものが入力される。参加日304と終了日305は、それぞれプロジェクトに参加した日と終了した日が格納されるものであり、現在参加中のプロジェクトには終了日が入力されない。
種別306と評価307は、評価格納部124が格納するものであり、参加したプロジェクトにおいて評価が算出するたびに格納される。
評価種別306は評価の種類を表し、要望が満たされたことを示す要望解決と、不具合を修正したことを示す不具合解決と、投票の結果コミット申請が承認されたことを示す申請承認と、申請が却下されたことを示す申請却下と、投票を行ったことを示す投票の5種類がある。評価307は評価種別に応じて評価格納部121が算出した評価の値であり、その値はシステム設定データベース114の設定値に応じて変動する。
FIG. 3 is a diagram showing a data structure of the developer database 104. The developer database 104 includes a developer ID 301 that uniquely identifies a developer and a project history 302. The developer ID is set to a value that does not overlap for each developer. The project history is a record of the projects that the developer specified by the developer ID 301 has participated so far and the evaluation of the projects. The project ID 303, the participation date 304, the end date 305, the type 306, the evaluation 307.
The project ID 303 is input as defined by the project ID 201 in FIG. The participation date 304 and the end date 305 store the date of participation in the project and the date of completion, respectively, and no end date is input to the currently participating project.
The type 306 and the evaluation 307 are stored by the evaluation storage unit 124, and are stored whenever the evaluation is calculated in the participating project.
An evaluation type 306 represents an evaluation type, a request solution indicating that the request has been satisfied, a defect solution indicating that the defect has been corrected, an application approval indicating that the commit application has been approved as a result of voting, and an application There are five types of voting: rejection of application indicating that voting has been rejected, and voting indicating that voting has been performed. The evaluation 307 is an evaluation value calculated by the evaluation storage unit 121 according to the evaluation type, and the value fluctuates according to the setting value of the system setting database 114.

図4は、スケジュールデータベース105のデータ構造を示す図であり、スケジュールデータベース105は、開発者ID401と、スケジュール402から構成される。
開発者ID401は、図3の開発者ID301で定義されたものが格納される。
スケジュールは開発者ごとに複数登録され、開始日時403と、終了日時404と、内容405から構成される。これらの内容は開発者がスケジュール入力部107から入力したり、スケジュール調整部118が入力したりして格納される。
FIG. 4 is a diagram illustrating a data structure of the schedule database 105, and the schedule database 105 includes a developer ID 401 and a schedule 402.
The developer ID 401 is stored as defined by the developer ID 301 in FIG.
A plurality of schedules are registered for each developer, and include a start date 403, an end date 404, and contents 405. These contents are stored by the developer through the schedule input unit 107 or the schedule adjustment unit 118.

図5は、システム設定データベース114のデータ構造を示す図であり、システム設定データベース114は、設定の名称である設定名501と、設定される値を示す設定値502と、該当する設定値を示す範囲502から構成される。
設定名には12の種類があり、統合評価閾値はコミット可否判定部115がコミット申請した開発者に対して投票が必要かどうか判定する統合評価の閾値である。
平均閲覧時間は行単位を単位とした閲覧に必要な平均時間である。
承認率閾値は、投票結果において、レポジトリサーバ111に反映させるかどうか判定する、承認率の閾値である。
プロジェクト経過補正値は統合評価の算出において過去の開発プロジェクトにおける評価を経過日数に応じて変化させるための補正値であり、経過日数に応じて変化する。
遅延評価値は、投票に対する評価値であり、遅延日数に応じて変化する。
承認評価値は承認された開発者に対して与える評価の値である。
却下評価値は却下された開発者に対して与える評価の値である。
重要度評価値は、課題を解決した場合に与える評価値であり、重要度に応じて変化する。
遅延補正値は、課題を解決した場合に与える評価値の補正値であり、課題解決の遅延時間に応じて変化する。
不具合解決補正値は、解決した課題が不具合であった場合に与える評価の補正値である。
要望解決補正値は、解決した課題が要望であった場合に与える評価の補正値である。
不具合発生補正値は、不具合を発生させた場合に与える評価の補正値である。
FIG. 5 is a diagram illustrating a data structure of the system setting database 114. The system setting database 114 indicates a setting name 501 that is a setting name, a setting value 502 that indicates a set value, and a corresponding setting value. The range 502 is configured.
There are 12 types of setting names, and the integrated evaluation threshold value is an integrated evaluation threshold value for determining whether or not voting is necessary for the developer who has applied for committing by the commit permission determination unit 115.
The average browsing time is the average time required for browsing in line units.
The approval rate threshold value is a threshold value of the approval rate for determining whether or not to reflect in the repository server 111 in the vote result.
The project progress correction value is a correction value for changing the evaluation in the past development project according to the elapsed days in the calculation of the integrated evaluation, and changes according to the elapsed days.
The delayed evaluation value is an evaluation value for voting and changes according to the number of days of delay.
The approval evaluation value is an evaluation value given to an approved developer.
The rejection evaluation value is an evaluation value given to a rejected developer.
The importance level evaluation value is an evaluation value given when the problem is solved, and changes according to the importance level.
The delay correction value is a correction value of the evaluation value given when the problem is solved, and changes according to the delay time of problem resolution.
The defect resolution correction value is an evaluation correction value given when the problem to be solved is a defect.
The demand solution correction value is an evaluation correction value given when the solved problem is a request.
The defect occurrence correction value is an evaluation correction value given when a defect occurs.

図6は、保留データベース116のデータ構造を示す図であり、保留データベース116は、保留された内容をプロジェクト内で一意に特定する保留ID601と、コミット申請された日時を格納する申請日時602と、コミット申請した開発者を示す申請者603と、コミット申請時に指定されたコメントを格納するコメント604と、更新ファイルの名前を示すファイル名605と、更新対象となるリビジョンを示す606と、更新された箇所と内容を示す更新内容607から構成される。
保留ID601は、コミット可否判定部115が投票を必要と判断した場合に開発プロジェクト内で一意となるものが割り当てられる。
更新日時602は、開発PC109のクライアントアプリケーションがコミット申請した時の日時が格納される。
ファイル名605は、コミット申請されたファイルの一覧であり、一度のコミット申請で複数のソースコードがクライアントアプリケーションによって指定される。
対象リビジョン606は、修正の対象となるリビジョンを指し、クライアントアプリケーションによって指定される。ここでリビジョンとは、レポジトリサーバがファイルごとに割り当てる編集履歴の識別子であり、開発者はソースコードごとにリビジョンを指定して、目的とする時点の内容を取得する。
更新内容607は、対象リビジョン605の内容と、コミット申請された内容の行単位の差分であり、この内容はクライアントアプリケーションが算出して送信する。
なお、602から607の内容は、一般のレポジトリサーバ111を利用した開発において、クライアントアプリケーションがレポジトリサーバ111に送信する内容と同一であり、投票結果が承認となった場合はそのままレポジトリサーバ111に反映される。
FIG. 6 is a diagram illustrating a data structure of the hold database 116. The hold database 116 includes a hold ID 601 for uniquely specifying the held content in the project, an application date / time 602 for storing the date / time of commit application, An applicant 603 indicating a developer who has applied for a commit, a comment 604 for storing a comment designated at the time of commit application, a file name 605 indicating the name of an update file, a 606 indicating a revision to be updated, and an update It consists of update contents 607 indicating the location and contents.
The hold ID 601 is assigned a unique ID in the development project when the commit permission determination unit 115 determines that voting is necessary.
The update date and time 602 stores the date and time when the client application of the development PC 109 applied for commit.
A file name 605 is a list of files that have been applied for commit, and a plurality of source codes are specified by the client application in one commit application.
The target revision 606 indicates a revision to be corrected and is designated by the client application. Here, the revision is an identifier of an editing history assigned to each file by the repository server, and the developer specifies the revision for each source code and acquires the contents at the target time.
The update content 607 is a line-by-line difference between the content of the target revision 605 and the content requested for commit, and this content is calculated and transmitted by the client application.
The contents from 602 to 607 are the same as the contents transmitted by the client application to the repository server 111 in the development using the general repository server 111. If the vote result is approved, the contents are reflected in the repository server 111 as they are. Is done.

図7は、投票データベース117のデータ構造を示すものであり、投票データベース117は、保留ID701と、標準投票時間702と、投票結果703から構成される。
保留ID701は、図6の601で定義されたものであり、投票対象となるコミット申請を指す。
標準投票時間702は、各開発者に与える投票時間の基準となる時間であり、この時間に投票遅延時間の平均を開発者ごとに加えたものを投票時間とする。標準投票時間702は、607で定義された更新内容の量に応じて変化する。
投票結果703は、コミット申請された内容に対して個々の開発者が投票した結果であり、投票した開発者を示す投票者704と、投票予定日時を示す投票予定日時705と、実際に投票された日時を示す投票実施日時706と、投票された結果を示す可否707と、投票時に指定された指摘事項を示す指摘事項708から構成される。
投票者IDは、図3の301で定義された開発者IDが格納され、開発プロジェクト中のコミット申請した開発者以外の開発者が格納される。投票者の一覧は、図6の603で述べた申請者と、開発者データベース104に記憶された開発者301と、進行中のプロジェクトのID303から取得できる。なお、進行中のプロジェクトは終了予定日305が格納されているかどうかで判定できる。
投票予定日時705は、標準投票時間702を基にスケジュール調整部118が算出した結果が格納される。
投票実施日時706は、投票入力部120によって実際に投票された日時が格納される。
可否703は投票者が指定するものであり、承認と却下の2種類が格納される。
指摘事項708は、可否703において却下を選択した場合に投票者が入力するものである。
FIG. 7 shows the data structure of the voting database 117, and the voting database 117 is composed of a hold ID 701, a standard voting time 702, and a voting result 703.
The hold ID 701 is defined in 601 of FIG. 6 and indicates a commit application to be voted.
The standard voting time 702 is a time serving as a reference for the voting time given to each developer, and the voting time is obtained by adding the average of the voting delay times for each developer to this time. The standard voting time 702 changes according to the amount of update content defined in 607.
The voting result 703 is a result of each developer voting on the content for which the commit application has been applied, and a voter 704 indicating the developer who voted, a scheduled voting date 705 indicating the scheduled voting date and time, and an actual vote. A voting execution date and time 706 indicating the date and time, a determination result 707 indicating the voted result, and an indication item 708 indicating an indication item designated at the time of voting.
As the voter ID, the developer ID defined in 301 of FIG. 3 is stored, and a developer other than the developer who applied for the commit in the development project is stored. The list of voters can be acquired from the applicant described at 603 in FIG. 6, the developer 301 stored in the developer database 104, and the ID 303 of the ongoing project. An ongoing project can be determined by whether or not the scheduled end date 305 is stored.
The scheduled vote date and time 705 stores the result calculated by the schedule adjustment unit 118 based on the standard vote time 702.
The voting date and time 706 stores the date and time when the voting input unit 120 actually voted.
The permission / inhibition 703 is designated by the voter, and stores two types of approval and rejection.
The pointed item 708 is input by the voter when rejection is selected in the availability 703.

図8は、課題データベース122のデータ構造を示す図である。
課題データベース122は、開発プロジェクト内で一意に課題を特定する課題ID801と、課題の内容を示す内容802と、課題が不具合か要望かを区別する種別803と、課題の進捗状態を示す状態804と、課題の完了予定日時を示す完了予定日時805と、課題の重要度を示す重要度806と、不具合を発生した開発者を示す発生者807と、課題の解決に割り当てられた開発者を示す対応者808と、課題が解決した日時を示す完了日時809から構成される。
課題ID801には、開発プロジェクト内で一意となるものが課題入力部121によって設定される。
内容802は、課題の説明が任意に入力される。
種別803は、入力された課題が要望か不具合か選択するものであり、評価の算出などに使用される。
状態804は、3つの種類があり、課題が発生した直後の状態を示す調査中と、対応者を割り当てたことを示す割り当て済みと、課題が解決したことを示すクローズのいずれかの値をとる。
なお、全ての課題の状態は、調査中から割り当て済みを経て、クローズに遷移する。
完了予定日時805と重要度806は、課題の困難さと対応者の能力に応じて入力するものであり、状態804が調査中である場合は入力されない。発生者807は、調査で判明した不具合の発生者を入力する項目であり、状態804を割り当て済みに更新する時に入力する。
なお、種別803が要望である場合、発生者807は入力されない。
対応者808は、課題に対応する開発者を入力するものであり、状態804を割り当て済みに更新するときに入力する。なお、発生者807と対応者808の情報は評価の算出で使用される。完了日時809は、状態をクローズに更新した日時を課題入力部が格納する。完了予定日時805と完了日時809の差は評価の算出に使用される。
FIG. 8 is a diagram showing the data structure of the assignment database 122.
The assignment database 122 includes an assignment ID 801 that uniquely identifies an assignment within the development project, a content 802 that indicates the contents of the assignment, a type 803 that distinguishes whether the assignment is a defect or a request, and a status 804 that indicates the progress status of the assignment. , A scheduled completion date and time 805 indicating the scheduled completion date and time of the task, an importance level 806 indicating the importance level of the task, a generator 807 indicating the developer who has caused the problem, and a correspondence indicating the developer assigned to the resolution of the task And a completion date and time 809 indicating the date and time when the problem has been solved.
The assignment ID 801 is set by the assignment input unit 121 to be unique within the development project.
In the contents 802, a description of the problem is arbitrarily input.
The type 803 is used to select whether the input task is desired or defective, and is used for calculation of evaluation.
The status 804 has three types, and takes one of the following values: an investigation indicating the status immediately after the issue has occurred, an assigned status indicating that a responder has been assigned, and a closed status indicating that the issue has been resolved. .
Note that the state of all tasks transitions to closed after being assigned from the investigation.
The scheduled completion date and time 805 and the importance 806 are input according to the difficulty of the task and the ability of the responder, and are not input when the status 804 is under investigation. The occurrence person 807 is an item for inputting the occurrence person of the trouble found by the investigation, and is inputted when the state 804 is updated to assigned.
If the type 803 is desired, the generator 807 is not input.
The responder 808 inputs a developer corresponding to the task, and inputs when the status 804 is updated to assigned. Note that information on the generator 807 and the responder 808 is used in calculation of evaluation. As the completion date and time 809, the task input unit stores the date and time when the state is updated to closed. The difference between the scheduled completion date and time 805 and the completion date and time 809 is used to calculate the evaluation.

図9は、プロジェクト入力部106が表示するプロジェクト管理画面の一例であり、プロジェクト管理画面は、プロジェクトの新規登録欄901と、プロジェクトへの参入欄902から構成され、プロジェクトの新規登録欄901は、プロジェクト名の入力欄903と、属性の入力欄904と、新規作成ボタン905を備える。
また、プロジェクトへの参入欄902は、プロジェクトIDの入力欄906と、開発者IDの入力欄907と、参加ボタン908と、離脱ボタン909を備える。
開発者はブラウザでWebサーバ108にアクセスすることで、これらの情報を入力する。そして、プロジェクト名903と属性904を入力した上で新規作成ボタンを押すとプロジェクト名の入力欄903の内容がプロジェクト名202に格納され、属性の入力欄904の内容が属性203に格納される。なお、属性は複数指定することができる。
また、プロジェクトID906と、開発者ID907を入力した上で参加ボタン908を押すと、指定された内容と開発者ID301が一致するプロジェクト履歴302に、プロジェクトID303が格納される。また、参加ボタン908を押した日が参加日304に格納される。
離脱ボタン909を押すと、開発者ID301とプロジェクトID303が一致するプロジェクト履歴302中の終了日305に離脱ボタン909を押した日が格納される。
FIG. 9 is an example of a project management screen displayed by the project input unit 106. The project management screen includes a new project registration field 901 and a project entry field 902. The new project registration field 901 includes: A project name input field 903, an attribute input field 904, and a new creation button 905 are provided.
The project entry field 902 includes a project ID input field 906, a developer ID input field 907, a join button 908, and a leave button 909.
The developer inputs these pieces of information by accessing the Web server 108 with a browser. When a project name 903 and an attribute 904 are input and a new creation button is pressed, the contents of the project name input field 903 are stored in the project name 202, and the contents of the attribute input field 904 are stored in the attribute 203. A plurality of attributes can be specified.
When the participation button 908 is pressed after inputting the project ID 906 and the developer ID 907, the project ID 303 is stored in the project history 302 in which the designated content matches the developer ID 301. Further, the date when the participation button 908 is pressed is stored in the participation date 304.
When the release button 909 is pressed, the date when the release button 909 is pressed is stored in the end date 305 in the project history 302 in which the developer ID 301 and the project ID 303 match.

図10は、スケジュール入力部107が表示するスケジュール管理画面の一例であり、スケジュール管理画面は、対象開発者IDの入力欄1001と、表示ボタン1002と、スケジュールの表示欄1003と、スケジュールの登録欄1004から構成される。
スケジュールの表示欄は指定された開発者のスケジュールの内容を表示するもので、対象開発者IDの入力欄1001を入力して表示ボタン1002を押すことで表示され、開始日時403の内容を表示する開始日時の表示欄1005と、終了日時404の内容を表示する終了日時の表示欄1006と、内容405の内容を表示する内容の表示欄1007と、削除ボタン1008から構成される。
削除ボタン1008をクリックすると、該当スケジュールをスケジュールデータベースから消去する。
スケジュールの登録欄1004は、開始日時の入力欄1009と、終了日時の入力欄1010と、内容の入力欄1011と、予約ボタン1012から構成され、各入力欄の内容を入力した上で予約ボタン1012を押すと、入力したスケジュールが登録される。
FIG. 10 shows an example of a schedule management screen displayed by the schedule input unit 107. The schedule management screen includes an input field 1001 for a target developer ID, a display button 1002, a schedule display field 1003, and a schedule registration field. 1004.
The schedule display field displays the contents of the designated developer's schedule, and is displayed by inputting the target developer ID input field 1001 and pressing the display button 1002, and displays the contents of the start date and time 403. A start date / time display field 1005, an end date / time display field 1006 for displaying the content of the end date / time 404, a content display field 1007 for displaying the content of the content 405, and a delete button 1008.
When a delete button 1008 is clicked, the corresponding schedule is deleted from the schedule database.
The schedule registration field 1004 includes a start date / time input field 1009, an end date / time input field 1010, a content input field 1011, and a reservation button 1012, and the reservation button 1012 after inputting the contents of each input field. Press to register the entered schedule.

図11は、投票入力部120が表示する投票画面の一例であり、投票対象の表示欄1101と、申請内容の表示欄1102と、投票の入力欄1103から構成される。
投票対象の表示欄1101は、コミット申請者を示す申請者の表示欄1104と、申請された日時を示す申請日時の表示欄1105と、コミット申請時に入力されたコメントの表示欄1106から構成される。
更新内容の表示欄1102は、ファイル名1107と、更新前の内容を示す更新前欄1108と、更新後の内容を示す更新後1109から構成される。
投票の入力欄1103は、指摘事項の入力欄1110と、承認ボタン1111と、却下ボタン1112から構成される。
投票対象の表示欄1101の内容は、保留データベース116の内容を基に出力され、申請者603の内容が申請者の表示欄1104に、申請日時602の内容が申請日時の表示欄1105に、コメント604の内容がコメントの表示欄1106に表示される。
なお、本画面はブラウザによって表示され、対象となる保留ID601はURLで指定されているものとする。
FIG. 11 shows an example of a voting screen displayed by the voting input unit 120, which includes a voting target display field 1101, an application content display field 1102, and a voting input field 1103.
The voting target display column 1101 includes an applicant display column 1104 indicating the commit applicant, an application date / time display column 1105 indicating the date and time of application, and a comment display column 1106 input at the time of commit application. .
The update content display column 1102 includes a file name 1107, a pre-update column 1108 indicating the content before update, and a post-update 1109 indicating the content after update.
The voting input field 1103 includes an indication item input field 1110, an approval button 1111, and a rejection button 1112.
The contents of the display field 1101 to be voted are output based on the contents of the hold database 116, the contents of the applicant 603 are displayed in the display field 1104 of the applicant, the contents of the application date 602 are displayed in the display field 1105 of the application date, The contents of 604 are displayed in the comment display field 1106.
Note that this screen is displayed by the browser, and the target hold ID 601 is specified by the URL.

申請内容の表示欄1102はファイル名の表示欄1107と、更新前の表示欄1108と、更新後の表示欄1109から構成され、修正ファイル605ごとに表示される。
更新前1108の内容は、レポジトリサーバ111から取得したものであり、更新内容607の内容と合わせて更新後の表示欄1109の内容を構築する。
なお、更新された行については1113のように色を変えて強調表示する。
投票者は更新内容を精読し、指摘事項の入力欄1110を入力した上で承認ボタン1111か、却下ボタン1112を押す。入力された内容は投票結果702に反映される。なお、投票者の投票者ID703は、保留IDと同様にURLで指定されているものとする。
The application content display field 1102 includes a file name display field 1107, a display field 1108 before update, and a display field 1109 after update, and is displayed for each modified file 605.
The content of the pre-update 1108 is acquired from the repository server 111, and the content of the updated display column 1109 is constructed together with the content of the update content 607.
The updated line is highlighted by changing the color as in 1113.
The voter carefully reads the update contents, inputs the indication item input field 1110, and presses the approval button 1111 or the reject button 1112. The input content is reflected in the voting result 702. It is assumed that the voter ID 703 of the voter is specified by the URL as with the hold ID.

図12は、課題入力部121が出力する課題管理画面の一例を示す図であり、課題管理画面は課題を新規に登録する新規登録欄1201と、登録済みの課題を更新する更新欄1202から構成される。
新規登録欄1201は、内容を入力する内容入力欄1203と、種別を指定する種別選択欄1204と、登録ボタン1205から構成される。
内容入力欄1203と種別選択欄1204で指定された内容は登録ボタン1205を押すことで、課題データベースの内容802と種別803に反映される。また、登録ボタン1205を押して登録した直後は状態804に調査中が格納される。
更新欄1202は、課題ID801の内容を表示する課題IDの表示欄1206と、内容802を表示する内容の表示欄1207と、種別803の内容を表示する種別の表示欄1208と、状態804の内容を表示する状態の選択欄1209と、発生者807の内容を入力する発生者の入力欄1210と、対応者808の内容を入力する対応者の入力欄1211と、重要度806の内容を選択する重要度の選択欄1212と、完了予定日時805の内容を入力する完了予定日時1213と、入力した内容を反映させる更新ボタン1214から構成される。
FIG. 12 is a diagram illustrating an example of an assignment management screen output by the assignment input unit 121. The assignment management screen includes a new registration field 1201 for newly registering an assignment and an update field 1202 for updating a registered assignment. Is done.
The new registration column 1201 includes a content input column 1203 for inputting content, a type selection column 1204 for specifying a type, and a registration button 1205.
The content specified in the content input column 1203 and the type selection column 1204 is reflected in the content 802 and the type 803 of the assignment database when a registration button 1205 is pressed. Immediately after registration by pressing the registration button 1205, “under investigation” is stored in the state 804.
The update column 1202 includes a task ID display column 1206 for displaying the content of the task ID 801, a content display column 1207 for displaying the content 802, a type display column 1208 for displaying the type 803 content, and the status 804 content. The selection field 1209 for displaying the state of the person, the input field 1210 for the person who inputs the contents of the person 807, the input field 1211 for the person who inputs the contents of the responder 808, and the contents of the importance 806 are selected. An importance selection field 1212, a scheduled completion date and time 1213 for inputting the content of the scheduled completion date and time 805, and an update button 1214 for reflecting the input content are configured.

更新欄1202には、状態804がクローズ以外となっている課題が全て表示され、未入力の項目は入力して更新ボタン1214を押すことで課題データベースに反映することができる。ただし、状態の選択欄1209を調査中から割り当て済みに変更する場合は、発生者の入力欄1210と、対応者の入力欄1211と、重要度1212と、完了予定日1213が入力されている必要がある。
なお、種別1208が要望である場合は発生者の入力欄1210は表示されない。また、状態の選択欄1209は、割り当て済みの場合のみクローズに更新することができ、クローズを選択して更新ボタン1214を押すと、その日時が完了日時809に格納される。
The update column 1202 displays all issues whose status 804 is other than closed, and items that have not been entered can be input and reflected in the issue database by pressing the update button 1214. However, when the status selection field 1209 is changed from being surveyed to assigned, the occurrence entry field 1210, the responder entry field 1211, the importance level 1212, and the expected completion date 1213 need to be input. There is.
In addition, when the type 1208 is a demand, the generator input field 1210 is not displayed. The state selection field 1209 can be updated to closed only when it has been assigned. When the close button is selected and the update button 1214 is pressed, the date and time is stored in the completion date and time 809.

図13は、スケジュール調整部118がメールサーバ119を使用して投票者に送信する投票依頼メールの内容を表す図であり、投票者の開発ID1301と、コミット申請者の開発者ID1302と、申請日時1303と、コメントの内容1304と、投票スケジュール日時1305と、投票画面のURL1306から構成される。
投票者の開発IDは、投票データベース117の投票者703から取得される。
コミット申請者の開発者ID1302と、申請日時1303と、コメント1304は、保留ID701が一致する申請者603と、申請日時602と、コメント604から取得される。
投票スケジュール日時1305は、スケジュール調整部が決定した投票日時から取得される。
投票URL1306は、投票者の開発者IDと保留IDをパラメーターとして含み、投票入力部120は、この内容を基に対象の保留IDと投票者を判断する。
FIG. 13 is a diagram showing the contents of a vote request email that the schedule adjustment unit 118 sends to the voter using the mail server 119. The voter development ID 1301, the commit applicant developer ID 1302, the application date and time 1303, comment content 1304, voting schedule date and time 1305, and voting screen URL 1306.
The development ID of the voter is acquired from the voter 703 of the vote database 117.
The developer ID 1302 of the commit applicant, the application date / time 1303, and the comment 1304 are acquired from the applicant 603, the application date / time 602, and the comment 604 whose holding ID 701 matches.
The voting schedule date 1305 is acquired from the voting date determined by the schedule adjustment unit.
The voting URL 1306 includes a voter developer ID and a hold ID as parameters, and the vote input unit 120 determines a target hold ID and a voter based on this content.

図14は、投票の結果、却下となった場合に申請者に送信する却下告知メールの内容を示す図であり、却下告知メールは、コミット申請者の開発者ID1401と、申請日時1402と、コメント1403と、指摘事項1404から構成される。
1401から1403の内容は、保留データベース116の内容から取得され、それぞれ申請者603と、申請日時602と、コメント604の内容が反映される。
指摘事項1404の内容は、指摘事項708の内容が反映される。
なお、本システムは開発者のメールアドレスが開発者IDから類推できることを想定しているが、できない場合は開発者データベース104に、開発者IDごとにメールアドレスが定義されている必要があることは言うまでもない。
FIG. 14 is a diagram showing the contents of a rejection notification email that is sent to the applicant when the result of voting is rejection. The rejection notification email includes a developer ID 1401 of the commit applicant, an application date 1402, and a comment. 1403 and indication items 1404.
The contents 1401 to 1403 are acquired from the contents of the hold database 116, and the contents of the applicant 603, the application date and time 602, and the comment 604 are reflected.
The content of the indication item 1404 reflects the content of the indication item 708.
Note that this system assumes that the developer's email address can be inferred from the developer ID, but if this is not possible, the developer database 104 must have an email address defined for each developer ID. Needless to say.

図15は、本システムを利用したアプリケーション開発の全体フローをフローチャートである。
開発者はプロジェクト入力部106が出力するプロジェクト管理画面で、プロジェクトID906と開発者ID907を指定して開発者プロジェクトに参加する(ステップ1501)。
次に開発者は課題データベース122において割り当てられた課題を把握し、解決するために開発PC109でソースコードを記述する(ステップ1502、1503)。
ソースコードが完成したら、レポジトリサーバ111のクライアントアプリケーションを操作して、ソースコードを投票システム110にコミット申請する(ステップ1504)。
FIG. 15 is a flowchart showing the overall flow of application development using this system.
The developer specifies the project ID 906 and developer ID 907 on the project management screen output by the project input unit 106 and participates in the developer project (step 1501).
Next, the developer grasps the assignment assigned in the assignment database 122 and describes the source code on the development PC 109 in order to solve it (steps 1502 and 1503).
When the source code is completed, the client application of the repository server 111 is operated to apply for committing the source code to the voting system 110 (step 1504).

コミット申請を受けるとコミット可否判定部115は、開発者データベース104とプロジェクトデータベース103から開発者の統合評価を取得する(ステップ1505)。
次に、コミット可否判定部115は、取得した統合評価とシステム設定データベース114に設定された統合評価閾値と比較する(ステップ1506)。
統合評価が統合評価閾値以下の場合は、コミット申請された内容を保留データベース116に退避した上で、投票データベース117に投票結果を格納する領域を作成し、スケジュール調整部118で投票スケジュールを算出する(ステップ1507)。
When the commit application is received, the commit possibility determination unit 115 acquires the developer's integrated evaluation from the developer database 104 and the project database 103 (step 1505).
Next, the commit possibility determination unit 115 compares the acquired integrated evaluation with the integrated evaluation threshold set in the system setting database 114 (step 1506).
If the integrated evaluation is less than or equal to the integrated evaluation threshold, the commit application content is saved in the holding database 116, an area for storing the voting results is created in the voting database 117, and the voting schedule is calculated by the schedule adjustment unit 118. (Step 1507).

投票者はメールサーバ119から図13に示した投票依頼メールを受け取り、それに記載されたURL1306で投票入力部120にアクセスし、更新内容を確認した上で投票結果を入力する(ステップ1508)。
投票者703が全て投票を実施したら、コミット可否判定部115は可否707から全投票数の承認の割合を算出し、システム設定データベース114に記憶された承認率閾値と比較する(ステップ1509)。
承認率が承認率閾値を越えた場合は、保留ID116に退避したコミット申請の内容を、レポジトリサーバ111に反映させる(ステップ1510)。
次に開発者は課題入力121が出力する課題更新画面を操作して課題の状態1209をクローズに更新する(ステップ1511)。
The voter receives the voting request mail shown in FIG. 13 from the mail server 119, accesses the voting input unit 120 at the URL 1306 described therein, confirms the update contents, and inputs the voting result (step 1508).
When all the voters 703 have voted, the commit permission determination unit 115 calculates the approval ratio of the total number of votes from the permission 707 and compares it with the approval rate threshold stored in the system setting database 114 (step 1509).
If the approval rate exceeds the approval rate threshold, the contents of the commit application saved in the hold ID 116 are reflected in the repository server 111 (step 1510).
Next, the developer operates the assignment update screen output by the assignment input 121 to update the assignment state 1209 to closed (step 1511).

ステップ1506において、統合評価が統合評価閾値を越える場合は、投票を実施せずにステップ1510とステップ1511を実施する。
また、ステップ1509において承認率が設定値以下の場合は、ステップ1503に戻り、承認されるまで修正を繰り返す。
以上のように解決した要望に対して、テストなどで不具合が発覚した場合は(ステップ1512)、その不具合を課題データベース122に登録してステップ1503に戻る。
問題が無ければ残りの要望を解決し、要望が全て解決された場合はプロジェクト管理画面で離脱ボタン909を押して開発プロジェクトから離脱する(ステップ1502,1513)。
In step 1506, if the integrated evaluation exceeds the integrated evaluation threshold, steps 1510 and 1511 are executed without voting.
If the approval rate is equal to or lower than the set value in step 1509, the process returns to step 1503 and the correction is repeated until approval is obtained.
If a problem is found in the test or the like in response to the request solved as described above (step 1512), the problem is registered in the problem database 122 and the process returns to step 1503.
If there is no problem, the remaining requests are solved. If all the requests are solved, the release button 909 is pressed on the project management screen to leave the development project (steps 1502 and 1513).

図16は、ステップ1505で述べた統合評価を取得する手順を示すフローチャートである。
本システムにおいて統合評価は、開発プロジェクトの属性や経過日数を考慮して計算し、まず統合評価Rを0で初期化する(ステップ1601)。
次に申請者603と開発者IDが一致するプロジェクト履歴302を一つ取得する(ステップ1602)。
次に、そのプロジェクト履歴に記憶された評価を合計し、一時変数Pに格納する(ステップ1603)。なお、評価の値によってはPの値は負数である場合がある。
次にプロジェクト履歴の終了日305を参照して、取得したプロジェクトが終了したものかどうか判定する(ステップ1604)。
終了したプロジェクトであれば、属性203を取得する(ステップ1605)。
FIG. 16 is a flowchart showing a procedure for acquiring the integrated evaluation described in step 1505.
In this system, the integrated evaluation is calculated taking into account the attributes of the development project and the number of days elapsed. First, the integrated evaluation R is initialized to 0 (step 1601).
Next, one project history 302 having the same applicant 603 and developer ID is acquired (step 1602).
Next, the evaluations stored in the project history are summed and stored in the temporary variable P (step 1603). Depending on the evaluation value, the value of P may be a negative number.
Next, with reference to the project history end date 305, it is determined whether or not the acquired project has ended (step 1604).
If it is a completed project, the attribute 203 is acquired (step 1605).

次に終了日305が格納されていない現在進行中のプロジェクトの属性203を取得し、ステップ1605で取得した属性と一致するものがあるか判定する(ステップ1606)。
一致するものがある場合は、現在進行中のプロジェクトの属性中の、一致した割合を変数αに格納する(ステップ1607)。
次に、取得したプロジェクトの終了日305から現在までの経過日数を取得し(ステップ1608)、経過した日数に応じたプロジェクト経過補正値をシステム設定データベース114から取得して一時変数βに格納する(ステップ1609)。そして総合評価Rに一プロジェクト中の合計値であるPと、αと、βを掛け合せた結果を加算する(ステップ1610)。
ステップ1604において、取得したプロジェクトが現在進行中のプロジェクトである場合は、αに1を代入し(ステップ1611)、βに1を代入した上で(ステップ1612)、ステップ1610を実行する。
以上の操作を全てのプロジェクト履歴に対して実施する(ステップ1613)。
これにより総合評価値は、評価が一定であっても、進行中のプロジェクトの属性や経過日数に従って変動することになる。
Next, the attribute 203 of the currently ongoing project in which the end date 305 is not stored is acquired, and it is determined whether there is an attribute that matches the attribute acquired in step 1605 (step 1606).
If there is a match, the matching ratio in the attributes of the currently ongoing project is stored in the variable α (step 1607).
Next, the elapsed days from the acquired project end date 305 to the present are acquired (step 1608), and the project progress correction value corresponding to the elapsed days is acquired from the system setting database 114 and stored in the temporary variable β ( Step 1609). Then, the result obtained by multiplying the overall evaluation R by P, which is the total value in one project, α, and β is added (step 1610).
In step 1604, if the acquired project is an ongoing project, 1 is substituted for α (step 1611), 1 is substituted for β (step 1612), and step 1610 is executed.
The above operation is performed on all project histories (step 1613).
As a result, even if the evaluation is constant, the comprehensive evaluation value varies according to the attributes of the ongoing project and the elapsed days.

図17から図19は、評価格納部124が開発者の評価を算出するフローチャートであり、本システムにおいて評価が決定するタイミングは投票する時と、投票結果を判定する時と、課題を更新した時の3つがある。
図17は、投票時の評価算出の手順を示すフローチャートであり、まず投票者の投票予定日時を投票予定日時705から取得する(ステップ1701)。
次に実際に投票された投票実施日時を706から取得して、ステップ1701とあわせて遅延時間を取得する(ステップ1702)。
次に、遅延時間とシステム設定データベース114の遅延評価値から該当する評価を取得する(ステップ1703)。
最後に投票者704と開発者ID301が一致する開発者データベースの評価307に、評価値を格納し、属性306に、投票と格納して終了する(ステップ1704)。
FIG. 17 to FIG. 19 are flowcharts in which the evaluation storage unit 124 calculates the developer's evaluation, and the timing for determining the evaluation in this system is when voting, when determining the voting result, and when the task is updated There are three.
FIG. 17 is a flowchart showing the evaluation calculation procedure at the time of voting. First, the voter's estimated vote date and time is obtained from the estimated vote date and time 705 (step 1701).
Next, the actual voting date and time of voting is acquired from 706, and the delay time is acquired together with step 1701 (step 1702).
Next, the corresponding evaluation is acquired from the delay time and the delay evaluation value of the system setting database 114 (step 1703).
Finally, the evaluation value is stored in the evaluation 307 of the developer database in which the voter 704 and the developer ID 301 coincide with each other, the vote is stored in the attribute 306, and the process ends (step 1704).

図18は、投票結果判定時の評価算出の手順を示すフローチャートであり、可否707から、保留データ中の全投票結果における承認数の割合を取得する(ステップ1801)。
次にシステム設定データベース114の承認率閾値と比較して承認するかどうか判定する(ステップ1802)。
承認となった場合は、承認数の割合を、システム設定データベース114の承認評価値とかけた結果を評価値とする(ステップ1803)。
却下となった場合は、却下数の割合を、システム設定114の却下評価値とかけた結果を評価値とする(ステップ1804)。
最後に申請者603と開発者ID301が一致する開発者データベース104の評価307に、評価値を格納し、属性306に、承認結果に応じて申請承認または申請却下と格納して終了する(ステップ1705)。
FIG. 18 is a flowchart showing the procedure of evaluation calculation at the time of voting result determination. From approval / disapproval 707, the ratio of the number of approvals in all voting results in the pending data is acquired (step 1801).
Next, it is determined whether to approve by comparing with the approval rate threshold of the system setting database 114 (step 1802).
If approval is obtained, the result obtained by multiplying the approval number ratio by the approval evaluation value in the system setting database 114 is used as the evaluation value (step 1803).
When rejected, the result obtained by multiplying the rejection ratio by the rejection evaluation value of the system setting 114 is set as the evaluation value (step 1804).
Finally, the evaluation value is stored in the evaluation 307 of the developer database 104 in which the applicant 603 and the developer ID 301 match, and the application 306 or application rejection is stored in the attribute 306 according to the approval result, and the process ends. ).

図19は、課題更新時の評価算出の手順を示すフローチャートであり、課題が更新されると、評価格納部124は更新後の状態804を取得する(ステップ1901)。
状態がクローズに更新された場合は(ステップ1902)、評価対象者に対応者808を指定する(ステップ1903)。
次に、システム設定114から重要度を基に該当する重要度評価値を取得する(ステップ1904)。
次に完了予定日時805と、完了日時809の差から遅延した日数を取得し、システム設定114から該当する遅延補正値を取得する(ステップ1905)。
次に一時変数αにステップ1904で取得した重要度評価値と、ステップ1905で取得した遅延補正値をかけあわせた結果を格納する(ステップ1906)。
次に種別803の内容を判断し、不具合である場合はステップ1906で算出したαとシステム設定114で定義された不具合解決補正値をかけあわせた結果を評価値とする(ステップ1907,ステップ1908、ステップ1909)。
FIG. 19 is a flowchart showing the procedure of evaluation calculation at the time of task update. When the task is updated, the evaluation storage unit 124 acquires the updated state 804 (step 1901).
When the status is updated to closed (step 1902), the responder 808 is designated as the evaluation subject (step 1903).
Next, a corresponding importance evaluation value is acquired from the system setting 114 based on the importance (step 1904).
Next, the number of days delayed from the difference between the scheduled completion date and time 805 and the completion date and time 809 is acquired, and the corresponding delay correction value is acquired from the system setting 114 (step 1905).
Next, the result obtained by multiplying the temporary variable α by the importance evaluation value acquired in step 1904 and the delay correction value acquired in step 1905 is stored (step 1906).
Next, the content of the type 803 is judged. If the problem is a defect, the result obtained by multiplying α calculated in step 1906 and the defect solution correction value defined in the system setting 114 is used as an evaluation value (steps 1907, 1908, Step 1909).

種別803が要望である場合は、ステップ1906で算出したαとシステム設定114で定義された要望解決補正値をかけあわせた結果を評価値とする(ステップ1907,ステップ1910、ステップ1911)。
状態803が割り当て済みに更新された場合は、評価対象者に発生者807を指定する(ステップ1912)。
次に、ステップ1903と同様に重要度806から重要度評価値を取得する(ステップ1914)。
次にステップ1914で取得した重要度評価値と、システム設定114から取得した不具合発生補正値をかけあわせた結果を評価値とする(ステップ1913)。
以上の通り算出した評価値を評価対象者の評価307に格納して終了する(ステップ1916)。
なお、更新後の状態が調査中である場合は何もせず終了する(ステップ1917)。
If the type 803 is a request, the result obtained by multiplying α calculated in step 1906 and the request solution correction value defined in the system setting 114 is used as an evaluation value (step 1907, step 1910, step 1911).
If the status 803 is updated to “allocated”, the generator 807 is designated as the evaluation subject (step 1912).
Next, as in step 1903, an importance evaluation value is acquired from the importance 806 (step 1914).
Next, a result obtained by multiplying the importance evaluation value acquired in step 1914 and the defect occurrence correction value acquired from the system setting 114 is set as an evaluation value (step 1913).
The evaluation value calculated as described above is stored in the evaluation target person's evaluation 307 and the process ends (step 1916).
If the updated state is under investigation, the process ends without doing anything (step 1917).

図20は、スケジュール調整部118が、申請された更新内容を基に開発者ごとの投票時間を決定する手順を示すフローチャートである。
最初に、更新内容607の文字数を取得する(ステップ2001)。
次にシステム設定114で定義された平均閲覧時間と、ステップ2101で取得した文字数をかけあわせて、結果を標準投票時間702に格納する(ステップ2002)。
次に一人の投票者703を取得する(ステップ2003)。その投票者の投票データベース117に記録された投票予定日時705と投票実施日時706の差から遅延時間を取得し、開発プロジェクト中の遅延時間の平均であるプロジェクト平均遅延時間を算出する(ステップ2004,ステップ2005)。そして平均遅延時間を、ステップ2002で算出した標準投票時間と加算して、その開発者の投票時間とする(ステップ2006)。
以上の処理を開発者ごとに行う(ステップ2007)。
投票予定日時705は、開発者ごとにスケジュールデータベース105に記憶された空き時間と、図20で算出した投票時間から、開発プロジェクトとして最適な投票時間を基に算出される。この最適化アルゴリズムについては公知であるので説明を省略する。
FIG. 20 is a flowchart illustrating a procedure in which the schedule adjustment unit 118 determines a voting time for each developer based on the applied update content.
First, the number of characters in the update content 607 is acquired (step 2001).
Next, the average browsing time defined in the system setting 114 is multiplied by the number of characters acquired in step 2101 and the result is stored in the standard voting time 702 (step 2002).
Next, one voter 703 is acquired (step 2003). The delay time is acquired from the difference between the scheduled vote date 705 and the vote execution date 706 recorded in the voter database 117 of the voter, and a project average delay time that is an average of the delay times during the development project is calculated (step 2004). Step 2005). Then, the average delay time is added to the standard voting time calculated in step 2002 to obtain the developer voting time (step 2006).
The above processing is performed for each developer (step 2007).
The scheduled voting date and time 705 is calculated based on the voting time optimum for the development project from the free time stored in the schedule database 105 for each developer and the voting time calculated in FIG. Since this optimization algorithm is publicly known, a description thereof will be omitted.

本発明の実施の形態を示すシステム構成図である。It is a system configuration figure showing an embodiment of the invention. プロジェクトデータベースのデータ構造を示す図である。It is a figure which shows the data structure of a project database. 開発者データベースのデータ構造を示す図である。It is a figure which shows the data structure of a developer database. スケジュールデータベースのデータ構造を示す図である。It is a figure which shows the data structure of a schedule database. システム設定のデータ構造を示す図である。It is a figure which shows the data structure of a system setting. 保留データベースのデータ構造を示す図である。It is a figure which shows the data structure of a pending | holding database. 投票データベースのデータ構造を示す図である。It is a figure which shows the data structure of a voting database. 課題データベースのデータ構造を示す図である。It is a figure which shows the data structure of a subject database. プロジェクト管理画面の一例を示す図である。It is a figure which shows an example of a project management screen. スケジュール管理画面の一例を示す図である。It is a figure which shows an example of a schedule management screen. 投票画面の一例を示す図である。It is a figure which shows an example of a voting screen. 課題管理画面の一例である。It is an example of an assignment management screen. 投票依頼メールの一例を示す図である。It is a figure which shows an example of a voting request mail. 却下告知メールの一例である。It is an example of a rejection notice mail. システム全体の処理を示すフローチャートである。It is a flowchart which shows the process of the whole system. 統合評価取得処理を示すフローチャートである。It is a flowchart which shows integrated evaluation acquisition processing. 投票時における評価算出処理を示すフローチャートである。It is a flowchart which shows the evaluation calculation process at the time of voting. 投票結果判定時における評価算出処理を示すフローチャートである。It is a flowchart which shows the evaluation calculation process at the time of voting result determination. 課題更新時における評価算出処理を示すフローチャートである。It is a flowchart which shows the evaluation calculation process at the time of a task update. 投票時間算出処理を示すフローチャートである。It is a flowchart which shows a voting time calculation process. 従来システムの全体構成図である。It is a whole block diagram of a conventional system.

符号の説明Explanation of symbols

101 共通システム
102 開発システム
103 プロジェクトデータベース
104 開発者データベース
105 スケジュールデータベース
109 開発者PC
110 投票システム
111 レポジトリサーバ
114 システム設定データベース
115 コミット可否判定部
116 保留データベース
117 投票データベース
118 スケジュール調整部
120 投票入力部
101 common system 102 development system 103 project database 104 developer database 105 schedule database 109 developer PC
DESCRIPTION OF SYMBOLS 110 Voting system 111 Repository server 114 System setting database 115 Commitability determination part 116 Pending database 117 Voting database 118 Schedule adjustment part 120 Vote input part

Claims (1)

開発プロジェクトに属する複数の開発者が各自の開発者用コンピュータを使用してそれぞれ開発したプログラムをレポジトリサーバに保管するのを管理するシステムであって、
開発者用コンピュータからのプログラム保管申請を受け、そのプログラム保管申請を送付した開発者について過去の実績を含めた評価値を第1のデータベースから取得し、保管申請を受けたプログラムを前記レポジトリサーバに保管するか否かを前記評価値に基づいて判定し、前記評価値が予め設定された設定値を満たしていない場合には保管申請されたプログラムを第2のデータベースに退避格納し、設定値を満たしていた場合には前記レポジトリサーバに保管する第1の手段と、
前記第2のデータベースに退避格納したプログラムについて同一開発プロジェクトに属する他の開発者の承認投票により前記レポジトリサーバに保管するか否かを決定するために各開発者のスケジュールを第3のデータベースから取得し、各開発者が承認投票を行うためのスケジュールを決定し、各開発者に通知する第2の手段と、
各開発者の開発者用コンピュータから前記第2のデータベースに退避格納したプログラムについてレポジトリサーバに保管するか否かを記述した承認可否通知を受け付けて集計し、承認率が予め設定された設定値を満たしていた場合には前記退避格納したプログラムを前記レポジトリサーバに保管し、設定値を満たしていなかった場合に前記退避格納したプログラムを破棄する第3の手段と
を備えることを特徴とするレポジトリサーバ管理システム。
A system that manages the storage of programs developed by a plurality of developers belonging to a development project using their own developer computers in a repository server,
The evaluation value including the past performance is acquired from the first database for the developer who has received the program storage application from the developer computer and sent the program storage application, and the program that has received the storage application is stored in the repository server. It is determined whether or not to store based on the evaluation value. If the evaluation value does not satisfy a preset setting value, the storage application program is saved and stored in the second database. A first means for storing in the repository server if satisfied;
Obtain the schedule of each developer from the third database in order to determine whether to save the program stored in the second database in the repository server by an approval vote of another developer belonging to the same development project. A second means for determining a schedule for each developer to vote for approval and notifying each developer;
Accepts and approves approval approval notifications that describe whether or not to save the programs saved in the second database from the developer computer of each developer in the repository server, and sets a preset value for which the approval rate is preset. And a third means for storing the saved and stored program in the repository server when the condition is satisfied, and discarding the saved and stored program when the set value is not satisfied. Management system.
JP2007066762A 2007-03-15 2007-03-15 Repository server management system Expired - Fee Related JP4883700B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007066762A JP4883700B2 (en) 2007-03-15 2007-03-15 Repository server management system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007066762A JP4883700B2 (en) 2007-03-15 2007-03-15 Repository server management system

Publications (2)

Publication Number Publication Date
JP2008226122A JP2008226122A (en) 2008-09-25
JP4883700B2 true JP4883700B2 (en) 2012-02-22

Family

ID=39844619

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007066762A Expired - Fee Related JP4883700B2 (en) 2007-03-15 2007-03-15 Repository server management system

Country Status (1)

Country Link
JP (1) JP4883700B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5540598B2 (en) * 2009-08-06 2014-07-02 カシオ計算機株式会社 Human resource search apparatus and program
JP5858088B2 (en) * 2014-05-07 2016-02-10 カシオ計算機株式会社 Human resource management apparatus and program
JP6141563B2 (en) * 2015-03-31 2017-06-07 三菱電機株式会社 Software management apparatus and software management method
WO2021095137A1 (en) * 2019-11-12 2021-05-20 日本電信電話株式会社 Software development assistance device, software development assistance method, and program
WO2021095136A1 (en) * 2019-11-12 2021-05-20 日本電信電話株式会社 Software development support device, software development support method, and program

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2693108B2 (en) * 1993-10-19 1997-12-24 財団法人ニューメディア開発協会 Computer system
JPH086783A (en) * 1994-06-23 1996-01-12 Toshiba Corp Software quality guarantee supporting device
US20020152114A1 (en) * 2001-04-12 2002-10-17 Shumaker Lance C. System and method for updating an intranet portal
JP2005346643A (en) * 2004-06-07 2005-12-15 Jfe Systems Inc Transmission mail processing method and device

Also Published As

Publication number Publication date
JP2008226122A (en) 2008-09-25

Similar Documents

Publication Publication Date Title
US9026984B2 (en) Integrated design application system
RU2400814C2 (en) Hierarchical projects in system and method of project control supported by computer
US11870875B2 (en) Method and system for generating dynamic user experience applications
US20120072268A1 (en) Reputation system to evaluate work
JP4880376B2 (en) Support apparatus, program, information processing system, and support method
JP4883700B2 (en) Repository server management system
EP1288819A1 (en) LSI manufacturing support server, LSI manufacturing support method, and LSI manufacturing support program
KR20120070557A (en) Workflow processing program, information processing device and workflow processing method
US11809411B2 (en) Multi-source data suggestion management
US20180032956A1 (en) Hierarchical project management apparatus
US20100131587A1 (en) Minimizing Conflicts When Synchronizing Interrelated Data Between Two Systems
CN112069134A (en) Requirement document processing method, device and medium
KR20180109785A (en) Method and apparatus for assisting strategy map management based on schedule-assessment item and todo-assessment item
US9047575B2 (en) Creative process modeling and tracking system
JP2012527048A (en) Self-referencing field synchronization in bidirectional synchronization
KR100976420B1 (en) Software configuration management system and method therefore
US20190266544A1 (en) Techniques for managing process-flows across an enterprise
WO2022240310A1 (en) Software test management system
Nurminen Master data management in industry
US20240086809A1 (en) Process Variation Management
US20080004885A1 (en) Business control management system
CN111557004B (en) CAD data inspection system and device
JP2007264937A (en) Program transfer control system, method and program
JP4824884B2 (en) Information processing apparatus, information management system, information management method, storage medium, and program
Allaert et al. ALMA software releases versus quality management: and the winner is...

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090716

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111124

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111202

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111202

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141216

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees