🐁
エンジニアリング・プリフライトブリーフィング標準手順書
はじめに
こちらは前回の投稿にて示した考え方に基づいた手法の手順書です。
もし興味ありましたら前回の投稿もご参照いただけると幸いです。
ここではエンジニアリングのプリフライトブリーフィングとして
いかにプロジェクト開発を皆さんの脳内でするのかを手順にしたものです。
1. 概要
パイロットの出撃前シミュレーション → エンジニアの開発前シミュレーション
パイロット:「今日の天候は?燃料は?緊急時の代替空港は?」
エンジニア:「今回のAPIは?データベースは?エラー時の処理は?」
2. 実施タイミングと時間配分
小規模プロジェクト(1-2週間)
- 時間: 1-2時間
- 例: 既存システムの機能追加、バグ修正
中規模プロジェクト(1-3ヶ月)
- 時間: 半日(4時間)
- 例: 新機能開発、システム連携
大規模プロジェクト(3ヶ月以上)
- 時間: 1日以上(ブロック分割実施)
- 例: 新システム構築、大規模リファクタリング
3. 標準進行手順
Phase 1: 飛行計画確認(要件・設計確認)
PL: 「今回のミッションは会員登録機能の開発です。ユーザーがメールアドレスとパスワードで登録し、メール認証後に利用開始できる仕組みを作ります」
各担当者の発言例:
- フロントエンド担当: 「入力フォームのバリデーション、確認画面、メール送信完了画面を担当します」
- バックエンド担当: 「ユーザーテーブル設計、認証API、メール送信処理を担当します」
- インフラ担当: 「メールサーバー設定とDB環境準備を担当します」
Phase 2: 天候・機体チェック(技術制約・リソース確認)
確認例:
- 「メールサーバーのSMTP設定は誰が行いますか?」
- 「ユーザーテーブルの個人情報暗号化方式は決まっていますか?」
- 「フロントエンドのバリデーションライブラリは何を使いますか?」
不明点の表明:
- 「暗号化方式についてはセキュリティチームに確認が必要です」→ 課題登録
Phase 3: 離陸から着陸まで(各工程のシミュレーション)
設計工程
PL: 「詳細設計を行います。API仕様書、DB設計書、画面設計書を作成します」
- API担当: 「POST /users でユーザー登録、GET /users/verify でメール認証を処理します」
- DB担当: 「usersテーブルとverification_tokensテーブルを設計します」
- 完了条件: 「各設計書のレビュー完了、承認を持って次工程へ」
実装工程
各担当者:
- フロント: 「React HookFormでフォーム作成、axios でAPI呼び出し」
- バック: 「Express.jsでAPI実装、nodemailerでメール送信」
- 完了条件: 「単体テスト通過、コードレビュー完了」
テスト工程
テスト担当: 「結合テストで実際のメール送受信まで確認します」
- 確認内容: 正常系、異常系、セキュリティテスト
- 完了条件: 「テスト仕様書の全項目PASS」
Phase 4: 緊急時対応(リスク・課題確認)
想定される問題と対策:
- メールが届かない場合: 再送機能、管理者による手動認証
- 大量登録によるサーバー負荷: レート制限、キューイング
- 個人情報漏洩リスク: 暗号化、アクセスログ監視
4. ブロック化の実例
ECサイト開発の場合
ブロックA:ユーザー管理(登録・認証・プロフィール)
ブロックB:商品管理(商品表示・検索・在庫)
ブロックC:注文処理(カート・決済・配送)
ブロックD:管理機能(売上分析・顧客管理)
各ブロックで個別シミュレーション実施後、ブロック間連携を確認
- 「ユーザー認証情報を注文処理でどう引き継ぐか?」
- 「商品在庫データを注文処理でどう同期するか?」
5. チェックリスト
必須確認事項
- 各工程の担当者が明確か
- 完了条件(Definition of Done)が定義されているか
- 次工程への引き渡し物が明確か
- 技術的制約・前提条件が共有されているか
- リスクと対策が検討されているか
- 不明点が課題として登録されているか
矛盾チェック例
- スケジュール矛盾: 「A機能の完成を待ってB機能に着手」と「A・B並行開発」
- 技術矛盾: 「リアルタイム処理必須」と「バッチ処理での実装予定」
- リソース矛盾: 「専任3人必要」と「他プロジェクトと兼任予定」
6. 実施後のアクション
即座に実行
- 課題の責任者・期限設定
- 不明点の調査・確認依頼
- 次回レビュー日程の確定
定期的な振り返り
- 週次: 課題解決状況の確認
- マイルストーン毎: シミュレーション精度の検証
- プロジェクト完了後: 手法改善点の洗い出し
7. 成功の指標
定量的指標:
- 手戻り工数の削減率
- スケジュール遵守率の向上
- バグ検出時期の前倒し
定性的指標:
- チームメンバーの理解度向上
- コミュニケーション品質の向上
- プロジェクトへの当事者意識向上
重要な心構え:「時間をかけてでも、今できる最善を尽くす」
Discussion