新規事業におけるシステム導入では、新規事業の担当者がシステム開発工程を理解しておかなければいけません。そこで、システム開発をどのように進めたら良いのか分からない方のために、システム開発工程の重要性や詳細を解説します。目次:

  1. システム開発工程を理解する重要性とは?
  2. ざっとシステム開発の流れを確認
  3. システム開発の各工程について理解する
  4. システム開発工程で上流工程が大切な理由とは?
  5. システム開発工程では専門家への相談が必須

システム開発工程を理解する重要性とは?

flow chart background

システム開発における工程チェックは、本来、システム開発工程を理解した新規事業担当者が行います。
なぜなら、システムには実際の業務内容を反映させる必要があり、そのためにも新規事業担当者の協力や助言が不可欠だからです。

とはいえ実際のところ、新規事業担当者がシステム開発工程を理解していないがため、システム開発担当者や外注先に工程チェックなどを任せてしまい、結果として経費の追加や工期の遅延などのトラブルを招くケースが多々あります。

よって、新規事業担当者が開発への協力や工程チェックを行うために、システム開発工程を理解することはとても重要です。

ざっとシステム開発の流れを確認

要件定義

最初に、システムの目的や必要な機能などを明確にするための作業が必要で、要件定義と呼びます。

見積り

システムエンジニアは要件定義から、システム開発に必要な費用を算出して、お客様に見積もり書を提示します。

設計

要件定義を元にして、お客様の目に見える画面や帳票レイアウトの他、データベースの構造など目に見えない部分まで含めて、システム全体を設計する工程です。

開発

設計が終われば、いよいよプログラミングが始まります。つまり、実際のモノが作られる工程です。

テスト

システムがきちんと動くことをシステムエンジニアが確認します。
そして最終的には新規事業担当者と他メンバーの手で、必要な機能が満たされているか、不具合はないか、使い勝手が悪いところはないかなどを確認します。

リリース

テストで問題がなければ、お客様がシステムの使用を開始します。

運用保守

メンテナンスや不具合が出た時などに対応することを運用保守と呼びます。

以上が、システム開発工程の流れです。
各工程はバケツリレーのように進みます。よって、ひとつひとつの工程がしっかりしていないと、システム開発は成功しないため、システム開発工程の理解とチェックはとても重要です。

システム開発の各工程について理解する

Website design. Developing programming and coding technologies.
上でざっと説明したシステム開発の工程をひとつひとつ詳しく解説します。

要件定義

システムを誰がどのような目的で使うかなど、システムが満たすべき要件を決めます。なお要件を決めるために、システムエンジニアがお客様の要望を元に業務を分析し、必要に応じてヒアリングも行います。

見積り

要件を満たしたシステムを作るために必要な費用を、システムエンジニアが見積もります。
見積もりの内訳は、設計や開発、テストなどシステム工程の費用以外にも、ハードウェアやネットワークの費用、諸費用などです。
よって見積もりの段階で、ハードウェアやネットワークの性能、耐久性、運用方法や保守のコストなども分かります。

設計 : 外部設計

設計はシステムの概要や機能、仕様を決める工程です。
機能ごとに画面や帳票のレイアウトといったインターフェース、画面フローなど、システムの目に見える部分を設計します。ここでシステムの使い勝手がある程度決まるため、要件定義や見積もりと同じく、とても重要な工程です。
また、外部設計が完了すると、システム利用者にとってどのような画面や機能を持つかがわかるため、ここで新規事業担当者が最終チェックをおこないます。ここでチェックを怠ってしまうと、以降の工程が間違った認識のまま進み、修正の工数が大きくなってしまうことが多いので注意が必要です。

設計:内部設計

外部設計をもとに、プログラミングできるレベルまで細かく設計することを指します。システムの専門知識が必要な工程ですから、チェックは新規事業担当者とシステムの専門知識があるメンバーや外部の専門家と一緒に行います。
システムの信頼性や保守メンテナンスのしやすさを決めるためにも、重要な工程です。

開発

エンジニアによるプログラミングを指す工程です。
ほとんどの場合、外部設計と内部設計で決められた機能をひとつひとつプログラムするため、内部設計が完了した機能から開発に着手するケースが多いです。
実際のモノが作られる工程ですから、工程の内容を理解するにはかなり高度な知識が要求されます。
新規事業担当者は、スケジュール管理などマネジメントの部分で関わることになるでしょう。

単体テスト・結合テスト・システムテスト

開発されたプログラムは、まずプログラム単体で動くことをテストしたあと、プログラム同士の連携が取れるかどうかテストされます。
それぞれ、単体テスト、結合テストと呼び、システム会社が行います。新規事業担当者は進捗チェックや開発されたプログラムが正常にテストされていることを、システムエンジニアを通じてチェックしてください。
結合テストを終えたあと、システム全体がきちんと機能することを確かめるシステムテストに移ります。
システムテストは本番稼働を同じ環境、あるいは疑似環境で行われる、新規事業担当者と社内関係者、システムエンジニアの協同作業です。システムの最終チェックですので、小さな不具合も見逃せません。

リリース

システムが納品され、実際の業務で使用します。
またリリースと同時に、システムの使い方を研修や勉強会などの形で、システムエンジニアが講師となり研修会を開くこともあります。

運用保守

運用保守は、リリース後のシステムの維持管理のことです。
具体的には、ハードウェアやソフトウェアのメンテナンスを行います。
よって新規事業担当者やシステム開発担当者はシステムの仕様を把握し、メンテナンスがきちんと行われていることや不具合が発生していないことを確認しなければいけません。
また万が一不具合が起きた場合はエンジニアが対応に入ります。

Business group and digital technology concept.

システム開発工程で上流工程が大切な理由とは?

システム開発全体において、ひとつひとつの工程と完成度はとても重要です。
上流工程とはシステム開発を計画立案する工程で、今回の例で言うと「要件定義」や「外部設計:があたります。
上流工程が不完全だと、新規事業に必要な機能を満たさない開発が行われてしまい、内部設計のやり直しなど、手戻りが発生して工期が遅れることもしばしばです。
また、見積もりからやり直すケースもあり、追加経費がかかる可能性があります。
よってシステム開発における上流工程は非常に重要です。

システム開発工程では専門家への相談が必須

本記事では、 システム開発工程を理解することの重要性、そして各工程について詳細に解説しました。
すべての工程を理解し、内容をチェックしながら開発を進めるには、専門知識が必要なため、新規事業担当者だけでは難しいこともあります。
スムーズにシステム開発を行うためには、システムの検討段階から、専門家に相談することをおすすめします。