最終更新: 2026/06/22 18:56
仕様書テンプレートガイド
本ガイドは、BizLP GAS Accounting の全仕様書 (spec_*.md) に統一的な章立てを適用するためのテンプレート集である。新規作成・リライト時には、対象ファイルの性質に応じて適切なテンプレートを選択し、章構成に従うこと。
共通ルール
必須要素
| ルール | 詳細 |
|---|---|
| MDTM フロントマター | docs/dev/*.md 仕様書は冒頭に YAML フロントマター(id / aliases / type / status / parent?)を必須付与(後述) |
| テンプレートタグ | 各spec冒頭に <!-- テンプレート: X (名称) --> を付与 |
| 章番号 | 全 ## 見出しに番号を付与(## 1. 基本情報、## 2. 前提条件 ...) |
| 焦点質問 | 冒頭セクションに必ず > **焦点質問**: ... を記載 |
| テスト仕様 | 最終章(付録を除く)に必ずテスト仕様を配置 |
| 付録 | 変更履歴・ADR・補足資料は ## 付録 以下に配置 |
MDTM YAML フロントマター(必須)
docs/dev/*.md の各仕様書ファイルは、ファイル先頭に下記のフロントマターを必ず付与する:
---
id: MAS-NNN # 3桁ゼロ埋め固定。docs/_internal/id_mapping_table.csv で採番
aliases: ["F-NN", "F-0NN"] # 旧ID表記の揺れを全て含める(後方互換)。リスト形式必須
type: Story # Epic | Story | Task | Bug | Research のいずれか
status: Open # Open | InProgress | Done | Canceled | Duplicate
# parent: MAS-NNN # 親案件があれば指定(無ければキー自体を省略)
---
- 新規採番は
docs/_internal/id_mapping_table.csvを SSoT として参照・追記する - aliases には旧ID(
F-1/F-01/F-001のような桁数揺れも全て)を配列で含める statusは実装進捗を反映(仕様書段階=Open、MVP 完了等=InProgress、全完了=Done)
記述スタイル
| カテゴリ | ルール |
|---|---|
| 処理ロジック | マトリクス表(` |
| 算出式 | 日本語数式 + コード変数名を併記(例: 差引支給額 = 月額給与 − 源泉所得税 — netPayAmt) |
| 財務ロジック (FRD) | 技術用語(関数名・変数名)を排除し、経理担当が検証可能な表現で記述。技術詳細は §処理ロジック に分離し → 技術詳細: §4 参照 でリンク |
| スキーマ | ` |
| リンク | 関連specへのリンクは [spec\_xxx](spec_xxx.md) 形式。ADRへは [ADR-NNNN](adr/NNNN-xxx.md) |
テンプレートA: RPA/バッチ処理仕様
対象ファイル
spec_rpa_hc.md, spec_rpa_saas.md, spec_rpa_capex.md, spec_rpa_pipeline.md, spec_rpa_finance.md, spec_rpa_adhoc.md, spec_stl_auto.md
章構成
<!-- テンプレート: A (RPA/バッチ処理) -->
# タイトル — 対象タブ名
## 1. 基本情報
> **焦点質問**: このRPAは何のデータから、どのようなINVを自動生成するか?
| 項目 | 内容 |
|------|------|
| 関数名 | generateXxxInvoices |
| ファイル | 401_bat_rpa.js |
| 入力 | NN_bud_xxx |
| 出力 | 32_wrk_invoice + 31_wrk_order |
| メニュー | 「⚙️ ...」 |
## 2. 前提条件・依存関係
| 項目 | 内容 |
|------|------|
| SSOT | 32_wrk_invoice |
| マスタ依存 | 11_mst_account(科目名完全一致)... |
| 前提 | 有効フラグ=TRUEの行のみ処理対象 |
## 3. 入力スキーマ
| # | 列名 | 型 | 入力/自動 | 説明 | 制約 |
## 4. 処理ロジック(マトリクス)
| STEP | 処理 | 入力列 | ソース | 出力/変数 | 条件 |
## 5. 出力サマリー
生成されるINV行の一覧テーブル
## 6. 業務ルール
技術用語を排除した業務説明。算出式は日本語数式。
## 7. 冪等性(二重起票防止)
isDuplicate_ / JNL_IDチェックの説明
## 8. エラーハンドリング
| エラー条件 | 処理 | ユーザー通知 |
## 9. テスト仕様
| テストID | テスト名 | 前提条件 | 期待結果 |
## 付録
### 付録A: 変更履歴
### 付録B: ADR
テンプレートB: データマート/財務諸表仕様
対象ファイル
spec_pl.md, spec_bs.md, spec_cf.md, spec_daily_cf.md, spec_plan.md
章構成
<!-- テンプレート: B (データマート/財務諸表) -->
# タイトル — 出力タブ番号
## 1. 概要
> **焦点質問**: この財務諸表は何を示し、経営者はここから何を読み取るか?
| 項目 | 内容 |
|------|------|
| 出力タブ | NN_xxx |
| 関数 | dmBuildXxx_ |
| ファイル | 6xx_datamart_xxx.js |
## 2. データソース
| ソース | 読み込み条件 | 用途 |
## 3. 対象判定・フィルタ条件
| # | 条件 | 処理 | 理由 |
## 4. 処理ロジック
| STEP | 処理 | 入力 | 出力 | 条件 |
## 5. 財務ロジック (FRD)
> ※ 本セクションは経理担当・CFOが検証可能な表現で記述。
> 技術用語は使用しない。算出式は日本語数式。
> → 技術詳細: §4 参照
### 5.1 [ルール名]
...
## 6. 出力スキーマ
| セクション | 表示区分 | 科目例 | 符号 |
## 7. エッジケース・境界条件
| ケース | 条件 | 処理 |
## 8. テスト仕様
| テストID | テスト名 | 前提条件 | 期待結果 |
## 付録
### 付録A: 実装ファイル
### 付録B: ADR
テンプレートC: エンジン/コア処理仕様
対象ファイル
spec_engine.md, spec_datamart_ingest.md, spec_pipeline_ingest.md, spec_pipeline_plan.md
章構成
<!-- テンプレート: C (エンジン/コア処理) -->
# タイトル — 関数名 or モジュール名
## 1. 基本情報
> **焦点質問**: このモジュールはシステム全体のどの位置で、何を処理するか?
| 項目 | 内容 |
|------|------|
| ファイル | 403_subledger_engine.js |
| 主要関数 | processInvoiceApprovals, ... |
### アーキテクチャ図(Mermaid)
```mermaid
flowchart TB
...
```(反映すべきデータフローを図示)
## 2. インターフェース定義
| 関数 | 引数 | 戻り値 | トリガー |
## 3. データスキーマ
| # | 列名 | 型 | 入力/自動 | 説明 |
## 4. 処理ロジック
### 4.1 [サブ処理名]
| STEP | 処理 | 入力 | 出力 | 条件 |
## 5. 財務ロジック (FRD)
> ※ 技術用語排除。算出式は日本語数式。
## 6. 冪等性・整合性保証
| 保証項目 | メカニズム | 検証方法 |
## 7. テスト仕様
| テストID | テスト名 | 前提条件 | 期待結果 |
## 付録
### 付録A: ヘルパー関数一覧
### 付録B: メンテナンスツール
### 付録C: ADR
テンプレートD: 機能改修/設計仕様
対象ファイル
spec_ord.md, spec_cc_import.md, spec_receipt_import.md, spec_project_accounting.md, spec_corporate_tax.md, spec_data_validation.md, spec_tab_renumber.md, spec_plan_bs_fix.md
章構成
<!-- テンプレート: D (機能改修/設計) -->
# タイトル — 対象タブ or 機能名
## 1. 概要
> **焦点質問**: この改修は何の課題を解決し、どのような変更を加えるか?
### 背景・課題
...
## 2. 設計判断
| 選択肢 | メリット | デメリット | 選定 |
(ADR形式。既存ADRがあればリンク、なければ新規記述)
## 3. 変更内容
### 3.1 スキーマ変更
| 対象タブ | 変更列 | 変更内容 |
### 3.2 ロジック変更
| STEP | 処理 | 入力 | 出力 | 条件 |
### 3.3 UI変更
| 対象 | 変更内容 |
## 4. 影響範囲
| 影響対象 | 影響内容 | 対応 |
## 5. テスト仕様
| テストID | テスト名 | 前提条件 | 期待結果 |
## 付録
### 付録A: 改修ファイル一覧
### 付録B: Before-After
### 付録C: ADR
マスタ定義の統一フォーマット
対象ファイル
mst_account.md, mst_dict.md, mst_sys_config.md
章構成
# タイトル — タブ名
## 1. 概要
> **焦点質問**: このマスタは何を定義し、どの処理で参照されるか?
## 2. スキーマ定義
| # | 列名 | 型 | 必須 | 説明 | 参照元spec |
## 3. 登録ルール
| ルール | 詳細 |
(追加・変更・削除の制約、バリデーション)
## 4. 依存関係
| 参照元ファイル | 参照方法 | 用途 |
## 5. 初期データ
setupAllSchemas で投入されるデフォルト値・DDL設定
テンプレート選定ガイド
| ファイル | テンプレート | 理由 |
|---|---|---|
| spec_rpa_hc.md | A | 予算マスタ→INV自動生成のバッチ処理 |
| spec_rpa_saas.md | A | 同上 |
| spec_rpa_capex.md | A | 同上 |
| spec_rpa_pipeline.md | A | 同上 |
| spec_rpa_finance.md | A | 同上 |
| spec_rpa_adhoc.md | A | 同上 |
| spec_stl_auto.md | A | Action A時の自動STL生成バッチ |
| spec_pl.md | B | P/L財務諸表の生成 |
| spec_bs.md | B | B/S財務諸表の生成 |
| spec_cf.md | B | CF計算書の生成 |
| spec_daily_cf.md | B | 日次CF(3タブ)の生成 |
| spec_plan.md | B | 計画シート群の生成 |
| spec_engine.md | C | 仕訳エンジン(Action A/B)のコア処理 |
| spec_datamart_ingest.md | C | データ取込のコア処理 |
| spec_pipeline_ingest.md | C | パイプライン取込のコア処理 |
| spec_pipeline_plan.md | C | パイプライン計画展開のコア処理 |
| spec_ord.md | D | ORD自動紐づけの機能改修 |
| spec_cc_import.md | D | クレカマッチングの機能設計 |
| spec_receipt_import.md | D | 領収書マッチングの機能設計 |
| spec_project_accounting.md | D | PJ別管理会計の機能設計 |
| spec_corporate_tax.md | D | 法人税自動計算の機能改修 |
| spec_data_validation.md | D | データ整合性チェックの機能設計 |
| spec_tab_renumber.md | D | タブナンバリングの機能改修 |
| spec_plan_bs_fix.md | D | 計画B/Sバグ修正の機能改修 |
| mst_account.md | マスタ | 科目マスタ定義 |
| mst_dict.md | マスタ | コード辞書マスタ定義 |
| mst_sys_config.md | マスタ | システム設定マスタ定義 |