2008年2月1日金曜日

レガシーバッチ

・・・という言葉があるのかどうか・・・という事さえ、よく分からなかった私。

この業界に入ろう!と思ったきっかけは、ACOSが基幹業務で動いている、ある会社に入ったときでした。
ちょうど、いろんなシステムをオープン化しようとしているようなタイミングで、あまり、COBOLを触る機会もなく、オープンの方に興味が進んでいきました。

そのときは、実際に開発をさせてもらえる環境じゃなくて、出力された帳票をプリンターまで取りに行ったり・・とかでしたが、オペレータの人の様子をよくみていたら、
JOBすぽーん (・・・って言ってたと思うけどあってる?)させてくれたり、
ちょっとプログラムの中身を説明してくれたり・・・で、へぇー凄いなぁ・・・JCLってうまい仕組みだなーって思った記憶があります。

その時に経験が、今となって役立つなんて・・・

最近わが社では、レガシーバッチを対象としてParallelFrameという製品が本格化しようとしています。特に、Adabas/Naturalについては、構造化されたプログラムになっているところから、わが社のアプリケーション作成手法にピッタリ・・・ということで、より注目しています。
検討し始めていったら、思ったよりもコンバードできる量も結構多いよねーっ 結構いいんじゃない・・・って感じ。

そんな事をしていて思ったのが、
時代が変わって・・・言語が変わって・・・
ガラっと激変したとしても、強制的に統一された作り方をしているプログラムは、新しいものにコンバートがしやすい。
これが、人によって作り方が変わるようなプログラムが混じっているようだと、コンバート率がやはり下がってしまうでしょうし。

よく言われることではあるんですが、

”OS,言語,プログラム手法が変わっていっても、業務の要件は変わらない。”

んですよね。んでもって、

”現状のシステムの要件を知るのは、現状のシステムを把握する”

のが一番正確だと思う。

今後は、今まで以上に、時代の流れも速くなるだろうし、どの言語、ツールを使ったらいいのか・・・というのは、とても難しいと思う。 もしかしたら5年、10年後では今は無い ナニか が主流になっているかもしれない。
そうなると、乗り換えやすい作り方 というのが結構重要なんじゃないかなぁーと思います。
今から作るものに対して、今後乗り換えやすいには・・・って考えるのも変な話なんですけどもね。

手前味噌になっちゃいますが・・・、
わが社でもWebtribe,VisualFrameといった開発のための製品があるんですが、もともと作り始めた発想は システム要件を部品を選びつつ組み立ていき、言語や環境に捉われない ものをリポジトリとして作成していく というのがありました。
なんで、今はJAVAでしか動くものがないですが、他のものでも実行エンジン部分を作れば結構他の言語に移行しやすいようになっていると思います。
・・・が、結構、要望やらでいろんな機能を追加していくと、その当初の発想から外れてくる部分って結構あるんですよね。。現実と理想のハザマといいますか。。

小さな会社なんで、開発者も少なく・・・実際案件に直結するようなモノから優先的にしてしまうところがあるんですが、ここは初心にもどって、
”言語や環境に捉われないモノ作り”のツール というのを優先的目指すのもいいんじゃないかなぁー と密かに思ったり。

これはツールによる話でなく、プログラムを作成する人が意識しないと、結局は 無駄な理想論(理想を追いかけて、結局中途半端になり、手間だけかかって利点がなくなった みたいな)になるんかもしれませんが・・・
• • •