QSAT立ち上げの背景
(※1)Quality,Support,Assurance,Trust:プロダクト品質向上およびプロセス品質向上を目的とした、アジャイルチームとは独立したチーム。品質の可視化の支援やテストの実施、チームの練度測定などプロダクトおよびプロセスの品質を測っている。またテスト設計講義をチームに行うなど品質意識向上の促進もしている。
佐藤さん JCBには開発プロダクトの品質評価を行うための専門の組織がありませんでした。テストの実施は、システム開発を行ったビジネスパートナーが中心に行う形です。ビジネス構築高速化プロジェクトはアジャイル開発により変化に素早く対応してお客様に価値あるサービスを早く届けるというミッションがあります。
そのスピードの中でも高い品質を保ち、さらに高めていくためには内部にQA(Quality Assurance:品質保証)組織を持つことで即時対応力を備え、第三者視点での品質評価を可能にして、ノウハウの蓄積を行っていくことが必要であるということからQSATが発足しました。
山口さん チーム間でテスト設計のノウハウのばらつきがあることも課題と感じておりました。QSATに協力してもらい、テストケース設計の勉強会の開催などボトムアップの施策を実施いたしました。それによって開発サイドもプロの知見を通じて、テストと開発を並行して行う方式におけるテスト設計の勘所を知ることができたのではないかと感じております。佐藤は前職の大手ゲーム会社でQAコーディネーターとして活躍していた経歴があり、経験も豊富でした。
株式会社ジェーシービー システム本部 デジタルソリューション開発部 部長代理 山口正展さん
近年、さまざまなキャッシュレスサービスが続々とリリースされ、サービスの改善も速いスピードで行われています。一方、JCB社では長年金融系の重厚な基幹システムをベースにサービスを運営しており、更新などの意思決定や開発プロセスのスピード感が時代にマッチしなくなっていることが課題でした。このままでは会社の成長に致命的な要因になってしまうという問題意識の下、市場ニーズや技術トレンドに即したサービスやプロダクトをスピーディーに開発していける体制を作ろうと生まれたのが、「ビジネス構築の高速化プロジェクト」です。
ビジネス構築の高速化プロジェクトとは、ビジネスプロセス、組織、人事制度などの見直し、コミュニケーションを促進するためのファシリティを土台とした、クラウドネイティブプラットフォームによる柔軟なインフラとアジャイル開発のプロジェクトです。ビジネス部門とシステム部門が一体的に体制構築されている点が特徴となっています。
本プロジェクトにはNTTデータが組織改革の支援として、スピーディーな企画開発を実現する方法論と手段を一体化したサービス群『Altemista®』を提供しています。
(参考)NTTDATA『Altemista®』
ビジネス構築の高速化プロジェクトの詳細は以下の記事をご参照ください。
(オクトノットとは別のサイトに移動します)
(参考)JCB『ビジネス構築高速化プロジェクト』
(参考)NTTDATA INSIGHT『ビジネス高速化のエンジンは大規模アジャイルと組織変革』
QSATの課題と工夫
佐藤さん ゲーム業界と金融ではカルチャーは全然違っておりました。金融システムは金融特有のセキュリティ要求レベルや社会的インフラとしての認知が高まり、トランザクションの増加や業種・時間の多様化に伴った難易度の高まりに準ずる対策や精度が求められ、バグが致命傷となりかねません。既存の多くのシステムとの関連も理解してテストを行うために入念に準備が必要です。テストプランやテストケースだけでなくテスト実施のためのツールを作るということまで必要な場合もあります。
前職ではゲームやナビゲーションアプリのQA業務が中心だったので、一言でソフトウェアテストと言っても金融系だとこんなに違うものかと驚きました。スピードと品質を両立させるために、仕様変更のテストにも柔軟にかつ試行錯誤をしながら対応する必要があり、テスト設計者と実行者を常に用意してフル稼働で動くような体制を組んでおりました。
株式会社ジェーシービー システム本部 デジタルソリューション開発部 主事 佐藤洋光さん
佐藤さん JCBでのアジャイル開発は挑戦的な新しい取り組みなので決まったレールの上を進んでいけば良いというものではありません。あるべき姿を現状と比較して、不足していると思われるものを優先度の高いものから実施してきました。具体的な軸としてはプロダクト品質向上、プロセス品質向上、品質の可視化、開発者の品質スキル向上支援といった内容です。
まずはできることから、短いサイクルで実践しながら良くしていくというやり方で品質保証についてもまさにアジャイルな進め方になっております。
山本さん プロダクト品質向上だけでなく、プロセス自体の品質向上やチームの練度の可視化など、まさに品質保証のアジャイル化ですね。
QSATの成果
佐藤さん プロダクト品質向上、プロセス品質向上、品質可視化、開発者の品質スキル向上支援それぞれ成果がありました。プロダクト品質向上であれば第三者テストを実施したことでリリース前の不具合発見率が向上し、プロセス品質向上であればDX Criteria(※2)の測定を実施したことでチームの練度、DX進捗度を測定することができました。品質可視化では品質メトリクスダッシュボードを構築し、チーム運用改善のための指標を見える化でき、開発者の品質スキル向上支援ではテスト設計講義を実施することで開発者のテスト設計スキル向上が図れました。
(※2)日本CTO協会が監修・編纂している企業のデジタル化とソフトウェア活用のためのガイドライン。5つのテーマ(チーム、システム、データ駆動、デザイン思考、コーポレート)があり、テーマごとにチームの練度の測定が可能となる。
山口さん 第三者目線からのテストを実施したことで、自分たちが作ってきたプロダクトに対する品質的な自信を上乗せできたのではないかと考えています。設計/開発/テストを同一のチームで実施すると、どうしても思い込みや齟齬が発生し、それに気づかないまま進んでしまうことが多いと思いますが、テスト部分を切り出して多角的な目線でチェックしてもらえたことで、こうした点を潰しこむことができました。
また、QSATがテスト設計の段階から開発者と綿密にコミュニケーションをとり、テスト設計講義を実施してくれたことで、開発サイドのテスト設計スキルも向上することができたという意見が担当者側からも上がりました。
山口さん 開発チームも開発とテストを並行して進めることは初めての試みだったので、試行錯誤の状態でした。このため、十分なテストバリエーションが実施できているのか、若干モヤモヤした状態で進んでいたのが実態です。また、テスト設計スキルも開発担当者によってバラバラなので、そうした品質マネジメントに関しては課題認識を持っていました。本当に試行錯誤で大変で…しかし大変であるが楽しいといった感じでもありました。
もともと基幹系システムのテストをしていた時は「なぜバグが出てしまったのか」と少し後ろ向きな気持ちになることがありましたが、今は「テスト工程でバグが見つけられた!品質が上がった!」とポジティブに捉えるようになりました。
山本さん QSATの活動による直接的な効果だけでなく、開発チームのマインドが変化し、QSATと前向きな競争関係ができ、間接的にも品質向上に大きく寄与したことが良くわかりました。
今後の展望
(※3)開発ライフサイクルのより早い段階で「テスト活動」を行うこと。
山口さん 直近で対応していた開発案件では開発規模からみても、これまでの当社のビジネスプロセスと開発プロセスでは間違いなく1年半はかかるプロジェクトだったと思いますが、それを着想から1年弱程度でリリースすることができたことはアジリティを多少なりとも獲得できた結果だと感じています。
ただ、これはシステム開発の高速化を目指した変革だけでは成しえず、ビジネスプロセスの変革、具体的には意思決定のスピードや仕組みとの両輪で動いたからこそ達成できたのだと思います。こうしたビジネスプロセスの変革を含めた部分は、いきなり全体を変えようとしても、さまざまな軋轢によって頓挫してしまうと思うので、出島戦略的に小さく始めて実績を踏まえ、外圧をうまく利用しながら全体を巻き込んでいくような取り組み方がよいのではないかと感じています。
株式会社ジェーシービー システム本部 デジタルソリューション開発部 部長代理
新卒採用でジェーシービーに入社。業務部門で各種提携カードの立ち上げ担当として主に新規業務構築を担当した後、新規受託先開拓をミッションとする新設部署で主にBtoBの領域において営業/社内SEを担当。担当したサービス開発においてビジネスモデル特許を取得。2015年からは基幹システム及び、モバイルペイメントシステムのプロジェクトマネージャー(PM)として各種案件の推進を経験した後、ビジネス構築高速化プロジェクトに参加。現在、システム部サイドのプロダクトオーナー(PO)として3つのプロダクト価値向上のため試行錯誤の毎日。
佐藤 洋光 さん
株式会社ジェーシービー システム本部 デジタルソリューション開発部 主事
新卒で国内電機メーカーに入社し、都市銀行の金融システム営業に従事したのち、ゲームソフト開発会社へ転職。QAコーディネーターとして様々なゲームプラットフォームで品質管理業務を経験。その後、ナビゲーションシステム開発の現場でソフトウェアテスト技術を体系的に学び、スマートフォンアプリのQAを経験したのちに、ジェーシービーへ。現在はビジネス構築高速化プロジェクトでQSATを率いて、アジャイル開発チームのプロダクト品質向上とプロセス品質向上を支援するための施策推進に取り組んでいる。
株式会社NTTデータ 金融事業推進部 技術戦略推進部 システム企画担当 山本英司
※記事中の所属・役職名は取材当時のものです。
※感染防止対策を講じた上で取材を行っています。