
コンピュータにプログラム実行を指示する場合、一般的には、コマンドライン指示、アイコンクリックという事になります。
しかし、ある程度規模の業務システムを考えた場合、そのプログラム本数は数十本、数百本にもなります。それを手動起動していたのでは大変です。また、その処理結果が正常終了なのか否かも重要です。
そこで、それらのプログラムを自動起動するためにOnnetJobManager(以下OJMと表記)が必要になります。
当社では、2008年にOJMの原型を構築し、ある企業の生産管理システムに適用し、毎日150本前後のジョブ(複数のプログラムを実行単位に束ねたもの)自動起動しており、大変大きな省力化効果を上げています。 以来、発生しました問題、不足機能を明確にしながら改善活動を重ねております。
複数のプログラムをシェルスクリプトなどで接続し、実行単位にしたものをJOBと呼んでいます。
今日、このJOBは複数のサーバに分散されて実行されています。 OJMは、このJOBを複数のカレンダ(本社カレンダ、工場カレンダなど)によって予めスケジュール(日、時間、順序などで)された定義情報で自動実行する仕組みです。


システムの自動実行を考えた時、UNIX系、Windowsの場合、シェルスクリプト、VBスクリプトなどを作成し、crontab、タスクスケジューラなどに登録して実行しているのが現状です。
しかし、その環境下では以下の不便さが発生していると思われます。
JOB定義情報がサーバ単位に散在している
現在のシステム運用では、JOB定義情報は個々のサーバ内に定義されています。この状態では、どんなJOBが定義され実行されているかをサーバごとに確認しなければなりません。サーバ台数が増えるに、企業情報システム全体の管理・運用が難しくなります。
実行状態、結果の確認が難しい
JOB実行がいつ実行され、結果がどうであったかの確認は重要です。
何の工夫もしなければ、結果確認のために、個々のサーバで確認する必要があります。
メール連絡の措置を講じている場合は、少し運用の手間が省けます。しかし、その工夫はJOB毎に設定する必要があり、非効率です。
実行結果連絡の仕組み(検出方法と連絡方法)は、システム全体で統一されるべきです。
複数のカレンダでスケジュールできない
JOBの自動実行はカレンダに紐付けされて実行されます。しかし、実際の業務では、複数のカレンダが必要です。
例えば、本社と工場では、営業日の違いなどからカレンダが異なる場合があります。また、通常の暦と会社カレンダが異なる場合もあります。夏休み、年末年始などです。JOBの自動実行のためには、どうしても複数のカレンダが必要になります。
JOB実行結果による条件分岐など複雑な定義が記述できない
crontab、タスクスケジューラでは、単純にコマンド、プログラムの順序羅列に過ぎません。
確かにスクリプトによって少しばかりの実行順序制御はできますが、一度異常終了したJOBを再度自動実行させるか否か、時間が掛かり過ぎるJOBの停止、同時に動作できないJOBの制御など複雑な処理に対応していません。

1.カレンダ登録
カレンダは、複数登録できます。例えば、本社用、工場用などに分かれる場合や、複数の会社業務を集約して実行制御する場合などに複数登録が必要になります。
2.JOB定義
JOB定義では、複数のプログラムの流れ(順序と実行条件)を定義します。OJMでは、Visioを利用したOJMデザイナーによって、フローチャートを描くようにJOB定義を行います。 デザイナーでは、新規登録するJOBだけでなく、DBに登録されたJOBも読み出して視覚化できます。必要により新たなJOBとして引用登録することも出来ますので、大変便利です。

3.実行定義
登録されたJOBに対し、スケジューリング情報を結び付けます。スケジューリング情報として、カレンダによる実行、周期実行(日、週、月)、プログラムによる実行、手動実行などがあります。
4.実行監視
実行されたジョブの監視を行います。 監視は、実行ジョブの一覧、実行ステップ表示、実行結果履歴などを画面で監視します。同時にメールとも連動していますので、異常把握とその対応措置がスムーズに行えます。


5.管理
ジョブ情報はDBに一元管理されています。そしてそれらのジョブがいつ実行され結果がどうであったかという情報も管理されています。これらの情報から
■本体
JOB統合管理サーバです。
■エージェント
プログラムを実行するサーバにインストールして、情報をJOB統合管理サーバと通信します。JOBを起動するサーバ毎にインストール(コピー)します。
■デザイナー
JOBをグラフィカルにデザインするツールです。
現在、製品化に向けて最終調整をしています(当社開発システムでは稼働中です)。
個別対応では供給可能ですのでお問い合わせください。
供給方法は、原則的には当社側で専用サーバにインストールしてお渡しします。JOB管理機能を専用サーバとして分離した方が実際的であると判断しているためです。 しかし、自社サーバインストール希望の場合にも対応可能です。
OJISは、以下の稼働実績があります。
1.システム概要
汎用機で動作していた、化学製品製造企業の生産管理、原価計算システム(COBOL800本規模、Windowsサーバに再構築)のJOB管理として稼働
※関連資料はこちら→「COBOL(500本)の機能をSQLSに変換」(PDF)
2.運用規模
日次150本のJOB、月次50本のJOBがスケジュールされ自動実行されている。画面プログラム起動、手動起動のJOBもある。
3.利用感