• #CF計算書
  • #教材制作
  • #Codexレビュー
  • #ディレクトリ構造
  • #SQLite
  • #会計基準
開発eurekapu-nuxt4

CF教材テキスト制作とプロジェクト構造整備

参考書のデータベースから421ページ分を引っ張り出し、3級向けチャプター解説を4ファイル・1,469行書き上げ、Codexに2回レビューを投げて4件の致命的指摘を潰し、ディレクトリ構造を連番方式に組み替えた。朝「まず書籍データを抜き出そう」と始めた作業が、気づけば14ファイルの参照先を書き換える大手術にまで広がっていた。


1. 書籍データベースからの3級向け内容抽出

やったこと

book-knowledge-baseのSQLiteに格納されたCF計算書の参考書データ(421ページ分)を開き、3級に該当する範囲を特定した。対象は第1〜3章と第5章の一部。ページをめくる代わりにSQLのクエリで章・節の構造を一覧化し、3級で扱うべきトピックだけをマークダウンに落とし込んだ。

成果物は cf-book-boki3-extraction.md。章見出し・節見出し・要点を階層的に並べてあり、後続のドラフト執筆で「教科書のどこに何が書いてあるか」を手元で即座に引ける索引として機能する。

なぜこの手順を踏んだか

いきなりドラフトを書き始めると、教科書の記述順と教材の説明順がずれたときに手戻りが発生する。先に原典の構造を抽出しておけば、教材の章立てと教科書の対応関係が一目で分かる。


2. 全チャプター解説書ドラフトの生成とCodexレビュー

並列エージェントで一気にドラフト生成

4ファイル・計1,469行のドラフトを並列エージェントで生成した。会社名は架空の「クチヒゲ商事株式会社」に統一。各チャプターは「導入 → 仕訳 → CFWSへの転記 → 演習」の流れで構成した。

Codexレビュー1回目 — 致命的指摘3件

GPT-5.4に計画書全体を投げたところ、3つの指摘が返ってきた。

指摘1: 会社設定が宙に浮いている ドラフトでは「架空の中小企業」としか書いていなかった。既存キャラクターの「くちひげ株式会社」が別の教材にいるのに、ここだけ名無しでは学習者が混乱する。「クチヒゲ商事株式会社」に統一し、業種・規模・主要取引先の設定を冒頭に追加した。

指摘2: 長期借入金から始めている 最初のドラフトは長期借入金→短期借入金の順だった。Codexは「学習者にとって短期の方が単純。利息計算が1年以内で完結するから、先に短期をやるべきだ」と指摘。順序を入れ替えた。

指摘3: 中間演習がない 章末にまとめ演習を1つ置いただけだった。「3つの取引を教えた直後に、2つ目までの理解を確認する中間演習がないと、章末で躓いたとき何が分かっていないか切り分けられない」。各Step内に中間チェックポイントを挿入した。

Codexレビュー2回目 — インクリメンタル方式への全面改訂

修正版を再度投げたところ、追加で1件。

指摘4: CFWSの組み立てが一発完成型になっている 「Step 1でCFWS全体を見せて埋めさせるのではなく、Stepごとに行を1つずつ追加するインクリメンタル方式にしないと、学習者はどの取引がどの行に対応するか見失う」。ティーチングガイドをインクリメンタル方式に全面改訂し、各Stepの末尾に「ここまでのCFWS」を示すスナップショットを挿入した。

変換の核心 — CFWS中心の記述へ

従来の会計教材は仕訳→財務諸表の順で教える。今回のドラフトはCFWS(キャッシュ・フロー精算表)を中心に据え、「この取引がCFWSのどの行を動かすか」を毎回示す構成に書き換えた。仕訳は手段であってゴールではない、という設計思想をテキストの構造に反映させた。


3. ドキュメント4ファイルの更新

以下の4ファイルで旧シート名から新シート名への一括置換を実行した。

ファイル主な変更
cf-content-workflow.mdワークフロー図のシート名を更新
cf-content-production-plan.md制作計画のStep順を並び替え
cfws-progress-checklist.mdチェックリストのシート名を更新
topic-mapping-book-vs-eurekapu.md教科書↔教材の対応表を更新

旧シート名(TPL_返済予定表等のテンプレート命名)を新シート名(取引_借入金_公庫等の内容ベース命名)に統一。シート名がそのまま「何のデータか」を語るようにした。


4. ディレクトリ構造の整備

貸付金と借入金の分離

ライフサイクル_借入金_貸付金 という1つのディレクトリに借入金と貸付金が同居していた。学習者がファイルを探すとき「借入金のファイルはどこだっけ」と2つのトピックが混在するフォルダをスクロールすることになる。ライフサイクル_借入金ライフサイクル_貸付金 に分離した。

連番方式へのリネーム

ディレクトリ名を学習順に連番化した。

ライフサイクル_01_株主資本
ライフサイクル_02_借入金
ライフサイクル_03_貸付金
ライフサイクル_04_固定資産
ライフサイクル_05_運転資本
ライフサイクル_06_税金
ライフサイクル_07_総合演習

ファイルマネージャで開いたとき、学習順にソートされた状態で並ぶ。番号がそのままカリキュラムの進行順を示す。

参照の全量更新

ディレクトリ名を変えたので、それを参照しているファイルも全て書き換えた。

  • Pythonスクリプト 8本: パス定数・import先を更新
  • ドキュメント・スキル定義 6本: パス参照・説明文を更新

合計14ファイル。grep -r で旧ディレクトリ名を含むファイルを洗い出し、1つずつ確認しながら置換した。


5. 会計基準JSONデータの作成

教材内で引用する会計基準の条文を構造化データとして整備した。

データソース

取得先内容
e-Gov法令検索財務諸表等規則 第113〜115条
e-Gov法令検索会社法 第445条
FSA(金融庁)サイト連結CF計算書作成基準の原文

成果物

accountingStandards.json に5つの基準・31条文を格納した。各条文は standardIdarticleNumbertitlebodysource のフィールドを持つ。教材のVueコンポーネントから条文番号で引けば、本文がそのまま表示される仕組み。

手入力ではなくe-Govの原文をコピーして整形したので、条文の正確性は原典に依拠している。


6. ドラフトファイルの分割

当初、Step 1とStep 2が1ファイルに、Step 3とStep 4も1ファイルにまとまっていた。Step 3と4は借入金と貸付金の対称ペアで構造が似ているため1ファイルのまま維持し、それ以外を分割して合計6ファイル構成にした。

分割の判断基準は「1ファイルの行数が400行を超えたら分ける」。400行を超えるとエディタのスクロールで全体像を見失う。


今日の学び

Codexレビューで「短期→長期の順にしろ」と指摘されたとき、最初は「教科書が長期から始めているのだから長期が先だろう」と思った。しかし学習者の視点に立てば、利息計算が1年で完結する短期の方が認知負荷が低い。教科書の記述順と教材の学習順は別物だという当たり前のことを、AIのレビューで改めて突きつけられた。

もう1つ。インクリメンタル方式の指摘は、自分がCFWSの全体像を知っているからこそ見落としていた盲点だった。「知っている人が書くと、知らない人が詰まるポイントが見えなくなる」。レビューを外部に投げる意味はここにある。