CodeLabCodeLabIT業界で働くor興味がある皆様に、システム開発・プログラミングに役立つ情報を沖縄から発信中・・・。HatenaPocketFeedlyソフトウェア開発では、実際にシステムを開発し、リリースするまでに「開発工程」に沿った開発を実施する必要があります。今回は、「開発工程」について、名称と工程の概要、インプットとなる成果物、アウトプットとなる成果物について説明していきたいと思います。一般的な開発工程とインプット、アウトプットについての説明となりますので、実際に担当しているプロジェクトなどとは名称や意味合いが若干異なる可能性がありますので、その点はご注意ください。プロジェクト固有の開発工程や成果物などがある場合、基本的にはプロジェクトのルールに則って開発を進めていく必要があります。最後に開発工程とは?システム開発の工程と作業内容、成果物を定義したものです。システムは開発したら終わりではなく、実際に運用されながら成長していくものであると考えられており、この「ライフサイクル」は、ソフトウェアライフサイクルプロセス(SLCP)として定義されています。ソフトウェアライフサイクルプロセス(SLCP)の中で「開発プロセス」に該当するのもが一般的は開発工程を意味します。今回はその中でもよく耳にする開発工程について説明します。要件定義ユーザの要望をヒアリングして実装する機能や性能などを明確にするフェーズです。業務をシステム化するためにどのような機能を、「誰が」「いつ」「どのように」利用するのかの流れも定義します。(業務フロー)あまり細かく定義することはありませんが、大雑把すぎても後工程で問題となることがあります。元に、ユーザが利用する機能などを設計し、仕様を確定します。画面レイアウト・画面仕様、帳票レイアウト・帳票仕様、DB仕様、ファイル仕様を確定していきます。DBやファイル仕様については、内部設計完了後でないと詳細が確定しないため、外部設計工程では作成途中のものとなります。DB設計ではテーブルとリレーション、ファイル設計ではファイルレイアウトくらいにとどめます。元に、ユーザが実際に目にすることがない、システム内部のプログラム仕様を設計します。一般的に外部設計書に記述されている内容と重複しないもの、もしくは外部設計書を詳細化したものを定義していきます。イベント仕様やテーブル・ファイルの参照・更新についての仕様などを定義します。DB設計やファイル設計の仕様はこの工程で確定します。内部設計書を元にプログラムを製造します。必要に応じてフローチャートを作成することもあります。プロジェクト計画書を元に単体テスト計画書と単体テスト仕様書を作成し、作成した単体テスト仕様書を元にテストを実施し、その結果を記録します。単体テスト仕様書は単体テスト計画書に則って作成されます。原則として、バグが完全になくなるまで、テストと不具合修正を繰り返します。プロジェクト計画書を元に結合テスト計画書と結合テスト仕様書を作成し、作成した結合テスト仕様書を元にテストを実施し、その結果を記録します。結合テスト仕様書は結合テスト計画書に則って作成されます。結合テストでは機能間の繋がりがあるものの動作を確認していきます。プロジェクト計画書を元に総合テスト計画書と総合テスト仕様書を作成し、作成した総合テスト仕様書を元にテストを実施し、その結果を記録します。総合テスト仕様書は総合テスト計画書に則って作成されます。総合テストでは実際の業務や時間の流れに沿って、多岐にわたって動作を検証します。パフォーマンス(性能)テストや負荷テスト、障害テストもこの工程で実施します。運用テストユーザ自身が、実際の業務や時間の流れに沿って、多岐にわたって動作を検証します。実際の稼働環境(本番環境)へシステムを移行します。ある時点で旧システムから新システムへ一斉へ切り替えを行う「一斉移行」やシステムの機能単位ごとに新システムへ切り替えを行う「順次移行」などの方法があります。マシンの起動や停止、現行のシステムを日々動かす作業です。稼働状況のモニタリングやCPUやメモリの利用状況などのシステムリソースのモニタリングも実施します。「保守」とはシステムを改善・変更する作業です。システム障害や改修要望に伴うプログラムやデータの修正を行います。本番稼働用のデータ最後にいかがでしたでしょうか?ソフトウェア開発には様々な開発工程があり、工程ごとに役割や作成する成果物が異なります。実際にプロジェクトに参画した際には、現在の開発工程やその後の開発工程の流れなどを意識しながら開発を行ってみてはいかがでしょう。後工程や前工程を意識して、開発工程における作業を実施することで、「なぜその成果物が必要なのか」「どのインプットを元にアウトプットを作成すれば良いのか」といった疑問についての理解も深まると思います。コメントをキャンセルメールアドレスが公開されることはありません。