©2015 Mitsubishi Electric Corporation
D-Case適用拡大に向けて~アジャイル開発への適用事例~
2015.09.18
三菱電機(株) 森 素子
e-mail: [email protected]
1
ソフトウェア品質シンポジウム2015
©2015 Mitsubishi Electric Corporation
自己紹介
• 三菱電機(株)通信機製作所
(兵庫県尼崎市)
• 業務:新人へのソフトウェア設計の教育
–新人と一緒にソフトウェアを製造
–主にアジャイルプロセス
2
ソフトウェア品質シンポジウム2015
©2015 Mitsubishi Electric Corporation
はじめに D-Caseとの関わり
3
時期 関わり
2013年9月 SQiPシンポジウム2013でD-Caseを知る
2013年10月~ D-Caseを開発に適用
2014年9月 SQiPシンポジウム2014でD-Caseについて発表 2014年度 Best Report Future Award 受賞
2014年10月~ ・DEOS入会、D-Case研究会に参加・ET2014等、複数回D-Caseについて発表
2015年9月 SQiPシンポジウム2015でD-Caseについて発表(招待)
SQiP シンポジウム
知見・出会い
発表
ソフトウェア品質シンポジウム2015
©2015 Mitsubishi Electric Corporation
D-Caseとは
• システムのディペンダビリティについて説明、合意するためのツール、記法のこと
• ディペンダビリティとは
– システムの提供するサービスを安心して継続的に利用できること
• ディペンダビリティ技術推進協会(DEOS協会)にて提唱されている
4
http://www.dcase.jp/ (D-Case) http://deos.or.jp/index-j.html (DEOS)
D-Caseロゴ
ソフトウェア品質シンポジウム2015
©2015 Mitsubishi Electric Corporation
D-Caseの記法
5
達成できない
合意
主張したいこと
議論の仕方
主張や戦略の前提
となる情報
ゴールを保証する証拠
ソフトウェア品質シンポジウム2015
©2015 Mitsubishi Electric Corporation
2014年度の発表内容
シミュレータ開発への適用
パラメータA
パラメータB
パラメータC
シミュレーション計算
評価値A
評価値B
評価値C
パラメータA
パラメータC
パラメータB
パラメータに順位づけ
7
シミュレータ概要
どういう順序が正解か事前にわからない →期待結果が決められない
有識者(Aさん)
ドメインに詳しいAさんには経験則がある
©2015 Mitsubishi Electric Corporation
2014年度の発表内容
8
ゴール 相対的な順序付けができる
ゴール 経験則のある条件の場合、 計算結果が経験値通りである
戦略 経験則有無で分解
ゴール 経験則が無い条件の場合、 計算結果が妥当である
証拠
経験値との比較結果
戦略
別の検証手段の有無で分解
前提 Aさんの経験則
ゴール 別の検証手段がある場合、 計算結果が妥当である
証拠 検証結果
ゴール 別の検証手段が無い場合、 計算結果が妥当である
未達成
手戻りを防げた!
成功事例が作れた。 適用拡大だ!
©2015 Mitsubishi Electric Corporation
適用拡大に向けて
9
合意形成 説明責任
D-Case
D-Caseの目的
客先との 調整・・?
品質保証 ・・?
ソフトウェア品質シンポジウム2015
©2015 Mitsubishi Electric Corporation
適用拡大に向けて
10
D-Case
説明責任
かなり敷居が高い 合意形成
ステークホルダ(客先)がD-Caseを理解
ステークホルダ(客先)がD-Caseを使うことに合意
頻繁にレビュー、合意を行う
自分がD-Caseで論証できる
ソフトウェア品質シンポジウム2015
©2015 Mitsubishi Electric Corporation
適用拡大に向けて
11
合意形成
説明責任
D-Case
自分(たち)の活動や 成果物が妥当であること を説明する。
・設計内容・活動の効果・テスト内容、エビデンス
まずは説明責任に注力しよう
ソフトウェア品質シンポジウム2015
©2015 Mitsubishi Electric Corporation
効果的なデモをするには
• 目的:自分たちの提案するツールを使ってもらうために効果手なデモを行いたい
• ステークホルダ:社内の開発者、関係会社の開発者
• デモを実施する前に、デモが効果的であるかをD-Caseを書いてチェック
• デモ成功。ツールが採用された。
13
©2015 Mitsubishi Electric Corporation
アジャイル開発の進め方
16
フィーチャ
フィーチャ
ユーザーストーリ
ユーザーストーリ
ユーザーストーリ
フィーチャ分析ユーザーストーリ
分析 ニーズ分析
ニーズ
製造、テスト リリース
ニーズ
品質特性表
©2015 Mitsubishi Electric Corporation
品質特性表
品質特性
フィーチャ
機能性 信頼性 使用性 ....
1.画面自動操作 出来る限り人間のUI操作を模擬すること
**時間継続できること
2.シナリオ自動生成 条件を入力しやすいこと
: : : :
17
画面を自動テストするツールの例
特性基準(コンテキスト)とする
ソフトウェア品質シンポジウム2015
©2015 Mitsubishi Electric Corporation
D-Case実例(画面自動操作)
19
無効化されたテキストボックスに入力できてしまう不具合を発見。他の部品でも同様の確認
内部的な行選択では
イベント発生しないため、マウスクリック操作を実装
©2015 Mitsubishi Electric Corporation
D-Case適用の効果
• 繰り返し開発の中で、振る舞いや性能に一貫性が保たれる。
• 品質特性に対してテストの網羅性が確保できる。
一方、、
• 全機能の網羅が証明出来るわけではない。別のやり方が必要。
20
ソフトウェア品質シンポジウム2015
©2015 Mitsubishi Electric Corporation
D-Case適用時に陥りやすいこと
• 特性基準(あるべき姿)なしに分解。
21
・普通に関数ごとに単体テストしたと言っているだけ。
・テストで何を確認するか、という視点を述べないとD-Caseを書く効果もあまりない
D-Caseは特性基準が大事
©2015 Mitsubishi Electric Corporation
今後の展開
• 現在は、説明責任への適用にとどまっているが、今後合意形成の適用へ。
• DEOS協会(D-Case部会)の活動
– D-Case教育のシラバス作成
http://deos.or.jp/link/obj/pdf/D-Case_syllabus_v1.11.pdf
– D-Caseの適用事例の収集
http://www.dcase.jp/
– D-Caseのパターン集の作成を予定。
22
ソフトウェア品質シンポジウム2015
©2015 Mitsubishi Electric Corporation
最後に
• D-Caseは考える機会を与えてくれるツール
23
合意形成 説明責任
D-Case
考える
ソフトウェア品質シンポジウム2015