SAP R/3
標準モジュールでは業務を実現できない場合に、アドオンというプログラムの追加開発を行う。その際用いられる言語は、ABAPである。
1960年代後半から 1980年代にかけて、増大しつづけるソフトウェア開発の複雑性が懸念されていた。ソフトウェアが複雑になりすぎて、致命的な間違いを起こしやすくなるというものである。ブルックスなど多くの人々が提唱したこれに対するひとつの解決策が、ソフトウェアの再利用性を最大限に高めるようなモジュール化のアプローチを使い、共通のビジネスプロセスを内部トランザクションの中にカプセル化するというものだった。 その結果、SAP はオブジェクト指向を用いた「ビジネスオブジェクト」の概念を導入した。例えば「顧客」は、システム中では“顧客”ビジネスオブジェクトをインスタンス化したものと考えることができ、他のオブジェクトとの相互作用はあらかじめ定義された (しかしカスタマイズ可能な) やりかたで行う。ある意味で、SAP はビジネスのためのオペレーティングシステムということもできる。
SAP R/3 の前のバージョンである SAP R/2 はメインフレームベースのビジネス・アプリケーションソフトウェア群として 1980年代 から 1990年代初頭にかけてとくに成功した。この製品は多言語、多通貨を扱ったソフト・リアルタイムビジネスを必要とするヨーロッパ諸国の多国籍企業のあいだでとりわけ人気を誇った。