Skip to content

イテレーション 10 完了報告書

プロジェクト概要

項目 内容
プロジェクト名 テスト駆動開発から始めるXX入門
イテレーション 10
対象言語 Scala
開始日 2026-03-03
終了日 2026-03-03
作業日数 1 日(AI 自動化)

要員

項目 予定 実績
作業日数 10 日 1 日
開発者 1 名 + AI 1 名 + AI

指標

ビルド結果

項目 結果
テスト(sbt test) ✅ 34 tests PASS
フォーマット(sbt scalafmtCheck) ✅ 違反ゼロ
コンパイル(sbt compile) ✅ 警告ゼロ
循環複雑度(complexity.sh) ✅ 22 関数、違反ゼロ(閾値 10)

リリースバーンダウン

リリースバーンダウン(計画 vs 実績)

時点 計画残 SP 実績残 SP
開始 149 149
IT1 139 139
IT2 129 129
IT3 116 116
IT4 103 103
IT5 93 93
IT6 83 83
IT7 73 73
IT8 60 60
IT9 47 47
IT10 34 34
IT11 21 -
IT12 0 -

イテレーションバーンダウン

IT10 バーンダウン

時点 計画残 SP 実績残 SP
開始 13 13
環境構築 12 12
第1部 9 9
第2部 6 6
第3部 3 3
第4部 0 0
追加改善 0 0

ベロシティ

ベロシティ推移

イテレーション 実績 SP 平均 SP
IT1 10 10
IT2 10 10
IT3 13 11
IT4 13 11.5
IT5 10 11.2
IT6 10 11.0
IT7 10 10.9
IT8 13 11.1
IT9 13 11.3
IT10 13 11.5
イテレーション 計画 SP 実績 SP 累計 SP
IT1(Java) 10 10 10
IT2(Python) 10 10 20
IT3(Node/TS) 13 13 33
IT4(Ruby) 13 13 46
IT5(Go) 10 10 56
IT6(PHP) 10 10 66
IT7(Rust) 10 10 76
IT8(C#/F#) 13 13 89
IT9(Clojure) 13 13 102
IT10(Scala) 13 13 115
平均 11.5 11.5

実施内容と評価

完了したタスク

# タスク 状態
0 環境構築(sbt + ScalaTest + scalafmt + CI)
1 第 1 部: TDD の基本サイクル(章 1-3)執筆・実装
2 第 2 部: 開発環境と自動化(章 4-6)執筆
3 第 3 部: OOP 設計(章 7-9)執筆・実装
4 第 4 部: FP(章 10-12)執筆・実装
5 複雑度チェッカー追加と記事セクション 5.5 追加
6 CI/CD を Nix ベースに移行

成果物

カテゴリ 成果物
記事 docs/article/scala/(index.md + 12 章)
実装 apps/scala/(sbt プロジェクト、34 テスト)
CI .github/workflows/scala-ci.yml(Nix ベース)
品質ツール apps/scala/scripts/complexity.sh
タスクランナー apps/scala/Makefile

テスト内訳

スイート テスト数
FizzBuzzSpec(コア + FP 拡張) 16
TypeSpec(Type01/02/03 + ファクトリ) 13
CommandSpec(Value/List コマンド) 5
合計 34

技術トピック

トピック
1-3 ScalaTest(AnyFunSuite)、val/var/def、文字列補間、assert/assertResult
4-6 Git、Conventional Commits、sbt、scalafmt、WartRemover、Nix、Makefile、GitHub Actions
7-9 case class、sealed trait、パターンマッチ、パッケージ設計、ポリモーフィズム
10-12 高階関数、カリー化、関数合成、LazyList、Option/Either/Try、for 内包表記

リスク実績

リスク 影響度 発生 対応
sbt ビルドの初回ダウンロードに時間がかかる Nix 環境 + CI キャッシュで軽減
Scala 3 / Scala 2 構文の混在 Scala 3 構文に統一、問題なし
OOP と FP の境界が曖昧で記事構成が複雑 第 3 部を OOP、第 4 部を FP に明確分離
scala-cli が Nix 環境外で使えない bash スクリプトで代替
CI の初期構成が非 Nix 後から Nix ベースに移行
target/ .bsp/ の誤コミット .gitignore ファースト戦略で回避

Phase 3 進捗サマリー

イテレーション 言語 SP 状態
IT9 Clojure 13 ✅ 完了
IT10 Scala 13 ✅ 完了
IT11 Elixir 13 未着手
IT12 Haskell + 統合 21 未着手
Phase 3 合計 60 26/60 SP 完了(43.3%)

次のステップ

  1. IT11(Elixir)イテレーション計画を作成
  2. CI は最初から Nix ベースで構築(IT10 改善)
  3. BEAM/OTP 固有の概念を記事テンプレートに組み込む
  4. Phase 3 全体の進捗を確認(残 34 SP)

更新履歴

日付 更新内容 更新者
2026-03-03 初版作成 AI