今回は,前回,前々回の内容を基に,基盤ソフトウエア選定のガイドラインを考えてみよう。
基盤ソフトウエアの選定は,セキュリティという観点から見ても保守フェーズでのコストに大きく影響する。このため,必要なコストを捻出できないことを理由に,古く危険なバーションを放置している例が少なくない。
基盤ソフトウエアの選定は,セキュリティ以外の要件から検討される場合が多いが,セキュリティの観点からは以下の項目が必要条件となる。
- アプリケーションの稼働年限を仕様として定義する
- 採用候補の基盤ソフトウエアが稼働年限までのサポートを保証しているか確認する
- 稼働年限までのサポートが保証されない場合は,途中でサポート切れになった場合の代替策を検討して,予算を確保しておく
アプリケーション発注者としての立場でも,基盤ソフトウエアを自ら選定する場合の注意点は上記と同じである。これに対して開発会社に提案を求める場合には,基盤ソフトウエアが満たすべき要件をRFP(request for proposal)として明示しなければならない。その内容は以下の例のようになる。
|
ケーススタディ:商用製品とOSSのコンペ
ここで,商用製品とOSSのコンペになったケースを想定し,それぞれの見積もり額を考えてみよう。RFPの内容が表1のようなもので,アプリケーションの稼働年限として5年が求められているとする。これに対し,X社が提供する商用ソフトウエアを使うというベンダーA社の提案では,製品の買い取り費用に加えて5年分の保守費用が見積もりに含まれる。一方,ベンダーB社のPHP5による開発提案では,基盤ソフトウエアの買い取り費用および保守費用は発生しない。ただ,アプリケーションのライフサイクルの中でPHP6への移行が必要になった場合を考慮して,アプリケーションをPHP6に移行するための費用を見積もり金額に含めてある(図1)。
RFPの内容 | OS,ミドルウエア,ソフトウエア部品などは選定し提案すること |
---|---|
アプリケーションの稼働期間は5年とする | |
5年間の保守に必要なトータル金額を見積もりに盛り込むこと | |
A社の提案 | 開発ツールはX社製品を提案する |
5年間のサポートはX社が保証している | |
B社の提案 | 開発ツールはPHP5を使用 |
5年間のサポート継続は保証されていないので,PHP6への移行費用を参考見積もりとして提示する |
このように比較してみると,アプリケーションのライフサイクル全体で発生するトータル金額を把握することができ,安全なアプリケーションを維持するための予算を確保しやすくなる。トータル金額によるコンペを実施することにより,セキュリティ要件の実現に市場原理を持ち込み,コストを削減できる可能性も広がる。
最後に,ここまでの説明内容を5W1Hに基づいたガイドラインにまとめておく。
いつ(When) | 見積もり,あるいはシステム化計画時に |
---|---|
どこで(Where) | 基盤ソフトウエア選定のところで |
誰が(Who) | プロジェクトマネージャあるいはアーキテクトが |
何を(What) | 保守継続中にセキュリティ・アップデートが可能となることを確認する |
なぜ(Why) | ソフトウエア基盤のぜい弱性対策をタイムリーに行える製品を選定するために |
どうやって(How) | アプリケーションの稼働年限の確認 候補となるソフトウエアのライフサイクル・ポリシーの確認と保守費用の見積もり取得 基盤ソフトウエアの保守保証期間が十分でない場合の代替案と概算費用の算出 |
いつ(When) | RFP作成時に |
---|---|
どこで(Where) | 基盤ソフトウエア選定基準提示のところで |
誰が(Who) | RFP作成者が |
何を(What) | 保守継続中にセキュリティ・アップデートが可能となることを保証させる |
なぜ(Why) | ソフトウエア基盤のぜい弱性対策をタイムリーに行える製品を選定するために |
どうやって(How) | アプリケーション稼働年限の明示 稼働年限内に基盤ソフトウエアを維持するために必要な方法と費用を提出させる |