あらすじ

東芝テックでは、スマートデバイスアプリやクラウドサービスなどの新しい技術を取り入れたプロジェクトが増加していました。ウォータフォール開発を信じてやまない現場でも、事業部を越えた連携や他業種との連携が必要な、ステークホルダの調整が難しいプロジェクトが増え、「要件が決まらない」「仕様の追加・変更の多発」「つくってみないとわからない製品」といった課題に直面しました。そして、新しい技術に対応するため新たな協力会社に外注したところ、アジャイル開発を持ち掛けられました。
これが、東芝テックのアジャイル開発の始まりです。

協力会社に巻き込まれた形でしたが、東芝 インダストリアルICTソリューション社でプロセス改善を担当している石井さんとともに、東芝テック主導でアジャイル開発を導入しました。

今回の発表では、東芝テックで品質保証を担当している新井さんが、アジャイル開発導入を通じて考えた以下3点について紹介します。

  • Q1.アジャイル開発に品(品質保証)を巻き込まなきゃいけないの?
  • Q2.組織の標準アジャイルプロセスは必要なの?
  • Q3.アジャイル開発の中で品(品質保証)はどう関わったの?

公開資料「品質保証部門とアジャイル開発推進部門が一緒に歩んだアジャイル開発導入」p.6

aj2016report_13_06_600

Q1.アジャイル開発に品(品質保証)を巻き込まなきゃいけないの?

品質保証部門は本来、「かかりつけ医」のようなものと言われます。安心して製品を出荷できるように定期診断をしたり、開発のやり方(ルール)を変えたいときの相談窓口になったりします。開発のやり方が変わったことを知らないと、品質保証部門が問題の所在や良否の判断を誤ってしまうので連携は重要です。

今回、アジャイル開発を取り入れることになった設計部門では、やりたい気持ちと不安な気持ちが入り混じっていました。そこに石井さん率いる推進部門が加わり、品証、設計、推進の3部門で協力体制を組むことになりました。

3部門それぞれの思いは以下のようなものでした。

  • 品証:品質を保ちたい
  • 設計:やり方をよくし、要求定義を固めて早く開発に入りたい
  • 推進:既存プロセスと整合性を取りつつ、アジャイル開発のポイントを落とさないようにしたい

協力会社主導の巻き込まれアジャイルでは、詳細が見えず、品質保証部門が関わることはできませんでした。3部門体制が組まれたことで、品質保証部門も「かかりつけ医」の役割を果たすことができるようになりました。

A1.アジャイル開発には品(品質保証)も必要不可欠。推進部門がいれば、さらに安心。

Q2.組織の標準アジャイルプロセスは必要なの?

お医者さんが検査結果から健康状態を判断するように、品質保証部門にも判断基準が必要です。たとえば、以下のようなものです。

  • 必要なドキュメントはつくられているか?
  • 公的規格に準拠し、必要な手続きは実施されているか?
    • 節目レビュー
    • 規格監査
    • 輸出管理

公開資料「品質保証部門とアジャイル開発推進部門が一緒に歩んだアジャイル開発導入」p.15

ウォータフォールからアジャイル開発に変わっても、既存プロセスはそのまま使えるでしょうか。
残念ながら、節目レビューの時期、対象物、品質基準が異なります。ウォータフォール開発のレビュー時期は、開発フェーズの区切りでありドキュメント中心ですが、アジャイル開発のレビュー時期は、スプリントの区切りでプログラムが中心です。アジャイル版の標準プロセスが必要なのです。

そこで注目したのはDAD(ディシプリンド・アジャイル・デリバリー:Disciplined Agile Delivery)でした。初期計画フェーズが充実している点などが現場のコンテキストに合っていました。
aj2016report_13_02_600

方向付けフェーズの最初に行う「プロセスの選択」ではアジャイル開発で実施する目的を確認し、プロセスはアジャイル成熟度によって選択できるようにしました。
aj2016report_13_03_600

節目レビューには商品企画部門も参加します。
実際の開発では、方向付けフェーズを2週間、続く構築フェーズは2週間のスプリントを3回実施します。その後、1ヵ月の移行フェーズを設けました。

A2.アジャイル開発の成熟度に合わせた選択式のプロセスが有効。

Q3.アジャイル開発の中で品(品質保証)はどう関わったの?

アジャイル開発の定着を後押しするため、品質保証部門では次のような活動を行いました。

  • 品質基準を協力会社と合意
  • 開発状況・品質状況をモニタリング
  • アジャイルプロセスの妥当性チェック

公開資料「品質保証部門とアジャイル開発推進部門が一緒に歩んだアジャイル開発導入」p.23

新しいプロセスを導入し成功させるには、例外ケースへの備えが重要であり、新規点・変更点のリスクヘッジが必要です。どこまで対応できているのかモニタリングを行い、我流アジャイルの頃と比較しました。
その結果、我流アジャイルの頃よりも「持ち越し不良」は軽減、従来品質より不具合密度、テスト密度ともに高く推移。しかし、テスト効率性に課題があることがわかりました。この課題を解決するため、総合テストはウォータフォールで実施しています。
aj2016report_13_04_600

アジャイル開発の導入にあたり、「管理プロセス」「モニタリング」「設備配備」の3つの軸で整理すると、既存のやり方とは異なる部分が多く見つかりました。これらは、新しい仕事に必要なスキル教育として示すことができました。
aj2016report_13_05_600

また、アジャイル開発にふりかえりは欠かせないので、関係者にアンケートを取り改善につなげています。

プロセスについては改善要望が多く、まだまだ未熟なところも見受けられますが、大きな成果も見えてきました。要求定義の最適化が図れたことで、アジャイル開発プロジェクトは類似プロジェクトに比べ、要求定義の期間が33%も減少したのです。
「品質を保ちたい」品証、「やり方をよくし、要求定義を固めて早く開発に入りたい」設計、「既存プロセスと整合性を取りつつ、アジャイル開発のポイントを落とさないようにしたい」推進の3部門が協力することで実現できた成果です。

A3.品証はプロセスの妥当性をチェックし、アジャイルの効果を測定。プロセス改善のサイクルを回す。

所感

今回、初めてDADというフレームワークを知りました。DADは人を最も重視した学習指向のハイブリッド型アジャイルアプローチであり、ゴール駆動型であることが特徴のようです。

今回の発表は、長年培ったやり方を変える挑戦のお話でした。大きな反発は避けられなかっただろうと思います。そんな状況でも、ゴールを示し、計測とふりかえりで成果を見える化し、新しいやり方の定着に成功しています。既存プロセスが確立していても、DADを活用することで新しい風を入れることができる好例を紹介いただき、古くから開発を続けている現場にも役立つと思います。
また、DADのゴール駆動は「ゴールは示すが手順は問わない」という考え方があるようなので、プロジェクトの成功だけでなく、プロジェクトに携わる人の教育にも活用できると感じました。

早速、私の担当している社内プロジェクトでも「方向付け」「構築」「移行」の3つのフェーズとマイルストーンを設定し、活用することから始めたいと思います。


Agile Japan 2016

Agile Japanとは

レポートコーナー