AKANE072122928_TP_V-2

コンピューターを使った業務システムでは、「パッケージソフト」が多く使われます。パッケージソフトとは、標準的な業務フローに沿って機能がパッケージ化されたソフトウェアのことです。

パッケージソフトは、高機能な割に比較的価格が安いのが特徴です。しかし、実際にパッケージソフトを導入すると「この機能をもう少し改修すれば、もっと使いやすくなるのに」と思うことがあります。ソフトウェアの機能を改修してユーザーが使いやすくなるようにすることを「カスタマイズ」と言います。

一見、パッケージソフトをカスタマイズするのであればソフトの機能が良くなって使いやすくなるように見えます。しかし実際には、そのカスタマイズがあとで問題になることも少なくありません。結果的に、パッケージソフトはカスタマイズしないでそのまま使う方が良い場合が多いのです。

ここでは、パッケージソフトはカスタマイズしないでそのまま使う方が良いと考える理由についてお話ししていきます。ここで述べる内容を理解することで、パッケージソフトウェアの機能に対する理解が深まるとともに、パッケージソフトのカスタマイズを行うことによるシステムへの影響について学ぶことができます。

パッケージソフトは、カスタマイズしたとたんに高額になる

パッケージソフトは、多くのユーザー向けに汎用的に使えるように機能設計されているのが特徴です。そして、ユーザーごとにソフトへの要求機能が異なります。そのため、ソフトに作りこまれた機能の中でもユーザーに対して「表面に見せる機能」と「表面に見せない機能」が存在します。

ソフトに作りこまれた機能をユーザーごとに見せたり見せなかったりするのには、理由があります。仮にソフトの全部の機能をユーザーに見せてしまうと、その中でユーザーが使うことのない不要な機能が多く表示されることになります。

その結果、ユーザーが実際に使いたい機能が不要な機能の中に埋もれてしまいます。そして、ユーザーが必要な機能を見つけられなくなったり操作が増えて使いにくくなってしまうのです。そのため、ユーザーの要求機能にしたがい使われない機能を隠す必要があるのです。

ユーザーが機能のカスタマイズを要求する場合、当然のことながら「表面に表れている機能」に対してです。しかしソフト開発会社の立場では、表面に表れている機能を改修しようとすれば同時に「表面に表れていないけれども関連する他の機能」についても改修しなければなりません

簡単な例を挙げてみましょう。パッケージソフトで、あるメッセージ文字列が「A」だとしてそれを「B」に直したいとします。ユーザーは、1個の「A」を「B」に変えるだけだから簡単だろうと考えます。

しかしパッケージソフトでは、ふだん表面に出ない関連機能で同じく「A」というメッセージを他にも多数作りこんでいるかもしれません。その場合、すべての関連機能の「A」を「B」に直さなければなりません。

プログラムの中で修正箇所が増えれば、改造量も改造にかかる金額も増えます。パッケージソフトの改修では、このようなことがよく起こります。そのため、一般にパッケージソフトのカスタマイズは高額になります。ふだん表面に出てこない機能まで、お金をかけて直すのはばかげた感じがしないでしょうか。

カスタマイズされたパッケージソフトは、バージョンアップが不利になる

パッケージソフトをカスタマイズしない方が良いと考える理由は、他にもあります。パッケージソフトがカスタマイズされた場合、一般にソフト開発会社が行うパッケージのバージョンアップ対象から外れます。そして、「特注品」や「一品物」(オーダーメイド)という扱いになります。

パッケージソフトが導入後バージョンアップされた場合でも、特注品のバージョンアップはカスタマイズの再開発が必要になります。パッケージソフトの障害対応や緊急パッチなどの適用が必要になった場合も、同様なことが起こる可能性があります。

すなわちカスタマイズされたパッケージソフトは、バージョンアップや障害対応などの改修において余計な時間や費用がかかり不利な状況になるのです。

これまで述べたように、パッケージソフトはカスタマイズをしないものと割りきって使う方が良いと考えます。その理由は、費用対効果とバージョンアップ等の改修において不利になるからです。

しかし業務システムでは、ソフトの使い勝手に対する要望がたいへん強くソフトの改修も頻繁に行われる場合があります。そのため業務システムで使うソフトは、どちらかというとパッケージソフトよりもオーダーメイド型のソフト(特定ユーザー向けに作られたソフト)の方が向いていると考えた方が良いかもしれません。