システム開発を円滑に進めるためには、スケジュール作成が重要です。スケジュールが明確になっていることで、関係者が共通認識を持てる、プロジェクトの全体像を把握できるといったメリットがあります。
この記事では、システム開発のスケジュール作成のポイントを解説します。作成・管理方法としてガントチャートやWBSについても解説するため、参考にしてください。
目次
システム開発における、スケジュール管理の重要性
システム開発におけるスケジュール管理の重要性は、関係者が共有認識を持てることやトラブル発生時にすぐにリカバリーできることが挙げられます。
関係者が共有認識を持つ
スケジュールが定まっていると、関係者の認識が統一されます。認識の齟齬やコミュニケーションのミスが生じにくくなるでしょう。全員が同じ方向性と目標を共有できる点も重要です。結果的に円滑にプロジェクトを進められます。
プロジェクトの全体像を把握できる
システム開発においては、依頼者と開発者、双方がスケジュールを管理します。双方が管理することで、プロジェクトの全体像を把握しやすくなるでしょう。現在の進行状況を理解できます。
トラブル発生時、いち早くリカバリーできる
予期せぬトラブルや急な変更が生じることは、プロジェクトにありがちです。スケジュールを管理しておくことで、いち早く対応できます。どの工程を見直すべきか、どこからやり直せばよいかがすぐにわかるでしょう。
システム開発のスケジュールの目安
システム開発にはさまざまな工程があります。各工程の詳細やスケジュールの目安について解説します。
要件定義
システム開発のスケジュールを立てるには、まず要件定義を行います。具体的には、以下の項目について決めます。
- 機能要件:データ入力、レポート生成、ユーザー管理
- 非機能要件:処理速度、システムの応答時間、スループットのパフォーマンス
- セキュリティ要件:データの暗号化、アクセス権限、バックアップ
要件定義の目安は1か月~2か月です。
設計
要件定義書に沿って、各種設計を行います。設計は外部設計と内部設計に分かれています。外部設計の例は、以下の通りです。
- ユーザーが利用するクライアント
- サービス提供に使うサーバー
- システムのハードウェア
内部設計は、以下の通りです。
- ソフトウェア処理のロジック
- システムの基盤
- 内部データの構造
スケジュールの目安としては、外部設計(基本設計)が2~3か月であり、内部設計(詳細設計)は4~5か月と考えておきましょう。
開発
各種設計が完了したら、開発に進みます。内部設計の際に作成した設計書をベースに、プログラマーが進めます。システム開発で主に使用するプログラミング言語は、以下の通りです。
- C言語
- C#
- Python
上記を使ってコーディングし、各コンポーネントやモジュールを実装します。コーディング(開発)に要する目安は、5〜7か月です。
テスト
各種テストを行いシステムが正確に動作するかを確認します。テストの種類は、以下の3つです。
- 単体テスト
- システムテスト
- 結合テスト
単体テストの場合は5~7か月、結合テストは8~9か月、システムテスト(総合テスト)は10~11か月、運用テストには12か月ほどを目安にしておきましょう。
運用開始
ここまで完了すれば、運用開始です。運用とは、完成したシステムが正常に使用・保守され、目的通りに安定して機能している状態を指します。具体的に、以下のものが運用にあたります。
- システムの利用
- システムの監視や管理
- 課題解決や改善
- メンテナンス
- セキュリティ管理
スケジュールの作成・管理方法
スケジュールの作成や管理方法として、おすすめなのはガントチャートとWBSです。それぞれの特徴やメリットについて解説します。
ガントチャート
ガントチャートでは横軸に時間、縦軸に作業内容が記載されます。タスクの期間や順序を明確に把握できます。ガントチャートでスケジュール管理することのメリットは、以下の2つです。
- 関係者に進捗を共有しやすくなる
- プロジェクト全体が明確化できる
ガントチャートでは、プロジェクトの進行が遅れている場合、工程のどのあたりに課題があるのかをひと目で把握できます。
WBS
WBS(Work Breakdown Structure)は、プロジェクトの範囲や要件を明確にできるツールです。プロジェクト全体を構成する作業を階層にして分解し、細分化された単位で管理できるようにします。他にも以下のようなメリットがあります。
- それぞれの役割が明確になる
- 各役割が明確になる
スケジュールを正しく設計するためには、タスクを抜けなく整理し、誰がいつ何をするかを見える化することが不可欠です。
Sun*では、実務で使えるWBSのテンプレートと作成ガイドを無料で配布しています。ぜひご活用ください。
スケジュール作成の流れ
スケジュール作成は、必要作業の洗い出し、着手する順序を決める、作業を構造化する、担当者を決定する、関係各所へ周知といった流れで進めます。
必要作業の洗い出し
まずプロジェクトの全作業を網羅的に洗い出しましょう。プロジェクトの大枠を形成するメインタスクから始め、より詳細なサブタスクに分割していきます。各作業の範囲、必要な時間、およびリソースを考慮し、プロジェクトの全体像を明確にすることが目的です。
着手する順序を決める
各作業が特定できたら、実行順序を計画しましょう。この段階では、作業間の依存関係を考慮し、他の作業が開始する前に必要な完了作業を明確にします。重要なタスクやプロジェクトの進行に大きく影響する作業はクリティカルパスとして特定し、優先的に管理します。
その結果、作業の進行がスムーズになり、リソースの配分や期限設定が効果的に行えるようになります。
作業を構造化する
具体的な作業と順番が確定したら、体系的に整理してスケジュールを作成しましょう。プロジェクト全体を論理的かつわかりやすく整理することが目的です。ツリー構造を使って各作業の関連性や階層関係を視覚化し、プロジェクト全体の概要を一目で把握できるようにします。
担当者を決定する
それぞれのタスクに適切な担当者を指名しましょう。誰がどの仕事を担当するかが明確になることで、責任の所在と進捗管理を可視化できます。担当者のスキルや経験を考慮し、最適な人材を選定することが肝要です。さらに、作業者同士のコミュニケーションと協力を促進することで、プロジェクトの効率と成果を向上させられます。
関係各所へ周知
完成したスケジュールは、プロジェクトに関わるすべての関係者と共有しましょう。これにより、プロジェクトの進捗状況や課題、予定された作業が正確に伝わり、関係者間での誤解を防げます。その結果、一貫性と透明性のあるプロジェクト管理が実現します。また、関係者のフィードバックを取り入れることで、さらに改善する機会も得られるでしょう。
システム開発のスケジュール管理のポイント
システム開発のスケジュール管理をする際は、担当者のスキルと作業のボリュームを把握することや、成果物を明確にすることなどです。
担当者のスキルと作業のボリュームを把握する
タスクの量と関与するスタッフの能力についても、慎重に考慮する必要があります。人材リソースを効果的に配置することで、品質管理やスケジュール管理の向上に貢献します。作業量が適切かどうか、担当者がタスクの難易度に対応できるスキルを持っているかを確認しましょう。
成果物を明確にする
プロジェクトの成果物に関する内容と完成度の目標を明確に定めましょう。プロジェクトが進行するなかで明確な成果目標が設定されていないと、完成度をどこまで追求すべきかが不透明になり、無駄な作業が増えるリスクがあります。
スケジュールにこだわりすぎない
計画通りに進めることに執着しすぎると、エラーや成果物の品質低下のリスクが高まります。システム開発では、進捗の遅れや予期しない問題が発生することがあります。プロジェクトの本来の目標を見失わず、スケジュール遅延には柔軟に対応することが重要です。スケジュールには余裕を持たせることも効果的です。
マイルストーンを設置する
マイルストーンは、プロジェクトの進行過程で設定される重要な中間目標です。単に成果物の完成を目指すのではなく、進捗やスケジュールを調整するための指標として位置付けられます。マイルストーンは進行中の段階で柔軟に設定されるため、工程の変わり目や適切なタイミングで挿入することが推奨されます。
まとめ
システム開発のスケジュールには、関係者が共通認識を持てることや、プロジェクトの全体像を把握できることなどのメリットがあります。各工程の詳細やスケジュールの目安を把握し、無理のないスケジュールをたてましょう。
自社だけではスケジューリングに不安があるという人は、株式会社Sun Asteriskにご相談ください。DXコンサル、設計から本格的な開発まで一気通貫でサポートできるケイパビリティの広さ、圧倒的に柔軟な開発リソースを提供します。ぜひご検討ください。

WBS(Work Breakdown Structure)について、基本の解説と、作成方法を具体的にご紹介いたしました。

本ガイドでは、複雑になりがちなシステム開発の見積もりの基本構造や比較のポイントをわかりやすく解説いたしました。