この記事を読むのに必要な時間:およそ 2 分

分野

カテゴリ

マネジメント系

システム開発

今回は,ユーザとエンジニアの双方がコミュニケーションを取り合いながら,よりよいシステムを作っていくために必要となる,システム開発工程の基礎知識について説明します。試験では,システム開発の各工程で行われる作業の目的とその大まかな内容,それぞれの開発モデルの特徴とメリット・デメリットなどについて問われています。

システムの開発工程

システムを開発する場合,まず情報システム戦略第9回参照に基づいて,発生している業務の問題点を調査します。その解決策として,新システムを開発すべきかどうか,どこまでの業務をシステム開発の対象とするか,開発にかかる費用と得られる効果のバランスはどうかなどについて検討し,どのようなシステムを作成するのかをシステム化計画書にまとめます。

システム開発の流れと各工程の概要を,開発モデルの基礎となるウォータフォールモデル(次項参照)を例に説明します。工程の分け方や名称は,会社によって多少異なることもありますが,一般的には次のような流れで開発していきます。

①要件定義

システム要件定義:システム化の対象となる業務について,ユーザとなる人たちにヒヤリングを行い,システム化する範囲や対象業務を明確にし,新システムに必要な機能を検討する。

ソフトウェア要件定義(外部設計):業務の手順を整理して,システムで扱うデータや処理の流れ,ソフトウェアの内容を決める。また,画面や帳票などユーザが直接扱うインタフェース部分の仕様を検討する。セキュリティ対策やシステムの保守方法などについてもこの段階で決めておく。

②システム設計

システム方式設計:ハードウェアの構成,調達するソフトウェアパッケージ,システムの処理方式など,要件定義書に記載された機能の実現に必要なシステムの構成を決定する。

ソフトウェア方式設計(内部設計):開発するシステムを,「入金処理」「座席予約」などの大まかな機能ごとにコンポーネント(サブシステム)に分割して機能を定義し,それらのコンポーネント間をつなぐインタフェースの仕様などを設計していく。

ソフトウェア詳細設計(プログラム設計):コンポーネントをさらに小さな単位のモジュール(ユニット)に分割し,各モジュールが持つ機能やモジュール間のインタフェースなどについて定義する。

③プログラミング

プログラミング(コーディング):システム設計に従い,プログラム言語を用いてモジュールごとにプログラム作成を行う。

単体テスト:作成したモジュールごとに,プログラムに誤り(バグ)がないかを検証する。

④テスト

単体テストをクリアしたモジュールを結合し,システムが各設計書に定義された機能要件どおり動作するかどうかを,各種のテストで検証する(テストについては第13回で解説)。

⑤検収

ユーザ側(外部のシステム開発会社に委託した場合には発注者側)が実際に運用する場合と同様の条件で試用。システムが正常に稼働するか,要件定義書に定められた機能を満たしているかを確認する。

⑥運用・保守

移行:実際の稼働環境へシステムを移す。ある時点で旧システムから新システムへ一気に切り替える一斉移行や,システムの機能や支店・部門などの単位ごとに新システムへ切り替えて行く順次移行などの方法がある。

保守:一度完成したシステムも,ハードウェアの故障への対応や,業務の変化に伴う修正などの保守が,随時行われる。障害の発生を事前に防ぐために定期的に行われる予防保守と,障害発生後に行われる事後保守がある。

代表的なソフトウェア開発モデル

どんな業務にも,必要な作業内容や作業手順に関する先人のノウハウが存在するものです。システム開発にも,「システム設計やプログラム作成の各工程を,このような作業内容・順序で進行させていくと,スムーズにシステム構築ができる」といういくつかのモデルケースがあり,これらを開発モデルといいます。

大規模なシステム開発に有効な『ウォータフォールモデル』

多数のエンジニアが投入される大規模なシステム開発では,ウォータフォールモデルを使って開発します。システム開発の一連の流れを,一工程ずつ後戻りすることなく進めていきます。滝(ウォータフォール)のように,上流から下流へと一方通行で工程が進んでいくため,工程管理がしやすいすぐれた技法です。

この手法では,ユーザが新システムの全体像を見られるのは,開発の最終段階になってからです。新システムが,ユーザ要求と異なっていた場合,設計工程に戻って必要な箇所すべてに修正を加えるのは大変な時間と費用が必要です。このため,システム要件定義やソフトウェア要件定義(外部設計)の段階で,ユーザ側の担当者が積極的に参加し,ユーザの要求を正確にエンジニア側へ伝えることが不可欠です。

 ウォータフォールモデル

図 ウォータフォールモデル

試作品を見せる『プロトタイピングモデル』

比較的小規模なシステムでは,まずプロトタイプ(試作品)をユーザに提示し,システムの機能や操作画面・出力される帳票などの確認をしてもらい,ユーザの要求を始めの段階で明確に把握するプロトタイピングモデルが用いられます。

プロトタイプ作りから始めますので,手間と費用がかかりますが,ユーザの具体的な意見を設計段階で取り入れられるため,修正などの手戻りが少ないという利点があります。

 プロトタイピングモデル

図 プロトタイピングモデル

段階を追って完成度を高める『スパイラルモデル』

独立性の高い部分ごとに開発を行い,設計→プログラミング→テストの流れを短い周期で繰り返しながら,システムの完成度を高めていく手法がスパイラルモデルです。プロトタイプを作成してリスクを評価し,システムの開発に関わる制約や代替案の有無なども検討して,開発のリスクが最小となるように改良しながらシステムを育てる手法です。ウォータフォールモデルをベースにプロトタイピングモデルも取り入れた,複合的なモデルとなっています。

 スパイラルモデル

図 スパイラルモデル

著者プロフィール

原山麻美子(はらやままみこ)

情報処理試験対策の書籍や雑誌等の企画・執筆・編集など,長年に渡りIT関連全般の出版に携わる。専門学校の講師や受験対策講座(ラジオ)でのアドバイザー経験もあり,受験者への具体的で細やかなアドバイスは,わかりやすくて実践的だと好評。

コメント

コメントの記入


自動採点機能付き 問題演習ソフト DEKIDASS デキダス

おすすめ書籍

要点早わかり 応用情報技術者 ポケット攻略本

要点早わかり 応用情報技術者 ポケット攻略本

最小限の学習時間・手間で,効率良く合格するためのコンパクトな試験対策まとめ集です。合格に必要な重要事項を厳選し,項目ごとに見...

要点確認これだけ!ITパスポートポケット一問一答問題集

要点確認これだけ!ITパスポートポケット一問一答問題集

解きやすい一問一答形式の問題集です。携帯しやすいポケットサイズで、すきま時間を使った学習に最適です。コンパクトでありながら、...

要点確認これだけ!基本情報技術者【午前】ポケット一問一答問題集

要点確認これだけ!基本情報技術者【午前】ポケット一問一答問題集

解きやすい○×形式の問題集です。携帯しやすいポケットサイズで,すきま時間を使った学習に最適です。厳選した過去問題を基に作成した...

平成28年度 栢木先生のITパスポート教室準拠 書き込み式ドリル

平成28年度 栢木先生のITパスポート教室準拠 書き込み式ドリル

イメージ&クレバー方式でおなじみの「栢木先生のITパスポート教室」に完全準拠したサブノート&ドリルです。「手を動かしながら理解...

平成28年度 イメージ&クレバー方式でよくわかる栢木先生の基本情報技術者教室

平成28年度 イメージ&クレバー方式でよくわかる栢木先生の基本情報技術者教室

「やさしい系参考書」のパイオニアである本書が,受験者の方から支持され続けている理由は,猫がかわいいからだけではありません。 ...

お試し試験ランキング

  • dairy
  • weekly
  • monthly

dairy

  名前 回数 ポイント

weekly

  名前 回数 ポイント

monthly

  名前 回数 ポイント