VNEXTの会社紹介資料

資料ダウンロード

ホーム > V-BLOG > 技術・サービス

ある日突然担当に!システム開発の流れをおさらい

2021/07/06

ある日突然、「今度、このシステム開発の担当を任せることになったから、よろしく!」といわれたら、まったくの初心者のあなたは「システム開発って?どうやって進めていくの?」と大いに焦ることでしょう。あるいは、「昔、システム開発を担当したことはあるけど、どうやって進めたのかよく覚えてないな」と不安に思っている人もいるかも知れません。

 

ひとくちにシステム開発といっても、ターゲット分野や機能内容はさまざまです。しかし、どの分野のシステムでも、どんな機能のものでも、開発の進め方は同じです。

 

システム開発未経験の人も、大昔にシステム開発を経験した人も、ここでシステム開発の流れについておさらいしておきましょう。

 

development-flow

 

システム開発の基本的な流れはどのシステムにおいても同じ

前述のように、どんなシステム開発においても、基本的な流れ(工程の順序)は同じです。以下に、システム開発の流れを示します。

 

 1.要件定義

 2.外部設計(基本設計)

 3.内部設計(詳細設計)

 4.コーディング(プログラミング)

 5.単体テスト

 6.結合テスト

 7.システムテスト(総合テスト)

 8.運用テスト

 

これらの工程を経て、晴れてリリースとなります。リリース後は、当初の契約にのっとり、保守などの作業が発生する場合があります。

 

では、工程ごとに作業内容を見ていきましょう。

 

     1. 要件定義

まず、どのようなシステムにするのか(システムの目的)、どのようなことがしたいのか(顧客の要求)などを顧客からヒアリングし、それにもとづいて必要な搭載機能などを検討します。インプット・アウトプットの明確化、ユーザインタフェースの必須条件などにも留意しましょう。

 

このようにしてシステムの要件を定義づけるのが「要件定義」の工程で、その内容は「要件定義書」にまとめます。この要件定義をしっかりと行い、要件定義書にきちんと明文化しておくことで、顧客と開発側の認識の相違によるトラブルを防ぐことが可能です。また、開発していくうちにシステムの目的が不明瞭になり、できあがったものが顧客の要求を満たしていないといった最悪なケースも回避できます。

 

要件定義をしっかり行うかどうかが、システム開発の成否を左右するといっても過言ではないほど、重要な工程といえます。

 

     2.外部設計(基本設計)

「外部設計」は、要件定義書にもとづき、システムの基本的な仕様を決める工程です。ユーザインタフェースはもちろん、必要な入出力データの詳細仕様(データの種類、上限値・下限値、個数、表示方法、入力データと出力データの関係性など)、表示の遷移の仕方など、システムの枠組みをきちんと決めていきます。

 

外部設計をまとめたものが「外部設計書」で、必要に応じて顧客に確認をとります。

 

     3.内部設計(詳細設計)

外部設計が決まれば、その機能や仕様を実現するための処理について設計します。これが「内部設計」です。

 

内部設計では、それぞれの機能を実現する処理をフロー図などに落としながら、タスクやモジュールといった小さい処理に分割します。異なる機能でも、その中の一部分は同じ処理である場合が多く、そのような処理を共通化できるようにしておけば、プログラミングの際に効率がよくなるためです。

 

それぞれのタスクやモジュール内で実行させる処理や、タスクやモジュールの間でどのようなデータがどのようにやり取りされるのかといった定義も行います。このようにして決めた内容を「内部設計書」にまとめます。

 

     4.コーディング(プログラミング)

内部設計書にもとづいて、各機能のタスクやモジュールのプログラムを作成していくのが、「コーディング」の工程です。内部設計書がしっかりと書かれていれば、効率よくプログラミングを進めていくことができます。

 

     5.単体テスト

1つの機能についてプログラミングが完了し、コーディングエラーなども取れれば、正しく動作するかどうかを確認します。この工程を「単体テスト」といいます。

 

     6.結合テスト

単体テストに合格したいくつかのプログラムを結合し、動作確認をするのが「結合テスト」です。プログラムの呼び出しやデータの受け渡しに不具合がないかを確認します。

 

     7.システムテスト(総合テスト)

ユーザ環境と同じ環境下で正しく動作するかどうかを確認するのが「システムテスト」です。これがうまくいってはじめて顧客にシステムを渡すことができます。

 

     8.運用テスト

実際に顧客に動作テストをしてもらうのが、「運用テスト」の工程です。最初に取り決めた「要件定義」をすべて満たしているかを確認してもらいます。

 

【まとめ】担当工程だけでなく全工程を把握しておくことも大切

システム開発を担当するといっても、プロジェクトリーダーとして携わるのか、コーディングだけなのかなどによって、作業内容は異なります。

 

しかし、たとえ1つの工程のみを担当する場合でも、システム開発全体の流れを把握しておくことをおすすめします。なぜなら、全体の流れを把握しておくことで、担当工程とその前後の工程との間の流れがスムーズになるうえ、ほかの担当者に的確な要望を出して、担当工程の作業を効率よく進められるようにすることも可能だからです。

 

ぜひ、大きな視点を持ってシステム開発に取り組んでください。