過去のバージョンのソフトウェア(母体、流用元、コア資産と呼ばれることもあると思います)をもとに拡張、変更をして次のバージョンのソフトウェアを開発することを保守開発(software maintenance)、ソフトウェア進化(software evolution)と呼んでいます。同一の過去バージョンをもとに、類似のソフトウェア、サービス、製品を同時に開発する場合には、派生開発と呼ぶこともあります。多数のバリエーションがある機器の組込みソフトウェアを想定いただくと派生開発がイメージしやすいと思います。 こういった過去のバージョンをもとに次のバージョンを開発するときの課題の一つは、過去のバージョンとの整合性を保ちながら新しいバージョンでの拡張、変更を実施することです。こうした開発では、拡張、変更した部分が期待通り動くだけでなく、過去のバージョンで提供されていたものも期待通り動くことが前提となっ
![派生開発、保守開発のレビュー:森崎修司の「どうやってはかるの?」:オルタナティブ・ブログ](https://cdn-ak-scissors.b.st-hatena.com/image/square/7f2a4ced7f91e578679d11d5fcc8f34c5d080289/height=288;version=1;width=512/https%3A%2F%2Fblogs.itmedia.co.jp%2Fmt-static%2Fsupport%2Fassets_c%2Fuserpics%2Fuserpic-83-100x100.png)