近年、ウォーターフォールからアジャイル開発へ舵を切るケースが増えているが、プロジェクト管理の煩雑化やスクラムチーム内の属人化によるボトルネックなどの課題が発生し、アジャイルのスピード感を妨げてしまうことも少なくない。
2021年10月20~22日に開催された「NTT Communications Digital Forum 2021」のDXセミナーにおいて、大規模アジャイル開発が抱える課題解決への道筋として、各種ツールによる効率化、さらに課題チケット管理へのAI導入で開発ライフサイクルのDXを実現した事例を紹介した。
※2021年10月20~22日に開催された「NTT Communications Digital Forum 2021」においてNTTコミュニケーションズ角田氏とNTTコムウェア田草川のセミナーを抜粋してリポートしたものです。
事業の中核を担う大規模システムへのアジャイル導入で見えた課題とは?
田草川 悠介
NTTコムウェア
テレコムビジネス事業本部
ビリングソリューション部
担当課長
事業環境の変化に合わせて、システムを「より早く」「より安く」「高品質」に改修するためには、アジャイル導入は重要な選択肢だ。
NTTコミュニケーションズの契約管理システム「Swimmy」もその一手を選んだ。特筆すべき点は、設備系システムのプロビジョニングから契約、料金計算、課金請求まで一連のサービスオーダーをつかさどり、さらに、各システムからのマイグレーション先となる、いわば、事業の中核を担う重要なシステムであることだ。
「Swimmy」の開発体制は、NTTコミュニケーションズ、NTTコムウェア、アクセンチュアの3社合同プロジェクトで進められた。全体で総勢約200名のメンバーが参加。開発スクラムチームは17あり、NTTコムウェアの田草川悠介はスクラムマスターの1人として参画している。
開発の各フェーズで、GitLab(設計書・ソースコード管理)、sonarqube(品質管理)、Jira(案件管理)、REDMINE(課題管理)、OwnCloud(文書ファイル管理)など、さまざまなツールが利用されている。
当初、順調に運用されていた開発プロジェクトだったが、「Swimmy」のシステム規模が拡大するにつれ、開発メンバー数や使用ツール類が増加。進捗報告や品質報告等の稼働増加や、知識・経験の属人化が進む等、課題が浮き彫りになってきた。
そこで「Swimmy」開発プロジェクトは、稼働削減や脱属人化のため、SALA(Scrum Assistant for Large Agile)というブランド名をつけてDXを推進。まずは難易度の低い「定型・反復業務の自動化」から進め、次に「蓄積データの可視化・利活用」、そして「データドリブンなプロジェクト運営」という段階を踏んで効率化を進めた。
まずは効率化、適材適所のツールでアプローチ
はじめに「定型・反復業務の自動化」には、Splunk(データ分析基盤)とRocket.Chat(コミュニケーションプラットフォーム)を活用した。従来、プロジェクトを管理するPMO(人)が対応していたREDMINEの未解決チケットへの指示とスクラム側での出力を自動化。さらに上記ツールなどの活用で稼働ゼロを実現した。また、有識者が手動で実施していた設定や起動、テスト結果のログ確認や自動テストの再実行をチャット経由でできる仕組みにすることで脱・属人化を図った。
次に、「蓄積データの可視化・利活用」では、品質情報管理の効率化にSplunkを活用した。これまでスクラム毎に複数のツールを使って情報を収集し、PMOが取りまとめて品質分析をしていたが、Splunkが各種ツールから自動で情報を取得し、それらを紐づけて、ダッシュボード上でビジュアライズする仕組みを導入したことで大幅な稼働削減を実現した。
AIを開発に適用、この仕組みで実際に効果が出た
そして、現在、「データドリブンなプロジェクト運営」として進めているのが、システム開発ライフサイクルへのAIの適用だ。今回、田草川は、効果が見込め、学習データも集まりやすい“ディスパッチ”と“品質評価”の領域に焦点を当てて取り組みを始めた。
課題を管理するREDMINEのチケットには、タスクや品質の情報元ともいえるエラー情報、作業依頼、改修報告などの内容が書かれている。田草川は、早く正確なディスパッチのために、これら大量に蓄積されたチケットの文字情報を学習データとして活用して、PoCで3つのAIエンジンを作成した。
1. カテゴライズ
エラー、バグの発生がAP故障や設計書誤りなど何に起因するのかを機械に判断させる
2. 重要キーワード抽出
システム開発にとって真に意味のある機能名、単語を適切に抽出する
3. 類似チケット取得
発生したチケットと類似の既出のチケットを自動的に探してきてくれる
いずれも従来は人が判断して実施していたものであり、専門知識や業務知識を必要とする。AIを導入したこのPoCは、これまでの各ツールでの効率化の仕組みをさらに加速させ、適切かつ迅速な判断・対応を可能とし、CSや開発生産性の向上につながった。
ここで、本AIエンジンの仕組みに触れておきたい。すべてをAIの判断にやみくもに任せるのではなく、一段階目はフィルターとして辞書を用意してロジックで対応。それでも解決しないことをAIに判断させているが、当然AIは毎日最新の学習データを蓄積し続けており、常に精度が向上していくことになる。AIエンジン以外の仕組みもPythonのライブラリを活用した400行ほどのシンプルなコード体系で開発されており、スムーズで効果的なAI導入を行うことができた。
脱・属人化したノウハウの適用範囲をさらに拡大
次に、PoCの1.で作成したカテゴライズのAIを、さらに拡大してシステム維持フェーズに適用した事例を紹介する。
従来はシステムのエラーや問い合わせがあると、サービスデスクによってREDMINEが起票され、その内容をシステム維持コントローラー(人)が判断して、担当のチームに確認依頼をするという流れだ。しかし、規模が大きくなり、コントローラーだけでは担当チームを特定し的確なディスパッチをするのが難しくなっていた。
そこで、システムのエラーや問い合わせの内容をAIで分析し、担当するべきチームに依頼できるようにした。また、ここまでの効率化の仕組みを活用し、連絡もメールではなくチャットでクイックに連携できるようにした。
コントローラー(人)に代わりAIがすべてを自動で行うため、リードタイムを大幅に短縮することができる。また、蓄積したナレッジの活用により、人による判断の揺らぎをなくし、脱属人化や維持品質の向上にも役立っている。
ここでは類似した業務に適用することで、AI導入の成功体験を重ねることができた。
システム開発DXの拡大で、人の管理を超えるプロジェクト運営へ
田草川は、AIの導入範囲のさらなる拡大を目標としている。
「今回のPoCを通して、従来、人が行っていた領域でも、AIのサポートを受けることで、開発環境の変革・DXが可能となることを実感している。また、将来的には、AIにより“人にはできない示唆”ができるようになるだろう。例えば、故障がどの機能で発生するか事前に予測できれば、プロジェクト運営を安定させることができる。あるいは、案件情報を扱っているJiraの情報をもとにREDMINEのチケットと合わせて分析すれば、より妥当性の高い工数見積が自動でできるようになる。これからもシステム開発のDXは止まらず無限の可能性があることを信じて、あらゆることに挑戦し続けたいと思っている」
両社で共に進めたこのようなDXのノウハウが、悩めるPMOにとって課題解決のヒントとなり、それぞれのプロジェクトで知見が深まり、さらに発展していくことを期待したいと、開発効率化への思いを語りセミナーを終えた。
2021/12/13
- ※ 所属部署、役職等については、取材当時のものです。
関連リンク一覧
お薦めコンテンツ
ITジャーナリストや現役書店員、編集者が選ぶ デジタル人材のためのブックレビュー 第7回:『ザ・ゴール コミック版』、『図解即戦力 インフラエンジニアの知識と実務がこれ1冊でしっかりわかる教科書』