JP6862949B2 - Test range output program, test range output device and test range output method - Google Patents

Test range output program, test range output device and test range output method Download PDF

Info

Publication number
JP6862949B2
JP6862949B2 JP2017050261A JP2017050261A JP6862949B2 JP 6862949 B2 JP6862949 B2 JP 6862949B2 JP 2017050261 A JP2017050261 A JP 2017050261A JP 2017050261 A JP2017050261 A JP 2017050261A JP 6862949 B2 JP6862949 B2 JP 6862949B2
Authority
JP
Japan
Prior art keywords
function
test range
source code
medical
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017050261A
Other languages
Japanese (ja)
Other versions
JP2018156164A (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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2017050261A priority Critical patent/JP6862949B2/en
Publication of JP2018156164A publication Critical patent/JP2018156164A/en
Application granted granted Critical
Publication of JP6862949B2 publication Critical patent/JP6862949B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Description

本発明は、テスト範囲出力プログラム、テスト範囲出力装置及びテスト範囲出力方法に関する。 The present invention relates to a test range output program, a test range output device, and a test range output method.

電子カルテシステムをはじめとする医療システムの機能の中には、例えば、注射業務に関する機能やアレルギー情報を扱う機能等、当該機能の不具合が患者の身体に影響を与える可能性が高いハイリスクな機能(以下、「医療リスク機能」という。)が存在する。医療リスク機能の開発や改修において、バグ等が混入した場合、患者の身体が害される可能性が有るため、医療リスク機能の開発及び改修は、特に厳格に管理される必要がある。 Among the functions of medical systems such as electronic medical record systems, there are high-risk functions that are likely to affect the patient's body due to malfunctions of such functions, such as functions related to injection work and functions that handle allergy information. (Hereinafter referred to as "medical risk function") exists. In the development and repair of medical risk functions, if bugs are mixed in, the patient's body may be harmed. Therefore, the development and repair of medical risk functions needs to be controlled particularly strictly.

特開2008−033545号公報Japanese Unexamined Patent Publication No. 2008-033545 特開2009−122754号公報Japanese Unexamined Patent Publication No. 2009-122754 特開平8−297570号公報Japanese Unexamined Patent Publication No. 8-297570 特開2014−228907号公報Japanese Unexamined Patent Publication No. 2014-228907

しかしながら、診療報酬改定や医療システムの機能追加により医療リスク機能を改修する機会は度々発生する。また、医療システムの規模が大きくなるにしたがい、一つの医療リスク機能に対する影響範囲が広がるため、開発者がソースコードを変更する場合に、意図せずに医療リスク機能に影響を与える危険性が有る。斯かる危険性を回避して、医療リスク機能の品質を担保するために、闇雲にレビューやテストをすると、人的・時間的コストが増大してしまう。 However, there are frequent opportunities to repair the medical risk function by revising medical fees and adding functions to the medical system. In addition, as the scale of the medical system increases, the range of influence on one medical risk function expands, so if the developer changes the source code, there is a risk of unintentionally affecting the medical risk function. .. Reviewing and testing in the dark clouds to avoid such risks and ensure the quality of medical risk functions will increase human and time costs.

そこで、一側面では、本発明は、医療リスクに関わる機能に対するテスト漏れを効率的に防止可能とすることを目的とする。 Therefore, on one aspect, it is an object of the present invention to be able to efficiently prevent test omissions for functions related to medical risks.

一つの態様では、テスト範囲出力プログラムは、医療に関するコンピュータシステムのソースコードの変更を受け付け、前記変更の対象となるソースコードにより実現される第1の機能を特定すると共に、前記第1の機能による処理結果を参照する第2の機能を特定し、前記コンピュータシステムの機能ごとに医療リスクに関わる機能を示す情報を記憶した記憶部を参照して、特定した前記第1の機能及び前記第2の機能のいずれかが医療リスクに関わる機能か否かを判定し、医療リスクに関わる機能であると判定された場合に、医療リスクに関わる機能に関係するソースコードの変更が行われない場合のテスト範囲とは異なるテスト範囲を、前記ソースコードの変更に対するテスト範囲として出力する、
処理をコンピュータに実行させる。
In one embodiment, the test range output program accepts changes to the source code of a medical computer system, identifies a first function realized by the source code subject to the change, and is based on the first function. The second function that refers to the processing result is specified, and the identified first function and the second function are referred to by referring to a storage unit that stores information indicating a function related to medical risk for each function of the computer system. A test to determine whether any of the functions is related to medical risk, and if it is determined to be a function related to medical risk, the source code related to the function related to medical risk is not changed. A test range different from the range is output as a test range for changes in the source code.
Let the computer perform the process.

一側面として、医療リスクに関わる機能に対するテスト漏れを効率的に防止可能とすることができる。 As one aspect, it is possible to efficiently prevent test omissions for functions related to medical risks.

本発明の実施の形態のシステム構成例を示す図である。It is a figure which shows the system configuration example of the Embodiment of this invention. 本発明の実施の形態における開発端末10のハードウェア構成例を示す図である。It is a figure which shows the hardware configuration example of the development terminal 10 in embodiment of this invention. 本発明の実施の形態における開発端末10及びサーバ装置20の機能構成例を示す図である。It is a figure which shows the functional configuration example of the development terminal 10 and the server apparatus 20 in embodiment of this invention. 開発端末10が実行する処理手順の一例を説明するためのフローチャートである。It is a flowchart for demonstrating an example of the processing procedure executed by development terminal 10. 開発者情報記憶部21の構成例を示す図である。It is a figure which shows the configuration example of the developer information storage part 21. 各ソースコードへの一意なタグ付けの一例を示す図である。It is a figure which shows an example of unique tagging to each source code. タグ情報記憶部23の構成例を示す図である。It is a figure which shows the structural example of the tag information storage part 23. 機能コード記憶部24の構成例を示す図である。It is a figure which shows the structural example of the function code storage part 24. メソッド間の参照関係に応じたタグ付けの一例を示す図である。It is a figure which shows an example of tagging according to the reference relation between methods. 医療リスク機能記憶部25の構成例を示す図である。It is a figure which shows the structural example of the medical risk function memory part 25. テスト範囲記憶部26の構成例を示す図である。It is a figure which shows the structural example of the test range storage part 26.

以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態のシステム構成例を示す図である。図1において、サーバ装置20と1以上の開発端末10とは、LAN(Local Area Network)、イントラネット、又はインターネット等のネットワークを介して接続される。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. FIG. 1 is a diagram showing an example of a system configuration according to an embodiment of the present invention. In FIG. 1, the server device 20 and one or more development terminals 10 are connected to each other via a network such as a LAN (Local Area Network), an intranet, or the Internet.

開発端末10は、電子カルテシステム等の病院において利用されるコンピュータシステムである医療システムの開発者が、システムの開発に利用するPC(Personal Computer)等の端末である。以下、本実施の形態において開発対象の医療システムを「対象システム」という。 The development terminal 10 is a terminal such as a PC (Personal Computer) used by a developer of a medical system, which is a computer system used in a hospital such as an electronic medical record system, for system development. Hereinafter, the medical system to be developed in this embodiment is referred to as a “target system”.

サーバ装置20は、各開発端末10において共有される情報を記憶する1以上のコンピュータである。 The server device 20 is one or more computers that store information shared by each development terminal 10.

図2は、本発明の実施の形態における開発端末10のハードウェア構成例を示す図である。図2の開発端末10は、それぞれバスBで相互に接続されているドライブ装置100、補助記憶装置102、メモリ装置103、CPU104、インタフェース装置105、表示装置106、及び入力装置107等を有する。 FIG. 2 is a diagram showing a hardware configuration example of the development terminal 10 according to the embodiment of the present invention. The development terminal 10 of FIG. 2 has a drive device 100, an auxiliary storage device 102, a memory device 103, a CPU 104, an interface device 105, a display device 106, an input device 107, and the like, which are connected to each other by a bus B, respectively.

開発端末10での処理を実現するプログラムは、記録媒体101によって提供される。プログラムを記録した記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。但し、プログラムのインストールは必ずしも記録媒体101より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。 The program that realizes the processing on the development terminal 10 is provided by the recording medium 101. When the recording medium 101 on which the program is recorded is set in the drive device 100, the program is installed in the auxiliary storage device 102 from the recording medium 101 via the drive device 100. However, the program does not necessarily have to be installed from the recording medium 101, and may be downloaded from another computer via the network. The auxiliary storage device 102 stores the installed program and also stores necessary files, data, and the like.

メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。CPU104は、メモリ装置103に格納されたプログラムに従って開発端末10に係る機能を実現する。インタフェース装置105は、ネットワークに接続するためのインタフェースとして用いられる。表示装置106はプログラムによるGUI(Graphical User Interface)等を表示する。入力装置107はキーボード及びマウス等であり、様々な操作指示を入力させるために用いられる。 The memory device 103 reads and stores the program from the auxiliary storage device 102 when the program is instructed to start. The CPU 104 realizes the function related to the development terminal 10 according to the program stored in the memory device 103. The interface device 105 is used as an interface for connecting to a network. The display device 106 displays a programmatic GUI (Graphical User Interface) or the like. The input device 107 is a keyboard, a mouse, or the like, and is used for inputting various operation instructions.

なお、記録媒体101の一例としては、CD−ROM、DVDディスク、又はUSBメモリ等の可搬型の記録媒体が挙げられる。また、補助記憶装置102の一例としては、HDD(Hard Disk Drive)又はフラッシュメモリ等が挙げられる。記録媒体101及び補助記憶装置102のいずれについても、コンピュータ読み取り可能な記録媒体に相当する。 An example of the recording medium 101 is a portable recording medium such as a CD-ROM, a DVD disc, or a USB memory. Further, as an example of the auxiliary storage device 102, an HDD (Hard Disk Drive), a flash memory, or the like can be mentioned. Both the recording medium 101 and the auxiliary storage device 102 correspond to computer-readable recording media.

なお、サーバ装置20も図2に示されるようなハードウェア構成を有していてもよい。但し、サーバ装置20は、表示装置106及び入力装置107を有さなくてもよい。 The server device 20 may also have a hardware configuration as shown in FIG. However, the server device 20 does not have to have the display device 106 and the input device 107.

図3は、本発明の実施の形態における開発端末10及びサーバ装置20の機能構成例を示す図である。図3において、開発端末10は、認証部11、改修部12、タグ付与部13、差分抽出部14、影響範囲特定部15、テスト範囲判定部16及び出力部17等を有する。これら各部は、開発端末10にインストールされた1以上のプログラムが、CPU104に実行させる処理により実現される。一方、サーバ装置20は、開発者情報記憶部21、ソースコード記憶部22、タグ情報記憶部23、機能コード記憶部24、医療リスク機能記憶部25及びテスト範囲記憶部26等を有する。これら各記憶部は、例えば、サーバ装置20の補助記憶装置、又はサーバ装置20にネットワークを介して接続可能な記憶装置等を用いて実現可能である。 FIG. 3 is a diagram showing a functional configuration example of the development terminal 10 and the server device 20 according to the embodiment of the present invention. In FIG. 3, the development terminal 10 includes an authentication unit 11, a repair unit 12, a tagging unit 13, a difference extraction unit 14, an influence range specifying unit 15, a test range determination unit 16, an output unit 17, and the like. Each of these parts is realized by a process of causing the CPU 104 to execute one or more programs installed in the development terminal 10. On the other hand, the server device 20 includes a developer information storage unit 21, a source code storage unit 22, a tag information storage unit 23, a function code storage unit 24, a medical risk function storage unit 25, a test range storage unit 26, and the like. Each of these storage units can be realized by using, for example, an auxiliary storage device of the server device 20, a storage device that can be connected to the server device 20 via a network, or the like.

認証部11は、開発者の認証を行う。改修部12は、開発者の指示に応じて対象システムのソースコードを改修(変更、編集又は生成等)する。タグ付与部13は、ソースコード内の各メソッドの定義に対してタグを付与する。タグは、各メソッドの識別情報として用いられる。但し、他のメソッドから処理結果が参照される(呼び出される)メソッドには、参照元のメソッドのタグも付与される。 The authentication unit 11 authenticates the developer. The repair unit 12 repairs (changes, edits, generates, etc.) the source code of the target system according to the instructions of the developer. The tagging unit 13 adds a tag to the definition of each method in the source code. The tag is used as the identification information of each method. However, the tag of the referencing method is also added to the method whose processing result is referenced (called) from another method.

差分抽出部14は、改修部12による改修前後のソースコードの差分を抽出する。影響範囲特定部15は、改修による影響範囲を特定する。影響範囲には、改修対象のメソッドと、当該メソッドの再帰的な参照元とが含まれる。テスト範囲判定部16は、改修を行った開発者の経験や、改修の規模、及び影響範囲等に基づいて、当該改修に対して推奨されるテスト範囲を判定する。出力部17は、テスト範囲判定部16による判定結果を出力する。 The difference extraction unit 14 extracts the difference in the source code before and after the repair by the repair unit 12. The influence range specifying unit 15 specifies the influence range due to the repair. The scope of influence includes the method to be modified and the recursive reference source of the method. The test range determination unit 16 determines the recommended test range for the repair based on the experience of the developer who performed the repair, the scale of the repair, the range of influence, and the like. The output unit 17 outputs the determination result by the test range determination unit 16.

開発者情報記憶部21には、各開発者のID及びパスワードや、各開発者の開発経験を示す情報等が記憶されている。ソースコード記憶部22には、対象システムのソースコード群が記憶されている。タグ情報記憶部23には、タグごとに、当該タグの付与先のメソッドとの対応情報が記憶される。機能コード記憶部24には、メソッドごとに、対象システムの機能の中で当該メソッドが対応する(当該メソッドによって実現される)機能の識別情報(以下、「機能コード」という。)が記憶されている。医療リスク機能記憶部25には、対象システムの機能の中で医療的にハイリスクな機能(以下、「医療リスク機能」という。)の機能コードが記憶されている。テスト範囲記憶部26には、改修を行った開発者の開発経験及び当該改修の規模、並びに当該改修の影響範囲における医療リスク機能の有無等に応じて、推奨されるテスト範囲を示す情報が記憶されている。 The developer information storage unit 21 stores the ID and password of each developer, information indicating the development experience of each developer, and the like. The source code storage unit 22 stores the source code group of the target system. In the tag information storage unit 23, the correspondence information with the method to which the tag is attached is stored for each tag. In the function code storage unit 24, identification information (hereinafter, referred to as "function code") of the function corresponding to the method (realized by the method) among the functions of the target system is stored for each method. There is. The medical risk function storage unit 25 stores a function code of a medically high-risk function (hereinafter, referred to as “medical risk function”) among the functions of the target system. The test range storage unit 26 stores information indicating a recommended test range according to the development experience of the developer who performed the repair, the scale of the repair, and the presence or absence of a medical risk function in the range affected by the repair. Has been done.

以下、開発端末10が実行する処理手順について説明する。図4は、開発端末10が実行する処理手順の一例を説明するためのフローチャートである。図4における処理手順は、或る開発者が開発端末10を利用して、対象システムのソースコードの改修を行う状況において実行される。 Hereinafter, the processing procedure executed by the development terminal 10 will be described. FIG. 4 is a flowchart for explaining an example of the processing procedure executed by the development terminal 10. The processing procedure in FIG. 4 is executed in a situation where a certain developer uses the development terminal 10 to modify the source code of the target system.

例えば、開発端末10において認証部11によって表示装置106に表示されているログイン画面に対して、ユーザによって開発者ID及びパスワードが入力されると、認証部11は、当該開発者ID及びパスワードの認証を実行する(S101)。認証は、開発者情報記憶部21を参照して行われる。 For example, when the developer ID and password are input by the user to the login screen displayed on the display device 106 by the authentication unit 11 on the development terminal 10, the authentication unit 11 authenticates the developer ID and password. Is executed (S101). Authentication is performed with reference to the developer information storage unit 21.

図5は、開発者情報記憶部21の構成例を示す図である。図5に示されるように、開発者情報記憶部21には、対象システムの開発者ごとに、開発者ID、指名、パスワード、改修回数、総改修行数及び改修経験機能コード等を含む開発者情報が記憶されている。 FIG. 5 is a diagram showing a configuration example of the developer information storage unit 21. As shown in FIG. 5, the developer information storage unit 21 includes a developer ID, nomination, password, number of repairs, total number of repairs, repair experience function code, etc. for each developer of the target system. Information is stored.

開発者IDは、開発者ごとの識別情報である。氏名は、開発者の氏名である。パスワードは、開発者のパスワードである。改修回数は、対象システムのソースコードの改修の回数である。例えば、改修回数は、ログインの回数によって評価されてもよい。総改修行数は、対象システムのソースコードを改修した行数(ステップ数)の累積値である。改修経験機能コードとは、対象システムが有する機能のうち、開発者がこれまでに改修したことのある機能の機能コードの一覧である。 The developer ID is identification information for each developer. The name is the name of the developer. The password is the developer password. The number of repairs is the number of repairs of the source code of the target system. For example, the number of repairs may be evaluated by the number of logins. The total number of repaired lines is the cumulative value of the number of lines (number of steps) of repairing the source code of the target system. The repair experience function code is a list of function codes of the functions that the developer has repaired so far among the functions of the target system.

ステップS101では、入力された開発者ID及びパスワードを含む開発者情報が開発者情報記憶部21に記憶されていれば、認証は成功し、開発者のログインは許可される。そうでなければ認証は失敗し、開発者のログインは拒否される。認証が成功した場合に限って、ステップS102以降が実行される。以下、ログインに成功したユーザを「ログインユーザ」という。 In step S101, if the developer information including the input developer ID and password is stored in the developer information storage unit 21, the authentication is successful and the developer login is permitted. Otherwise authentication will fail and the developer login will be denied. Step S102 and subsequent steps are executed only when the authentication is successful. Hereinafter, a user who has successfully logged in is referred to as a "logged-in user".

ステップS102において、タグ付与部13は、ソースコード記憶部22に記憶されている全てのソースコードへのタグの一括付与が実行済みであるか否かを判定する。斯かる判定は、例えば、タグ情報記憶部23に1以上のレコードが記憶されているか否かに基づいて行われてもよい。すなわち、タグの一括付与は、いずれかの開発者のログインに伴って1回実行されればよい。または、タグの一括付与は、開発者のログインとは別に、事前に行われてもよい。 In step S102, the tag addition unit 13 determines whether or not the batch addition of tags to all the source codes stored in the source code storage unit 22 has been executed. Such a determination may be made based on, for example, whether or not one or more records are stored in the tag information storage unit 23. That is, the tag batch assignment may be executed once when any developer logs in. Alternatively, the tag batch assignment may be performed in advance separately from the developer login.

タグの一括付与が実行済みでない場合(S102でNo)、タグ付与部13は、各ソースコードに対して一意なタグ付けを付与する(S103)。 When the batch tagging has not been executed (No in S102), the tagging unit 13 assigns a unique tag to each source code (S103).

図6は、各ソースコードへの一意なタグ付けの一例を示す図である。図6には、2つのソースコードへのタグ付けの例が示されている。すなわち、図6において、上段は、ソースコードc1及びソースコードc2のそれぞれのタグ付け前の状態を示す。図6において下段は、ソースコードc1及びソースコードc2のそれぞれのタグ付け後の状態を示す。タグは、ソースコードに記述される処理手順に影響を与えない形式(例えば、コメント形式)で、ソースコード内に付与される。本実施の形態において、タグは、メソッドごとに付与され、メソッドごとに一意な文字列である。すなわち、タグは、メソッド間において呼び出し可能な単位ごとに付与される文字列である。 FIG. 6 is a diagram showing an example of unique tagging to each source code. FIG. 6 shows an example of tagging two source codes. That is, in FIG. 6, the upper row shows the states of the source code c1 and the source code c2 before tagging. In FIG. 6, the lower part shows the state of the source code c1 and the source code c2 after each tagging. The tag is added in the source code in a format (for example, a comment format) that does not affect the processing procedure described in the source code. In the present embodiment, the tag is a character string assigned to each method and unique to each method. That is, the tag is a character string assigned to each unit that can be called between methods.

具体的には、ソースコードc1には、タグt1を含む記述(「//tag1//」)が付与されている。当該記述(以下「タグ記述」という。)のうち、「tag1」がタグの実体であり、タグの両側の「//」は、タグをコメント化するための記号である。同様に、ソースコードc2には、「tag2」というタグt2を含むタグ記述が付与されている。 Specifically, the source code c1 is given a description (“// tag //”) including the tag t1. In the description (hereinafter referred to as "tag description"), "tag1" is the substance of the tag, and "//" on both sides of the tag are symbols for commenting the tag. Similarly, the source code c2 is given a tag description including the tag t2 "tag2".

続いて、タグ付与部13は、タグとソースコードとの対応関係をタグ情報記憶部23に記憶する(S104)。 Subsequently, the tag giving unit 13 stores the correspondence between the tag and the source code in the tag information storage unit 23 (S104).

図7は、タグ情報記憶部23の構成例を示す図である。図7に示されるように、タグ情報記憶部23には、いずれかのソースコード(メソッド)に付与されたタグごとに、タグ、クラス名、メソッド名及び機能コード等が記憶される。 FIG. 7 is a diagram showing a configuration example of the tag information storage unit 23. As shown in FIG. 7, the tag information storage unit 23 stores a tag, a class name, a method name, a function code, and the like for each tag assigned to any of the source codes (methods).

クラス名及びメソッド名は、タグが付与されたメソッドのクラス名及びメソッド名である。機能コードは、当該メソッドが対応する機能の機能コードである。なお、本実施の形態では、対象システムにおいてクラス名の重複が無いこととする。したがって、クラス名及びメソッド名によって、1つのメソッド及び当該メソッドのソースコードを特定可能である。例えば、対象システムにおいて、複数のネームスペースが定義される場合、各ネームスペースの識別情報が、各タグに関連付けられればよい。 The class name and the method name are the class name and the method name of the method to which the tag is attached. The function code is the function code of the function corresponding to the method. In this embodiment, it is assumed that there is no duplication of class names in the target system. Therefore, one method and the source code of the method can be specified by the class name and the method name. For example, when a plurality of namespaces are defined in the target system, the identification information of each namespace may be associated with each tag.

各タグに対応する機能コードは、機能コード記憶部24を参照して特定される。図8は、機能コード記憶部24の構成例を示す図である。図8に示されるように、機能コード記憶部24には、クラス名に対応付けられて当該クラス名に係るクラスに対応する機能の機能コードが予め記憶されている。したがって、タグ付与部13は、各タグが付与されたメソッドのクラス名に基づいて、当該タグに対応する機能コードを特定することができる。 The function code corresponding to each tag is specified with reference to the function code storage unit 24. FIG. 8 is a diagram showing a configuration example of the function code storage unit 24. As shown in FIG. 8, the function code storage unit 24 stores in advance the function code of the function corresponding to the class related to the class name in association with the class name. Therefore, the tagging unit 13 can specify the function code corresponding to the tag based on the class name of the method to which each tag is assigned.

続いて、タグ付与部13は、メソッド間の参照関係に応じたタグ付けを、他のメソッドから参照される(呼び出される)メソッドを含むソースコードに対して実行する(S105)。例えば、図6のソースコードc1において、tag1が付与されているInjectメソッド内の記述d1では、GetPatientメソッドが呼び出されている。一方、ソースコードc2は、GetPatientメソッドのソースコードである。この場合、ソースコードc2のGetPatientメソッドに対して、ソースコードc1のInjectメソッドから参照されていること(Injectメソッドが依存していること)を示すタグが付与される。 Subsequently, the tagging unit 13 executes tagging according to the reference relationship between the methods on the source code including the method referred to (called) by the other method (S105). For example, in the source code c1 of FIG. 6, the GetPateient method is called in the description d1 in the Inject method to which tag1 is assigned. On the other hand, the source code c2 is the source code of the GetPateient method. In this case, a tag indicating that the GetPateient method of the source code c2 is referenced from the Inject method of the source code c1 (the Inject method depends on it) is added.

図9は、メソッド間の参照関係に応じたタグ付けの一例を示す図である。図9において、ソースコードc2には、タグt2の後に「:(コロン)」が付与され、更に、タグt1が付与されている。このことは、ソースコードc2のGetPatientメソッドが、タグt1(「tag1」)が付与された他のメソッドから参照されていることを示す。つまり、タグ記述において「:(コロン)」以降のタグは、当該メソッドの参照元のメソッドのタグを示す。 FIG. 9 is a diagram showing an example of tagging according to the reference relationship between methods. In FIG. 9, the source code c2 is given a “: (colon)” after the tag t2, and is further given a tag t1. This indicates that the GetPateient method of the source code c2 is referenced by another method to which the tag t1 (“tag1”) is attached. That is, in the tag description, the tags after ": (colon)" indicate the tags of the method that is the reference source of the method.

なお、1つのメソッドは、複数のメソッドから参照されうる。複数のメソッドから参照されるメソッドのタグ記述には、当該複数のメソッドに付与されたタグが、「,(カンマ)」で区切られて付与される。例えば、GetPatientメソッドが、更に、「tag3」が付与されたメソッドからも参照されている場合、GetPatientメソッドに付与されるタグは、「//tag2//://tag1,tag3//」となる。 Note that one method can be referred to by a plurality of methods. In the tag description of a method referenced by a plurality of methods, the tags attached to the plurality of methods are added separated by ", (comma)". For example, when the GetPateient method is further referred to by the method to which "tag3" is assigned, the tag assigned to the GetPateient method is "// tag2 //: // tag1, tag3 //". ..

ステップS105では、メソッド間の全ての参照関係において、参照先となるメソッドに対して、参照元のタグが付与される。 In step S105, the tag of the reference source is added to the method to be referred to in all the reference relationships between the methods.

ステップS102でYesの場合、又はステップS105に続いて、改修部12は、ソースコードの改修をログインユーザから受け付ける(S106)。例えば、既存のソースコードが編集されたり、新たなソースコードが追加されたりする。開発者によるコーディング作業が終了すると(S107でYes)、差分抽出部14は、改修された1以上のソースコードについて、改修前後の差分を抽出する(S108)。 In the case of Yes in step S102, or following step S105, the repair unit 12 accepts the repair of the source code from the logged-in user (S106). For example, existing source code may be edited or new source code may be added. When the coding work by the developer is completed (Yes in S107), the difference extraction unit 14 extracts the difference before and after the modification for one or more modified source codes (S108).

続いて、タグ付与部13は、改修によって新たなメソッドが追加された場合、当該メソッドの定義内に、当該メソッドに対するタグを付与すると共に、当該タグに対応するレコードをタグ情報記憶部23に追加する(S109)。ここでのタグの付与は、ステップS103及びS104と同様の処理である。 Subsequently, when a new method is added by the modification, the tagging unit 13 adds a tag for the method in the definition of the method and adds a record corresponding to the tag to the tag information storage unit 23. (S109). The tag addition here is the same process as in steps S103 and S104.

続いて、タグ付与部13は、改修対象のメソッド内に新たに他のメソッドの参照(呼び出し)が追加された場合、当該他のメソッドのタグ記述に対して改修対象のメソッドのタグを参照元のタグとして付与する(S110)。ここでのタグの付与は、ステップS105と同様の処理である。 Subsequently, when a new reference (call) of another method is added in the method to be repaired, the tagging unit 13 refers to the tag of the method to be repaired with respect to the tag description of the other method. It is given as a tag of (S110). The tag addition here is the same process as in step S105.

続いて、影響範囲特定部15は、改修対象とされたメソッド(以下、「対象メソッド」という。)のタグを対象タグとし、対象タグを影響範囲リストに追加する(S111)。対象タグは、改修対象とされたメソッドに付与されているタグ記述の先頭(コロンの前)のタグである。また、影響範囲リストとは、対象メソッドの改修によって影響を受ける(動作が変化する可能性の有る)メソッドのタグを格納するためのデータをいう。通常、メソッドAを参照するメソッドB(メソッドAに依存するメソッドB)は、メソッドAの改修によって影響を受ける。したがって、影響範囲リストは、対象メソッドの参照元を再帰的に辿ることで特定される各メソッドのタグが格納されるデータである。 Subsequently, the influence range specifying unit 15 sets the tag of the method targeted for repair (hereinafter, referred to as “target method”) as the target tag, and adds the target tag to the influence range list (S111). The target tag is the tag at the beginning (before the colon) of the tag description attached to the method to be modified. In addition, the influence range list refers to data for storing the tags of the methods that are affected by the modification of the target method (the behavior may change). Normally, method B that refers to method A (method B that depends on method A) is affected by the modification of method A. Therefore, the influence range list is data in which the tag of each method specified by recursively tracing the reference source of the target method is stored.

続いて、影響範囲特定部15は、対象メソッドのタグ記述において、参照元として付与されているタグ(すなわち、参照元のタグ)を特定する(S112)。例えば、当該タグ記述が「//tag2//://tag1,tag3//」であれば、対象タグは「tag2」であり、「tag1」及び「tag3」が、参照元として特定される。 Subsequently, the influence range specifying unit 15 specifies the tag assigned as the reference source (that is, the tag of the reference source) in the tag description of the target method (S112). For example, if the tag description is "// tag2 //: // tag1, tag3 //", the target tag is "tag2", and "tag1" and "tag3" are specified as reference sources.

続いて、影響範囲特定部15は、参照元のタグが特定されたか否かを判定する(S113)。すなわち、対象メソッドのタグ記述に参照元のタグが1以上含まれていたか否かが判定される。参照元のタグが特定された場合(S113でYes)、影響範囲特定部15は、参照元の各タグを影響範囲リストに追加する(S114)。続いて、影響範囲特定部15は、参照元の各タグのクラス名及びメソッド名(ソースコード)を、タグ情報記憶部23(図7)を参照して特定する(S115)。なお、本実施の形態では、クラス名及びメソッド名に基づいてソースコードを格納したファイルが一意に特定されることとする。 Subsequently, the influence range specifying unit 15 determines whether or not the tag of the reference source is specified (S113). That is, it is determined whether or not one or more tags of the reference source are included in the tag description of the target method. When the reference source tag is specified (Yes in S113), the influence range specifying unit 15 adds each reference source tag to the influence range list (S114). Subsequently, the influence range specifying unit 15 specifies the class name and the method name (source code) of each tag of the reference source with reference to the tag information storage unit 23 (FIG. 7) (S115). In the present embodiment, the file in which the source code is stored is uniquely specified based on the class name and the method name.

続いて、影響範囲特定部15は、各参照元のタグを再帰的に対象タグとし、ステップS115において特定されたメソッドを、再帰的に対象メソッドとして(S116)、ステップS112以降を繰り返す。その結果、参照元のルート(根元)まで、影響範囲が走査される。 Subsequently, the influence range specifying unit 15 recursively sets each reference source tag as the target tag, recursively sets the method specified in step S115 as the target method (S116), and repeats steps S112 and subsequent steps. As a result, the range of influence is scanned up to the reference source route (root).

なお、改修対象のメソッドが複数である場合、ステップS111以降は、複数のタグが起点とされて再帰的に実行される。 When there are a plurality of methods to be repaired, the methods after step S111 are recursively executed starting from the plurality of tags.

再帰的な走査が終了すると(S113でNo)、テスト範囲判定部16は、影響範囲リストに含まれている各タグに対応する機能コードをタグ情報記憶部23(図7)から取得する(S117)。続いて、テスト範囲判定部16は、ステップS117において取得された機能コードの中に、医療リスク機能記憶部25に記憶されている機能コードが有るか否かを判定する(S118)。すなわち、今回の改修について、医療リスク機能への影響の有無が判定される。 When the recursive scanning is completed (No in S113), the test range determination unit 16 acquires the function code corresponding to each tag included in the influence range list from the tag information storage unit 23 (FIG. 7) (S117). ). Subsequently, the test range determination unit 16 determines whether or not the function code acquired in step S117 includes the function code stored in the medical risk function storage unit 25 (S118). That is, it is determined whether or not this renovation has an impact on the medical risk function.

図10は、医療リスク機能記憶部25の構成例を示す図である。図10に示されるように、医療リスク機能記憶部25には、医療リスク機能ごとに、機能コード及び機能名称が記憶されている。なお、医療リスク機能については、リスク分析等によって洗い出しが行われてもよい。 FIG. 10 is a diagram showing a configuration example of the medical risk function storage unit 25. As shown in FIG. 10, the medical risk function storage unit 25 stores a function code and a function name for each medical risk function. The medical risk function may be identified by risk analysis or the like.

続いて、テスト範囲判定部16は、ログインユーザの開発経験情報を開発者情報記憶部21(図5)から取得する(S119)。ログインユーザの開発者IDは、ステップS101において入力されている。したがって、当該開発者IDを含む開発者情報のうち、改修回数、総改修行数及び改修経験機能コードが、当該開発経験情報として開発者情報記憶部21(図5)から取得される。 Subsequently, the test range determination unit 16 acquires the development experience information of the logged-in user from the developer information storage unit 21 (FIG. 5) (S119). The developer ID of the login user is entered in step S101. Therefore, among the developer information including the developer ID, the number of repairs, the total number of repairs, and the repair experience function code are acquired from the developer information storage unit 21 (FIG. 5) as the development experience information.

続いて、テスト範囲判定部16は、今回の改修によって対象システムに異常が発生する(バグが混入する)リスク(以下、「改修リスク」という)を算出する(S120)。改修リスクは、改修を行った開発者の開発経験情報、及び改修の規模に基づいて算出される。開発者の開発経験(スキル)が豊富なほどバグが混入するリスクは低くなり、改修の規模が大きいほどバグが混入するリスクは高くなると考えられるからである。一例として、改修リスクは、以下の計算式に基づいて算出されてもよい。 Subsequently, the test range determination unit 16 calculates the risk (hereinafter, referred to as “repair risk”) that an abnormality occurs in the target system (a bug is mixed) due to this repair (S120). The repair risk is calculated based on the development experience information of the developer who performed the repair and the scale of the repair. This is because it is considered that the more the developer's development experience (skill) is, the lower the risk of bugs being mixed in, and the larger the scale of repair, the higher the risk of bugs being mixed in. As an example, the repair risk may be calculated based on the following formula.

改修リスクf=今回の改修行数/(過去の総改修行数/過去の改修回数))×50×a+開発者の過去の総改修行数/全開発者の平均総改修行数×50×b
a+b=1
但し、fが100を上回る場合は100に丸める。また、a及びbは、改修行数の多寡によるリスクと、開発者の経験によるリスクの重み付けを決める係数であり、例えば、試行錯誤的に決定される。
Repair risk f = Number of repairs this time / (Total number of repairs in the past / Number of repairs in the past)) x 50 x a + Total number of repairs in the past by developers / Average total number of repairs by all developers x 50 x b
a + b = 1
However, if f exceeds 100, it is rounded to 100. Further, a and b are coefficients that determine the weighting of the risk due to the number of repairs and the risk based on the experience of the developer, and are determined by trial and error, for example.

例えば、ログインユーザの開発者IDが「FJ199999」であれば、図5より、改修回数=49、総改修行数=23,232行である。また、今回の改修行数が、200行であり、全開発者の平均総改修行数が、20,400行であり、a=0.3,b=0.7であるとする。この場合、改修リスクfは、以下のように算出される。 For example, if the developer ID of the login user is "FJ1999", the number of repairs = 49 and the total number of repairs = 23,232 lines, as shown in FIG. Further, it is assumed that the number of repair lines this time is 200 lines, the average total number of repair lines of all developers is 20,400 lines, and a = 0.3 and b = 0.7. In this case, the repair risk f is calculated as follows.

改修リスクf=200/(23,232/49)×50×0.3+23,232/20400×50×0.7=46.2
なお、今回の改修行数は、例えば、ステップS108において抽出されている差分の行数である。
Repair risk f = 200 / (23,232 / 49) x 50 x 0.3 + 23,232 / 20400 x 50 x 0.7 = 46.2
The number of repaired lines this time is, for example, the number of difference lines extracted in step S108.

続いて、テスト範囲判定部16は、テスト範囲記憶部26を参照して、推奨されるテスト範囲を判定する(S121)。 Subsequently, the test range determination unit 16 determines the recommended test range with reference to the test range storage unit 26 (S121).

図11は、テスト範囲記憶部26の構成例を示す図である。図11に示されるように、テスト範囲記憶部26には、改修リスクレベルと医療リスク機能有無との組み合わせごとに、推奨テスト範囲が記憶されている。 FIG. 11 is a diagram showing a configuration example of the test range storage unit 26. As shown in FIG. 11, the test range storage unit 26 stores a recommended test range for each combination of the repair risk level and the presence / absence of the medical risk function.

改修リスクレベルは、改修リスクfの範囲によって、改修リスクfを小、中、大の3つのレベルに分類する項目である。医療リスク機能有無は、今回の改修による影響範囲に医療リスク機能が有るか否かを区別する項目である。具体的には、医療リスク機能有無は、ステップS118における判定結果が当てはめられる項目である。すなわち、影響範囲に医療リスク機能が有るか否かによってテスト範囲が異なる。 The repair risk level is an item that classifies the repair risk f into three levels, small, medium, and large, according to the range of the repair risk f. The presence or absence of a medical risk function is an item that distinguishes whether or not there is a medical risk function in the range of impact of this renovation. Specifically, the presence or absence of the medical risk function is an item to which the determination result in step S118 is applied. That is, the test range differs depending on whether or not there is a medical risk function in the range of influence.

推奨テスト範囲は、(1)〜(4)の4つのテスト範囲の中から、推奨されるテスト範囲を示す項目である。(1)〜(4)の意味は以下の通りである。
(1)軽微な修正のため、改修したメソッドをテスト範囲とし、改修したメソッドの入力パターン(メソッドの引数の入力パターン)の組み合わせについて、ペアワイズ法などでテストパターンを削減してもよい。
(2)医療リスク機能に影響を与えうるため、影響範囲内の医療リスク機能について特に入念にテストする。すなわち、(1)に加え、影響範囲内の医療リスク機能について、全てのテストパターンの組み合わせを検証する。
(3)改修のリスクは中程度であるため、改修したメソッドに加えて影響範囲内のメソッドもテスト範囲に含める。また、改修したメソッド及び影響範囲内のメソッドについて、直行法などによるテストパターンの削減を許容しつつも全て検証をする。
(4)影響が大きいため、影響範囲を含め入念にテストする。基本的には、改修したメソッド及び影響範囲内のメソッドについて全ての入力の組み合わせを検証する。
The recommended test range is an item indicating the recommended test range from the four test ranges (1) to (4). The meanings of (1) to (4) are as follows.
(1) For minor modifications, the modified method may be set as the test range, and the test patterns may be reduced by the pairwise method or the like for the combination of the input patterns of the modified methods (input patterns of the method arguments).
(2) Since it may affect the medical risk function, the medical risk function within the range of influence should be tested especially carefully. That is, in addition to (1), all test pattern combinations are verified for the medical risk function within the range of influence.
(3) Since the risk of refurbishment is moderate, in addition to the refurbished method, methods within the range of influence are also included in the test scope. In addition, all the modified methods and methods within the range of influence will be verified while allowing the reduction of test patterns by the orthogonal method or the like.
(4) Since the impact is large, carefully test including the range of impact. Basically, all input combinations are verified for the modified method and the method within the range of influence.

したがって、ステップ121では、ステップS120における改修リスクfの算出結果、及びステップS118の判定結果に基づいて、テスト範囲が(1)〜(4)の中から選択される。なお、テスト範囲の区分は、図11に示したものに限定されない。 Therefore, in step 121, the test range is selected from (1) to (4) based on the calculation result of the repair risk f in step S120 and the determination result in step S118. The classification of the test range is not limited to that shown in FIG.

続いて、出力部17は、ログインユーザの開発者情報を更新する(S122)。具体的には、開発者情報記憶部21(図5)において、ログインユーザの開発者IDに対応する総改修行数に、今回の改修行数が加算される。また、当該開発者IDに対応する改修経験機能コードに、今回の改修対象のメソッドのタグに対応する機能コードが追加される。また、当該開発者IDに対応する改修回数が更新される。改修回数が、例えば、ログイン回数によってカウントされる場合、1が加算される。但し、ログインしたとしても改修を行っていない場合(例えば、今回の改修行数が0である場合)、改修回数の更新は行われない。 Subsequently, the output unit 17 updates the developer information of the logged-in user (S122). Specifically, in the developer information storage unit 21 (FIG. 5), the number of repaired lines this time is added to the total number of repaired lines corresponding to the developer ID of the logged-in user. In addition, the function code corresponding to the tag of the method to be repaired this time is added to the repair experience function code corresponding to the developer ID. In addition, the number of repairs corresponding to the developer ID is updated. If the number of repairs is counted by, for example, the number of logins, 1 is added. However, even if you log in, if the repair is not performed (for example, if the number of repairs this time is 0), the number of repairs will not be updated.

続いて、出力部17は、ステップS121におけるテスト範囲の判定結果に基づいて、テスト指示を出力する(S123)。具体的には、テスト範囲の判定結果が(1)である場合、出力部17は、改修対象のメソッドのクラス名及びメソッド名をテスト範囲として出力すると共に、当該メソッドの入力パターン(メソッドの引数の入力パターン)の組み合わせについて、ペアワイズ法などでテストパターンを削減してもよい旨を出力する。 Subsequently, the output unit 17 outputs a test instruction based on the determination result of the test range in step S121 (S123). Specifically, when the determination result of the test range is (1), the output unit 17 outputs the class name and method name of the method to be repaired as the test range, and also outputs the input pattern of the method (method argument). For the combination of (input pattern), it is output that the test pattern may be reduced by the pairwise method or the like.

テスト範囲の判定結果が(2)である場合、出力部17は、(1)の場合と同様の出力に加え、ステップS118において医療リスク機能であると判定されたクラス名及びメソッド名について全てのテストパターンの組み合わせ検証する旨を出力する。 When the determination result of the test range is (2), the output unit 17 adds all the output as in the case of (1), and all the class names and method names determined to be the medical risk function in step S118. Outputs that the combination of test patterns is verified.

テスト範囲の判定結果が(3)である場合、出力部17は、影響範囲リストにタグが含まれている全てのクラス名及びメソッド名をテスト範囲として出力すると共に、直行法などによるテストパターンの削減を許容しつつも全て検証をする旨を出力する。 When the judgment result of the test range is (3), the output unit 17 outputs all the class names and method names whose tags are included in the influence range list as the test range, and outputs the test pattern by the orthogonal method or the like. Output that all verification is performed while allowing reduction.

テスト範囲の判定結果が(4)である場合、出力部17は、影響範囲リストにタグが含まれている全てのクラス名及びメソッド名をテスト範囲として出力すると共に、これら全てのメソッドについて全ての入力の組み合わせを検証する旨を出力する。 When the judgment result of the test range is (4), the output unit 17 outputs all the class names and method names whose tags are included in the influence range list as the test range, and all the methods for all these methods. Outputs that the combination of inputs is verified.

なお、出力の形態は、表示装置106への表示であってもよいし、プリンタへの出力であってもよい。又は、出力内容が記述されたファイルが補助記憶装置102に記憶されてもよい。 The form of output may be a display on the display device 106 or an output to a printer. Alternatively, a file in which the output contents are described may be stored in the auxiliary storage device 102.

上述したように、本実施の形態によれば、ソースコードが改修(変更)された場合、各メソッドに付与されたタグ記述に基づいて、改修の影響範囲が特定されて、当該影響範囲に医療リスク機能が含まれているか否かが判定される。当該当該影響範囲に医療リスク機能が含まれている場合には、そうでない場合と異なるテスト範囲が出力される。したがって、医療リスクに関わる機能に対するテスト漏れを効率的に防止可能とすることができる。 As described above, according to the present embodiment, when the source code is modified (changed), the range of influence of the modification is specified based on the tag description given to each method, and medical treatment is performed on the range of influence. Whether or not the risk function is included is determined. If the medical risk function is included in the range of influence, a test range different from that in the case where it is not included is output. Therefore, it is possible to efficiently prevent test omissions for functions related to medical risks.

また、改修を行った開発者の開発経験や改修の規模に応じてテスト範囲を変化させることができる。したがって、改修に応じた適切なテスト範囲を提示することできる。 In addition, the test range can be changed according to the development experience of the developer who performed the repair and the scale of the repair. Therefore, it is possible to present an appropriate test range according to the repair.

なお、本実施の形態において、医療リスク機能記憶部25は、記憶部の一例である。開発端末10は、テスト範囲出力装置の一例である。改修部12は、受付部の一例である。影響範囲特定部15は、特定部の一例である。テスト範囲判定部16は、判定部の一例である。 In the present embodiment, the medical risk function storage unit 25 is an example of the storage unit. The development terminal 10 is an example of a test range output device. The repair department 12 is an example of a reception department. The influence range specifying unit 15 is an example of the specific unit. The test range determination unit 16 is an example of the determination unit.

以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。 Although the examples of the present invention have been described in detail above, the present invention is not limited to such specific embodiments, and various modifications are made within the scope of the gist of the present invention described in the claims.・ Can be changed.

以上の説明に関し、更に以下の項を開示する。
(付記1)
医療に関するコンピュータシステムのソースコードの変更を受け付け、
前記変更の対象となるソースコードにより実現される第1の機能を特定すると共に、前記第1の機能による処理結果を参照する第2の機能を特定し、
前記コンピュータシステムの機能ごとに医療リスクに関わる機能を示す情報を記憶した記憶部を参照して、特定した前記第1の機能及び前記第2の機能のいずれかが医療リスクに関わる機能か否かを判定し、
医療リスクに関わる機能であると判定された場合に、医療リスクに関わる機能に関係するソースコードの変更が行われない場合のテスト範囲とは異なるテスト範囲を、前記ソースコードの変更に対するテスト範囲として出力する、
処理をコンピュータに実行させることを特徴とするテスト範囲出力プログラム。
(付記2)
前記出力する処理は、前記変更を行った開発者の開発経験を示す情報に基づいて、出力するテスト範囲を変化させる、
ことを特徴とする付記1記載のテスト範囲出力プログラム。
(付記3)
前記出力する処理は、前記変更の規模に基づいて、出力するテスト範囲を変化させる、
ことを特徴とする付記1又は2記載のテスト範囲出力プログラム。
(付記4)
医療に関するコンピュータシステムのソースコードの変更を受け付ける受付部と、
前記変更の対象となるソースコードにより実現される第1の機能を特定すると共に、前記第1の機能による処理結果を参照する第2の機能を特定する特定部と、
前記コンピュータシステムの機能ごとに医療リスクに関わる機能を示す情報を記憶した記憶部を参照して、特定した前記第1の機能及び前記第2の機能のいずれかが医療リスクに関わる機能か否かを判定する判定部と、
医療リスクに関わる機能であると判定された場合に、医療リスクに関わる機能に関係するソースコードの変更が行われない場合のテスト範囲とは異なるテスト範囲を、前記ソースコードの変更に対するテスト範囲として出力する出力部と、
を有することを特徴とするテスト範囲出力装置。
(付記5)
前記出力部は、前記変更を行った開発者の開発経験を示す情報に基づいて、出力するテスト範囲を変化させる、
ことを特徴とする付記4記載のテスト範囲出力装置。
(付記6)
前記出力部は、前記変更の規模に基づいて、出力するテスト範囲を変化させる、
ことを特徴とする付記4又は5記載のテスト範囲出力装置。
(付記7)
医療に関するコンピュータシステムのソースコードの変更を受け付け、
前記変更の対象となるソースコードにより実現される第1の機能を特定すると共に、前記第1の機能による処理結果を参照する第2の機能を特定し、
前記コンピュータシステムの機能ごとに医療リスクに関わる機能を示す情報を記憶した記憶部を参照して、特定した前記第1の機能及び前記第2の機能のいずれかが医療リスクに関わる機能か否かを判定し、
医療リスクに関わる機能であると判定された場合に、医療リスクに関わる機能に関係するソースコードの変更が行われない場合のテスト範囲とは異なるテスト範囲を、前記ソースコードの変更に対するテスト範囲として出力する、
処理をコンピュータが実行することを特徴とするテスト範囲出力方法。
(付記8)
前記出力する処理は、前記変更を行った開発者の開発経験を示す情報に基づいて、出力するテスト範囲を変化させる、
ことを特徴とする付記7記載のテスト範囲出力方法。
(付記9)
前記出力する処理は、前記変更の規模に基づいて、出力するテスト範囲を変化させる、
ことを特徴とする付記7又は8記載のテスト範囲出力方法。
With respect to the above description, the following sections will be further disclosed.
(Appendix 1)
Accepting changes to the source code of medical computer systems
The first function realized by the source code to be changed is specified, and the second function that refers to the processing result by the first function is specified.
Whether or not any of the specified first function and the second function is a function related to medical risk by referring to a storage unit that stores information indicating a function related to medical risk for each function of the computer system. Judging,
When it is determined that the function is related to medical risk, the test range different from the test range when the source code related to the function related to medical risk is not changed is set as the test range for the change of the source code. Output,
A test range output program characterized by having a computer perform processing.
(Appendix 2)
The output process changes the output test range based on the information indicating the development experience of the developer who made the change.
The test range output program according to Appendix 1, wherein the test range output program is described.
(Appendix 3)
The output process changes the output test range based on the scale of the change.
The test range output program according to Appendix 1 or 2, wherein the test range output program is described.
(Appendix 4)
The reception department that accepts changes in the source code of computer systems related to medical care,
A specific part that specifies the first function realized by the source code to be changed and the second function that refers to the processing result of the first function, and
Whether or not any of the specified first function and the second function is a function related to medical risk by referring to a storage unit that stores information indicating a function related to medical risk for each function of the computer system. Judgment unit to judge
When it is determined that the function is related to medical risk, the test range different from the test range when the source code related to the function related to medical risk is not changed is set as the test range for the change of the source code. The output section to output and
A test range output device characterized by having.
(Appendix 5)
The output unit changes the output test range based on the information indicating the development experience of the developer who made the change.
The test range output device according to Appendix 4, wherein the test range output device is described.
(Appendix 6)
The output unit changes the output test range based on the scale of the change.
The test range output device according to Appendix 4 or 5, wherein the test range output device is described.
(Appendix 7)
Accepting changes to the source code of medical computer systems
The first function realized by the source code to be changed is specified, and the second function that refers to the processing result by the first function is specified.
Whether or not any of the specified first function and the second function is a function related to medical risk by referring to a storage unit that stores information indicating a function related to medical risk for each function of the computer system. Judging,
When it is determined that the function is related to medical risk, the test range different from the test range when the source code related to the function related to medical risk is not changed is set as the test range for the change of the source code. Output,
A test range output method characterized by the processing being performed by a computer.
(Appendix 8)
The output process changes the output test range based on the information indicating the development experience of the developer who made the change.
The test range output method according to Appendix 7, wherein the test range is output.
(Appendix 9)
The output process changes the output test range based on the scale of the change.
The test range output method according to Appendix 7 or 8, wherein the test range is output.

10 開発端末
11 認証部
12 改修部
13 タグ付与部
14 差分抽出部
15 影響範囲特定部
16 テスト範囲判定部
17 出力部
20 サーバ装置
21 開発者情報記憶部
22 ソースコード記憶部
23 タグ情報記憶部
24 機能コード記憶部
25 医療リスク機能記憶部
26 テスト範囲記憶部
100 ドライブ装置
101 記録媒体
102 補助記憶装置
103 メモリ装置
104 CPU
105 インタフェース装置
106 表示装置
107 入力装置
B バス
10 Development terminal 11 Authentication unit 12 Repair unit 13 Tagging unit 14 Difference extraction unit 15 Impact range identification unit 16 Test range judgment unit 17 Output unit 20 Server device 21 Developer information storage unit 22 Source code storage unit 23 Tag information storage unit 24 Function code storage 25 Medical risk Function storage 26 Test range storage 100 Drive device 101 Recording medium 102 Auxiliary storage device 103 Memory device 104 CPU
105 Interface device 106 Display device 107 Input device B Bus

Claims (5)

医療に関するコンピュータシステムのソースコードの変更を受け付け、
前記変更の対象となるソースコードにより実現される第1の機能を特定すると共に、前記第1の機能による処理結果を参照する第2の機能を特定し、
前記コンピュータシステムの機能ごとに医療リスクに関わる機能を示す情報を記憶した記憶部を参照して、特定した前記第1の機能及び前記第2の機能のいずれかが医療リスクに関わる機能か否かを判定し、
前記第1の機能及び前記第2の機能のいずれかが医療リスクに関わる機能であると判定された場合に、前記第1の機能及び前記第2の機能のいずれもが医療リスクに関わる機能でないと判定された場合のテスト範囲とは異なるテスト範囲を、前記ソースコードの変更に対するテスト範囲として出力する、
処理をコンピュータに実行させることを特徴とするテスト範囲出力プログラム。
Accepting changes to the source code of medical computer systems
The first function realized by the source code to be changed is specified, and the second function that refers to the processing result by the first function is specified.
Whether or not any of the specified first function and the second function is a function related to medical risk by referring to a storage unit that stores information indicating a function related to medical risk for each function of the computer system. Judging,
If any of the first function and the second function is determined to be a function related to medical risks, both of the first function and the second function is not a function related to the medical risk A test range different from the test range when it is determined is output as a test range for the change of the source code.
A test range output program characterized by having a computer perform processing.
前記出力する処理は、前記変更を行った開発者の開発経験を示す情報に基づいて、出力するテスト範囲を変化させる、
ことを特徴とする請求項1記載のテスト範囲出力プログラム。
The output process changes the output test range based on the information indicating the development experience of the developer who made the change.
The test range output program according to claim 1.
前記出力する処理は、前記変更の規模に基づいて、出力するテスト範囲を変化させる、
ことを特徴とする請求項1又は2記載のテスト範囲出力プログラム。
The output process changes the output test range based on the scale of the change.
The test range output program according to claim 1 or 2.
医療に関するコンピュータシステムのソースコードの変更を受け付ける受付部と、
前記変更の対象となるソースコードにより実現される第1の機能を特定すると共に、前記第1の機能による処理結果を参照する第2の機能を特定する特定部と、
前記コンピュータシステムの機能ごとに医療リスクに関わる機能を示す情報を記憶した記憶部を参照して、特定した前記第1の機能及び前記第2の機能のいずれかが医療リスクに関わる機能か否かを判定する判定部と、
前記第1の機能及び前記第2の機能のいずれかが医療リスクに関わる機能であると判定された場合に、前記第1の機能及び前記第2の機能のいずれもが医療リスクに関わる機能でないと判定された場合のテスト範囲とは異なるテスト範囲を、前記ソースコードの変更に対するテスト範囲として出力する出力部と、
を有することを特徴とするテスト範囲出力装置。
The reception department that accepts changes in the source code of computer systems related to medical care,
A specific part that specifies the first function realized by the source code to be changed and the second function that refers to the processing result of the first function, and
Whether or not any of the specified first function and the second function is a function related to medical risk by referring to a storage unit that stores information indicating a function related to medical risk for each function of the computer system. Judgment unit to determine
If any of the first function and the second function is determined to be a function related to medical risks, both of the first function and the second function is not a function related to the medical risk An output unit that outputs a test range different from the test range when it is determined as a test range for changes in the source code, and an output unit.
A test range output device characterized by having.
医療に関するコンピュータシステムのソースコードの変更を受け付け、
前記変更の対象となるソースコードにより実現される第1の機能を特定すると共に、前記第1の機能による処理結果を参照する第2の機能を特定し、
前記コンピュータシステムの機能ごとに医療リスクに関わる機能を示す情報を記憶した記憶部を参照して、特定した前記第1の機能及び前記第2の機能のいずれかが医療リスクに関わる機能か否かを判定し、
前記第1の機能及び前記第2の機能のいずれかが医療リスクに関わる機能であると判定された場合に、前記第1の機能及び前記第2の機能のいずれもが医療リスクに関わる機能でないと判定された場合のテスト範囲とは異なるテスト範囲を、前記ソースコードの変更に対するテスト範囲として出力する、
処理をコンピュータが実行することを特徴とするテスト範囲出力方法。
Accepting changes to the source code of medical computer systems
The first function realized by the source code to be changed is specified, and the second function that refers to the processing result by the first function is specified.
Whether or not any of the specified first function and the second function is a function related to medical risk by referring to a storage unit that stores information indicating a function related to medical risk for each function of the computer system. Judging,
If any of the first function and the second function is determined to be a function related to medical risks, both of the first function and the second function is not a function related to the medical risk A test range different from the test range when it is determined is output as a test range for the change of the source code.
A test range output method characterized by the processing being performed by a computer.
JP2017050261A 2017-03-15 2017-03-15 Test range output program, test range output device and test range output method Active JP6862949B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017050261A JP6862949B2 (en) 2017-03-15 2017-03-15 Test range output program, test range output device and test range output method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017050261A JP6862949B2 (en) 2017-03-15 2017-03-15 Test range output program, test range output device and test range output method

Publications (2)

Publication Number Publication Date
JP2018156164A JP2018156164A (en) 2018-10-04
JP6862949B2 true JP6862949B2 (en) 2021-04-21

Family

ID=63717945

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017050261A Active JP6862949B2 (en) 2017-03-15 2017-03-15 Test range output program, test range output device and test range output method

Country Status (1)

Country Link
JP (1) JP6862949B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2538630B2 (en) * 1988-01-28 1996-09-25 中国日本電気ソフトウエア株式会社 Automatic test item selection system
JP2007226526A (en) * 2006-02-23 2007-09-06 Ns Solutions Corp Information processor, information processing method, program and storage medium
JP6217212B2 (en) * 2013-07-25 2017-10-25 富士通株式会社 Test program, test method and test apparatus
JP6320269B2 (en) * 2014-10-08 2018-05-09 三菱電機株式会社 Software test support apparatus and software test support program

Also Published As

Publication number Publication date
JP2018156164A (en) 2018-10-04

Similar Documents

Publication Publication Date Title
WO2018010552A1 (en) Test method and device
US8819642B2 (en) Method and system for generating and processing black box test cases
US9740473B2 (en) Software and associated hardware regression and compatibility testing system
US9336381B1 (en) Entropy-based detection of sensitive information in code
US8839351B2 (en) Effective testing of authorization logic of web components which utilize claims-based authorization
CN101268468A (en) Method and apparatus to authenticate source of a scripted code
CN105335282A (en) Method and system for cross-platform test of applications
US20140214396A1 (en) Specification properties creation for a visual model of a system
US9582270B2 (en) Effective feature location in large legacy systems
US10095512B2 (en) Program development support device, non-transitory storage medium storing thereon computer-readable program development support program, and program development support method
US8887112B2 (en) Test validation planning
JP2009087352A (en) Configurable web services system and method to detect defects in software applications
JP6862949B2 (en) Test range output program, test range output device and test range output method
WO2021183382A1 (en) Graph-based method for inductive bug localization
US12001325B2 (en) Test data generation apparatus, test data generation method and program
JP7150167B2 (en) Automated control of distributed computing devices
JP2009129204A (en) Code inspection system, code inspection method, and program
KR101544010B1 (en) Method for normalizing dynamic behavior of process and detecting malicious code
JP5966890B2 (en) Constraint extraction program, constraint extraction device, and constraint extraction method
JP5811859B2 (en) Source code static analysis device, system, method, and program therefor
TWI715647B (en) System and method for ip fingerprinting and ip dna analysis
CN108885574A (en) For monitoring the system with performance and correctness problem when reporting design, compiling and operation
Chen et al. Using modified diffusion models for reliability estimation of open source software
JP6818568B2 (en) Communication device, communication specification difference extraction method and communication specification difference extraction program
US20170242775A1 (en) Method for verifying traceability of first instructions in a procedural programming language generated from second instructions in a modelling language

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210201

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210315

R150 Certificate of patent or registration of utility model

Ref document number: 6862949

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150