同僚から、通常の開発と研究開発(R&D)の違いを明確に説明するよう求められ、それを行うことができませんでした。ウィキペディアを読んだ後、私はまだ正確な答えがありません。
ウィキペディアによると(わずかに変更されています):
2つの主要なモデルがあります。
あるモデルでは、主な機能は新製品の開発です。
もう1つのモデルの主な機能は、貴重な新製品、プロセス、およびサービスの開発を明らかにし、可能にするために、科学技術のトピックに関する新しい知識を発見および作成することです。
最初のモデルは紛らわしいです。開発(R&Dではなく)は、製品に新機能を追加し、バグを解決し、メンテナンスを行うことだけを意味するのでしょうか?以前に新機能として開発されたものが別の製品になった場合はどうなりますか?
2番目のモデルはそれほど複雑ではありませんが、それでも、何かが新しい知識であるのか、再発見された既存の知識であるのかをどのように認定するのですか?
後にウィキペディアは、次の理由で通常の開発はR&Dと異なると付け加えています
ほぼ即時の利益または即時の改善。
まだ十分に明確ではありません。「ほぼ即時の利益」を認定する方法は?タスクに即時の利益はあるが、徹底的な調査が必要な場合はどうなりますか?または、コードベースに対する一般的なスタイルの実施のように、基本的ではあるが不確実な利益がある場合はどうでしょうか?
たとえば、次のような開発またはR&Dに属しますか?
データベースへのアクセスを抽象化するエンジンを開発し、データベースにアクセスする他のアプリケーション(既存または将来作成されるアプリケーション)のコードを大幅に簡素化および短縮しますか?
Amazonで使用されているような、独立した多数の独立したアプリケーションから、適切に組織化され相互接続されたWebサービスのセットに移行するために、企業リソースの組織全体に新しいサービス指向アーキテクチャを確立しますか?
会社の2つのデータセンター間でのデータの複製を高速化できる新しい通信プロトコルを設計しますか?
特定の製品での作業中に新しいタイプのソフトウェアテストを考え、このタイプのテストがテストプロセスを改善/簡素化することを知っていますか?
証拠、ロジック、および以前の経験に基づいて、特定のアプリケーションに対してOOPよりも関数型プログラミングが適切であることを証明しますか?
正確なタスクセットに対して少なくとも1.4の比率でユーザーの生産性が向上することを示す調査とテストを行った後、触覚画面にジェスチャーを追加して、既存のアプリケーションを強化しますか?
データセンターの電力使用効率(PUE)を大幅に強化する方法を見つけますか?
ドメイン固有言語(DSL)を作成しますか?
要するに、何かに取り組んでいる間に研究開発を行っているかどうかをどのように判断できますか?