元外資系コンサルのガラクタ箱

インターフェース共通機能サンプル

よく使う機能を汎用化して共通利用するのはプログラミングの基本です。開発や保守の工数も減りますし、類似機能を複数持つことによるバグも防げます。

とはいえ私は初めて共通機能を設計したときに、どんな機能を切り出せばいいのか最初はピンときませんでした。

本記事では、インターフェース設計を進める中で共通機能として切り出したもののサンプルを紹介します。

環境設定

共通機能と呼ぶのはおおげさかもしれませんが、複数のプログラムで利用するものは環境設定ファイルで一元化します。

以環境設定ファイルに書くものの例は以下の通りです。

ファイル移動処理

FTP転送されたファイルの到着確認や受信フォルダからの移動を行います。

ヘッダ、フッタ情報処理

ファイルに含まれるヘッダとフッタレコードを処理します。

ワークテーブルへのロード処理

OracleのSQL*Loaderのようなロードユーティリティを使ってワークテーブル(一時テーブル)にデータを取り込みます。

ワークテーブルのロード結果確認処理

ワークテーブルにロードされた件数とロード元ファイルの件数に差異がないか確認する。

PL/SQL起動処理

PL/SQLプログラムを起動する。

受信ファイルリネーム処理

固定のファイル名で受信したファイルを上書きされないようタイムスタンプなどを付与する処理。

前回テーブル更新処理

前回処理からの差分データを抽出するための前回データ保存テーブルのデータを更新する処理。

終わりに

当たり前に見えるものもあったかもしれませんが2つ以上のプログラムで使用しそうなものは他でも使う可能性はありえます。

後から置き換えるのは手間がかかりますので面倒がらずに共通機能として切り出していくことをおすすめします。

mhisaeda

電子書籍「システム導入のためのデータ移行ガイドブック」著者。

新卒から外資系コンサルティングファームに所属。15年に渡り販売物流、特にCRM領域のコンサルティングに従事。 100名を超えるプロジェクトのPMOなど全体を推進していく役回りや、ユーザ企業への出向を通じた実務経験を持つ。

このブログでは、自身がかき集めた知識や経験を共有する。クライアントへの提案やソリューション開発に直結しないガラクタのようなもの。将来再利用する自分のために。同じような悩みを抱える誰かのためにブログ「元外資系コンサルのガラクタ箱」を運営。

カテゴリー

モバイルバージョンを終了