社会的に影響が少なければクラウド
企業システムの開発で、システムの品質としてとかく問題となるのが非機能要件の定義と実装と言われたりします。ビジネスプロセスで定義できる機能要件と比べると非機能要件は、ユーザーの認識とIT部門の注意は、コストなどのプレッシャーの中で希薄になりがちです。
クラウドの評価にも非機能要件は重要だと思いますが、といっても多様な項目がありすぎるので、それをうまく整理したものがないかなと探していました。国内のITベンダーが非機能要件の整理をし、システム検討に使いやすいようにまとめた非機能要求グレード検討会の資料を見つけました。
この資料は、まず非機能要件を6つのグループに分けています。可用性、性能/拡張性、運用/保守性、移行性、セキュリティ、環境/エコロジー、がそれです。その上でシステムのトラブルが与える影響範囲により3つのシステムに分類にし、非機能要件の基本的なレベルをあげています。
① 社会的な影響の極めて大きいシステムで社会経済活動の基盤 - 99.999%の可用性、ディザアスタリカバリー、性能面のサービスレベルを規定、重要資産の保有ありなど
② 社会的な影響の限定されるシステムで企業活動の基盤 - 99.99%の可能性、拡張計画あり、災害時一週間以内の復旧、重要資産の保有ありなど
③ 社会的な影響の殆どないシステムで企業の特定部門利用 - 99.9%の可用性、拡張性を意識していない、災害時に再構築して復旧、重要資産の保有なしなど
さてクラウドではとかく非機能要件に弱いといった噂があります。ただ考えてみれば、例えばAmazon Web Servicesは99.95%のSLAとAmazon.comに比するセキュリティー基準、Salesforceは99.95%の実績でデータを遠隔地にミラーリングし、SAS 70 Type IIの監査基準を満たす、など様々な形で非機能要件の充実ぶりを表現しようとしています。
非機能要件の項目にもよるかとおもいますが、これらのクラウドは上の3つのシステム分類からすると、粗っぽくは②か③かその間くらいに位置づけられそうな要件を持つと言えるように思えます。
一般の企業システムでは、ミッションクリティカルな、おそらく上の①に関するシステムはIT部門で厳しく非機能要件を管理していると推察されます。ただ企業内の大多数のシステムは②または③のシステムがほとんどではないかと思います。
みなさんのまわりの企業システムで非機能要件を決めて、管理されているものがどれだけあるか。日々遭遇するシステムトラブルの多くの要因が、非機能要件の不十分さなどからくるとも言われたりします。
まだまだ改善の余地はあるにせよ、多くのクラウドが実績とともに非機能要件を明示しようとしている現状を考えると、企業内の大多数のシステムは、クラウドに乗せることで非機能要件が実績とともに明示され、場合により向上するのではと思えてきます。