Skip to content

ドキュメンテーション作業概要

このドキュメントは、Go-DDDプロジェクトで実施したドキュメンテーション作業の概要をまとめたものです。プレゼンテーションや報告書作成の際に参照してください。

1. ドキュメンテーション構造

Go-DDDプロジェクトのドキュメンテーションは以下の構造で整理されています:

docs/
├── adr/                 # アーキテクチャ決定記録
├── images/              # ドキュメント用画像
├── slides/              # プレゼンテーション資料
└── wiki/                # プロジェクトWiki
    ├── architecture.md  # アーキテクチャ説明
    ├── feature_list.md  # 機能一覧
    ├── home.md          # ホームページ
    ├── ...              # その他のドキュメント

2. 主要ドキュメント

2.1 アーキテクチャドキュメント

アーキテクチャドキュメント(architecture.md)では、Go-DDDプロジェクトのドメイン駆動設計アプローチについて詳細に説明しています。主な内容:

  • オニオンアーキテクチャの採用と実装方法
  • ドメイン層、アプリケーション層、インフラストラクチャ層の分離
  • 依存関係の方向性と依存性注入の実践

2.2 実装ガイド

実装関連のドキュメントでは、各コンポーネントの実装詳細を説明しています:

  • system_implementation.md - システム全体の実装概要
  • product_implementation.md - 商品関連機能の実装
  • seller_implementation.md - 出品者関連機能の実装
  • orm_mapper_implementation.md - ORMマッパーの実装

2.3 セットアップガイド

セットアップガイド(setup_guide.mdsetup_guide_mermaid.md)では、開発環境の構築手順を詳細に説明しています。Mermaidを使用した図解付きバージョンも用意されています。

2.4 計画ドキュメント

  • release_plan.md - リリース計画
  • iteration_plan.md - イテレーション計画
  • user_stories.md - ユーザーストーリー

2.5 技術ドキュメント

  • modules_explanation.md - 使用モジュールの解説
  • echo_jwt_authentication.md - EchoフレームワークでのJWT認証実装

3. ドキュメンテーション技術

Go-DDDプロジェクトでは、以下の技術を活用してドキュメントを作成・管理しています:

  • MkDocs - ドキュメントサイト生成
  • Material for MkDocs - モダンなテーマとUI
  • Mermaid - フローチャートやシーケンス図の作成
  • PlantUML - UML図の作成
  • Markdown - 基本的なドキュメント形式

4. 最近のドキュメント更新

2023年8月から2024年10月にかけて、以下のドキュメント更新が行われました:

  • 2024年4月25日: README.mdにベストプラクティスセクションを追加
  • 2024年4月26日: README.mdに「find vs get」の説明を追加
  • 2024年4月27日: README.mdにソフトデリートについての説明を追加
  • 2024年5月4日: README.mdにアーキテクチャ図を追加
  • 2024年5月4日: README.mdの図を更新
  • 2024年9月3日: README.mdの全体的な更新

5. ドキュメンテーションの特徴

Go-DDDプロジェクトのドキュメンテーションには以下の特徴があります:

  1. 視覚的説明 - Mermaid、PlantUMLを活用した図解
  2. 多言語対応 - 日本語と英語のドキュメントを提供
  3. コード連携 - 実装コードとドキュメントの整合性を維持
  4. 変更履歴管理 - 詳細な変更履歴をrevision_summary.mdで管理

6. 今後の計画

ドキュメンテーションに関する今後の計画:

  1. API仕様書の自動生成機能の追加
  2. ユーザーマニュアルの拡充
  3. チュートリアルビデオの作成
  4. ドキュメントの継続的な更新と改善

7. まとめ

Go-DDDプロジェクトでは、ドメイン駆動設計の原則に基づいたアプリケーション開発を支援するための包括的なドキュメンテーションを提供しています。MkDocsとMarkdownを基盤とし、Mermaid、PlantUMLなどの視覚化ツールを活用することで、理解しやすく維持管理が容易なドキュメントを実現しています。