開発者は生成AIをどう活用できるか?コード生成時のポイント
これまでの工程では、発注者と開発者が生成AI“も”使って仕様を決めていくための方法が提示されていた。次に行う「設計と実装」の工程では、今までに得られた仕様をもとに、開発者側が実際に動くものを定義する際に生成AIをどう活用できるのか、そのヒントが提示されている。
まずは、開発するシステムのアーキテクチャを考える必要があり、通常はアーキテクチャのカタログや過去の事例、自分の知識などを動員して最初の叩き台を作り、検討していくことになる。そこに関して、生成AIを使う場合でも大きな違いこそないものの、最初の叩き台を作成する際、下書きを生成してもらえることに意義があると酒匂氏。また、生成AIを用いてコードを生成する手法は、2024年9月時点でいくつかにカテゴライズできるという。
- インテリジェントなエディタの利用:生成AIを組みこんだエディタを利用して、プログラムを作成する方法
- 生成AIチャットを利用したアプリケーション生成:チャットボットと対話しながらコード生成をする方法
- 専用ツールによるアプリケーション生成:汎用エディタではなく、アプリケーション生成用の専用ツールを使う方法(例:Create.xyz)
- エージェントによるアプリケーション生成:AIエージェントを使い、システム全体の生成を任せる方法
上記のようなツールを用いることで、自分が把握できていなかった最新の技術の情報も収集しながら業務を効率化できるとのことだ。
開発における2つの“正しさ”とその検証法
最後に、今まで作られてきた成果物の正しさを問う「検証」の工程が行われる。そもそも、ソフトウェア開発における“正しさ”には、以下のような定義があるという。
- 正しいものを作っているか:このプロジェクトの生み出す成果物が、そもそもの課題を解決しているのか(発注者、利用者の視点)
- 正しく作っているか:仕様が求めるプログラムが作成され、そのプログラムの動作が実際に仕様を満たしているか(開発者の視点)
1つ目の問いに関しては、BMCに対してTiDをチェックする方法を用いる際に生成AIを活用できる。2つ目の問いについては、入力定義、出力定義、レビューポリシー、実際の入力、実際の出力を提示して生成AIにレビューしてもらうことで検証が効率化される。
本書では、ソフトウェア開発の上流工程から下流工程までの業務にどう生成AIを組みこむことができるのか、具体的な事例をもとに詳細な解説がなされている。システム開発における生成AIの活用可能性を探っている方は、ぜひ一度手に取ってみてはいかがだろうか。
上流から下流まで生成AIが変革するシステム開発
出版社:日経BP
発売日:2024年9月13日
価格:2,860円(税込)
本書について
システム開発の上流から下流まで生成AIを活用して、正しいシステムを効率よく実現するには?
ソフトウェアによる問題解決には、
- 問題をはっきりさせる
- 問題の解法に合意する
- 解法を実装する
- 実装した解法を運用する
といったステップがあり、それに対して様々な手法が提案されてきました。生成AIによる支援もそうした手法の中に組み込まれる新しい武器となります。
本書は、ソフトウェア開発の各ステップが満たすべき性質を俯瞰しながら、そこに生成AIを組み込む方法を説明します。