設計も担当する場合
設計書の作成も担当する場合のガイドです。詳細設計から実装までを経験することで、システム全体の視点が養われます。
この役割の特徴
- 詳細設計書の作成に関わる:自分で設計を考え、ドキュメント化する仕事が加わる
- 設計内容を理解して実装する:自分で書いた設計に基づいて、すぐに実装に移る
- 設計レビューに参加する:先輩エンジニアから設計の品質について指摘を受ける機会がある
よくある1日の流れ
毎日の活動パターンを図で見てみましょう。
flowchart LR
A[9:00
朝会] --> B[9:30
設計作業]
B --> C[12:00
昼休み]
C --> D[13:00
設計レビュー]
D --> E[14:00
設計修正]
E --> F[16:00
実装作業]
F --> G[18:00
退勤]
朝は設計の進捗確認、午前中に設計書を作成、午後に設計レビューを受けて修正し、その後実装に移るという流れです。以下はより詳しいタイムスケジュール例です。
| 時間 | 活動 | 詳細 |
|---|---|---|
| 9:00 | 朝会 | 今日の予定を共有、設計の相談事項を確認 |
| 9:30 | 設計作業 | 設計書の作成、図の作成 |
| 11:00 | 仕様確認 | 不明点を設計リーダーやお客様に確認 |
| 12:00 | 昼休み | ─ |
| 13:00 | 設計レビュー | 作成した設計書のレビューを受ける |
| 14:00 | 設計修正 | レビュー指摘を反映 |
| 16:00 | 実装作業 | 設計書に基づいて実装(設計と並行する場合) |
| 17:30 | 進捗報告 | 設計進捗、課題を報告 |
| 18:00 | 退勤 | ─ |
ポイント
設計は「実装者が迷わない」ことが目標です。自分で実装することを想像しながら設計書を書くと、抜け漏れに気づきやすくなります。
最初の1ヶ月で覚えること
第1週:設計書の読み方を学ぶ
最初の1週間は、既存の設計書を読み込み、プロジェクトのフォーマットやUML記法に慣れることが目標です。
| やること | 完了の目安 |
|---|---|
| 既存の設計書を読む | 画面設計書、処理設計書を各1件以上読む |
| 設計書のフォーマット把握 | プロジェクトのテンプレートを理解 |
| UML記法の基礎 | クラス図、シーケンス図が読める |
第2週:簡単な設計を書いてみる
環境に慣れたら、簡単な設計から書き始めます。最初は先輩の指導を受けながら進めます。
| やること | 完了の目安 |
|---|---|
| 既存設計書の修正 | 小さな変更を設計書に反映 |
| 設計レビューを受ける | レビュー指摘を理解して修正 |
| 設計の意図を説明 | 「なぜこの設計にしたか」を説明できる |
第3〜4週:設計と実装をつなげる
簡単な設計が書けるようになったら、その設計に基づいて自分で実装し、設計と実装のつながりを理解します。
| やること | 完了の目安 |
|---|---|
| 自分の設計を実装 | 設計通りに実装できるか確認 |
| 設計の過不足を把握 | 「ここが足りなかった」に気づける |
| 設計書の改善 | 実装で気づいた点を設計書に反映 |
1ヶ月後の目標状態
1ヶ月を通じて、設計と実装の両面での基礎を身につけることを目指します。
flowchart TB
A[1ヶ月後の目標] --> B[既存の設計書を読んで理解できる]
A --> C[簡単な設計書を作成できる]
A --> D[設計レビューで指摘を受けて改善できる]
A --> E[設計と実装のつながりを意識できる]
設計で意識すること
実装者の視点で書く
設計書で最も大切なことは「実装者が迷わないこと」です。その視点で設計書を評価しましょう。
flowchart TB
A[設計書を書く] --> B{実装者が読んで}
B -->|迷わない| C[良い設計書]
B -->|迷う・質問が出る| D[改善が必要]
良い設計書のポイント
- 入出力が明確
- 処理の条件分岐が網羅されている
- 例外ケースの扱いが書かれている
- 関連する他の機能との関係が分かる
設計書チェックリスト
設計書を書いたら、以下を確認しましょう。
この経験で身につくスキル
技術スキル
| スキル | 説明 |
|---|---|
| 設計力 | 要件を構造化して設計に落とし込む力 |
| 抽象化力 | 本質を見極めて整理する力 |
| 可視化力 | 複雑なものを図や文章で表現する力 |
| 先読み力 | 実装時の問題を事前に予測する力 |
| 俯瞰力 | システム全体を見渡す力 |
ビジネススキル
| スキル | 説明 |
|---|---|
| 説明力 | 設計意図を他者に伝える力 |
| 調整力 | 関係者と認識を合わせる力 |
| 判断力 | トレードオフを考慮して決断する力 |
目指せる人材像
設計も担当する経験を通じて、将来のキャリアパスがいくつか見えてきます。
flowchart TB
A[設計担当からのキャリア] --> B[SE/システムエンジニア]
A --> C[アーキテクト]
A --> D[テックリード]
A --> E[プロジェクトリーダー]
B --> B1[要件定義から設計まで担当]
C --> C1[システム全体の構成を設計]
D --> D1[技術的な意思決定を主導]
E --> E1[プロジェクト管理も担当]
各キャリアパスの目安期間と説明です。
| 人材像 | 説明 | 目安期間 |
|---|---|---|
| 一人前の設計者 | 機能単位の詳細設計を担当 | 2〜3年 |
| SE | 要件定義から設計、レビューまで | 3〜5年 |
| アーキテクト | システム全体の設計・方針決定 | 5年〜 |
設計経験は上流工程への登竜門
1年目から設計に関わる機会があるのは恵まれた環境です。この経験を活かして、早い段階でSEやアーキテクトを目指せます。
成長を感じられるポイント
あなたが成長しているかは、以下のチェックリストで自己評価できます。各時期で「できるようになったこと」を意識することで、モチベーションにつながります。
3ヶ月後
6ヶ月後
1年後
成長のサイン
「設計段階で問題を見つけられるようになった」「実装で困らない設計が書けるようになった」と感じたら成長の証です。
本編で特に重要な章
このカリキュラムの他の章のなかで、設計担当として特に参考になるものを挙げます。
| 章 | 重要度 | 理由 |
|---|---|---|
| 開発工程の基本 | ★★★ | 設計の位置づけを理解 |
| 設計書・仕様書の読み方 | ★★★ | 設計書を読み書きするため |
| ドキュメントの書き方 | ★★★ | 設計書を書くため |
| 実装の進め方 | ★★☆ | 実装しやすい設計のため |
| コードを読む基礎 | ★★☆ | 設計を実装につなげるため |
追加で学ぶと良いこと
優先度:高
| 内容 | 説明 | 学習方法 |
|---|---|---|
| UML基礎 | クラス図、シーケンス図の読み書き | 書籍、実践 |
| 設計書の書き方 | 分かりやすい設計書 | 先輩の設計書を参考に |
| テーブル設計 | データベース設計の基礎 | 本編 + ステップアップ |
優先度:中
| 内容 | 説明 | 学習方法 |
|---|---|---|
| SOLID原則 | 良い設計の原則 | ステップアップガイド |
| デザインパターン | よく使う設計パターン | ステップアップガイド |
| アーキテクチャ基礎 | システム構成の考え方 | ステップアップガイド |
よくある悩みと対処法
設計担当として働く中で、多くの新人が同じような悩みにぶつかります。各悩みに対する対処法を、アコーディオンで確認できます。
「設計書の書き方が分からない」
- 既存の設計書をテンプレートにする:プロジェクトの既存設計書を参考に、同じフォーマットで書き始める
- 先輩にレビューしてもらう:書いたら早めに先輩に見てもらい、「こうした方がいい」という指摘を受ける
- 「実装者が迷わないように」を意識:読み手の視点で「この設計書で実装できるか」を常に考える
「どこまで詳細に書けばいいか分からない」
- 実装者が迷わない程度に:質問が出ないレベルまで詳細に書く。逆に、過度に細かい実装の話は不要
- プロジェクトの慣例に合わせる:既存の設計書レベルを参考に、同じ粒度で書く
- 曖昧な部分は明確にする:「△△の場合は〇〇」というように、条件分岐を網羅する
「自分の設計が正しいか不安」
- レビューで確認してもらう:不安なまま進めず、設計段階でレビューを受ける
- 実装してみて問題がないか確認:設計通りに実装できるか試してみる。問題があったら改善する
- フィードバックを活かして改善:指摘を受けるたびに「なぜそうすべきか」を理解し、次の設計に活かす
成長のためのアドバイス
実装者の視点を持つ
設計者として最も大切なのは、実装する側の視点を持つことです。
- 「この設計で実装できるか」を考える:書いた設計を読み直し、実装者になった気持ちで「本当に迷わないか」を検証する
- 自分で実装してみて確認:自分が書いた設計に基づいて実装してみることで、設計の過不足が見える
- 実装者からのフィードバックを活かす:「ここが曖昧だった」という指摘を、今後の設計に反映させる
既存の設計を学ぶ
優れた設計書を読むことで、設計の引き出しが増えます。
- プロジェクトの既存設計書を読む:実際に動いているシステムの設計書を研究する
- なぜその設計になっているか考える:「なぜこの構造なのか」「なぜこの方式なのか」を理解しようとする
- 良いパターンを吸収する:「こういう場面ではこの設計パターンを使う」という知識を蓄積する
設計の引き出しを増やす
仕事として与えられた設計だけでなく、様々な知識を取り入れることが長期的な成長につながります。
- デザインパターンを学ぶ:「Observerパターン」「Adapterパターン」など、よく使うパターンを体系的に学ぶ
- 他のシステムの設計を参考にする:オープンソースプロジェクト等の設計を読む。業界標準のパターンに触れる
- 「こういう場合はこうする」を蓄積:経験を通じて「並行処理はこう設計する」「大量データはこう処理する」という選択肢を増やす