オルタナティブ・ブログ > Software Development >

ソフトウェア製品開発現場の視点

ソフトウェアの部品化

»

ソフトウェアの開発において、ソフトウェアを機能単位の部品として提供することで、再利用するという考え方は初期の段階から考えられてきた。もし部品化が成功すれば、ソフトウェアの開発コストの削減と開発期間の短縮、さらには品質の向上が期待されるため、過去に多くの部品化が計画されたが、成功した例はほとんどなかった。

そのソフトウェアの部品化が現実化してきた。オープンソースによる部品の提供は最近非常に増えてきており、特に機能の一部にオープンソースを取り込むことは普通に行われるようになってきた。その部品化の流れをさらに加速することが予想されるのが cloud computing による部品の提供である。Cloud における部品化とは、ソースコードやバイナリーレベルの部品化ではなく、サービスレベルでの部品化である。必要な機能をもつサービスが cloud 上で提供されるようになると、その機能を独自のソフトウェアに組み込むかわりにその部品の機能を使うことで、統合されたサービスを効率的に提供できるようになる。

過去の部品化の課題の一つは、部品開発というビジネスがうまく立ち上がらなかったことであるが、サービスとして提供することで、部品の独立性が高まりビジネスの可能性が高くなると思われる。たとえば、ソースコート組み込み型の部品だと、基本的にはその部品と同じ開発言語を使う必要があるが、Web 上のサービスならば、利用する側が部品提供側と言語を統一する必要がなく、開発効率をより高くすることができる。

逆の見方をすると、部品化できるレベルの機能であれば、他と差別化することができなくなるので、開発者はアプリケーション独自の機能の部分で他と差別化することが求められるようになる。

Comment(0)