技術者ブログ – 開発手法

技術者ブログとして日ごろ取り組んでいる学習内容をご紹介します。
今回はWEBデザインをテーマにしている第0ユニットです。

今回の技術者ブログは、社内でとある開発手法の違いで盛り上がったこと、調べてみるとまとめサイトでも勘違いしてる人が多いことからシステムの開発手法についてまとめました。

開発手法とは

まず、開発手法とは何かについて説明します。
システムを開発する際には設計・製造・テストといった工程があります。
システム設計までを上流工程、実際にプログラムを組んでいくところ(製造)から下流工程になります。
システムを開発しリリースするまでにあたって、システムによって工程の順番が異なります。それが開発の手法です。
開発手法は4種類ありますのでそれぞれ説明をしていきます。

開発手法1 -ウォーターフォールモデル-

開発手法の中で最も利用されている方法がウォーターフォールモデルです。
上流工程から下流工程へ、1つ1つの工程を順におこなっていく手法です。その方法が、滝のように水が上から下へと流れ落ちるようであるところからウォーターフォールモデルと呼ばれています。システム全体を見通すことができるので、スケジュールの決定や資源配分が容易にできるのが特徴であり、大規模なシステム開発に向いています。

開発手法2 -プロトタイプモデル-

初期の段階で試作品(プロトタイプ)を作成し、そこから修正点などに対応していく手法です。 利用者に評価させる工程を設け、トータルの開発工数を減らすことができます。比較的小規模なシステム開発に向いています。

開発手法3 -スパイラルモデル-

部品ごとに設計、実装、テスト、プロトタイプ(試作)を渦巻き(スパイラル)のように繰り返して開発していく手法です。小さなシステムごとにウォーターフォールモデルで開発し、完成した小さなシステムをプロトタイプとして利用者に見せることができるので、ウォーターフォールモデルとプロトタイプモデルの2つの手法を合わせもった手法ともいえます。

開発手法4 -アジャイルモデル-

部品ごとに開発からリリースまで行う手法です。 アジャイルには「機敏な」という意味があり、システムを迅速に開発するための軽量な開発手法です。主にモバイルアプリ開発の際に使用されています。 短期間で動作するアプリケーションを開発するという作業を繰り返し、経営環境や利用者の要求を取り入れながら、段階的にシステム全体を完成させていきます。

スパイラルモデルと似ていますが、大きく違うのはリリースのタイミングです。 アジャイルモデルは1つの機能の開発が完了した段階でリリースされます。

以上が開発手法の4種類です。スパイラルモデルとアジャイルモデルを勘違いしやすいため、今回改めて開発手法についてを勉強しました。
開発するものやお客様のニーズによって、正しい開発モデルの選択をしたいものですね。

次回の第0ユニットの技術者ブログもお楽しみに!