生成AIとの“対話”で深める「課題探求」
昨今、生成AIを社内で活用する動きが加速しているが、システム開発の工程においては、どのように組み込めば効果を得られるのだろうか。本書は、システム開発、特にソフトウェア開発の上流工程から下流工程までに生成AIを活用させる術を具体的に示している。
まず、ソフトウェア開発のスタート地点である「課題探求」では、生成AIをどのように活用できるのか。この工程では、そもそも「何が問題とされているのか」という現状把握が必要だ。そして、問題を把握するためには、依頼者が抱える問題や現状をヒアリングしながら、課題解決の方向性を探ることになる。そのための質問票を作成する際に、生成AIが機能すると酒匂氏。生成AIに以下のような条件を組み込んだプロンプトを提示することで、アイデア出しが可能になるとした。
- 生成AIに割り当てたい役割
- 前提条件や背景情報
- 生成する成果物とその出力形式
- 不足情報があれば質問するように促す(必要に応じて)
生成AIを扱うときは、様々な「条件」や「役割」を与えて対話を深めることが大切だという。また、生成AIから積極的に質問を投げかけてもらい、依頼者に質問することで現状の整理を進めることが可能になる。
現状の問題を整理できたら、次はその問題を解決するためのアイデア出しが必要だ。本書では、ビジネスモデルキャンバス(BMC)を用いた手法が紹介されている。BMCとは、企業のビジネスモデルを可視化・分析するために使用されるツール。顧客セグメント、価値提案、チャネル、顧客関係、収益の流れ、主要リソース、主要活動、主要パートナーシップ、コスト構造の9つの要素で構成される。これを生成AIに作らせることで、ビジネスモデルの全体像を簡単に理解できるのだという。
この段階で重視すべきポイントは、「本当にこの解決策は問題を解決してくれるのか?」という視点で繰り返し検討を行うことだ。生成AIを活用する際も同様で、何度も質問を繰り返しながらアイデア出しを進めていくことが大切だと酒匂氏は本書で述べる。
4WD+対応関係の“TiD手法”で行う「仕様策定」
現状の課題とその解決策が見えてきたら、「仕様策定」の工程に入る。この際の事例として、本書ではTrance Index Diagram(TiD)と呼ばれる手法が用いられる。TiDとは、4WD(Who、When、Where、What Design)に課題と仕様の対応関係を示す要素を追加した、企業が提供するサービスの1シーンを切り取ったもの。詳細な定義はテキスト形式で行い、シナリオ名、事前条件、事後条件、開始条件、アクター、インターフェイス、プレース、システム、ビジネスロジック、データモデル、他システム、シナリオ本体といった要素で構成される。
このTiDの叩き台を作成する際にも、生成AIは機能する。細かな追加質問でTiDの肉付けをすることで、シナリオを支えるためのアプリケーションの形が見えてくる。これを最終的な開発につなげるには、以下の2種類の仕様を作成する必要があると酒匂氏は述べている。
- アプリケーションの仕様:アクターに近い、インターフェイスのふるまいを定義したもの。アプリケーション名、登場するTiD、利用するアクター、画面一覧、各画面仕様、画面間の状態遷移、利用するビジネスロジックなど
- ビジネスレイヤーの仕様:アクターがインターフェイスを通してサービスを要求するレイヤー。ビジネスデータモデルとビジネスロジックで構成されている
これらをプロンプトとして保存しておき、新しい情報が入ったら適宜必要な部分を書き直しながら、生成AIも使い精査することで、より効率的に仕様策定を進めていけるのだという。