Slide 1

Slide 1 text

株式会社ネクスタ LTテーマ: C#開発におけるAIを使った基本設計書 作成と効果の検証

Slide 2

Slide 2 text

LTで話すことと目的 P.2 話すこと • 自己と会社紹介 • プロダクトのAI活用状況 • AIを使ってC#のXMLドキュメントから基本設計書を作る 目的 興味を持っていただけた方は是非ブースへお越しください m(_ _)m

Slide 3

Slide 3 text

自己と会社紹介 P.3

Slide 4

Slide 4 text

自己と会社紹介

Slide 5

Slide 5 text

P.5 プロダクトのAI活用状況

Slide 6

Slide 6 text

プロダクトのAI活用状況 P.6 SmartF開発は「スクラム & V字モデル開発」 Devin / Cursor Gemini

Slide 7

Slide 7 text

プロダクトのAI活用状況– 次のステップ P.7 SmartF開発は「スクラム & V字モデル開発」 このフェーズのAI活用推進 基本設計書がほしい • AS-IS 分析 • リグレッションテスト

Slide 8

Slide 8 text

P.8 AIを使ってC#のXMLドキュメント から基本設計書を作る

Slide 9

Slide 9 text

P.9 AIを使ってC#のXMLドキュメントから基本設計書を作る [ゴール] システム概要や非機能要件は作成済みなので作らない。 プロダクトを継続的に開発していく中で変更頻度が高い箇所の設計 業務として利用できるかを検証ゴールとする。 • 機能要件(機能一覧など) • 画面設計(画面一覧、画面遷移図など) • データベース設計(ER図など) • 外部インターフェース設計(API設計など)

Slide 10

Slide 10 text

AIを使ってC#のXMLドキュメントから基本設計書を作る P.10 [ドキュメント作成手順] 1. ソースコードから「単語辞書」を作る 2. ソースコードの処理を翻訳してコメントにする 3. 翻訳したコメントを繋いでドキュメントにする [ルール] ➢ には説明ではなく名詞を書く(※1) ➢には補足ではなく説明を書く (※1)マイクロソフトの公式サイトの「C# ドキュメント コメントとして推奨されるXMLタグ」の内容に反故しています。 https://learn.microsoft.com/ja-jp/dotnet/csharp/language-reference/xmldoc/recommended-tags#summary

Slide 11

Slide 11 text

手順1)ソースコードから「単語辞書」を作る P.11 ① ② ③ ④ ⑤ 単語帳を作る 人間が書いた名前を抽出 ソースコードの文脈からAI が名前を選定 ①~③を合体 補正 ⑥ 補正 単語辞書の完成 プロンプト プロンプト ソースコード

Slide 12

Slide 12 text

手順2)ソースコードの処理を翻訳してコメントにする ② ソースーコードの処理を 翻訳してXMLドキュメン ト形式で出力する 単語辞書がないと、AIがXMLコメント自動作 成時に英単語を共通解釈できない 例)Instructionsを直訳すると「指示」 SmartFプロダクトだと「生産指示」 ソースコード内でも生産指示を「Product」と書 いている場合もあり、解釈が揺らぐ 単語辞書 XMLドキュメント有 ソースコード ソースコード プロンプト ソースコード ① 単語の反映 ツール作成

Slide 13

Slide 13 text

手順3)翻訳したコメントを繋いでドキュメントにする P.13 Markdown Html pdf ツール作成 XMLドキュメント有 ソースコード pandoc mkdocs 基本設計書 Markdownで管理していく方が 将来、様々なAIエージェントと 嚙み合わせがよいだろう、という 判断

Slide 14

Slide 14 text

手順3)翻訳したコメントを繋いでドキュメントにする P.14 データ層 ビジネスロジック層 プレゼンテーション層 コントローラ 基本設計書 サービス C#のXMLドキュメントを使うことで 関数呼び出しを追跡可能な ドキュメントになる

Slide 15

Slide 15 text

手順3)翻訳したコメントを繋いでドキュメントにする P.15 データ層 ビジネスロジック層 プレゼンテーション層 コントローラ C#のXMLドキュメントを使うことで 関数呼び出しを追跡可能な ドキュメントになる 基本設計書 サービス

Slide 16

Slide 16 text

機能設計 DB設計 API設計書 画面設計 手順3)翻訳したコメントを繋いでドキュメントにする P.16 データ層 ビジネスロジック層 プレゼンテーション層 コントローラ サービス 基本設計書

Slide 17

Slide 17 text

手順3)翻訳したコメントを繋いでドキュメントにする AIに渡したプロンプト “一括消込を追加で実装するときのエラーハンドリング設計をマーメイドで 作ってほしい” 基本設計書 ソースコード

Slide 18

Slide 18 text

P.18 AIを使ってC#のXMLドキュメントから基本設計書を作る 結論 「Cursor×ソースコード」より「Cursor×基本設計書」の方が精度と コスト共によい。ドキュメントを作るが吉。 理由 1. トークン消費量が少ない 2. ドキュメント管理も容易 3. 設計の精度が高い ➢ ソースコードよりも情報の「高さ」が合っている ➢ AIエージェントが一度に処理できるコンテキストサイズ ➢ AI(大規模言語モデル)の得意分野との相性

Slide 19

Slide 19 text

P.19 ご清聴ありがとうございました