SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

QA to AQ:アジャイル品質パターンによる、伝統的な品質保証からアジャイル品質への変革

品質のアジャイルなあり方:「QAを含むOneチーム」「品質スプリント」「プロダクト品質チャンピオン」

QA to AQ 第2回


品質スプリント

  • パターン:品質スプリント((原題 Quality Focused Sprints 原著 Joseph Yoder, Rebecca Wirfs-Brock, Ademar Aguilar)[1]

「品質は行為ではなく、習慣である」――アリストテレス

 機能だけでは実行可能なシステムにはなりません。むしろ、実行可能なシステムは、システムの品質に注意を払いながら機能に焦点を当てることによって達成されます。

 あなたは機能を実装することに集中してきました。動くソフトウェアを各スプリントで届けています。しかしあなたは、より多くのユーザー、より多くのデータ、より多くのトランザクション、その他が存在する本番環境の要件を満たしていないことを心配しています。

 どうすればこれらの非機能要件を必要なタイミングでシステムに組み込むことができるでしょうか?

***

 必要な機能に優先順位を付けて実装することで、プロジェクトは前進し続け、顧客から肯定的なフィードバックが得られます。ただし、重要なセキュリティ、パフォーマンス、およびまだ対処されていないその他の品質特性がある場合、機能に焦点を合わせただけではリリースできるほど十分に優れたシステムは生まれません。

 一方で、特定の非機能要件に集中しすぎると、早すぎる段階で抽象化と最適化を行ってしまう可能性が生じます。各スプリント期間で、どのシステム品質特性に焦点を当てるべきかを知るのは難しい場合があります。

***

 そこで、ソフトウェアの非機能品質に集中することに時間をかけ、1つないしはそれ以上のシステム品質特性の測定と改善に特化したスプリントを設けます。

 このスプリントの目的は、新機能を届けることではなく、達成すべき結果へ向けてより良いシステムを届けることに集中することであることを、関係者に理解させます。

 パフォーマンスに重点を置いている場合、スプリントの目標は、具体的な改善領域を特定することです。他のスプリントと同様に、作業を特定して優先順位を付け、バックログを作成する必要があります。ただし、品質スプリントでの作業の特性は異なります。機能に関するストーリーの代わりに、改善しようとしている品質特性に関するストーリーを特定して優先順位を付ける必要があります。

 作業している品質特性に応じて、実行するタスクは異なります。また、これらのタスクの一部は、他のタスクよりも簡単に見積もることができます。

 パフォーマンスが心配な場合は、システムの重要な部分をチューニングする前に現在のパフォーマンスを測定する必要があります。パフォーマンス改善の程度を正確に予測することは困難ですが、品質のストーリーを、現在のパフォーマンスの測定、負荷テスト、システムのホットスポットの分析、設計のやり直しといった見積もり可能なタスクに分割する必要があります。

 1つの品質特性を改善すると、他のシステム品質特性に影響を与える可能性があります。ユーザビリティの改善を行うと、ユーザーとシステムの相互作用を修正し、システムAPIを作り直すことになるかもしれません。また、ユーザビリティの実験またはA/Bテストを実行するまで、「より良い」ユーザーインタラクションアプローチが明確でない場合があります。

 したがって、品質スプリントの「完成(Done)」の定義には、改善の実装と検証以上のものが含まれます。品質改善が既存のシステム機能に与える影響を測定し、場合によっては品質受け入れ基準または着陸ゾーンを改定することも必要になるかもしれません。

次のページ
プロダクト品質チャンピオン

この記事は参考になりましたか?

QA to AQ:アジャイル品質パターンによる、伝統的な品質保証からアジャイル品質への変革連載記事一覧

もっと読む

この記事の著者

鷲崎 弘宜(ワシザキ ヒロノリ)

 早稲田大学 研究推進部 副部長・グローバルソフトウェアエンジニアリング研究所所長・教授。国立情報学研究所 客員教授。株式会社システム情報 取締役(監査等委員)。株式会社エクスモーション 社外取締役。ガイオ・テクノロジー株式会社 技術アドバイザ。ビジネスと社会のためのソフトウェアエンジニアリングの研究、実践、社会実装に従事。2014年からQA2AQの編纂に参画。2019年からは、DX時代のオープンイノベーションに役立つデザイン思考やビジネス・価値デザインからアジャイ...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

長谷川 裕一(ハセガワ ユウイチ)

 合同会社Starlight&Storm 代表社員。日本Springユーザ会会長。株式会社フルネス社外取締役。 1986年、イリノイ州警察指紋システムのアセンブリ言語プログラマからスタートして、PL,PMと経験し、アーキテクト、コンサルタントへ。現在はオブジェクト指向やアジャイルを中心に、コンサルテ...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

濱井 和夫(ハマイ カズオ)

 NTTコムウェア株式会社 技術企画部プロジェクトマネジメント部門、エンタープライズビジネス事業本部事業企画部PJ支援部門 兼務 担当部長、アセッサー。PMOとしてプロジェクトの適正運営支援、及びPM育成に従事。 IIBA日本支部 教育担当理事。BABOKガイド アジャイル拡張版v2翻訳メンバー。ビジネスアナリシス/BABOKの日本での普及活動に従事。Scrum Alliance認定Product Owner。SE4BS構築やQA2AQ翻訳チームのメンバー。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

小林 浩(コバヤシ ヒロシ)

 株式会社システム情報 フェロー CMMコンサルティング室 室長。CMMI高成熟度リードアプレイザー(開発,サービス,供給者管理)。AgileCxO認定APH(Agile Performance Holarchy)コーチ・アセッサー・インストラクター。Scrum Alliance認定ScrumMaster。PMI認定PMP。SE4BS構築やQA2AQ翻訳チームのメンバー。CMMIやAPHを活用して組織能力向上を支援するコンサルテ...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

長田 武徳(オサダ タケノリ)

 株式会社エヌ・ティ・ティ・データ シニアITアーキテクト。ITサービス・ペイメント事業本部所属。2006年入社以来、決済領域における各種プロジェクトを担当後、2018年よりプロダクトオーナ・製品マネージャとしてアジャイル開発を用いたプロジェクトを推進。現在は、アジャイル開発におけるQAプロセスの確...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

田村 英雅(タムラ ヒデノリ)

 合同会社 GuildHub 代表社員。日本 Spring ユーザー会スタッフ。大学で機械工学科を専攻。2001 年から多くのシステム開発プロジェクトに従事。現在では主に Java(特に Spring Framework を得意とする)を使用したシステムのアーキテクトとして活動している。英語を用いた...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

陳 凌峰(チン リョウホウ)

 フリーランサー。2003年に上海交通大学(ソフトウエア専門)を卒業後、2006年から日本でシステム開発作業に従事。技術好奇心旺盛、目標は世界で戦えるフルスタックエンジニア。現在はマイクロサービスを中心にアジャイル 、DevOpsを展開中。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/12200 2020/09/09 17:42

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー