2007年1月26日金曜日

現構成と新構成


現行システムの構成はこのようになっています。

本社メイン・オフコンと営業所とはISDNによるダイアルアップにて接続しています。ルーター接続している営業所も一部あります。どちらにしても従量課金なので接続はデータの送受信とメンテナンスが必要な時に限定しています。

処理の流れとしては各営業所で入力したデータを本社に送信し、本社にて一括集計を行っています。本社へデータの集約を図っていますので、請求書等資料の印刷には本社へ接続する必要があります。当初は本社集中型とする案もあったのですが、通信費の問題から断念し、このような形になっています。
この辺りの仕掛けは時代ごとに集約型か分散型かを繰り返していますね。それは時代のニーズと言うよりも、通信と機器の発達の度合いによるものかと思います。今の時代はネット経由などで通信コストが安く抑えられますが、安いと通信品質が落ちますからリアルタイム処理となると結局は難しくなります。またレスポンスの問題もありますので、どこで妥協するかがポイントになります。メタフレームも各社から勧められましたが、印刷では遅くなるかも…と言われては使えないですね。対応するプリンタもまだ少ないですから。

私はよく『便利は不便』と言う言葉を使いますし意識します。
安易に便利さを求めても、何かあった時、結局は不便を強いられるのが落ちです。
『誰にとって』『何に対して』『何をもって』便利と言うのか?
使う人にとって、そして、システムにとって、真に便利なものは何か。その点を熟考し、その上で不便の無いようベストを尽くす。それがシステム屋としての勘所ではないかと思います。お金を掛けたから良い物ができる訳でもありませんから、やはり、お金を掛ける前に智恵と手間を掛けなければ良いシステムはできないでしょう。

と言う訳で、新システムの構成は分散型とし、本社サーバーへのデータ集約を自動化する形にしました。
回線はNTTのグループ・アクセスを使用します。分散型にしたのはレスポンスを確保するとともに、回線が落ちても業務が停止しないようにする為です。大都市ならいざ知らず、地方だと高速で安価な回線がありません。光回線も普及にはまだまだ掛かりますから現状ではADSLしかないのですが、これがまた落ちやすくて。。。
また、業務的にもリアルタイムにする必要は無いと判断しました。『リアルタイムに見たい』という要望が無い訳ではありませんが、その為にサーバーを増やしたり何だりと、コストを掛けるのに見合うかどうかです。大仰に『今』の在庫を知りたいと言っても、仕入から出庫まで全てのデータをリアルタイムに入力できないのですから、逆立ちしても『今』を知る事は不可能です。これはハンディターミナルを使用しようと何を導入していようとも「無いデーター」はどうにもなりません。なので24時間フルに繋がっていなくとも、2~3時間、または6時間毎にでもデータを集約できれば良いと判断しました。
日立さんにはJP1という優れたジョブ管理ソフトがあります。色々できるのですが、その中でも基本的な部分であるデータの受け渡し制御ができるのも、日立に決めた理由の一つです。スケジュールに従って、また、ファイルの更新を切っ掛けにして自動転送を掛ける事ができますから、組み方次第でかなりの事が手間要らずにできてしまいます。制御情報データを書き換えると自動的にその内容が転送され、転送された側ではそれを切っ掛けにしてアプリケーションを起動、制御情報を読み込んでデータ抽出。抽出されたら自動的に転送が掛かり、受け取ったらアプリを起動して…一つのアクションから関連する処理を遠隔地を含めて構築できるのは、とても助かります。
データ構成はRDB…と考えていたのですが価格の問題もありましたが、何しろオフコンの耐用年数・保守部品不足の問題から機器の入替を最優先にする必要がありました。その為現行と同じくISAMとし、乗せ変え移行を先に行うこととしました。機能改善・追加を行っている時間がないための措置ですが、ISAMもまだまだ捨てた物ではありません。いえ、遮二無二DB化する必要もありません。何と言っても軽いですからね。ISAMで無理が出てからでもDB化は遅くありません。大事なのはレコード構成ですから。それさえ大丈夫ならDB化も経験上問題ないと思います…たぶん…きっと(^^;
レガシーの良い部分と今時の良い部分を取り入れながらです。と言う訳で、今は東芝→日立への移行作業真っ最中です。専門に移行をやって貰える会社さんもあるようですが、お金も掛かる事ですから、勉強の意味も込めての自社移行です。似たような事を検討している方の役に経てば幸いです。

最後に新システムで使用する日立アプリケーションを書いておきます。
COBOL2002 :言わずと知れたCOBOL
XMAP3     :画面・帳票マップ
ISAM       :ISAM制御※
ISAM/D    :ISAM制御※(サーバー処理用)
JP1        :統合ジョブ制御
※スタンドアロンの場合、ISAM/Dは不用。
 サーバー上のISAMファイルを複数のクライアントから使用する場合には必要。
 つまりISAM/Dが排他制御を行っています。

1 件のコメント:

匿名 さんのコメント...

こんにちは

東芝のオフコンを使ってましたが、
2000年問題でプログラムを修正する必要が出てきたので、すべてのシステムをパソコンへ移行しました。
けっこう大変だったです。

懐かしい用語がいっぱ出てきてあのころのことを思い出しました。