MS-Accessでの基幹システム再構築から分かったこと
サイトのリニューアルもあり、しばらくブログの更新をしていませんでした。
そして、この半年ほど、私自身も手を動かしながらとあるお客様の基幹システムの再構築(既存オフコンのリプレイス)を進めてきました。
今月やっと並行稼働にこぎ着けることができました。
元々システムエンジニアをしていた頃、本当にお客様のためになるシステムを作りたいと考えてコンサルタントに転向した訳ですが、なかなか自分で手を動かしながら開発するようなプロジェクトはありませんでした。
というのも、コンサルタントという立場になると、システム開発のプロジェクトでは、プロジェクト管理の支援であったり、上流工程(システム企画・要件定義)の支援をする機会が多いのです。
実際に開発するのは、SIベンダの方々という体制が多く。
今回の基幹システムの再構築では、企画から実際に現場でシステムを使い始めるところまで、一気通貫で手がけています。
本格的な稼働は11月からになるのですが、10月に入り、実際に現場で使われ始めましたが、特にシステム自体のトラブルはなく、ネットワークに繋がらない(現場のルーターのコンセントが外れていた)、パソコン自体にログインできない(ID・パスワードでログインすることに慣れておらず操作に不慣れだった)、前日までに入力されているはずの受注データが不足していたといった、ITリテラシーや業務運用に起因するトラブルが起きたくらいでした。
1ヶ月、並行稼働をさせて、既存システムとの突合をしてアウトプットの正しさを確認した上で、11月には正式な本番稼働を迎えます。
実際に稼働直前は、徹夜モードで開発チームはヘトヘトになるから追い込みが続き、それまでの遅延の影響のツケに悩まされることがほとんどなのが現状です。
ですが、今回は順調に稼働まで(夏頃はかなり効率が落ちて焦っていたことはありましたが)進めることができて、ほら、ちゃんとプロジェクトを進めれば、直前にバタバタと慌てることも無いものだという結果を出せたことは喜ばしいことです。
さて、今回のプロジェクトでは、25年も使われていたオフコンの基幹システムを、保守期限切れに間に合わせるようリプレイスすることでした。
25年も使われていた、というのがビックリでもあります。
大企業でここまで使われ続けているシステムはかなり少ないです。
ただ、特に中小企業では、なかなかまとまったIT投資をすることができないことや、とことん使い切るということが多く、ある意味で抜群のコストパフォーマンスです。
VEで言うところの”価値”は非常に高いものだったと言えます。
こういう価値の高さというのもあるわけです。
そのような長年使い続けてきたシステムを、諦めていた問題点を解消しつつ新システムを構築するというプロジェクトでしたが、タイトルにもあるようにMS-Access+Linux(MySQL)を使ったシステムを構築しました。
最近ではとかくWebシステムとすることが多いのですが、特にオフコンのようなシステムをリプレイスする際には、Webシステムでそれまでの操作性を確保することがとても難しくなります。
難しいというよりも、操作性を上げるには、開発効率も落ち、様々な問題が起きやすくなります。
MS-Accessを使ったクライアントサーバ(クラサバとも呼ばれる)と呼ばれる構成を選択したのですが、特に基幹システムで求められる、操作性・安定性の面でも、効率的な開発、堅牢なシステム構成という面でも、適していることを証明することもできました。
最近(ここ10年、15年くらい?)では、新しくシステムを構築するとなるとWebシステム(ブラウザで使用する方式)と呼ばれる構成が採用されることが多くなりました。
そういう風潮からすると、同じ業界の人たちからすると、今さらクラサバ?と言われることも少なくないです。
ですが、結果から言うと、ものすごい”価値”の高くなる技術だと確信ができました。
確実で効率的な開発を進める上でも、特に中小企業でのシステム構築には、90年代から採用されてきたクラサバの構成が適していると思うのです。
開発者視点からは、堅実で費用を抑えて開発することができますし、開発効率がものすごく高いです。
発注者視点からは、同じ機能を達成するにしても、費用を抑えることができ、障害の発生を減らし、ユーザーの操作性も上げることができます。
まさにいいこと尽くしなのです。
システムの導入にあたっては、パッケージソフトウェアというものを採用する企業も多いです。
ある業務用のシステム自体がそのままパッケージとしてセットで販売されているのです。
(財務会計、販売管理、営業支援などなど、様々なパッケージソフトウェアが存在しています)
ですが、大企業でもそうですし、特に中小企業では、自社の業務に合わないことがほとんどで、自社の業務に合わせてパッケージソフトウェアをカスタマイズした上で使用することになります。
このカスタマイズは、ものすごい追加費用が発生します。
さらに導入時の開発費用も追加発生しますし、運用保守に入ってからの費用もバカになりません。
(パッケージとして購入するのにカスタマイズしてしまうなんて本末転倒なことにしかならないのです)
さらに、定期的なバージョンアップの際にも、「新しいバージョンにアップするために改修しなければなりません」などと言われるため、追加で費用が発生し、経営層の方々や他の部門の方々から情報システム部門は金食い虫扱いされることも少なくありません。
Webシステムやパッケージソフトウェアなどと比べ、今回は、安価でありながらシンプルで安定している技術を採用したこともあり、価値(達成した機能/コスト・リソース)の高いシステムを作り上げることが出来ました。
仮運用に入った段階で、ほぼ本番として使っているかのように使用いただいています。
実際に使ってみてここを改善したい、変更したいという声もいただきますが、
Webシステムやパッケージソフトウェアだったらこうは行きません。
一箇所変更しては別の部分の挙動がおかしくなったり、今さら修正できませんと拒否されることもあります。
Accessを使ったシステムだと、発注者側も開発者側もリスクを極小化して開発・導入していくことができます。
単にこの技術を採用するということだけではなく、Access(クラサバ)の特性を活かしていくコツも必要ではありますが。
IT会社・SIベンダから言われるがままの構成・技術でシステム構築をお願いしていたりしませんか?
耳障りの良い売り文句、最新技術などを並べて売り込んできますが、必ずしもそれが正解とは限らないので、しっかり”価値”=達成したい機能(目的)/コスト・リソースを見極めていただけると良いのですが。
とはいえ、IT・システム開発なんて本業とは関係の無い分野で、なかなか見極めるのも難しいですよね。
専門家を信じるしかない、という気持ちで頼らざるを得ないのですが。
ただ一つ言えるのは、発注者の方には、開発者側から、自分たちに理解ができるような言葉で、どれだけの”価値”なのかを説明を受けていない場合は、提案の内容を鵜呑みせずに、納得できるまで説明を求めていただきたいと思います。