第8回 ソフトウェア品質特性Ⅱ
前回、ソフトウェア品質特性の概要についてお話ししましたが、今回はもう少し詳しく解説していきます。ソフトウェア製品の品質に関する規格は、国際規格ISO/IEC、国内規格JISともに25010が基準となります。業界では「SQuaRE」シリーズと呼ばれ、品質要求および評価の基準を示した規格です。内部品質として下記8特性があります。
【1】機能適合性 【2】性能効率性 【3】互換性 【4】使用性 【5】信頼性 【6】セキュリティ 【7】保守性 【8】移植性
※この特性は時代に合わせて定期的に見直しが行われていて、現行版は2013年に作成されたJISX25010ですが、現在次のバージョンの検討が行われています。最終的にまとまるのは来年度以降になりますが、国際規格会議で「セイフティ」の追加が検討されています。
いつの時代も行きつくところはセキュリティ
【6】セキュリティは、品質8特性とは切り離して独自に検証・制度化されています。製品においての定義は限定的となっていますので注意が必要です。セキュリティはIT社会の中で最大の課題であり、重要な品質特性ですので、切り離して考えるのは当然の判断でしょう。
最近でも、中国のハッキング集団が日本の防衛省のシステムに侵入したことを、米国から発表されたというニュースがありましたね。日本の大臣からは「重要な情報漏洩は確認されていない」と記者会見がありましたが、米国との重要な共同作戦が漏洩したとしたら重大な事態です。また個人においても、個人情報の流出や、なりすましメールによる詐欺事件は何年経ってもなくなりません。サイバーテロは人々の生活を脅かしています。
ただ、残念ながらこの手の攻撃からすべてを守るセキュリティシステムはありません。相応の知識を有した技術者が悪意を持って操作をすればあらゆることが実現できてしまうのもIT環境のデメリットです。それだけに、いたちごっこだと言われても、その時その時における最新のセキュリティ対策を継続することで将来的には安全性の高いIT社会が実現できます。
互換性という壁
また【3】互換性についてですが、もともとソフトウェア製品では、一定の動作環境を制限することでその機能性について品質を検証してきました。しかし、iOSや新しいOSが登場してきたころから、共存や相互運用性が要求され制限を拡大する必要が出てきました。これは例えば、PCやタブレットの垣根がなくなり、どんな状況でも完全かつ正確に動作することが要求されているということです。
特にスマートフォン(スマホ)の影響は大きく、国内ではスマホで稼働しないアプリは売れないとまで言われています。厄介なのでこのスマホでアンドロイドOSの無料化で多くのメーカーが採用しましたが、共通部分はよいのですがバージョンの数とメーカーの数分だけOSの違いがあると言われ、標準のJAVAベースで開発しても実際のスマホで動作確認しないと不具合が確認できません。パソコンであればOSのバージョンについてはある程度浸透していますが、スマホのOSに関しては一般のユーザーは全く意識することなく使用していますので、正しく動作しないとのクレームにより発覚する不具合も多々あります。最近では開発の共通インフラが進み改善されていますが、この方面のアプリ開発を予定している企業は十分な注意が必要です。
ここまでの話は品質モデルの中の製品品質についての改正点を述べましたが、利用時の品質も大きく改正される予定です。この点については次回にお話ししますが、リスク回避や利用状況網羅性といった新しい観点での品質要求もあります。製品やサービスを提供する企業としては、刻々と変化する品質要求やユーザー要求にしっかりと応えることが業績UPにつながりますので、次回もよろしければぜひお読みください。