JP2009163566A - Job analysis support apparatus - Google Patents

Job analysis support apparatus Download PDF

Info

Publication number
JP2009163566A
JP2009163566A JP2008001531A JP2008001531A JP2009163566A JP 2009163566 A JP2009163566 A JP 2009163566A JP 2008001531 A JP2008001531 A JP 2008001531A JP 2008001531 A JP2008001531 A JP 2008001531A JP 2009163566 A JP2009163566 A JP 2009163566A
Authority
JP
Japan
Prior art keywords
job
list
data
provisional
jobs
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008001531A
Other languages
Japanese (ja)
Inventor
Hideki Mine
英樹 峯
Michiharu Ibuka
道春 井深
Daisuke Naruse
大亮 成瀬
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.)
Nomura Research Institute Ltd
Original Assignee
Nomura Research Institute 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 Nomura Research Institute Ltd filed Critical Nomura Research Institute Ltd
Priority to JP2008001531A priority Critical patent/JP2009163566A/en
Publication of JP2009163566A publication Critical patent/JP2009163566A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a technique for effectively analyzing the present conditions of business systems. <P>SOLUTION: A job analysis support apparatus refers to job relevant information for indicating dependence of a plurality of jobs, and arranges the plurality of jobs in one line on the basis of the dependence. The job analysis support apparatus sets a set of a job and job attribute information indicating the attribute of the job, and lists and displays a list of the job set in a job list screen 280. When a user selects either job set in the job list screen 280, a data set corresponding to the selected job set is listed and displayed. When the data set is selected, an element set corresponding to the selected data set is listed and displayed. <P>COPYRIGHT: (C)2009,JPO&INPIT

Description

この発明は、業務システムに関連し、特に、業務システムの現状を解析するための技術、に関する。   The present invention relates to a business system, and more particularly to a technique for analyzing the current state of a business system.

企業や公共施設などの運用を支える業務システム、いわゆるエンタープライズシステム(Enterprise System)は、今や、大小さまざまな組織の基盤として導入されている。業務システムは、ノード端末やデータベースから得られるデータを集計、蓄積、解析、加工した上でより付加価値の高い情報を出力する。業務システムは複雑化する組織マネジメントをより効率化するために発展を続けている。   Business systems that support the operation of companies and public facilities, so-called enterprise systems, are now being introduced as the foundations of large and small organizations. The business system aggregates, accumulates, analyzes, and processes data obtained from node terminals and databases, and outputs information with higher added value. Business systems continue to evolve to make more complex organizational management more efficient.

業務システムは、ジョブ(Job)の集合体としてモデリングされることが多い。ジョブとは、データベースの更新処理や、各ノード端末から得られたデータに対する演算処理など、システムにおける基本的な実行単位である。業務システムによっては、ジョブの数は数千から時には数万にも及ぶ。更に、ジョブを構成するプログラムファイルの数に至っては、数十万、時には数百万にも及ぶ。業務システムは、長年にわたって稼働を続けるため、稼働後も、ジョブやプログラムファイル、データ項目等の追加、修正、廃止といったさまざまな保守作業を必要とする。
特開2002−358224号公報 特開2006−268507号公報 特開2007−265029号公報
A business system is often modeled as a collection of jobs. A job is a basic execution unit in the system, such as a database update process and a calculation process for data obtained from each node terminal. Depending on the business system, the number of jobs can range from thousands to tens of thousands. Furthermore, the number of program files constituting a job is several hundred thousand, sometimes several million. Since the business system continues to operate for many years, various maintenance operations such as addition, correction, and abolition of jobs, program files, and data items are required even after operation.
JP 2002-358224 A JP 2006-268507 A JP 2007-265029 A

業務システムの長期運用のためには、業務システムの全体像は常に明快でなければならない。通常、ジョブやプログラムファイル、データ項目等の意味は、設計文書としてドキュメント化される。しかし、設計文書の記載が常に明瞭であるとは限らないし、プログラマが常に設計文書を正しく怠りなく記載するとも限らない。また、設計文書そのものが散逸してしまうこともある。このように設計文書の信頼性は、プログラマの「心がけ」に大きく依存する。いったん業務システムと設計文書が乖離してしまうと、業務システムはブラックボックス化しかねない。   For long-term operation of business systems, the overall picture of the business system must always be clear. Usually, the meanings of jobs, program files, data items, etc. are documented as design documents. However, the description of the design document is not always clear, and the programmer does not always write the design document correctly and without error. In addition, the design document itself may be lost. In this way, the reliability of design documents greatly depends on the programmer's “mind”. Once the business system and the design document deviate, the business system can become a black box.

本発明は、上記課題に基づいて完成された発明であり、その主たる目的は、業務システムの現状を効率的に解析するための技術、を提供することにある。   The present invention has been completed based on the above-mentioned problems, and its main object is to provide a technique for efficiently analyzing the current state of a business system.

本発明のある態様は、ジョブ解析支援装置に関する。
この装置は、複数のジョブの依存関係を示すジョブ関係情報を参照して、複数の先頭ジョブのそれぞれに対応して複数の暫定リストを生成し、対応する暫定リストに先頭ジョブを登録する。次に、先行ジョブの全てがいずれかの暫定リストに登録済であって、自身は暫定リストに未登録のジョブを候補ジョブとして検出し、候補ジョブをその先行ジョブが登録されている暫定リストに追加登録する追加登録処理を、複数のジョブ全てがいずれかの暫定リストに登録されるまで繰り返す。第1の暫定リストに登録されているジョブが第2の暫定リストに登録されているジョブの先行ジョブにあたるときには、第2の暫定リストに登録されているジョブを第1の暫定リストに転記することにより、第1の暫定リストに第2の暫定リストを結合する。複数のジョブを依存関係に基づいて一列に並べたリストとして、複数の暫定リストが結合されたジョブリストを画面表示させる。
One embodiment of the present invention relates to a job analysis support apparatus.
This apparatus refers to job relationship information indicating dependency relationships of a plurality of jobs, generates a plurality of provisional lists corresponding to each of the plurality of head jobs, and registers the head job in the corresponding provisional list. Next, all of the preceding jobs are registered in one of the temporary lists, and themselves detect a job that is not registered in the temporary list as a candidate job, and the candidate job is added to the temporary list in which the preceding job is registered. The additional registration processing for additional registration is repeated until all of a plurality of jobs are registered in any provisional list. When the job registered in the first provisional list corresponds to the preceding job of the job registered in the second provisional list, the job registered in the second provisional list is transferred to the first provisional list. Thus, the second provisional list is combined with the first provisional list. A job list in which a plurality of provisional lists are combined is displayed on a screen as a list in which a plurality of jobs are arranged in a line based on the dependency.

なお、以上に示した構成要素の任意の組合せ、本発明を方法、システム、記録媒体、コンピュータプログラムにより表現したものもまた、本発明の態様として有効である。   It should be noted that any combination of the above-described components, and the present invention expressed by a method, system, recording medium, and computer program are also effective as an aspect of the present invention.

本発明によれば、業務システムの現状を効率的に解析しやすくなる。   According to the present invention, it becomes easy to efficiently analyze the current state of a business system.

図1は、業務システム220のハードウェア構成図である。
業務システム220は、企業や公共施設のような組織の業務を管理するために導入される。業務システム220は、地理的に分散された複数の組織を統合するシステムとして構成されてもよい。
FIG. 1 is a hardware configuration diagram of the business system 220.
The business system 220 is introduced to manage the business of an organization such as a company or a public facility. The business system 220 may be configured as a system that integrates a plurality of geographically dispersed organizations.

本実施例における業務システム220は、ジョブ管理装置230、ジョブ実行装置群200および外部記憶装置210を含む。ジョブ管理装置230、ジョブ実行装置群200および外部記憶装置210は通信ネットワークにより互いに接続されている。
ジョブ管理装置230は、各ジョブの実行条件に基づいて、複数のジョブをジョブ実行装置群200に実行させる。ジョブ実行装置群200は、複数のジョブ実行装置202を含む。各ジョブ実行装置202は、ジョブ管理装置230から割り当てられたジョブを実行する。ジョブ管理装置230は、あらかじめ定められた割当ルールに応じて、いずれかのジョブ実行装置202にジョブを割り当ててもよい。あるいは、各ジョブ実行装置202の処理負荷が分散するように、他のジョブ実行装置202よりも処理負荷が軽い状態にあるジョブ実行装置202に対して優先的にジョブを割り当ててもよい。
ジョブを構成するプログラムはあらかじめジョブ実行装置202が保持しておいてもよい。あるいは、ジョブ実行指示に際してジョブ管理装置230からジョブ実行装置202にプログラムをダウンロードしてもよい。ジョブ実行装置202は、ジョブの実行状態をジョブ管理装置230に通知する。
The business system 220 in this embodiment includes a job management device 230, a job execution device group 200, and an external storage device 210. The job management device 230, the job execution device group 200, and the external storage device 210 are connected to each other via a communication network.
The job management device 230 causes the job execution device group 200 to execute a plurality of jobs based on the execution conditions of each job. The job execution device group 200 includes a plurality of job execution devices 202. Each job execution device 202 executes the job assigned from the job management device 230. The job management device 230 may assign a job to any one of the job execution devices 202 in accordance with a predetermined assignment rule. Alternatively, jobs may be preferentially assigned to the job execution devices 202 that have a lighter processing load than the other job execution devices 202 so that the processing load of each job execution device 202 is distributed.
The program constituting the job may be held in advance by the job execution apparatus 202. Alternatively, a program may be downloaded from the job management apparatus 230 to the job execution apparatus 202 when a job execution instruction is given. The job execution device 202 notifies the job management device 230 of the job execution state.

外部記憶装置210は、業務のためのさまざまなデータを保存する。ジョブ実行装置202は、ジョブの実行に際して、外部記憶装置210とデータを送受する。また、ジョブ実行装置202は、外部記憶装置210から取得したデータや図示しない他のデータベース、ノード端末等から取得したデータに基づいてジョブを実行する。   The external storage device 210 stores various data for business. The job execution device 202 sends and receives data to and from the external storage device 210 when executing a job. Further, the job execution device 202 executes a job based on data acquired from the external storage device 210 or data acquired from another database (not shown), a node terminal, or the like.

まとめると、外部記憶装置210のデータを変数として、ジョブ実行装置202はさまざまなジョブを実行する。ジョブ管理装置230は、各ジョブの実行条件に基づいてジョブの実行タイミングを制御する。このように、外部記憶装置210から得られるデータに基づいて、複数のジョブがスケジュールにしたがって実行されることにより、業務システム220全体の運用がなされている。   In summary, the job execution device 202 executes various jobs using the data in the external storage device 210 as a variable. The job management device 230 controls job execution timing based on the execution conditions of each job. As described above, based on the data obtained from the external storage device 210, a plurality of jobs are executed according to the schedule, so that the entire business system 220 is operated.

ジョブは、実行に際してさまざまなファイルに対する「書き込み」や「読み出し」を実行する。以下、ジョブからアクセス対象となるファイルのことを「データファイル」とよぶ。データファイルの多くは、通常、外部記憶装置210に保持される。業務システム220は、長期、時には、数十年にもわたる稼働を想定して設計される。また、業務システム220を構成するジョブ、プログラム、データファイル等は、組織業務の変化に対応して、適宜、改変される。
ジョブ解析支援装置100は、ジョブ、各ジョブを構成するプログラム、各プログラムからアクセスされるデータファイル等を解析し、業務システム220の現状をユーザにわかりやすい形式にて示すための装置である。
The job executes “write” and “read” with respect to various files during execution. Hereinafter, a file to be accessed from a job is referred to as a “data file”. Many of the data files are normally held in the external storage device 210. The business system 220 is designed for long-term and sometimes operation for several decades. In addition, jobs, programs, data files, and the like constituting the business system 220 are appropriately modified in response to changes in organizational work.
The job analysis support apparatus 100 is an apparatus for analyzing a job, a program constituting each job, a data file accessed from each program, and the like, and presenting the current state of the business system 220 in a user-friendly format.

図2は、業務システム220の構成図である。
業務システム220の構成は、
A.ジョブ関係:ジョブとジョブの関係
B.ジョブ構造:ジョブとプログラム、プログラムとデータファイルの関係
C.データ構造:データファイルとデータ要素の関係
の3段階に階層化できる。
FIG. 2 is a configuration diagram of the business system 220.
The configuration of the business system 220 is
A. Job relationship: relationship between jobs. Job structure: relationship between job and program, program and data file Data structure: Hierarchy can be divided into three levels: the relationship between data files and data elements.

A.ジョブ関係:ジョブとジョブの関係
業務システム220には、1以上のフレーム(Frame)が含まれ、フレームには1以上のネット(NET)が含まれる。ネットは1以上のジョブを含む。このように、フレーム、ネット、ジョブの順に業務システム220の処理単位は細分化される。ネットは、所定の処理に関わるジョブをグループ化した概念であり、フレームは、所定の処理に関わるネットをグループ化した概念である。ジョブは、フレームおよびネットにより所属先を特定される。
A. Job Relationship: Job-Job Relationship The business system 220 includes one or more frames, and the frame includes one or more nets (NET). The net includes one or more jobs. Thus, the processing unit of the business system 220 is subdivided in the order of frame, net, and job. A net is a concept in which jobs related to a predetermined process are grouped, and a frame is a concept in which nets related to a predetermined process are grouped. Jobs are identified by their frame and net.

複数のジョブの間には、前段にあたるジョブの実行が完了してから後段にあたるジョブの実行が開始される、という依存関係がある。たとえば、ジョブ1の実行結果に基づいて、ジョブ2とジョブ3が実行されるとする。この場合、ジョブ2やジョブ3はジョブ1の実行が完了しなければ実行できないため、ジョブ1に依存していることになる。一方、ジョブ2とジョブ3の間には依存関係が成立しない。各ジョブの所属や依存関係は「ジョブ関係情報240」として登録されている。ジョブ管理装置230は、ジョブ関係情報240を参照して、各ジョブの実行スケジュールを制御する。ジョブ関係情報240は、ジョブ管理装置230のための情報であって、人間のために可読性を考慮した情報ではない。   There is a dependency relationship between a plurality of jobs, that is, execution of a job in the subsequent stage is started after execution of the job in the previous stage is completed. For example, assume that job 2 and job 3 are executed based on the execution result of job 1. In this case, since job 2 and job 3 cannot be executed unless execution of job 1 is completed, job 2 and job 3 depend on job 1. On the other hand, no dependency relationship is established between job 2 and job 3. The affiliation and dependency of each job are registered as “job relation information 240”. The job management apparatus 230 refers to the job relation information 240 and controls the execution schedule of each job. The job-related information 240 is information for the job management device 230 and is not information that considers readability for humans.

そこで、プログラマは、ジョブの追加や削除、依存関係の変更等が発生したときには、適宜、ジョブ関係文書242を更新しておく。ジョブ関係文書242は、人間にわかりやすくジョブ関係を説明するための設計文書である。   Therefore, the programmer updates the job-related document 242 as appropriate when a job is added or deleted, a dependency is changed, or the like. The job relation document 242 is a design document for explaining the job relation in an easy-to-understand manner for humans.

B:ジョブ構造:ジョブとプログラム、プログラムとデータファイルの関係
ジョブは、1以上のプログラムの集合体である。プログラムはさまざまなデータファイルにアクセスする。たとえば、あるプログラムp1がデータファイルd1にデータAを書き込むと、別のプログラムp2はデータファイルd1のデータAに基づいて自処理を実行する。このように、各プログラムはデータファイルを介して連携する。結果として、各ジョブはデータファイルを介して連携することになる。
B: Job structure: relationship between job and program, program and data file A job is an aggregate of one or more programs. The program accesses various data files. For example, when one program p1 writes data A to the data file d1, another program p2 executes its own processing based on the data A of the data file d1. Thus, each program cooperates via a data file. As a result, each job is linked via a data file.

ジョブとプログラム、および、プログラムとデータファイルの関係は「第1ジョブ構造情報244」として登録されている。本実施例の第1ジョブ構造情報244は、ジョブ制御言語(JCL:Job Control Language)によって記述される。第1ジョブ構造情報244は、一のジョブとそのジョブを構成する1以上のプログラム、各プログラムによりアクセスの対象となるデータファイルの関係を示す。同図に示すジョブは、プログラム1〜3の3つのプログラムから構成されていることがわかる。このうち、プログラム3は、データファイル(Dファイル)b、c、e、fの4つのデータファイルをアクセス対象としていることがわかる。第1ジョブ構造情報244については、図12に関連しても後述する。   The relationship between jobs and programs, and programs and data files is registered as “first job structure information 244”. The first job structure information 244 of this embodiment is described in a job control language (JCL). The first job structure information 244 indicates a relationship between one job, one or more programs constituting the job, and a data file to be accessed by each program. It can be seen that the job shown in FIG. Of these, it can be seen that the program 3 has access to four data files (D files) b, c, e, and f. The first job structure information 244 will be described later with reference to FIG.

本実施例における第1ジョブ構造情報244は、JCLにより記述されるため、人間が第1ジョブ構造情報244を読み下すことは可能である。ただし、JCLはあくまでもプログラミング言語であり、ジョブ、プログラム、データファイルの関係を人間に理解させるために最適な形式ではない。   Since the first job structure information 244 in this embodiment is described in JCL, it is possible for a human to read down the first job structure information 244. However, JCL is merely a programming language, and is not an optimal format for allowing humans to understand the relationship between jobs, programs, and data files.

そこで、プログラマは、ジョブやプログラム、データファイルの追加や削除、対応関係の変更等が発生したときには、適宜、ジョブ構造設計文書248を更新しておく。ジョブ構造設計文書248は、人間にわかりやすくジョブ構造を説明するための設計文書である。   Therefore, the programmer updates the job structure design document 248 as appropriate when a job, a program, or a data file is added or deleted, or the correspondence is changed. The job structure design document 248 is a design document for explaining the job structure in an easy-to-understand manner for humans.

更に、プログラムとデータファイル、データファイルとレイアウトファイルの関係は「第2ジョブ構造情報246」として登録されている。レイアウトファイルとは、データファイルに含まれる1以上のデータ要素について、データ型とデータ名を宣言するファイルである。本実施例の第2ジョブ構造情報246は、COBOL(COmmon Business Oriented Language)によって記述される。同図に示すプログラム3は、データファイルb、c、e、fの4つのデータファイルをアクセス対象としていることがわかる。このうち、データファイルbに含まれる各データ要素のデータ型やデータ名は、レイアウトファイルbにて宣言されていることがわかる。   Further, the relationship between the program and the data file, and the data file and the layout file are registered as “second job structure information 246”. A layout file is a file that declares a data type and a data name for one or more data elements included in a data file. The second job structure information 246 of this embodiment is described in COBOL (COmmon Business Oriented Language). It can be seen that the program 3 shown in FIG. 4 has access to four data files, data files b, c, e, and f. Among these, it can be seen that the data type and data name of each data element included in the data file b are declared in the layout file b.

本実施例における第2ジョブ構造情報246は、COBOLにより記述されるため、人間が第2ジョブ構造情報246を読み下すことは可能である。ただし、COBOLもプログラミング言語であり、プログラム、データファイル、レイアウトファイルの関係を人間に理解させる上で最適な形式ではない。   Since the second job structure information 246 in this embodiment is described in COBOL, it is possible for a human to read down the second job structure information 246. However, COBOL is also a programming language and is not an optimal format for allowing humans to understand the relationship between programs, data files, and layout files.

そこで、プログラマは、プログラムやデータファイル、レイアウトファイルの追加や削除、対応関係の変更等が発生したときには、適宜、ジョブ構造設計文書248を更新しておく。   Therefore, the programmer updates the job structure design document 248 as appropriate when a program, data file, layout file is added or deleted, or the correspondence is changed.

C:データ構造:データファイルとデータ要素の関係
データ宣言情報250は、データファイルに含まれる1以上のデータ要素のデータ型とデータ名を宣言するレイアウトファイルである。同図に示すデータ宣言情報250は、データ要素1〜4という4つのデータ要素のデータ型とデータ名を宣言している。本実施例におけるデータ宣言情報250も、COBOLにより記述される。データ宣言情報250については、図14に関連しても後述する。
C: Data structure: relationship between data file and data element The data declaration information 250 is a layout file for declaring the data type and data name of one or more data elements included in the data file. The data declaration information 250 shown in the figure declares data types and data names of four data elements 1 to 4. The data declaration information 250 in this embodiment is also described by COBOL. The data declaration information 250 will be described later with reference to FIG.

COBOLにより記述されているため、人間がデータ宣言情報250を読み下すことは可能である。通常、プログラマは、データファイルに含まれるデータ要素のデータ型やデータ名を変更するときには、適宜、データ定義文書ファイル252も更新しておく。データ定義文書ファイル252は、業務システム220において使用されるさまざまなデータ要素を説明するための設計文書である。   Since it is described in COBOL, it is possible for a human to read down the data declaration information 250. Normally, the programmer updates the data definition document file 252 as appropriate when changing the data type or data name of the data element included in the data file. The data definition document file 252 is a design document for explaining various data elements used in the business system 220.

このように、業務システム220は、A.ジョブ関係、B.ジョブ構造、C.データ構造の3段階に階層化される。業務システム220の現状は、ジョブ関係情報240、第1ジョブ構造情報244、第2ジョブ構造情報246、データ宣言情報250(以下、これらを「現状情報」とよぶ)により示される。しかし、人間から見た可読性を必ずしも考慮しないこれらの現状情報から、巨大な業務システム220の全容を把握することは困難である。そこで、各階層に対応して、ジョブ関係文書242、ジョブ構造設計文書248、データ定義文書ファイル252という設計文書(以下、これらを「文書情報」とよぶ)が用意される。   As described above, the business system 220 has the A.D. Job-related, B. Job structure, C.I. It is hierarchized in three stages of the data structure. The current state of the business system 220 is indicated by job-related information 240, first job structure information 244, second job structure information 246, and data declaration information 250 (hereinafter referred to as “current state information”). However, it is difficult to grasp the entire contents of the huge business system 220 from these current status information that does not necessarily take human readability into consideration. Therefore, design documents (hereinafter referred to as “document information”) such as a job-related document 242, a job structure design document 248, and a data definition document file 252 are prepared corresponding to each layer.

しかし、業務システム220の長年の運用の結果として、徐々に現状情報と文書情報が乖離しやすくなる。いったん文書情報が現状情報から乖離してしまうと、現状情報にアクセスしなければ、業務システム220の現状を正確に把握できなくなってしまう。すなわち、
文書情報:人間にとってわかりやすいが、現状から乖離しやすい。
現状情報:人間にとってわかりにくいが、現状を正しく示している。
といえる。
ジョブ解析支援装置100は、この現状情報に基づいて、業務システム220の正しい現状を解析し、業務システム220のA.ジョブ関係、B.ジョブ構造、C.データ構造をユーザにわかりやすく示すための装置である。以下においては、ジョブ解析支援装置100が現状情報を解析し、ユーザにわかりやすい形式にて現状情報を示すまでの処理過程のことを「現状解析処理」とよぶ。
However, as a result of the long-term operation of the business system 220, the current status information and the document information are gradually separated. Once the document information deviates from the current status information, the current status of the business system 220 cannot be accurately grasped unless the current status information is accessed. That is,
Document information: easy to understand for humans, but easy to deviate from the current situation.
Current status information: It is difficult for humans to understand, but it shows the current status correctly.
It can be said.
The job analysis support apparatus 100 analyzes the correct current status of the business system 220 based on the current status information, and the A. Job-related, B. Job structure, C.I. This is a device for showing the data structure to the user in an easily understandable manner. In the following, the process until the job analysis support apparatus 100 analyzes the current status information and presents the current status information in a user-friendly format is referred to as “current status analysis processing”.

図3は、現状解析処理の処理過程の概略を示す図である。
現状解析処理においては、S10、S12、S14、S16の4つの処理が順次実行される。
1.ジョブの直列化(S10)
ジョブ関係情報240を参照し、ジョブの依存関係を反映させた並び順にて複数のジョブを一列に並べる。一列に並べられたジョブは「ジョブリスト」として画面表示されることになる。ジョブの直列化については、図5、図6、図7(a)、図7(b)、図8(a)、図8(b)、図9(a)、図9(b)に関連して詳述する。
2.ジョブリストの修正(S12)
ジョブ関係情報240等を参照し、各ジョブの属性を示すジョブ属性情報をジョブと対応づけた「ジョブセット」を作成する。ジョブセットがリスト要素となるように、ジョブリストを修正する。ジョブリストの修正については、図10、図11に関連して詳述する。
3.データセットリストの作成(S14)
JCLで記述された第1ジョブ構造情報244やジョブセット等を参照し、データファイル、プログラム、ジョブ、ジョブ属性情報を対応づけた「データセット」を作成する。データセットがリスト要素となる「データセットリスト」が画面表示されることになる。データセットの作成については、図12、図13に関連して詳述する。
4.要素セットリストの作成(S16)
COBOLで記述されたデータ宣言情報250やデータ定義文書ファイル252等を参照し、データ要素ごとにデータの意味、データ名やデータ型を対応づけた「要素セット」を作成する。要素セットをリスト要素とする「要素セットリスト」が画面表示されることになる。要素セットの作成については、図14、図15に関連して詳述する。
FIG. 3 is a diagram showing an outline of the process of the current state analysis process.
In the current state analysis process, four processes S10, S12, S14, and S16 are sequentially executed.
1. Job serialization (S10)
With reference to the job relation information 240, a plurality of jobs are arranged in a line in the arrangement order reflecting the job dependency. The jobs arranged in a line are displayed on the screen as a “job list”. Job serialization is related to Fig. 5, Fig. 6, Fig. 7 (a), Fig. 7 (b), Fig. 8 (a), Fig. 8 (b), Fig. 9 (a), and Fig. 9 (b). And will be described in detail.
2. Correction of job list (S12)
By referring to the job relation information 240 and the like, a “job set” is created in which job attribute information indicating the attribute of each job is associated with the job. Modify the job list so that the job set becomes a list element. The job list correction will be described in detail with reference to FIGS.
3. Create data set list (S14)
By referring to the first job structure information 244 and job set described in JCL, a “data set” in which the data file, program, job, and job attribute information are associated is created. A “data set list” in which the data set is a list element is displayed on the screen. The creation of the data set will be described in detail with reference to FIGS.
4). Creation of element set list (S16)
With reference to the data declaration information 250 described in COBOL, the data definition document file 252 and the like, an “element set” in which the meaning of the data, the data name, and the data type are associated with each data element is created. An “element set list” having the element set as a list element is displayed on the screen. The creation of the element set will be described in detail with reference to FIGS.

図4は、ジョブ解析支援装置100の機能ブロック図である。
ここに示す各ブロックは、ハードウェア的には、コンピュータのCPUをはじめとする素子や機械装置で実現でき、ソフトウェア的にはコンピュータプログラム等によって実現されるが、ここでは、それらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックはハードウェア、ソフトウェアの組合せによっていろいろなかたちで実現できることは、当業者には理解されるところである。
ここでは、主として各機能ブロックの発揮すべき機能について述べ、その具体的な作用については、図5以降に関連して説明する。
FIG. 4 is a functional block diagram of the job analysis support apparatus 100.
Each block shown here can be realized in hardware by an element such as a CPU of a computer or a mechanical device, and in software it is realized by a computer program or the like. Draw functional blocks. Therefore, those skilled in the art will understand that these functional blocks can be realized in various forms by a combination of hardware and software.
Here, functions to be exhibited by each functional block will be mainly described, and specific actions will be described with reference to FIG.

ジョブ解析支援装置100は、ユーザインタフェース処理部110、データ処理部140およびデータ保持部160を含む。
ユーザインタフェース処理部110は、ユーザからの入力処理やユーザに対する情報表示のようなユーザインタフェース全般に関する処理を担当する。
データ処理部140は、ユーザインタフェース処理部110から取得されたデータをもとにして各種のデータ処理を実行する。データ処理部140は、ユーザインタフェース処理部110とデータ保持部160の間のインタフェースの役割も果たす。
データ保持部160は、あらかじめ用意された各種の設定データや、データ処理部140から受け取ったデータを格納する。
The job analysis support apparatus 100 includes a user interface processing unit 110, a data processing unit 140, and a data holding unit 160.
The user interface processing unit 110 is in charge of processing related to the entire user interface such as input processing from the user and information display for the user.
The data processing unit 140 executes various data processing based on the data acquired from the user interface processing unit 110. The data processing unit 140 also serves as an interface between the user interface processing unit 110 and the data holding unit 160.
The data holding unit 160 stores various setting data prepared in advance and data received from the data processing unit 140.

ユーザインタフェース処理部110:
ユーザインタフェース処理部110は、入力部112と表示部114を含む。
入力部112は、ユーザからの入力操作を受け付ける。入力部112は、ジョブ関係情報取得部116、ジョブ内容情報取得部118、ジョブ構造情報取得部120、データ宣言情報取得部122およびデータ定義文書取得部124を含む。ジョブ関係情報取得部116は、ジョブ関係情報240を取得する。ジョブ内容情報取得部118は、文書情報の一部として「ジョブ内容情報258」を取得する。ジョブ内容情報258は、ジョブとジョブの属性を示すジョブ属性情報とを対応づけた情報である。ジョブ内容情報258については図10に関連しても後述する。ジョブ構造情報取得部120は、第1ジョブ構造情報244と第2ジョブ構造情報246を取得する。データ宣言情報取得部122は、データ宣言情報250を取得する。データ定義文書取得部124は、データ定義文書ファイル252を取得する。入力部112は、このほかにも、ジョブ関係文書242やジョブ構造設計文書248等の各種情報も取得する。
User interface processing unit 110:
The user interface processing unit 110 includes an input unit 112 and a display unit 114.
The input unit 112 receives an input operation from the user. The input unit 112 includes a job relation information acquisition unit 116, a job content information acquisition unit 118, a job structure information acquisition unit 120, a data declaration information acquisition unit 122, and a data definition document acquisition unit 124. The job relationship information acquisition unit 116 acquires job relationship information 240. The job content information acquisition unit 118 acquires “job content information 258” as part of the document information. The job content information 258 is information in which a job is associated with job attribute information indicating job attributes. The job content information 258 will be described later with reference to FIG. The job structure information acquisition unit 120 acquires first job structure information 244 and second job structure information 246. The data declaration information acquisition unit 122 acquires data declaration information 250. The data definition document acquisition unit 124 acquires the data definition document file 252. In addition to this, the input unit 112 also acquires various types of information such as the job-related document 242 and the job structure design document 248.

表示部114は、ユーザに対して各種情報を表示する。
表示部114は、ジョブリスト表示部126、データセットリスト表示部128および要素セットリスト表示部130を含む。ジョブリスト表示部126は、後の図11に示すジョブリスト画面280にてジョブリストを画面表示させる。データセットリスト表示部128は、後の図13に示すデータセットリスト画面330にてデータセットリストを画面表示させる。要素セットリスト表示部130は、後の図15に示す要素セットリスト画面350にて要素セットリストを画面表示させる。
The display unit 114 displays various information to the user.
The display unit 114 includes a job list display unit 126, a data set list display unit 128, and an element set list display unit 130. The job list display unit 126 displays the job list on the job list screen 280 shown in FIG. The data set list display unit 128 displays the data set list on the data set list screen 330 shown in FIG. The element set list display unit 130 displays the element set list on the element set list screen 350 shown in FIG.

データ処理部140:
データ処理部140は、ジョブリスト生成部142、データセット生成部144および要素セット生成部146を含む。ジョブリスト生成部142は、図3に示した現状解析処理過程のうち、「ジョブ直列化(S10)」、「ジョブリスト修正(S12)」を実行する。データセット生成部144は「データセットリスト作成(S14)」、要素セット生成部146は「要素セットリスト作成(S16)」を実行する。
Data processing unit 140:
The data processing unit 140 includes a job list generation unit 142, a data set generation unit 144, and an element set generation unit 146. The job list generation unit 142 executes “job serialization (S10)” and “job list correction (S12)” in the current state analysis process shown in FIG. The data set generation unit 144 executes “data set list creation (S14)”, and the element set generation unit 146 executes “element set list creation (S16)”.

ジョブリスト生成部142は、暫定リスト生成部148、暫定リスト追加部150、暫定リスト結合部152およびジョブリスト更新部154を含む。暫定リスト生成部148、暫定リスト追加部150、暫定リスト結合部152は、「ジョブ直列化(S10)」を実行する。暫定リスト生成部148は、各ジョブの依存関係からジョブリストの元となる「暫定リスト」をメモリ上に生成し、暫定リスト追加部150は、各ジョブをいずれかの暫定リストに追加していく。そして、暫定リスト結合部152は、複数の暫定リストを結合してジョブリストを作成する。ジョブリスト更新部154は、「ジョブリスト修正(S12)」を実行する。   The job list generation unit 142 includes a provisional list generation unit 148, a provisional list addition unit 150, a provisional list combination unit 152, and a job list update unit 154. The temporary list generating unit 148, the temporary list adding unit 150, and the temporary list combining unit 152 execute “job serialization (S10)”. The provisional list generation unit 148 generates a “provisional list” that is the basis of the job list from the dependency relationship of each job, and the provisional list addition unit 150 adds each job to any provisional list. . Then, the provisional list combining unit 152 combines a plurality of provisional lists to create a job list. The job list updating unit 154 executes “job list correction (S12)”.

データ保持部160:
データ保持部160は、ジョブ関係情報240を保持するジョブ関係情報保持部162、ジョブ内容情報を保持するジョブ内容情報保持部164、第1ジョブ構造情報244と第2ジョブ構造情報246を保持するジョブ構造情報保持部168、データ宣言情報250を保持するデータ宣言情報保持部170、データ定義文書ファイル252を保持するデータ定義文書保持部172を含む。データ保持部160は、このほかにもさまざまな現状情報、文書情報も保持する。
Data holding unit 160:
The data holding unit 160 includes a job related information holding unit 162 that holds job related information 240, a job content information holding unit 164 that holds job content information, a job that holds first job structure information 244 and second job structure information 246. A structure information holding unit 168, a data declaration information holding unit 170 that holds data declaration information 250, and a data definition document holding unit 172 that holds a data definition document file 252 are included. The data holding unit 160 also holds various current status information and document information.

以下においては、図3に示した現状解析処理のS10、S12、S14、S16の4つの処理内容と各処理に関わるユーザインタフェースについて順次説明する。
[1.ジョブ直列化]
In the following, the four processing contents S10, S12, S14, and S16 of the current state analysis processing shown in FIG. 3 and the user interface related to each processing will be sequentially described.
[1. Job serialization]

図5は、ジョブの依存関係を示す模式図である。
既述の通り、ジョブの依存関係はジョブ関係情報240において設定される。図5は、ジョブA〜Gの7つのジョブの依存関係を視覚的に示している。以下、「ジョブ1の実行完了」を実行開始条件とするジョブ2のことを、ジョブ1の「後行ジョブ」とよぶ。また、ジョブ1のことをジョブ2の「先行ジョブ」とよぶ。同図の場合、ジョブBやジョブDはジョブAの後行ジョブである。ジョブAはジョブBとジョブDにとって先行ジョブである。ジョブCは、直接的にはジョブBの後行ジョブであり、間接的にはジョブAの後行ジョブである。以下、ジョブCに対するジョブBのように、あるジョブに対する直接的な先行ジョブのことを「狭義の先行ジョブ」とよぶ。また、ジョブCに対するジョブAのように、あるジョブに対する間接的な先行ジョブまで含めていうときには「広義の先行ジョブ」とよぶ。本明細書においては、特に断らない限り、単に「先行ジョブ」というときには「狭義の先行ジョブ」を指す。
FIG. 5 is a schematic diagram showing job dependency.
As described above, the job dependency is set in the job relationship information 240. FIG. 5 visually shows dependency relationships of seven jobs A to G. Hereinafter, job 2 having “execution completion of job 1” as an execution start condition is referred to as “following job” of job 1. Job 1 is also referred to as “preceding job” of job 2. In the case shown in the figure, job B and job D are subsequent jobs of job A. Job A is a preceding job for job B and job D. Job C is a job that follows job B directly, and a job that follows job A indirectly. Hereinafter, a direct preceding job for a certain job, such as job B for job C, is referred to as “narrowly preceding job”. When an indirect preceding job for a certain job is included like job A for job C, it is referred to as a “preceding job in a broad sense”. In the present specification, unless otherwise specified, the term “preceding job” simply means “preceding job in a narrow sense”.

ジョブ管理装置230は、ジョブの依存関係とジョブの実行状況に応じて、各ジョブの実行可否を判定しながら、実行可能なジョブをジョブ実行装置202に次々と実行させる。同図によれば、ジョブAとジョブGには、先行ジョブがない。このため、ジョブAとジョブGはいつでも実行開始可能である。以下、このような先行ジョブを持たないジョブのことを「先頭ジョブ」とよぶ。   The job management apparatus 230 causes the job execution apparatus 202 to execute executable jobs one after another while determining whether each job can be executed according to the job dependency and the job execution status. According to the figure, job A and job G have no preceding job. Therefore, execution of job A and job G can be started at any time. Hereinafter, such a job having no preceding job is referred to as a “first job”.

図6は、図5に示したジョブの依存関係を設定するジョブ関係情報240のデータ構造図である。
ジョブ関係情報240は、ジョブの依存関係だけでなく、ジョブの所属等に関する情報も含むが、ここでは、ジョブの依存関係だけを対象として説明する。対象ジョブ欄254は、図5に示したジョブA〜Gの7つのジョブを示す。先行ジョブ欄256は、対象ジョブ欄254に示す各ジョブの先行ジョブを示す。同図によれば、ジョブAの先行ジョブはないが、ジョブBの先行ジョブはジョブAである。また、ジョブFの先行ジョブはジョブC、E、Gの3つである。ジョブ関係情報240においては、このような形式にてジョブ間の依存関係が定義されている。
FIG. 6 is a data structure diagram of the job relation information 240 for setting the job dependency shown in FIG.
The job relationship information 240 includes not only job dependency relationships but also information related to job affiliation and the like. Here, only job dependency relationships will be described. The target job column 254 shows seven jobs A to G shown in FIG. The preceding job column 256 indicates the preceding job of each job shown in the target job column 254. According to the figure, there is no preceding job of job A, but the preceding job of job B is job A. Further, there are three preceding jobs of job F: jobs C, E, and G. In the job relationship information 240, dependency relationships between jobs are defined in this format.

人間にとって、図6のデータ構造形式よりも図5の模式図の方がジョブの依存関係を把握しやすい。このため、ジョブ関係文書242では、図5に示した形式にて、各ジョブの依存関係を図示することが多い。ただし、図5のような形式にてジョブの依存関係を図示する場合、ジョブの依存関係が頻繁に変更されると図そのものが乱雑となりやすい。
そこで、本実施例における「1.ジョブ直列化」処理は、ジョブの依存関係を反映させた並び順にてジョブA〜Fを一列に並べることを目的とする。
For humans, the schematic diagram of FIG. 5 is easier to grasp the job dependency than the data structure format of FIG. For this reason, the job relationship document 242 often illustrates the dependency relationship of each job in the format shown in FIG. However, when the job dependency is illustrated in a format as shown in FIG. 5, if the job dependency is frequently changed, the diagram itself is likely to be messy.
Therefore, the “1. job serialization” processing in the present embodiment aims to arrange the jobs A to F in a line in the arrangement order reflecting the job dependency.

図7(a)は、ジョブの直列化における暫定リスト生成過程を示す模式図である。
同図斜線部は、先行ジョブが設定されていない領域を示す。まず、暫定リスト生成部148は、ジョブ関係情報240を参照して先頭ジョブを検出する。先頭ジョブは、先行ジョブを1つも設定されていないジョブであり、同図においてはジョブAとジョブGが該当する。暫定リスト生成部148は、暫定リストAと暫定リストBを生成する。より具体的には、暫定リスト生成部148はヒープメモリ上に2つの領域を確保し、それぞれを暫定リストA、暫定リストBに対応づける。暫定リスト生成部148は、ジョブAを暫定リストA、ジョブBを暫定リストBに登録する(S1、S2)。より具体的には、暫定リスト生成部148はヒープメモリ上の暫定リストAに対応する領域に、ジョブAのIDを記録し、暫定リストBに対応する領域に、ジョブBのIDを記録する。
FIG. 7A is a schematic diagram showing a provisional list generation process in job serialization.
The hatched portion in the figure indicates an area where no preceding job is set. First, the provisional list generation unit 148 detects the head job with reference to the job relation information 240. The first job is a job for which no preceding job is set, and job A and job G correspond to the first job. The temporary list generation unit 148 generates a temporary list A and a temporary list B. More specifically, the provisional list generation unit 148 secures two areas on the heap memory and associates them with the provisional list A and provisional list B, respectively. The provisional list generation unit 148 registers job A in the provisional list A and job B in the provisional list B (S1, S2). More specifically, the provisional list generation unit 148 records the ID of job A in the area corresponding to the provisional list A on the heap memory, and records the ID of job B in the area corresponding to the provisional list B.

図7(b)は、ジョブの直列化における追加登録処理のうち第1過程を示す模式図である。
同図斜線部は、先行ジョブが設定されていない領域と既に暫定リストに登録された先行ジョブに該当する領域を示す。暫定リスト追加部150は、ジョブ関係情報240や各暫定リストの登録内容を参照して、全ての先行ジョブがいずれかの暫定リストに登録され、かつ、自らはいずれの暫定リストにも登録されていないジョブを候補ジョブとして検出する。同図においては、ジョブBとジョブDが該当する。暫定リスト追加部150は、このような候補ジョブをその先行ジョブと同じ暫定リストに登録する。同図の場合、暫定リスト追加部150は、候補ジョブDをその先行ジョブAと同じ暫定リストAに登録する(S3)。このとき、ジョブDは、ジョブAの直後に登録される。暫定リストAにはジョブA、Dが並ぶ。次に、暫定リスト追加部150は、候補ジョブBを、同じくその先行ジョブAと同じ暫定リストAに登録する(S4)。このとき、ジョブBは、ジョブAの直後に登録される。結果として、暫定リストAにはジョブA、B、Dが並ぶ。
なお、先行ジョブが複数あるときには、任意の先行ジョブを選択し、選択した先行ジョブの直後に候補ジョブを登録すればよい。ここでは、ジョブDを暫定リストAに登録してからジョブBを暫定リストAに登録したが、登録順序は逆でもよい。
候補ジョブを特定してから、いずれかの暫定リストに登録する処理のことを「追加登録処理」とよぶ。追加登録処理は候補ジョブが無くなるまで繰り返される。
FIG. 7B is a schematic diagram illustrating a first process in the additional registration process in the serialization of jobs.
The hatched portion in the figure indicates an area where no preceding job is set and an area corresponding to a preceding job already registered in the provisional list. The provisional list adding unit 150 refers to the job-related information 240 and the registered contents of each provisional list, and all the preceding jobs are registered in any provisional list and are registered in any provisional list. Detect missing jobs as candidate jobs. In the figure, job B and job D correspond. The provisional list adding unit 150 registers such candidate jobs in the same provisional list as the preceding job. In the case of FIG. 5, the provisional list adding unit 150 registers the candidate job D in the same provisional list A as the preceding job A (S3). At this time, job D is registered immediately after job A. In the temporary list A, jobs A and D are arranged. Next, the provisional list adding unit 150 registers the candidate job B in the same provisional list A as the preceding job A (S4). At this time, job B is registered immediately after job A. As a result, jobs A, B, and D are arranged in the temporary list A.
When there are a plurality of preceding jobs, an arbitrary preceding job may be selected and a candidate job may be registered immediately after the selected preceding job. Here, job D is registered in provisional list A and then job B is registered in provisional list A, but the registration order may be reversed.
The process of registering a candidate job after specifying a candidate job is called “additional registration process”. The additional registration process is repeated until there are no candidate jobs.

図8(a)は、ジョブの直列化における追加登録処理のうち第2過程を示す模式図である。
暫定リスト追加部150は、次の候補ジョブを検出する。同図においては、ジョブCとジョブEが検出される。暫定リスト追加部150は、候補ジョブEを、その先行ジョブDと同じ暫定リストAに登録する(S5)。このとき、候補ジョブEは、先行ジョブDの直後に登録される。次に、暫定リスト追加部150は、候補ジョブCを、同じくその先行ジョブBと同じ暫定リストAに登録する(S6)。このとき、候補ジョブCは、先行ジョブBの直後に登録される。
結果として、暫定リストAには、ジョブA、B、C、D、Eの順に登録される。
FIG. 8A is a schematic diagram showing a second process in the additional registration process in the serialization of jobs.
The provisional list adding unit 150 detects the next candidate job. In the figure, job C and job E are detected. The provisional list adding unit 150 registers the candidate job E in the same provisional list A as the preceding job D (S5). At this time, the candidate job E is registered immediately after the preceding job D. Next, the temporary list adding unit 150 registers the candidate job C in the same temporary list A as that of the preceding job B (S6). At this time, candidate job C is registered immediately after preceding job B.
As a result, jobs A, B, C, D, and E are registered in the provisional list A in this order.

図8(b)は、ジョブの直列化における追加登録処理のうち第3過程を示す模式図である。
暫定リスト追加部150は、次の候補ジョブを検出する。同図においては、最後の候補ジョブとしてジョブFが検出される。暫定リスト追加部150は、候補ジョブFを、その先行ジョブGと同じ暫定リストBに登録する(S7)。このとき、候補ジョブFは、先行ジョブGの直後に登録される。なお、ジョブGだけでなくジョブCやジョブEもジョブFの先行ジョブであるため、ジョブFは暫定リストAに登録されてもよい。
候補ジョブが無くなったため、追加登録処理は終了する。
FIG. 8B is a schematic diagram showing a third process in the additional registration process in the serialization of jobs.
The provisional list adding unit 150 detects the next candidate job. In the figure, job F is detected as the last candidate job. The temporary list adding unit 150 registers the candidate job F in the same temporary list B as that of the preceding job G (S7). At this time, the candidate job F is registered immediately after the preceding job G. Since job C and job E as well as job G are the preceding jobs of job F, job F may be registered in provisional list A.
Since there are no candidate jobs, the additional registration process ends.

図9(a)は、ジョブの直列化における暫定リスト結合過程を示す模式図である。
暫定リスト結合部152は、暫定リストpのジョブ1が、別の暫定リストqにおけるジョブ2の先行ジョブである場合、暫定リストpの後ろに暫定リストqを結合する。同図の場合、暫定リストAのジョブCやジョブEは、別の暫定リストBにおけるジョブFの先行ジョブとなっている。暫定リスト結合部152は、ジョブ関係情報240や各暫定リストを参照して、ジョブFのように別の暫定リストに先行ジョブを有するようなジョブを検出する。同図の場合、暫定リスト結合部152は、暫定リストAの後ろに暫定リストBを結合する。
FIG. 9A is a schematic diagram illustrating a provisional list combining process in job serialization.
The provisional list combining unit 152 combines the provisional list q after the provisional list p when the job 1 of the provisional list p is a preceding job of the job 2 in another provisional list q. In the case of the figure, the job C and job E in the provisional list A are the preceding jobs of the job F in another provisional list B. The provisional list combining unit 152 refers to the job relation information 240 and each provisional list, and detects a job having a preceding job in another provisional list such as the job F. In the case of the figure, the provisional list combining unit 152 combines the provisional list B after the provisional list A.

図9(b)は、ジョブの直列化完了時のジョブリストを示す模式図である。
暫定リスト結合部152は、複数の暫定リストを一つに結合して「ジョブリスト」を生成する。同図においては、ジョブは、A、B、C、D、E、G、Fの順に一列に並べられる。図5を再び参照すると、ジョブA、B、Cという流れと、D、Eという流れ、G、Fという流れの3つの流れがあることがわかる。したがって、図7(a)から図9(b)にかけて説明したアルゴリズムによれば、複数のジョブをその依存関係を反映した並び順にて一列に並べることができる。
FIG. 9B is a schematic diagram illustrating a job list when job serialization is completed.
The temporary list combining unit 152 combines a plurality of temporary lists into one to generate a “job list”. In the figure, jobs are arranged in a line in the order of A, B, C, D, E, G, and F. Referring to FIG. 5 again, it can be seen that there are three flows: a job A, B, and C, a flow D and E, and a flow G and F. Therefore, according to the algorithm described with reference to FIGS. 7A to 9B, a plurality of jobs can be arranged in a line in the arrangement order reflecting the dependency.

別例として、仮に、図7(b)において、候補ジョブBを暫定リストAに登録した後、候補ジョブDを暫定リストAに登録したとする。この場合、暫定リストA、Bの登録内容は、
暫定リストA:A、D、B
暫定リストB:G
となる。
As another example, assume that candidate job D is registered in provisional list A after candidate job B is registered in provisional list A in FIG. In this case, the registration contents of the provisional lists A and B are as follows:
Provisional list A: A, D, B
Provisional list B: G
It becomes.

次に、図8(a)において、候補ジョブE、候補ジョブCの順に暫定リストAに登録したとする。この場合、暫定リストA、Bの登録内容は、
暫定リストA:A、D、E、B、C
暫定リストB:G
となる。
Next, in FIG. 8A, it is assumed that the candidate job E and the candidate job C are registered in the temporary list A in this order. In this case, the registration contents of the provisional lists A and B are as follows:
Provisional list A: A, D, E, B, C
Provisional list B: G
It becomes.

次に、図8(b)において、候補ジョブFの先行ジョブをジョブEとし、候補ジョブFを暫定リストAに登録したとする。この場合、暫定リストA、Bの登録内容は、
暫定リストA:A、D、E、F、B、C
暫定リストB:G
となる。
Next, in FIG. 8B, it is assumed that the preceding job of candidate job F is job E and candidate job F is registered in provisional list A. In this case, the registration contents of the provisional lists A and B are as follows:
Provisional list A: A, D, E, F, B, C
Provisional list B: G
It becomes.

ここで、ジョブGは、ジョブFの先行ジョブなので、暫定リストBに対して暫定リストAを結合すると、ジョブリストとして、G、A、D、E、F、B、Cの順にジョブが並ぶことになる。図5を参照すると、ジョブGという流れと、A、D、E、Fという流れ、B、Cという流れの3つの流れがあることがわかる。したがって、図7(a)から図9(b)にかけて説明したアルゴリズムにしたがった上記別例においても、複数のジョブをその依存関係を反映した並び順にて一列に並べることができる。
ここでは、説明を簡単にするためにジョブA〜Gの7つのジョブを例として説明したが、ジョブの数が更に多いときでも、依存関係が更に複雑などきにも、先頭ジョブの数だけ暫定リストを作ることで大きな流れを設定し、各候補ジョブを狭義の先行ジョブの直後に連結していく上記アルゴリズムは有効に機能する。
[2.ジョブリスト修正]
Here, since job G is a preceding job of job F, when provisional list A is combined with provisional list B, jobs are arranged in the order of G, A, D, E, F, B, and C as the job list. become. Referring to FIG. 5, it can be seen that there are three flows: a job G, a flow A, D, E, and F, and a flow B and C. Therefore, even in the above-described another example according to the algorithm described with reference to FIGS. 7A to 9B, a plurality of jobs can be arranged in a line in the arrangement order reflecting the dependency.
Here, in order to simplify the explanation, seven jobs A to G have been described as an example. However, even when the number of jobs is larger, even if the dependency relationship is more complicated, the number of temporary jobs is provisional. The above algorithm that sets a large flow by creating a list and connects each candidate job immediately after a narrowly preceding job works effectively.
[2. Job list modification]

図10は、ジョブセットの生成過程を示す模式図である。
ジョブリスト更新部154は、次に、ジョブとジョブの属性情報を対応づけたジョブセットをジョブごとに生成する。ジョブの属性情報の一部はジョブ関係情報240により定義される。フレーム欄260はフレームを示す。ネットID欄262はネットのIDを示す。ネット名欄264はネットの名称を示す。ジョブID欄266はジョブのIDを示す。このほかにも、ジョブ関係情報240には、図6に示したように各ジョブの先行ジョブも定義されている。ここでは、ジョブの依存関係以外のジョブ属性情報を対象として説明する。
FIG. 10 is a schematic diagram illustrating a job set generation process.
Next, the job list update unit 154 generates a job set in which the job and the job attribute information are associated with each job. A part of job attribute information is defined by job relation information 240. A frame column 260 indicates a frame. The net ID column 262 shows the net ID. The net name column 264 shows the name of the net. A job ID column 266 shows a job ID. In addition to this, the job relation information 240 also defines a preceding job for each job as shown in FIG. Here, job attribute information other than job dependency will be described.

ジョブ内容情報258は、文書情報の一部であって、各ジョブの処理内容を定義した設計文書である。ジョブ内容情報258は、ジョブ関係文書242やジョブ構造設計文書248の一部として提供されてもよい。ジョブID欄268はジョブのIDを示す。ジョブ名欄270はジョブの名称を示す。ジョブ内容欄272はジョブの処理内容を示す。ジョブリスト更新部154は、ジョブ関係情報240のジョブID欄266とジョブ内容情報258のジョブID欄268に登録されているジョブのIDをキーとして、ジョブごとにジョブセット274を生成する。同図に示すジョブセット274は、ジョブID=Bのジョブについて、フレーム、ネットのID、ネットの名称、ジョブのID、ジョブの名称、ジョブの処理内容といった各種ジョブ属性情報を含む。これら以外にも、先行ジョブ等の各種情報が含まれてもよい。
このような処理方法により、ジョブとさまざまなジョブ属性情報を対応づけたジョブセットがジョブごとに生成される。
The job content information 258 is a part of the document information and is a design document that defines the processing content of each job. The job content information 258 may be provided as part of the job related document 242 or the job structure design document 248. The job ID column 268 shows the job ID. The job name column 270 indicates the name of the job. The job content column 272 shows job processing content. The job list update unit 154 generates a job set 274 for each job, using the job IDs registered in the job ID field 266 of the job relation information 240 and the job ID field 268 of the job content information 258 as keys. The job set 274 shown in the figure includes various job attribute information such as a frame, a net ID, a net name, a job ID, a job name, and job processing contents for a job with job ID = B. In addition to these, various types of information such as preceding jobs may be included.
With such a processing method, a job set in which a job is associated with various job attribute information is generated for each job.

図11は、ジョブリスト画面280の画面図である。
ジョブリスト更新部154は、各ジョブにジョブ属性情報を追加し、「1.ジョブ直列化」処理により生成された「ジョブをリスト要素とするジョブリスト」から、「ジョブセットをリスト要素とするジョブリスト」を生成する。いいかえれば、「1.ジョブ直列化」により決定された並び順にてジョブセットを並べたジョブリストを生成する。ジョブリスト表示部126は、ジョブセットをリスト要素とするジョブリストをジョブリスト画面280にて画面表示させる。
FIG. 11 is a screen diagram of the job list screen 280.
The job list update unit 154 adds job attribute information to each job, and from the “job list with jobs as list elements” generated by the “1. job serialization” process, “jobs with job sets as list elements” List ". In other words, a job list in which job sets are arranged in the arrangement order determined by “1. Job serialization” is generated. The job list display unit 126 displays a job list having a job set as a list element on the job list screen 280.

ジョブリスト画面280により、ユーザは、業務システム220に含まれる膨大なジョブのジョブ属性情報をまとめて閲覧できる。各ジョブセットは、ジョブの依存関係を反映したかたちで並べられるため、リスト形式であっても、ユーザはジョブの依存関係を理解しやすくなる。   The job list screen 280 allows the user to browse the job attribute information of a huge number of jobs included in the business system 220 collectively. Since each job set is arranged in a form reflecting the job dependency, the user can easily understand the job dependency even in the list format.

本実施例におけるジョブの名称は、あらかじめ定められた命名規則にしたがって設定される。ジョブは、「1.入力の検出」、「2.外部記憶装置210からのデータの受信」、「3.受信されたデータの処理」、「4.データの外部記憶装置210への記録」のようにその処理内容に応じていくつかの種別に分類される。そして、「1.入力の検出」に分類されるジョブの名称には、サフィックス(接尾辞)として「ST」が設定される。同図においては、ジョブAとジョブGが該当する。   The name of the job in this embodiment is set according to a predetermined naming rule. The jobs are “1. Input detection”, “2. Reception of data from external storage device 210”, “3. Processing of received data”, “4. Recording of data to external storage device 210”. As described above, it is classified into several types according to the processing contents. Then, “ST” is set as the suffix (suffix) for the job name classified as “1. Input detection”. In the figure, job A and job G correspond.

ジョブリスト表示部126は、サフィックス「ST」が設定されているジョブに関するジョブセットを、他のジョブに関するジョブセットとは視覚的に識別可能な態様にて表示させる。たとえば、ジョブリスト画面280において、サフィックス「ST」が設定されている、すなわち、「1.入力の検出」に関わるジョブのジョブセットを、他のジョブセットとは異なる文字色、背景色、フォント、文字サイズにて表示させてもよい。同様に、「2.外部記憶装置210からのデータの受信」に分類されるジョブの名称には、サフィックス(接尾辞)として「S」が設定される。同図においては、ジョブBとジョブDが該当する。ジョブリスト表示部126は、サフィックス「S」が設定されているジョブに関するジョブセットを、他のジョブに関するジョブセットとは視覚的に識別可能な態様にて表示させる。たとえば、ジョブリスト画面280において、サフィックス「S」が設定されている、すなわち、「2.外部記憶装置210からのデータの受信」に関わるジョブのジョブセットだけを青色表示してもよい。
このような態様によれば、各ジョブの種別や関係をユーザにわかりやすく示すことができる。
The job list display unit 126 displays a job set relating to a job for which the suffix “ST” is set in a manner that can be visually distinguished from job sets relating to other jobs. For example, in the job list screen 280, the suffix “ST” is set, that is, a job set of a job related to “1. Input detection” is set to a character color, background color, font, It may be displayed in character size. Similarly, “S” is set as a suffix (suffix) for job names classified as “2. Receiving data from external storage device 210”. In the figure, job B and job D correspond. The job list display unit 126 displays a job set related to a job for which the suffix “S” is set in a form that can be visually distinguished from job sets related to other jobs. For example, in the job list screen 280, only the job set of the job for which the suffix “S” is set, that is, “2. Receiving data from the external storage device 210” may be displayed in blue.
According to such an aspect, the type and relationship of each job can be easily shown to the user.

ジョブリストに示されるジョブの処理内容は、文書情報であるジョブ内容情報258に由来する。ユーザは、ジョブリスト画面280を参照することにより、ジョブ内容情報258の記載不備部分を効率的に割り出すことができる。結果として、ジョブリストが文書情報更新の必要性をユーザに認識させることになる。   The processing content of the job shown in the job list is derived from the job content information 258 that is document information. By referring to the job list screen 280, the user can efficiently determine the portion of the job content information 258 that is not described. As a result, the job list makes the user recognize the necessity of updating the document information.

ユーザが、いずれかのジョブセットをマウス等の入力デバイスにて選択すると、選択されたジョブに関わるデータセットのリストが画面表示される。データセットリストの画面表示については図13に関連して説明する。
[3.データセットリスト作成]
When the user selects any job set with an input device such as a mouse, a list of data sets related to the selected job is displayed on the screen. The screen display of the data set list will be described with reference to FIG.
[3. Create dataset list]

図12は、データセットの作成過程を示す模式図である。
データセット生成部144は、次に、ジョブ、プログラム、データファイルを対応づけたデータセットを生成する。データセット生成部144は、先ほど生成したジョブリスト284と、JCLで記述された第1ジョブ構造情報244、アサイン情報298から、データファイルごとにデータセット282を生成する。ジョブリスト284において、フレーム欄286はフレーム、ネットID欄288はネットのID、ネット名欄290はネットの名称、ジョブID欄292はジョブのID、ジョブ名欄294はジョブの名称、ジョブ内容欄296はジョブの処理内容を示す。
FIG. 12 is a schematic diagram showing a data set creation process.
Next, the data set generation unit 144 generates a data set in which jobs, programs, and data files are associated with each other. The data set generation unit 144 generates a data set 282 for each data file from the job list 284 generated earlier, the first job structure information 244 described in JCL, and the assignment information 298. In the job list 284, the frame column 286 is a frame, the net ID column 288 is a net ID, the net name column 290 is a net name, the job ID column 292 is a job ID, the job name column 294 is a job name, and a job content column. Reference numeral 296 denotes job processing contents.

アサイン情報298は、現状情報の一部であって、データファイルの別名(以下、「アサイン(assign)」とよぶ)とレイアウトファイルを対応づける。アサイン欄300はアサインを示す。宣言ファイル欄302は、アサインにて特定されるデータファイルのデータ要素を宣言するレイアウトファイル、すなわち、データ宣言情報250の名前を示す。アサイン情報298は、COBOLにて既述された第2ジョブ構造情報246から抽出されるが、文書情報の一部として提供されてもよい。   The assignment information 298 is a part of the current status information and associates a data file alias (hereinafter referred to as “assign”) with a layout file. The assignment column 300 shows the assignment. The declaration file column 302 indicates the name of the layout file that declares the data elements of the data file specified by the assignment, that is, the data declaration information 250. The assignment information 298 is extracted from the second job structure information 246 described in COBOL, but may be provided as part of the document information.

第1ジョブ構造情報244は、JCLにより既述され、ジョブ、プログラム、データファイルの関係を定義する。同図に示す第1ジョブ構造情報244は、ジョブBに関する。プログラム名領域304には、ジョブBを構成するプログラムの名称が定義される。I/O領域306は、このプログラムがデータファイルを入力元としてアクセスするか(I)、出力先としてアクセスするか(O)といった入出力の別を示す。アサイン領域308は、アクセス対象となるデータファイルのアサインを示す。パス領域310は、アクセス対象となるデータファイルのパスを示す。   The first job structure information 244 is already described by JCL, and defines the relationship between jobs, programs, and data files. The first job structure information 244 shown in FIG. In the program name area 304, names of programs constituting the job B are defined. An I / O area 306 indicates whether the program accesses a data file as an input source (I) or whether it accesses as an output destination (O). An assignment area 308 indicates the assignment of a data file to be accessed. A path area 310 indicates a path of a data file to be accessed.

データセット生成部144は、ジョブBの第1ジョブ構造情報244と、ジョブリスト284におけるジョブBのジョブセットを参照し、第1ジョブ構造情報244に現れる各データファイルについてデータセットを生成する。同図のデータセット282は、ジョブB、プログラム「SEMP350」のアクセス対象となるアサイン「SYSHDD」のデータファイルに関する。データセット282において、アサイン欄314にはアサイン領域308のアサインがそのまま登録される。データセット名欄312には、パス領域310に示されされるパス付きのデータファイル名が登録される。プログラム欄318は、プログラム名領域304に示されるプログラムの名前「SEMP350」が登録される。I/O欄316には、データファイル「SYSHDD」へのプログラム「SEMP350」のアクセス種別である「I(読み出し)」が登録される。ジョブID欄322とジョブ名欄320は、プログラム「SEMP350」が属するジョブのIDと名称を示す。これらの情報は、ジョブのIDと名称はジョブリスト284から取得される。データセット生成部144は、ジョブのIDや名称をキーとして、ジョブリスト284と第1ジョブ構造情報244から該当情報を抽出してデータセット282を生成する。   The data set generation unit 144 refers to the first job structure information 244 of job B and the job set of job B in the job list 284, and generates a data set for each data file appearing in the first job structure information 244. The data set 282 in FIG. 6 relates to the data file of the assignment “SYSHDD” to be accessed by the job B and the program “SEMP350”. In the data set 282, the assignment of the assignment area 308 is registered in the assignment field 314 as it is. In the data set name column 312, the data file name with a path shown in the path area 310 is registered. In the program column 318, the name “SEMP350” of the program indicated in the program name area 304 is registered. In the I / O column 316, “I (read)” that is the access type of the program “SEMP350” to the data file “SYSHDD” is registered. The job ID column 322 and the job name column 320 indicate the ID and name of the job to which the program “SEMP350” belongs. For these pieces of information, the job ID and name are acquired from the job list 284. The data set generation unit 144 extracts the corresponding information from the job list 284 and the first job structure information 244 using the job ID and name as a key, and generates a data set 282.

更に、データセット生成部144は、アサイン欄314のアサインをキーとして、宣言ファイル欄302に示されるレイアウトファイル名を適切なデータセット282の宣言ファイル欄324に登録する。なお、このほかにもデータファイルの登録内容を説明するため情報をデータセットの一部として、文書情報から抽出してもよい。   Further, the data set generation unit 144 registers the layout file name indicated in the declaration file field 302 in the declaration file field 324 of the appropriate data set 282 using the assignment in the assignment field 314 as a key. In addition, information may be extracted from the document information as a part of the data set to explain the registered contents of the data file.

図13は、データセットリスト画面330の画面図である。
図11のジョブリスト画面280において、ユーザがジョブBのジョブセットを選択すると、図13に示すようにジョブBに関わるデータセットがリスト表示される。データセットリスト表示部128は、ジョブBがジョブID欄322に登録されているデータセットを検出し、該当データセットを並べたデータセットリストをデータセットリスト画面330にて表示させる。
FIG. 13 is a screen diagram of the data set list screen 330.
When the user selects a job set for job B on the job list screen 280 in FIG. 11, a list of data sets related to job B is displayed as shown in FIG. The data set list display unit 128 detects a data set in which the job B is registered in the job ID column 322 and displays a data set list in which the corresponding data sets are arranged on the data set list screen 330.

同図によれば、ジョブBは「SEMP360」という名前のプログラムを含み、このプログラムは「SYS021」というアサインにて指定されるデータファイルからデータを読み出していることがわかる。ただし、データファイル「SYS021」のデータセット名には「&dummy」と指定されている。これは、データファイル「SYS021」が、既に無効であることを示す。プログラム「SEMP360」がアクセス対象とするデータファイルの全てに「&dummy」が指定されていれば、プログラム「SEMP360」は、無効なプログラム(以下、「ダミープログラム」とよぶ)である。この場合、プログラム「SEMP360」をジョブ管理装置230等のディスク上から削除できる。また、ジョブBがアクセス対象とするデータファイルの全てに「&dummy」が指定されていれば、ジョブBは、無効なジョブ(以下、「ダミージョブ」とよぶ)である。この場合、ジョブBそのものをディスク上から削除できる。   According to the figure, it can be seen that job B includes a program named “SEMP360”, and this program reads data from the data file designated by the assignment “SYS021”. However, “& dummy” is specified as the data set name of the data file “SYS021”. This indicates that the data file “SYS021” is already invalid. If “& dummy” is specified in all the data files to be accessed by the program “SEMP360”, the program “SEMP360” is an invalid program (hereinafter referred to as “dummy program”). In this case, the program “SEMP360” can be deleted from the disk such as the job management apparatus 230. If “& dummy” is specified for all the data files to be accessed by job B, job B is an invalid job (hereinafter referred to as “dummy job”). In this case, the job B itself can be deleted from the disk.

データセットリスト画面330により、ダミープログラムやダミージョブを、データファイルとの関係に基づいて効率的に検出できる。データセット生成部144は、無効なデータファイル、ダミープログラム、ダミージョブを上記アルゴリズムにて自動的に検出し、必要であれば自動的に削除してもよい。   With the data set list screen 330, dummy programs and dummy jobs can be efficiently detected based on the relationship with the data file. The data set generation unit 144 may automatically detect invalid data files, dummy programs, and dummy jobs using the above algorithm, and may automatically delete them if necessary.

ユーザが、いずれかのデータセットをマウス等の入力デバイスにて選択すると、選択されたデータセットに関係するデータ要素について、要素セットのリストが画面表示される。要素セットリストの画面表示については図15に関連して説明する。
[4.要素セットリストの作成]
When the user selects any data set with an input device such as a mouse, a list of element sets is displayed on the screen for the data elements related to the selected data set. The screen display of the element set list will be described with reference to FIG.
[4. Create Element Set List]

図14は、要素セットの作成過程を示す模式図である。
要素セット生成部146は、次に、データ宣言情報250とデータ定義文書ファイル252を参照し、データ要素ごとに名称、意味、データ型を対応づけた要素セットを生成する。
FIG. 14 is a schematic diagram illustrating a process of creating an element set.
Next, the element set generation unit 146 refers to the data declaration information 250 and the data definition document file 252 and generates an element set in which the name, meaning, and data type are associated with each data element.

データ宣言情報250は、データファイル「SYSHDD」に対応づけられるレイアウトファイルであり、COBOLで記述される。データ宣言情報250を含むレイアウトファイルのファイル名は、「CBL1」である。データファイル「SYSHDD」とレイアウトファイル「CBL1」の対応は、第2ジョブ構造情報246、特に、第2ジョブ構造情報246に由来するアサイン情報298により示される。データ宣言情報250は、データファイル「SYSHDD」に含まれるさまざまなデータ要素(変数等)を宣言するためのファイルである。データ名宣言領域332はデータ要素の名称「HOJIN-CD」、データ型宣言領域334はデータ要素のデータ型(X(2))を示す。   The data declaration information 250 is a layout file associated with the data file “SYSHDD” and is described in COBOL. The file name of the layout file including the data declaration information 250 is “CBL1”. The correspondence between the data file “SYSHDD” and the layout file “CBL1” is indicated by the second job structure information 246, particularly, assignment information 298 derived from the second job structure information 246. The data declaration information 250 is a file for declaring various data elements (variables and the like) included in the data file “SYSHDD”. The data name declaration area 332 indicates the name “HOJIN-CD” of the data element, and the data type declaration area 334 indicates the data type (X (2)) of the data element.

データ定義文書ファイル252は、レイアウトファイル「CBL1」において宣言される各データ要素の意味とデータ型を説明するための設計文書である。データ意味定義領域336はデータ要素の意味、データ型定義領域338はデータ型を示す。   The data definition document file 252 is a design document for explaining the meaning and data type of each data element declared in the layout file “CBL1”. The data meaning definition area 336 indicates the meaning of the data element, and the data type definition area 338 indicates the data type.

要素セット生成部146は、データファイル「SYSHDD」の各データ要素を宣言するデータ宣言情報250(現状情報)と、データファイル「SYSHDD」の各データ要素を説明するデータ宣言情報250(文書情報)を選択し、データ要素ごとに要素セット340を生成する。   The element set generation unit 146 receives data declaration information 250 (current information) for declaring each data element of the data file “SYSHDD” and data declaration information 250 (document information) for explaining each data element of the data file “SYSHDD”. Select and generate an element set 340 for each data element.

要素セット生成部146は、データ宣言情報250における各データ要素の宣言順と、データ定義文書ファイル252における各データ要素の定義順にしたがって、要素セットを仮生成する。たとえば、データ宣言情報250で最初に宣言されるデータ要素「HOJIN-CD」と、データ定義文書ファイル252で最初に定義されるデータ要素「法人」を同じデータ要素であると仮定して、要素セット340を生成する。ただし、要素セット生成部146は、データ型宣言領域334にて定義されるデータ型とデータ型定義領域338にて定義されるデータ型が一致することを確認し、一致しなければ、同じ要素セット340とはしない。   The element set generation unit 146 temporarily generates an element set according to the declaration order of each data element in the data declaration information 250 and the definition order of each data element in the data definition document file 252. For example, assuming that the data element “HOJIN-CD” first declared in the data declaration information 250 and the data element “corporation” first defined in the data definition document file 252 are the same data element, the element set 340 is generated. However, the element set generation unit 146 confirms that the data type defined in the data type declaration area 334 and the data type defined in the data type definition area 338 match. Not 340.

通常、データ宣言情報250におけるデータ要素の宣言順と、データ定義文書ファイル252におけるデータ要素の定義順は一致することが多い。一般的傾向として、データ宣言情報250のデータ要素の宣言順と同じ順序にてデータ要素をデータ定義文書ファイル252に定義することが多いためである。要素セット生成部146が要素セットを生成した後も、ユーザが各要素セットの内容を確認し、手動にてこれらの要素セットの内容を修正できることが望ましい。   In general, the declaration order of data elements in the data declaration information 250 and the definition order of data elements in the data definition document file 252 often coincide. This is because, as a general tendency, data elements are often defined in the data definition document file 252 in the same order as the declaration order of the data elements of the data declaration information 250. Even after the element set generation unit 146 generates element sets, it is desirable that the user can check the contents of each element set and manually correct the contents of these element sets.

図15は、要素セットリスト画面350の画面図である。
図13のデータセットリスト画面330において、ユーザがデータファイル「SYSHDD」のデータセットを選択すると、図15に示すようにデータファイル「SYSHDD」に関わる要素セットがリスト表示される。要素セットリスト表示部130は、データファイル「SYSHDD」についての要素セットを検出し、該当要素セットを並べた要素セットリストを要素セットリスト画面350にて表示させる。
FIG. 15 is a screen diagram of the element set list screen 350.
When the user selects a data set of the data file “SYSHDD” on the data set list screen 330 in FIG. 13, an element set related to the data file “SYSHDD” is displayed in a list as shown in FIG. 15. The element set list display unit 130 detects an element set for the data file “SYSHDD” and displays an element set list in which the corresponding element sets are arranged on the element set list screen 350.

以上、ジョブ解析支援装置100を実施例に基づいて説明した。
一般的には、現状情報と文書情報が乖離してしまうと、業務システム220がブラックボックス化しやすくなる。従来、コーディング・ルールや設計文書の形式の厳格化などにより、現状情報と文書情報の両面から、業務システム220のブラックボックス化を防ぐための努力がなされている。しかし、このような対策は属人的スキルに依存する部分が大きい。
The job analysis support apparatus 100 has been described based on the embodiments.
In general, if the current status information and the document information are different from each other, the business system 220 is likely to become a black box. Conventionally, efforts have been made to prevent the business system 220 from becoming a black box in terms of both current information and document information due to stricter coding rules and design document formats. However, such measures largely depend on personal skills.

ジョブ解析支援装置100は、業務システム220のありのままを示す現状情報に基づきつつ、必要に応じて既存の文書情報を参照しながら、A.ジョブ関係、B.ジョブ構造、C.データ構造という3つの側面をジョブリスト画面280、データセットリスト画面330、要素セットリスト画面350の形態にて、リスト形式にて示す。リスト形式であるため、既存の表計算ソフトウェアによる処理に馴染みやすい。したがって、これらの各種リストから、更に、視覚的にわかりやすい形態にて業務システム220の全容を示しやすくなる。   While the job analysis support apparatus 100 is based on the current status information indicating the business system 220 as it is, the job analysis support apparatus 100 refers to the existing document information as necessary. Job-related, B. Job structure, C.I. Three aspects of the data structure are shown in list form in the form of a job list screen 280, a data set list screen 330, and an element set list screen 350. Because it is a list format, it is easy to become familiar with processing by existing spreadsheet software. Therefore, it becomes easier to show the entire contents of the business system 220 from these various lists in a visually comprehensible form.

ジョブ解析支援装置100は、複雑な依存関係を有するジョブを一列に並べる。[1.ジョブの直列化]に関連して説明したアルゴリズムによれば、ジョブの依存関係を反映させた並び順にてジョブを並べることができる。リスト形式であっても、ユーザはある程度ジョブの依存関係を読み取りやすくなる。   The job analysis support apparatus 100 arranges jobs having complicated dependency relationships in a line. [1. According to the algorithm described in relation to [Serialize Job], it is possible to arrange the jobs in the arrangement order reflecting the job dependency. Even in the list format, the user can easily read the job dependency to some extent.

その上で、ジョブ関係情報240とジョブ内容情報258からジョブセットを生成する。ジョブセットリストによれば、ジョブと所属、名称、処理内容等の各種ジョブ属性情報をジョブリスト画面280にてまとめて示すことができる。ジョブの種別に応じてジョブセットの表示態様を変えることにより、ユーザは各ジョブの種別を直感的に理解しやすくなる。   After that, a job set is generated from the job relation information 240 and the job content information 258. According to the job set list, various job attribute information such as job, affiliation, name, and processing content can be collectively displayed on the job list screen 280. By changing the display mode of the job set according to the type of job, the user can easily understand the type of each job intuitively.

また、ジョブリスト画面280にてジョブが選択されると、選択されたジョブに関わるデータファイルの情報がリスト表示される。データファイルリストによれば、ユーザは、ジョブとプログラム、データファイルの関係をまとめて確認できる。
2007年現在においても、多くの業務システムにおいて、20年以上も昔のCOBOLベースのジョブが稼働している。その一方、保守作業の結果、既に役割を終えたジョブ、いわゆる「ダミージョブ」も多い。本来、ダミージョブはディスクから除去すべきである。しかし、ダミージョブに見えるジョブが実際はダミージョブではない可能性を排除できない場合、除去せずに残しておくことがある。ダミージョブの過度の増加は、いわゆるTCO(Total Cost of Ownership)の悪化につながるため好ましいことではない。ジョブ解析支援装置100によれば、データファイルリストにより、ダミープログラムやダミージョブを効率的に検出しやすくなる。
When a job is selected on the job list screen 280, data file information related to the selected job is displayed in a list. According to the data file list, the user can collectively confirm the relationship between the job, the program, and the data file.
As of 2007, COBOL-based jobs that are more than 20 years old are still running in many business systems. On the other hand, there are many jobs that have already finished their roles as a result of maintenance work, so-called “dummy jobs”. Originally, dummy jobs should be removed from the disk. However, if the possibility that a job that looks like a dummy job is not actually a dummy job cannot be excluded, it may be left without being removed. An excessive increase in dummy jobs is not preferable because it leads to deterioration of so-called TCO (Total Cost of Ownership). According to the job analysis support apparatus 100, it becomes easy to efficiently detect a dummy program or a dummy job based on the data file list.

更に、データセットリスト画面330にてデータファイルが選択されると、選択されたデータファイルに関わるデータ要素の情報がリスト表示される。要素セットリストによれば、ユーザは、データファイルとデータ要素の関係をまとめて確認できる。   Further, when a data file is selected on the data set list screen 330, information on data elements related to the selected data file is displayed in a list. According to the element set list, the user can collectively confirm the relationship between the data file and the data element.

このように、ジョブ解析支援装置100によれば、業務システム220の現状情報をユーザにわかりやすく示すことができる。また、適宜、文書情報も取り込んで示すため、文書情報において欠けている部分や古い部分を現状情報との関係から見つけ出しやすくなる。   Thus, according to the job analysis support apparatus 100, the current status information of the business system 220 can be easily shown to the user. Further, since document information is also taken in and displayed as appropriate, it becomes easy to find a missing part or an old part in the document information from the relationship with the current information.

以上、本発明について実施例をもとに説明した。実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。   The present invention has been described based on the embodiments. The embodiments are exemplifications, and it will be understood by those skilled in the art that various modifications can be made to combinations of the respective constituent elements and processing processes, and such modifications are within the scope of the present invention. .

業務システムのハードウェア構成図である。It is a hardware block diagram of a business system. 業務システムの構成図である。It is a block diagram of a business system. 現状解析処理の処理過程の概略を示す図である。It is a figure which shows the outline of the process of a present condition analysis process. ジョブ解析支援装置の機能ブロック図である。It is a functional block diagram of a job analysis support device. ジョブの依存関係を示す模式図である。It is a schematic diagram which shows the dependency relationship of a job. 図5に示したジョブの依存関係を設定するジョブ関係情報のデータ構造図である。FIG. 6 is a data structure diagram of job relationship information for setting the job dependency shown in FIG. 5. (a)ジョブの直列化における暫定リスト生成過程を示す模式図である。(b)ジョブの直列化における追加登録処理のうち第1過程を示す模式図である。(A) It is a schematic diagram which shows the provisional list production | generation process in the serialization of a job. (B) It is a schematic diagram which shows a 1st process among the additional registration processes in the serialization of a job. (a)ジョブの直列化における追加登録処理のうち第2過程を示す模式図である。(b)ジョブの直列化における追加登録処理のうち第3過程を示す模式図である。(A) It is a schematic diagram which shows a 2nd process among the additional registration processes in the serialization of a job. (B) It is a schematic diagram which shows the 3rd process among the additional registration processes in the serialization of a job. (a)ジョブの直列化における暫定リスト結合過程を示す模式図である。(b)ジョブの直列化完了時のジョブリストを示す模式図である。(A) It is a schematic diagram which shows the provisional list coupling | bonding process in the serialization of a job. FIG. 6B is a schematic diagram illustrating a job list when job serialization is completed. ジョブセットの生成過程を示す模式図である。It is a schematic diagram which shows the production | generation process of a job set. ジョブリスト画面の画面図である。It is a screen figure of a job list screen. データセットの作成過程を示す模式図である。It is a schematic diagram which shows the creation process of a data set. データセットリスト画面の画面図である。It is a screen figure of a data set list screen. 要素セットの作成過程を示す模式図である。It is a schematic diagram which shows the creation process of an element set. 要素セットリスト画面の画面図である。It is a screen figure of an element set list screen.

符号の説明Explanation of symbols

100 ジョブ解析支援装置、 110 ユーザインタフェース処理部、 112 入力部、 114 表示部、 116 ジョブ関係情報取得部、 118 ジョブ内容情報取得部、 120 ジョブ構造情報取得部、 122 データ宣言情報取得部、 124 データ定義文書取得部、 126 ジョブリスト表示部、 128 データセットリスト表示部、 130 要素セットリスト表示部、140 データ処理部、 142 ジョブリスト生成部、 144 データセット生成部、 146 要素セット生成部、 148 暫定リスト生成部、 150 暫定リスト追加部、 152 暫定リスト結合部、 154 ジョブリスト更新部、 160 データ保持部、 162 ジョブ関係情報保持部、 164 ジョブ内容情報保持部、 168 ジョブ構造情報保持部、 170 データ宣言情報保持部、 172 データ定義文書保持部、 202 ジョブ実行装置、 200 ジョブ実行装置群、 210 外部記憶装置、 220 業務システム、 230 ジョブ管理装置、 240 ジョブ関係情報、 242 ジョブ関係文書、 244 第1ジョブ構造情報、 246 第2ジョブ構造情報、 248 ジョブ構造設計文書、 250 データ宣言情報、 252 データ定義文書ファイル、 258 ジョブ内容情報、 274 ジョブセット、 280 ジョブリスト画面、 298 アサイン情報、 330 データセットリスト画面、 340 要素セット、 350 要素セットリスト画面。   DESCRIPTION OF SYMBOLS 100 Job analysis support apparatus, 110 User interface processing part, 112 Input part, 114 Display part, 116 Job relation information acquisition part, 118 Job content information acquisition part, 120 Job structure information acquisition part, 122 Data declaration information acquisition part, 124 Data Definition document acquisition unit, 126 Job list display unit, 128 Data set list display unit, 130 Element set list display unit, 140 Data processing unit, 142 Job list generation unit, 144 Data set generation unit, 146 Element set generation unit, 148 Provisional List generation unit, 150 provisional list addition unit, 152 provisional list combination unit, 154 job list update unit, 160 data holding unit, 162 job relation information holding unit, 164 job content information holding unit, 168 job structure information Holding unit, 170 Data declaration information holding unit, 172 Data definition document holding unit, 202 Job execution device, 200 Job execution device group, 210 External storage device, 220 Business system, 230 Job management device, 240 Job relationship information, 242 Job relationship Document, 244 First job structure information, 246 Second job structure information, 248 Job structure design document, 250 Data declaration information, 252 Data definition document file, 258 Job content information, 274 Job set, 280 Job list screen, 298 Assignment information , 330 Data set list screen, 340 element set, 350 element set list screen.

Claims (8)

前段にあたる1以上のジョブが実行されたことを条件として後段にあたる1以上のジョブが実行されるように依存関係が定められた複数のジョブについて、各ジョブの前段にあたる先行ジョブを示すジョブ関係情報を取得するジョブ関係情報取得部と、
前記ジョブ関係情報を参照して、先行ジョブを設定されていないジョブを先頭ジョブとして検出し、複数の先頭ジョブのそれぞれに対応してメモリ上に複数の暫定リストを生成し、対応する暫定リストに先頭ジョブを登録する暫定リスト生成部と、
前記ジョブ関係情報および各暫定リストの登録内容を参照し、先行ジョブの全てがいずれかの暫定リストに登録済であって、自身は暫定リストに未登録のジョブを候補ジョブとして検出し、前記候補ジョブをその先行ジョブが登録されている暫定リストに追加登録する追加登録処理を、前記複数のジョブ全てがいずれかの暫定リストに登録されるまで繰り返す暫定リスト追加部と、
前記ジョブ関係情報および各暫定リストの登録内容を参照し、第1の暫定リストに登録されているジョブが第2の暫定リストに登録されているジョブの先行ジョブにあたるときには、前記第2の暫定リストに登録されているジョブを前記第1の暫定リストに転記することにより、前記第1の暫定リストに前記第2の暫定リストを結合する暫定リスト結合部と、
前記複数のジョブを前記依存関係に基づいて一列に並べたリストとして、複数の暫定リストが結合されたジョブリストを画面表示させるジョブリスト表示部と、
を備えることを特徴とするジョブ解析支援装置。
Job relation information indicating the preceding job corresponding to the preceding stage of each job for a plurality of jobs whose dependency is determined so that one or more jobs corresponding to the succeeding stage are executed on condition that one or more jobs corresponding to the preceding stage are executed. A job relation information acquisition unit to be acquired;
Referring to the job-related information, a job for which no preceding job is set is detected as the first job, and a plurality of temporary lists are generated on the memory corresponding to each of the plurality of first jobs, and the corresponding temporary list is created. A provisional list generator for registering the first job;
Referring to the job-related information and the registration contents of each provisional list, all of the preceding jobs are already registered in any provisional list, and themselves detect unregistered jobs in the provisional list as candidate jobs. A provisional list addition unit that repeats additional registration processing for additionally registering a job in a provisional list in which the preceding job is registered until all of the plurality of jobs are registered in any provisional list;
With reference to the job-related information and the registered contents of each provisional list, when the job registered in the first provisional list corresponds to the preceding job of the job registered in the second provisional list, the second provisional list A temporary list combining unit that combines the second temporary list with the first temporary list by transferring the job registered in the first temporary list;
A job list display unit that displays a job list in which a plurality of provisional lists are combined as a list in which the plurality of jobs are arranged in a line based on the dependency relationship;
A job analysis support apparatus comprising:
前記暫定リスト追加部は、前記追加登録処理に際し、前記候補ジョブの先行ジョブが登録されている暫定リストにおいて、前記先行ジョブの直後に前記候補ジョブを追加登録することを特徴とする請求項1に記載のジョブ解析支援装置。   The provisional list adding unit additionally registers the candidate job immediately after the preceding job in the provisional list in which the preceding job of the candidate job is registered in the additional registration processing. The job analysis support device described. 各ジョブとジョブの属性を示すジョブ属性情報とを対応づけたジョブ内容情報を取得するジョブ内容情報取得部と、
前記ジョブ内容情報を参照して、前記ジョブリストにおいて一列に並べられた各ジョブにジョブ属性情報を追加することにより、ジョブとジョブ属性情報のセットがリスト要素となるように前記ジョブリストを修正するジョブリスト更新部と、を更に備え、
前記ジョブリスト表示部は、修正後のジョブリストの画面表示により、ジョブとジョブ属性情報のセットを一覧表示させることを特徴とする請求項1に記載のジョブ解析支援装置。
A job content information acquisition unit for acquiring job content information in which each job is associated with job attribute information indicating a job attribute;
By referring to the job content information and adding job attribute information to each job arranged in a line in the job list, the job list is modified so that a set of jobs and job attribute information becomes a list element. A job list update unit,
The job analysis support apparatus according to claim 1, wherein the job list display unit displays a list of jobs and sets of job attribute information on a screen display of the corrected job list.
前記ジョブ内容情報取得部は、ジョブ属性情報の一部として、所定の命名規則にしたがってジョブの種別を示すように設定された各ジョブのジョブ名称を取得し、
前記ジョブリスト表示部は、ジョブ名称からジョブの種別を特定し、ジョブの種別に応じてあらかじめ定められた表示態様にて、前記ジョブリストの各リスト要素を画面表示させることを特徴とする請求項3に記載のジョブ解析支援装置。
The job content information acquisition unit acquires a job name of each job set to indicate a job type according to a predetermined naming rule as a part of job attribute information,
The job list display unit identifies a job type from a job name, and displays each list element of the job list on a screen in a display mode predetermined according to the job type. 4. The job analysis support device according to 3.
ジョブを構成する1以上のプログラムと、各プログラムによりアクセスの対象となる1以上のデータファイルとを示すジョブ構造情報を取得するジョブ構造情報取得部と、
前記ジョブ内容情報と前記ジョブ構造情報を参照して、データファイルと前記データファイルをアクセス対象とするプログラム、前記プログラムを構成要素とするジョブおよび前記ジョブに対応するジョブ属性情報を対応づけたデータセットを生成するデータセット生成部と、
前記ジョブリストにおいてユーザによりいずれかのジョブが選択されたとき、前記選択されたジョブを含む1以上のデータセットをデータセットリストとして画面表示させるデータセットリスト表示部と、
を更に備えることを特徴とする請求項3に記載のジョブ解析支援装置。
A job structure information acquisition unit for acquiring job structure information indicating one or more programs constituting the job and one or more data files to be accessed by each program;
Referring to the job content information and the job structure information, a data set that associates a data file, a program that accesses the data file, a job that uses the program as a component, and job attribute information that corresponds to the job A data set generation unit for generating
A data set list display unit for displaying one or more data sets including the selected job on the screen as a data set list when any job is selected by the user in the job list;
The job analysis support apparatus according to claim 3, further comprising:
前記ジョブ構造情報取得部は、ジョブ制御言語(JCL:Job Control Language)によって記述されたコードから前記ジョブ構造情報を取得することを特徴とする請求項5に記載のジョブ解析支援装置。   The job analysis support apparatus according to claim 5, wherein the job structure information acquisition unit acquires the job structure information from a code described in a job control language (JCL). データファイルに含まれる1以上のデータ要素のデータ名宣言およびデータ型宣言を示すデータ宣言情報を取得するデータ宣言情報取得部と、
前記データファイルに含まれる1以上のデータ要素の意味とデータ型を示す設計文書であるデータ定義文書ファイルを取得するデータ定義文書取得部と、
前記データ宣言情報と前記データ定義文書ファイルを参照して、データ要素の意味、データ名およびデータ型とを対応づけた要素セットを生成する要素セット生成部と、
前記データセットリストにおいてユーザによりいずれかのデータセットが選択されたとき、前記選択されたデータセットに関連する1以上のデータ要素について、1以上の要素セットを要素セットリストとして画面表示させる要素セットリスト表示部と、
を備えることを特徴とする請求項5に記載のジョブ解析支援装置。
A data declaration information acquisition unit for acquiring data declaration information indicating a data name declaration and a data type declaration of one or more data elements included in the data file;
A data definition document acquisition unit that acquires a data definition document file that is a design document indicating the meaning and data type of one or more data elements included in the data file;
An element set generation unit that generates an element set that associates the meaning, data name, and data type of the data element with reference to the data declaration information and the data definition document file;
An element set list that displays one or more element sets as an element set list on one or more data elements related to the selected data set when one of the data sets is selected by the user in the data set list A display unit;
The job analysis support apparatus according to claim 5, further comprising:
前段にあたる1以上のジョブが実行されたことを条件として後段にあたる1以上のジョブが実行されるように依存関係が定められた複数のジョブについて、各ジョブの前段にあたる先行ジョブを示すジョブ関係情報を取得する機能と、
前記ジョブ関係情報を参照して、先行ジョブを設定されていないジョブを先頭ジョブとして検出し、複数の先頭ジョブのそれぞれに対応してメモリ上に複数の暫定リストを生成し、対応する暫定リストに先頭ジョブを登録する機能と、
前記ジョブ関係情報および各暫定リストの登録内容を参照し、先行ジョブの全てがいずれかの暫定リストに登録済であって、自身は暫定リストに未登録のジョブを候補ジョブとして検出し、前記候補ジョブをその先行ジョブが登録されている暫定リストに追加登録する追加登録処理を、前記複数のジョブ全てがいずれかの暫定リストに登録されるまで繰り返す機能と、
前記ジョブ関係情報および各暫定リストの登録内容を参照し、第1の暫定リストに登録されているジョブが第2の暫定リストに登録されているジョブの先行ジョブにあたるときには、前記第2の暫定リストに登録されているジョブを前記第1の暫定リストに転記することにより、前記第1の暫定リストに前記第2の暫定リストを結合する機能と、
前記複数のジョブを前記依存関係に基づいて一列に並べたリストとして、複数の暫定リストが結合されたジョブリストを画面表示させる機能と、
をコンピュータに発揮させることを特徴とするジョブ解析支援プログラム。
Job relation information indicating the preceding job corresponding to the preceding stage of each job for a plurality of jobs whose dependency is determined so that one or more jobs corresponding to the succeeding stage are executed on condition that one or more jobs corresponding to the preceding stage are executed. The ability to get and
Referring to the job-related information, a job for which no preceding job is set is detected as the first job, and a plurality of temporary lists are generated on the memory corresponding to each of the plurality of first jobs, and the corresponding temporary list is created. A function to register the first job,
Referring to the job-related information and the registration contents of each provisional list, all of the preceding jobs are already registered in any provisional list, and themselves detect unregistered jobs in the provisional list as candidate jobs. A function of repeating additional registration processing for additionally registering a job in a provisional list in which the preceding job is registered until all of the plurality of jobs are registered in any one of the provisional lists;
With reference to the job-related information and the registered contents of each provisional list, when the job registered in the first provisional list corresponds to the preceding job of the job registered in the second provisional list, the second provisional list A function of combining the second provisional list with the first provisional list by transferring the job registered in the first provisional list;
A function of displaying a job list in which a plurality of provisional lists are combined as a list in which the plurality of jobs are arranged in a line based on the dependency relationship;
A job analysis support program characterized by causing a computer to perform the job.
JP2008001531A 2008-01-08 2008-01-08 Job analysis support apparatus Pending JP2009163566A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008001531A JP2009163566A (en) 2008-01-08 2008-01-08 Job analysis support apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008001531A JP2009163566A (en) 2008-01-08 2008-01-08 Job analysis support apparatus

Publications (1)

Publication Number Publication Date
JP2009163566A true JP2009163566A (en) 2009-07-23

Family

ID=40966101

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008001531A Pending JP2009163566A (en) 2008-01-08 2008-01-08 Job analysis support apparatus

Country Status (1)

Country Link
JP (1) JP2009163566A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011118520A (en) * 2009-12-01 2011-06-16 Nomura Research Institute Ltd Information management apparatus
JP2017522630A (en) * 2014-05-29 2017-08-10 アビニシオ テクノロジー エルエルシー Workload automation and data lineage analysis
US10643162B2 (en) 2015-03-30 2020-05-05 Fujitsu Limited Method, apparatus, and storage medium

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011118520A (en) * 2009-12-01 2011-06-16 Nomura Research Institute Ltd Information management apparatus
JP2017522630A (en) * 2014-05-29 2017-08-10 アビニシオ テクノロジー エルエルシー Workload automation and data lineage analysis
US10705877B2 (en) 2014-05-29 2020-07-07 Ab Initio Technology Llc Workload automation and data lineage analysis
US11748165B2 (en) 2014-05-29 2023-09-05 Ab Initio Technology Llc Workload automation and data lineage analysis
US10643162B2 (en) 2015-03-30 2020-05-05 Fujitsu Limited Method, apparatus, and storage medium

Similar Documents

Publication Publication Date Title
US10558642B2 (en) Mechanism for deprecating object oriented data
US20160170719A1 (en) Software database system and process of building and operating the same
JP2022189877A (en) RPA maintenance support device
JPWO2011118003A1 (en) Web application construction system, web application construction method, web application construction program, and recording medium recording web application construction program
US10678864B2 (en) Analysis model preparing system, programming apparatus, and analysis model preparing method
JP6048957B2 (en) Information processing apparatus, program, and information processing method
US10303668B2 (en) Automatic screen generation device, automatic screen generation program, and automatic screen generation method
JP2009163566A (en) Job analysis support apparatus
US10884711B2 (en) Code management system and code management method using a visual programming tool
JP2007164503A (en) System production method, system and program, and data structure of definition information used in system production
JP7381290B2 (en) Computer system and data management method
JP5504212B2 (en) Test case automatic generation system, test case automatic generation method, and test case automatic generation program
US20140006092A1 (en) Management apparatus and management method
JP2009258981A (en) Project management device, project management method, project management program, and recording medium
JP2008165388A (en) Program update management system, program update management method and computer program
JP4683535B2 (en) Job net management system
JP2012164177A (en) Program automatic generation system
US11921496B2 (en) Information processing apparatus, information processing method and computer readable medium
JP2013238976A (en) Source code generation system
JP5502696B2 (en) Software development support system, software development support program, software development support method
JP2007034806A (en) Information processor and program
JP2007034807A (en) Information processor and program
JP2012088933A (en) Software product line development support device, its method and its program
JP5007041B2 (en) Job management apparatus and job management method
JP2008009966A (en) Device and method for setting business process