Software Reliability Enhancement Center© 2015 IPA, All Rights Reserved
ET West 2015 IPAセミナー
2015年6月11日
独立行政法人情報処理推進機構(IPA)技術本部 ソフトウェア高信頼化センター(SEC)連携委員/
日本電気株式会社 ソフトウェア生産革新本部 マネージャ
宮崎義昭
つながる世界に向けた品質の考え方~今から始めるSQuaRE(ISO/IEC 25000)シリーズの活用~
3© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
ソフトウェアの品質の定義
ISO/IEC 25010 (サービスおよびソフトウェア製品) 「指定された特定の条件で利用する場合の、明示的または暗示的な
ニーズを満たすソフトウェア製品の能力」
⇒ 利用条件と合わせて品質が決まる(条件により必要な品質も違う)⇒ 暗示的なニーズの考慮も必要
(参考)ISO 9000 (マネジメントシステム) 「本来備わっている特性の集まりが、要求事項を満たす程度」
⇒ 品質は複数の特性から構成される⇒ 要求に対して品質の良し悪しが評価される
4© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
高品質なソフトウェア=バグがないこと? バグとは
「コンピュータプログラムの誤りや欠陥」(wikipedia) 「設計者の認識の有無にかかわらず、すべての成果物において要件定義の誤り、
仕様設計の誤り、プログラミングの誤り、システム構築の誤りなどにより“期待される結果”と乖離があるために、何かしらの対策・対応が必要と考えられる現象またはその原因」
(IPA/SEC 組込みソフトウェア開発における品質向上の勧め〔バグ管理手法編〕)
(参考)規格で定義された関連用語 障害(fault): 「要求された機能を遂行する機能単位の能力の、縮退又は喪
失を引き起こす、異常な状態」 (JIS X 0014:1999) 故障(failure): 「要求された機能を遂行する、機能単位の能力が無くなる
こと」(JIS X 0014:1999) 欠陥(defect): 「意図された用途または規定された用途に関連する要求事
項を満たしていないこと」JIS Q 9000:2006
主に信頼性や保守性に関連する狭義の意味で使われることが多い。
5© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
あらためて品質を考える(背景)
つながるシステムの拡大により、利用者の期待が多様化し、ステークホルダがさらに増大⇒システムの社会的な影響度が増す中で、品質確保の課題はさらに重要になっているといえる
《多様化する利用者の期待》 《多岐にわたるステークホルダ》
《つながるシステムの拡大》
6© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
つながるシステムの例
http://www.meti.go.jp/policy/energy_environment/smart_community/
7© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
IoT(Internet of Things)における品質課題
デバイスの種類が多く、動作プラット
フォームとして指定した組み合わせの全てを検証できない
他の事業者が提供するサービスと同一環境で共存できない
想定する利用者と、製品が必要とする初期設定や操作の難易度が合っていない
開発時には想定されなかった使い方をされ不具合が発生する
新しい使い方に対する利用者のニーズがつかみきれず、想定する利用者にとって実用的で満足できるサービスに
なっていない
利用者の身近で動作する製品の不具合で、身体的、金銭的な危害を及ぼす事故の可
能性がある
通信路上の対策が不十分なため、情報が盗まれる、個人情報が漏えいする、第三者からシステムが乗っ取ら
れる可能性がある
9© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
つながるシステムの開発における課題
各企業や各分野で品質の定義や品質基準が異なる。
その品質の定義や品質基準がオープンになっていない。
分野を跨いで、つながる世界での品質の捉え方が統一されていない。
【対策】ソフトウェア品質を議論できる品質モデルが必要!
10© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
品質モデルの定義と役割品質モデル:品質要求事項の仕様化及び品質評価に対する枠組みを提供する
特性の定義された集合及び特性間の関係の集合ソフトウェア品質特性:ソフトウェア品質に影響を及ぼすソフトウェア品質属性の分類属性:人又は自動的な手段によって、定量的にまたは定性的に識別できる固有の特徴又は特性
多様な品質要件の洗い出しのため、標準化された品質モデルの活用を推奨。 分野に依存しない共通的なモデルをベースにすることで、異業種の製品・サ
ービス連携における品質要件の明確化を期待。
分野B製品・サービス
分野に依存しない標準化された品質モデル(国際規格)
分野A製品・サービス
分野C製品・サービス
分野n製品・サービス
連携システム連携システム
・・・
(JIS X 25000 より)
11© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
ISO/IEC 25000シリーズ、JIS X 25000シリーズ (SQuaRE)
名称:ソフトウェア製品の品質要求及び評価Systems and software Quality Requirements and Evaluation
組織:ISO/IEC JTC1 SC7/WG6 概要:システム及びソフトウェアの多岐にわたるステークホル
ダ(利用者、発注者、開発者など)が持つ多様な品質要求を定義し、その実装を評価するための共通の考え方を示す国際規格
ISO/IEC 25050~ISO/IEC 25099SQuaRE拡張
ISO/IEC 2501n品質モデル
ISO/IEC 2500n品質管理
ISO/IEC 2502n品質測定
ISO/IEC 2504n品質評価
ISO/IEC 2503n品質要求
SQuaREの構造
12© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
SQuaRE規格の内容部門 規格番号 内容
品質管理部門
ISO/IEC 25000
システム及びソフトウェアの品質要求定義と評価に関する基本概念と用語を定義
ISO/IEC 25001
SQuaRE の考え方に沿って品質要求定義や品質評価を実施する組織が、それらに関する技術やノウハウを蓄積し、標準化し、プロジェクトでの適用を支援し、改善するサイクルを規定
品質モデル部門
ISO/IEC 25010
システム及びソフトウェアの品質の構造をモデル化し、それを構成する品質の観点(品質特性及び品質副特性)を、利用時の品質モデル及び製品品質モデルとして定義
ISO/IEC 25011(審議中)
システム及びソフトウェアを用いたサービスの品質の構造をモデル化し、それを構成する品質の観点(品質特性及び品質副特性)をサービス利用時の品質モデル及びサービス製品品質モデルとして定義
ISO/IEC 25012
システム及びソフトウェアが処理するデータの品質の構造をモデル化し、それを構成する品質の観点(品質特性)をデータ品質モデルとして定義
品質測定部門
ISO/IEC 25020
品質測定の基本概念と作業要件を規定ISO/IEC 25021 品質測定量の算出によく用いられる要素(例:規模、欠陥数など)を品質測定量要素(QME: Quality Measure Elements)として定義
ISO/IEC 25022(審議中)
ISO/IEC 25010 の利用時の品質モデルの品質特性/品質副特性を定量化するのに用いる品質測定量を定義
部門 規格番号 内容
ISO/IEC 25021
品質測定量の算出によく用いられる要素(例:規模、欠陥数など)を品質測定量要素(QME: Quality Measure Elements)として定義
ISO/IEC 25023(審議中)
ISO/IEC 25010 の製品品質モデルの品質特性/品質副特性を定量化するのに用いる品質測定量を定義
ISO/IEC 25024(審議中)
ISO/IEC 25012 のデータ品質モデルの品質特性を定量化するのに用いる品質測定量を定義
品質要求部門
ISO/IEC 25030
品質要求定義の基本概念と作業要件を規定品質評価部門
ISO/IEC 25040
品質評価の基本概念と作業要件を規定
ISO/IEC 25041
開発者、取得者、独立評価者のそれぞれの立場に応じた品質評価の進め方を規定
ISO/IEC 25045
回復性(Recoverability)の実用的な品質測定量を規定
拡張部門
ISO/IEC 25051
品質保証部門や独立評価機関が実施する既製ソフトウェア製品(RUSP: Ready to Use Software Product)の第三者評価を規定
ISO/IEC 25060 ~66(一部審議中)
ユーザビリティの要求定義と評価に用いる様式を規定
13© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
ISO/IEC 250xx(JIS X 250xx)の品質モデル
品質モデル
製品品質モデル データ品質モデル 利用時の品質モデル
人間-コンピュータシステム
情報システム 通信システム
対象コンピュータシステム
コンピュータハードウェア
非対象ソフトウェア
対象ソフトウェア
対象データ
非対象データ
一次利用者二次利用者
または間接利用者
利用環境
その他の利害関係者品質モデルが直接対象とする実体
利用時の品質に影響を与えるいくつかの要因
JIS X 25010:2013 より作成
ISO/IEC 25012:2008ISO/IEC 25010:2011 ISO/IEC 25010:2011
14© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
システム/ソフトウェア製品品質、利用時の品質
JIS X 25010:2013システム/ソフトウェア製品品質
JIS X 25010:2013利用時の品質
セキュリティに関連する特性
セーフティに関連する特性
他の品質特性との関係を理解し、広い観点で品質設計する!
機能の豊富さ、操作のしやすさなど、製品自体が備えている特徴から見た品質
作業効率の向上、使った時の満足感など、その製品の利用者に対する影響から見た品質
15© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
データ品質
JIS X 25012:2013データ品質
ソフトやハードの品質が十分でも、扱うデータの品質が悪ければ、利用者から見える品質は低くなる!つながるシステムにおいて、データ品質の重要性は高い。
16© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
デバイスの種類が多く、動作プラット
フォームとして指定した組み合わせの全てを検証できない
他の事業者が提供するサービスと同一環境で共存できない
想定する利用者と、製品が必要とする初期設定や操作の難易度が合っていない
開発時には想定されなかった使い方をされ不具合が発生する
新しい使い方に対する利用者のニーズがつかみきれず、想定する利用者にとって実用的で満足できるサービスに
なっていない
利用者の身近で動作する製品の不具合で、身体的、金銭的な危害を及ぼす事故の可
能性がある
通信路上の対策が不十分なため、情報が盗まれる、個人情報が漏えいする、第三者からシステムが乗っ取ら
れる可能性がある
品質モデルに基づく課題・要件の洗い出し
《互換性》《相互運用性》
《共存性》
《使用性》
《信頼性》《可用性》 《機密性》
《実用性》《満足性》
《リスク回避性》
品質モデルを利用することで、品質要件の洗い出しの観点が広がり、かつ、共有や再利用が容易になる。
17© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
品質の測定 国際規格の主要部分は今後、正式に承認される見込み。
ISO/IEC 25022 Measurement of quality in use ISO/IEC 25023 Measurement of system and software
product quality ISO/IEC 25024 Measurement of data quality
品質要件項目毎に定量的な測定方法を決め、「測定 ⇒ 評価 ⇒ 改善」のサイクルを回す、が基本。
測定量例 機能適合性: 実装された機能数/要求仕様の機能数 信頼性: テスト密度、不具合収束率 保守性: サイクロマティック数、凝集度 使用性(習得性): マニュアルの使いやすさ=例題数/機能数 有効性: 完了した作業数/試みた作業数 安全性: 障害報告数/利用者総数
18© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
SQuaRE(品質モデル)の活用
取得者(顧客)
■利用方法 自身の要求を、品質特性をもとに整理 定量/定性的な基準を設定し比較検討■メリット 重視する品質が明確になる 組織内の合意形成
機能適合性?セキュリティ?
効率性?
使用性?
《製品・サービスの選定》
製品・サービス
19© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
SQuaRE(品質モデル)の活用
事業者(開発者)
《発注元要求仕様の明確化》
■活用方法 品質要求を品質特性で整理・仕様化 品質測定量を用いた評価基準の設定 開発の主要なマイルストーンで工程終了
や出荷可否の判断に利用■メリット 機能要件と合わせて品質要件を事前に合
意(契約後のトラブル防止)⇒ 顧客からの信頼向上
品質の作り込み計画が設定し易くなる 組織的な情報共有やノウハウの蓄積
■活用方法 SQuaREに基づいた情報交換や、
システム品質要件の明確化■メリット 企業や業界をまたがった意思疎通
(コミュニケーション)の円滑化 高品質な製品・サービスの提供
取得者(顧客)
品質要求仕様
開発計画
《つながるシステムにおける事業者間の合意形成》
事業者
事業者
20© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
SQuaRE(品質モデル)の活用
事業者(供給者)
《第三者による独立評価》
■利用方法 国際規格の要求事項に準じて認証
機関が認証■メリット 客観的な製品・サービスの評価
(属人生の排除) 利用者に対する品質説明力の強化 利用者の安全・安心
取得者(利用者)
独立評価者(認証機関)
評価依頼評価(認証)結果の公開
品質説明
21© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
SQuaRE活用のポイント
品質要件の明確化品質は高ければよいというものではない(適正品質の確保)品質モデルを使って網羅性を考慮しつつ、細分化することで
管理が容易になる
品質計画の明確化定量的な目標設定と評価計画どの開発工程でどの品質をどれだけ作り込むか
重要な品質特性(副特性)を選択想定利用者や製品戦略等に従い優先順位をつける
標準的なモデルを利用することで再利用を可能に開発手法の普及、定量的品質管理などを組織的な取り組みに
22© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
IPA/SECの取り組み
品質要求の定義
設計、製造
検証(エビデンス収集)
第三者による評価(認証)
利用者への説明
「ソフトウェア品質説明のための制度ガイドライン」(平成25年6月公開済み)
第三者が品質を評価する制度の設計において考慮すべき事項を記載(43項目)
製品・サービスを提供する事業者が理解しておくべき品質に関する基本的な知識と、国際規格SQuaREの活用についてわかりやすく解説
「つながる世界のソフトウェア品質ガイド」(2015年6月書籍発行済み)
品質説明のステップ
23© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
IPA「ソフトウェア品質説明のための制度ガイドライン」
目的 技術の進化が速く、国際標準等の整備が十分でない分野において、客観
性のある品質基準や第三者評価の仕組みを整備することで、高品質な製品・サービスの普及を促進し、利用者の安全・安心につなげる
何らかの障害発生時に、事業者が品質に対する説明責任を果たせる環境を整備することで、事業者の参入障壁を緩和する
対象利用者 新たな認証の仕組みを構築したいというニーズを
持ち、制度の企画、構築及び運用に責任を持つ組織・団体
内容 制度が公正性を持ちかつ継続的に運用されるため
の制度設計のポイントを解説 制度責任主体の順守事項や、制度規定文書に記載
すべき事項を規定(分野に依存しない43項目)平成25年6月公開
URL http://www.ipa.go.jp/sec/reports/20130612.html
24© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
制度ガイドラインにおける制度フレームワーク
•制度構成要素・・・制度責任主体と異なる組織で専門性や独立性が要求される一部の役割担う
•制度責任主体・・・ソフトウェア品質説明力強化の考え方に沿った個別制度の企画、設計、運用、改善に責任を持つ組織
審査をする組織(制度構成要素)
制度運用審査基準を策定する組織(制度構成要素)
制度責任主体
制度内容や審査基準の公開
供給者
申請
結果
適
制度に対する要望・苦情等
製品選択、購入
●●●制度
利用者
制度内容や審査基準、判定結果の公開
制度をレビューする組織(制度構成要素)
判定をする組織(制度構成要素)
適
25© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
「つながる世界のソフトウェア品質ガイド」
「つながる世界のソフトウェア品質ガイド~あたらしい価値提供のための品質モデル活用によるソフトウェア開発のすすめ~」 製品・サービスを提供する事業者が理解しておくべき品質に関する
基本的な知識を分野事例を交えて紹介 国際規格SQuaREの活用についてわかりやすく解説
ソフトウェア品質ガイド編(約100頁)
品質をあらためて考える背景、国際規格SQuaREの概要、ユーザビリティ/セーフティ/セキュリティなど重要な品質に関する解説、品質向上に向けた改善ポイント、品質説明と第三者評価、などについて分かりやすく説明。
SQuaRE品質モデル活用リファレンス編(約110頁)
国際規格SQuaREで規定された品質モデル(製品品質、利用時の品質、データ品質)について、品質特性/品質副特性の各項目について、説明/ニーズ例/測定量の例等を記載。実際に品質要件の洗い出しや評価計画を作成する場面で、作業効率を期待。
2015年6月に書籍として発行済み(IPA/SECホームページにてダイジェスト版公開中)。https://www.ipa.go.jp/sec/reports/20150331_1.html
28© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
まとめ
つながるシステムにおける品質確保の難しさ 多様化するニーズ 多岐にわたるステークホルダ 事業者や業界をまたがる品質に関する共通言語の必要性
SQuaRE(品質モデル)の活用 システム・ソフトウェア領域における分野に依存しない共通的な品質モ
デルを規定した国際規格 品質特性/副特性に基づいて品質を整理することで、要件の洗い出しや
計画的な作り込みと評価が容易になる 取得者/事業者/独立評価者などの立場で広く活用が可能
「つながる世界のソフトウェア品質ガイド」等を参考に、SQuaREの積極的な活用をお願いします。
29© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
Windows Server 2003のサポートが、2015年7月15日に終了します。サポート終了後は修正プログラムが提供されなくなり、脆弱性を悪用した攻撃が成功する可能性が高まります。
サポートが継続しているOSへの移行検討とOS移行に伴う周辺ソフトウェアの影響調査や改修等について計画的に迅速な対応をお願いします。
会社の事業に悪影響を及ぼす被害を受ける可能性があります
IPA win2003 検索詳しくは
またWindowsXPを利用されている方はサポートが継続しているOSへの移行検討をお願いします
脆弱性が未解決なサーバ
脆弱性を悪用した攻撃
ホームページの改ざん
重要な情報の漏えい
他のシステムへの攻撃に悪用
業務システム・サービスの停止・破壊
データ消去
Windows Server 2003のサポート終了に伴う注意喚起
30© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
「iパス」は、ITを利活用するすべての社会人・学生が備えておくべきITに関する基礎的な知識が証明できる国家試験です。
ITパスポート公式キャラクター上峰亜衣(うえみねあい)
【プロフィール:マンガ】 https://www3.jitec.ipa.go.jp/JitesCbt/html/uemine/profile.html
31© 2015 IPA, All Rights Reserved Software Reliability Enhancement Center
IPA ソフトウェア高信頼化センター(SEC)Software Reliability Enhancement Center , Information-technology Promotion Agency , Japan
で、IPA/SECの事業内容やセミナー動画をCheck!
●SEC事業紹介http://www.ipa.go.jp/sec/about/index.html
●SECセミナーオンデマンドhttp://sec.ipa.go.jp/seminar/ondemand/
Twitterで、IPA/SECの最新情報をCatch!
https://twitter.com/IPA_SEC
アカウント名:@IPA_SEC
SWE iPediaで、IPA/SECの事業成果をSearch!
探したい情報を
分類やキーワードで検索!
http://sec.ipa.go.jp/sweipedia/
IPA/SECウェブサイトで利用者登録!IPA/SECウェブサイトから利用者登録(無料)をすると、メルマガ・DMの購読や、セミナーの参加申込み、ツールの利用などができます。是非、ご登録ください!
https://sec.ipa.go.jp/entry/index.html
↓詳しくは、SECウェブサイトをClick!
ソフトウェア高信頼化センター検索