システム開発の仕事の流れは、住宅建築とよく似ていると言われます。みなさまがイメージしやすい住宅建築の仕事の流れと対比して、システムの開発について説明します。

システム開発の仕事の流れ

1-システム企画 [システム開発]

個別企業ごとの情報システム戦略に基づき、必要とされるそれぞれのシステムを検討します。
(住宅建築の「プランづくり」に相当)

検討内容
  • システム化の目的、目標、対象範囲
  • システム構造、主要機能
  • 納期、予算、効果
workflow01

2-要件定義 [システム開発]

現状の作業工程やシステムについて調査し、問題点、課題を分析します。その解決策と、システム要求を検討します。
(住宅建築の「施主の要求まとめ」に相当)

  • システム化要件の分析、優先順位付け
  • システム化範囲、フェーズ分け
  • 要員、技術、費用、納期の検討
  • 機能、品質、運用に関し、要件定義書を作成
workflow02

3-外部設計 [システム開発]

システムにおける機能の構造と、個々の機能の使いやすさについてデータを利用するユーザーの立場から検討します。
(住宅建築の「基本設計」に相当)

  • 機能別に分けられたサブシステムの定義
  • 帳票仕様、ユーザーインターフェースの設計
  • 処理の対象となるデータベースの設計
  • 移行・運用要件の検討
workflow03

4-内部設計 [システム開発]

外部設計をもとに、ソフトウエア内部での処理について設計し、プログラマーに対して具体的な作業指示を出していきます。
(住宅建築の「実施設計」に相当)

  • 機能の分割などプログラム構造の設計
  • 分割されたモジュール機能の定義
  • 物理データベース・ファイルの設計
  • テスト方針書の作成

5-製造・プログラミング [システム開発]

内部設計仕様書に基づいて、そのシステムに最適な言語でプログラムを作成します。
(住宅建築の「施工」に相当)

  • モジュール仕様書の作成
  • コーディング
workflow04

6-テスト [システム開発]

作成したプログラムが正常に作動するかを確認します。複数のテストによりバグを発見、修正し、完全な状態に仕上げます。
(住宅建築の「検査・引き渡し」に相当)

  • 単体テスト 個々のプログラムの検証
  • 結合テスト 複数のプログラム間でのデータのやりとりを検証
  • 総合テスト 全てのプログラムを統合して、システム全体の機能を検証
  • 運用テスト 完成したシステムが実際のシステム環境で動作するかの検証

7-納品・運用・サポート [システム開発]

ユーザーのシステム環境で正常に稼働することが確認されたのち、実際の利用者に画面の操作方法や運用管理の指導を行ったうえで納品となります。
(住宅建築の「アフターサービス」に相当)

納品後も常に作動状況の確認をするなどのサポート体制を構築し、必要に応じて改善提案を行います。

住宅建築の仕事の流れ

1-プランづくり [住宅建築]

住宅建築の目的や希望をお聞きし、そのための敷地や資金などの問題を解決していきます。

workflow01

2-施主の要求まとめ [住宅建築]

住宅の用途や家族構成、部屋数、レイアウト、外装、内装、設備、予算などをまとめます。

workflow02

3-基本設計 [住宅建築]

まとめられた要求を元に、外観、間取り、平面図、材質、収納、設備、照明、コンセント位置、見積りなどを図面におこします。

workflow03

4-実施設計 [住宅建築]

基本設計を元に、強度、施工、配線、配管などの作業工程に関わる部分を設計します。

5-施工 [住宅建築]

基本設計と実施設計を元に、基礎、柱立て、内装、配線、設計監理などを行います。

workflow04

6-検査・引き渡し [住宅建築]

完成に近づいた段階で、申請や建築確認を行い、問題がなければ施主に引き渡します。

workflow05

7-アフターサービス [住宅建築]

引き渡し後においても、問題が発生すればすぐに補修などを行うと共に、増改築などの経年変化にも対応します。

実際の業務にあたっては、プログラミングなどの技術的な知識やスキルだけではなく、お取引先の事業内容や具体的な業務についての理解、お客様や関係部門の担当者とのコミュニケーション能力などのヒューマンスキルも求められています。

基本的にキャリアは5~7からスタートし、経験を積んでさまざまなスキルを上げることで4→3→2→1の工程に携わるようになります。このあたりを「上流工程」と表現します。