プログラムを構成する7種類の基本パターン(バッチ)


バッチ処理はファイルに格納されている大量のデータを一括で処理するものです。
画面の入力や表示処理がないため大量のデータを高速で処理することができます。
企業の情報システムの大半は、このバッチ処理で構成されているので、非常に重要な位置付けといえます。
バッチ処理を分類すると大体7種類のパターンに分類することができます。
実際のプログラムでは、1種類のパターンあるいは数種類のパターンの組み合わせで構成されることもあります。

1.抽出処理
抽出処理は、入力ファイルから特定の条件のレコードを抽出して、出力ファイルを作成する処理です。
抽出処理の例
①売上ファイルから今月の売上レコードを抽出する。
②売上ファイルから特定の商品の売上レコードを抽出する。

2.集計処理
集計処理は、入力ファイルから特定の条件で集計処理を行って出力ファイルを作成する処理です。
集計処理の例
①売上ファイルから商品毎の売上数量と金額を集計する。
②売上ファイルから月毎の売上金額を集計する。

3.振分処理
振分処理は、入力ファイルから特定の条件で振分したレコードで出力ファイルを作成する処理です。
振分を行う条件によって出力ファイルの数が変わってきますが、最低2種類の出力ファイルが必要です。
処理の内容は、抽出処理と同じですが出力ファイルが複数ファイルになります。
振分処理の例
①売上ファイルから今月の売上と今月以外の売上レコードを振分て、出力ファイル(今月、今月以外)を作成する。
②売上ファイルから月毎の売上レコードに振分て、出力ファイル(12個)を作成する。

4.照合処理
照合処理は、2種類の入力ファイルを特定の条件で照合して出力ファイルを作成する処理です。
一般的に入力ファイルの数は2種類が普通で、2種類以上だとロジックが煩雑になり非効率になるためです。
照合処理の例
①売上ファイルと商品ファイルを商品コードで照合して、売上ファイルに商品ファイルの商品名を付加する。
②売上ファイル(当月累積)と売上ファイル(本日分)を照合して売上ファイル(当月累積)に売上ファイル(本日分)を追加する。

5.参照処理
データベースのテーブルを参照して必要な情報を取得する処理です。
照合処理と類似した処理内容で、照合する片側の対象がテーブルになるだけです。
参照処理の例
①売上ファイルの商品コードをキーとして商品テーブル(DB)を参照して、商品名などの属性情報を付加する。

6.更新処理
入力ファイルのデータをもとに、データベースのテーブルを参照して登録、更新、削除などを行う処理です。
更新処理の例
①売上ファイル(本日分)を入力して、商品コードをキーとして売上テーブル(当月累計)を参照する。
 該当する商品コードが存在しなければ売上テーブル(当月累計)に登録する。
 該当する商品コードが存在すれば売上テーブル(当月累計)を更新する。

7.帳票処理
入力ファイルを入力して帳票を出力する処理です。
帳票処理の例
①売上ファイル(本日分)を入力して、本日売上日報などの帳票を作成する。
②売上ファイル(当月分)を入力して、当月売上月報などの帳票を作成する。

まとめ
上述した7種類のパターンを組み合わせて、システムの要件をひとつひとつ実現していくことが情報システムの構築です。
企業の情報システムのバッチ系処理では上記のようなパターンのプログラムを大量に作成します。
小規模システムで数十本、大規模システムで数百本~数戦本という量で技術者も大量に必要となります。
プロジェクトに参画する技術者は、標準化と最適化について理解を深める必要があります。
標準化とはプロジェクト独自の開発作業を進めるルールで、順守することによって統一化が計られます。
統一化されていないシステムは理解するの不要な労力が必要になるだけでなく、障害を発生させる要因となります。
最適化とはシステム要件を実現する上で可能な限り簡潔に構成された仕組みを構築することです。
ひとつのシステム要件(機能)を構築するには、いくつかのパターンのプログラムを組み合わせて実現することができます。
パターンの組み合わせを最適化することで、理解が容易でシンプルな構造で機能を実現することができます。
ひとつの処理でいくつものパターンをてんこ盛りにしたり、無駄なパターンを作ってしまうと、構造が複雑になり理解するのも容易ではありません。
最適化されたシステムは開発作業を軽減し、その後の運用や保守作業の負荷を軽減するのに大きな効果を発揮します。

 

Sponsored Link








コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です