基礎から実践まで!正しく覚える、理解するアジャイル用語集②:アジャイル開発と混同しやすい用語

前回に続き、今回はアジャイル開発と混同しやすい用語を解説します。
連載記事:
「アジャイル用語集①:よく使うアジャイル用語」
「アジャイル用語集②:アジャイル開発と混同しやすい用語」
「アジャイル用語集③:代表的なアジャイル開発手法とは」
1.超高速開発・ローコード開発とは
近年、開発を効率化する手法として「超高速開発」という言葉をよく耳にするのではないでしょうか。時々アジャイル開発と混同されがちですが、両者は別の概念です。
また、「超高速開発」以外にも、「ローコード開発」という言葉も時々混ぜて使われている為、初めて触れる方は何が違うのか戸惑う時もあるようです。実は、「超高速開発」は日本で使われる言葉で、海外では「ローコード開発」(low-code development)と言われたりします。正確には両者に違いはありますが、基本的にほぼ同じ意味で使われています。
超高速開発(ローコード開発)とは、できる限りコードを書かずに短期間でシステムを開発する手法のことをいい、コードを書かない代わりに、事前に用意されたコンポーネントやツールを用いることで開発を進めます。ソースコードやテストケースの自動作成・実行や業務要件から設計の自動生成などにより、工程を簡略化したり自動化したりすることができ、システム開発の生産性向上とコスト削減に繋がります。
超高速開発はツールを利用してシステムを短期間で開発する手法であり、開発プロセス自体は変わりありません。ウォーターフォール型の開発でもそのツールを利用すれば、超高速開発になります。
超高速開発ではプラットフォーム側が事前に用意したコンポーネントやツールを使いながら積み木を組み立てるようにシステムやアプリを開発できるので、開発期間やコストを削減しやすいというメリットがありますが、実装機能が制限されてしまうことも多いため、複雑な機能や個別仕様対応がむしろ難しくなり、柔軟性を重視するアジャイル開発に馴染まない側面があることに要注意です。
参考サイト:
https://www.magicsoftware.com/ja/enterprise-dev-columns/whats-xrad/
https://www.salesforce.com/jp/hub/business/what-is-low-code/
2.プロトタイピング(prototyping)とは
プロトタイピング(prototyping)とは試作品を製作することです。
ソフトウェア開発におけるプロトタイピングとは、まだ仕様を正確に把握していない段階で開発中の機能を示すための試作品の構築を指し、開発の初期段階で顧客要件を理解するための開発手法です。試作品により顧客からフィードバックを得られ、設計者と開発者は開発中のプロダクトに何が期待されているかを正確に理解するのに役に立ちます。
プロトタイピングはシステム設計工程の一部として組み込まれることも多く、それによってプロジェクトのリスクと費用を低減させると考えられます。
よく使われているプロトタイピングは下記4種類あります:
①使い捨て/ラピッドプロトタイピング
②進化的プロトタイピング
③インクリメンタルプロトタイピング
④エクストリームプロトタイピング
プロダクトを試作し仕様に関する欠陥や問題を発見、解決していくプロセスがあるため、プロトタイピングは時々アジャイル開発と混同されますが、動くソフトウェアの早期提供を目指し「設計、開発、デプロイ」というサイクルにて開発を進めるアジャイル開発手法とは全く異なる概念です。
参考サイト:
https://www.tutorialspoint.com/sdlc/sdlc_software_prototyping.htm
https://ja.wikipedia.org/wiki/%E3%83%97%E3%83%AD%E3%83%88%E3%82%BF%E3%82%A4%E3%83%94%E3%83%B3%E3%82%B0