Enterprise resource planning (ERP) systems attempt to integrate several data sources and processes of an organization into a unified system. A typical ERP system will use multiple components of computer software and hardware to achieve the integration. A key ingredient of most ERP systems is the use of a unified database to store data for the various system modules.
Some organizations — typically those with sufficient in-house IT skills to integrate multiple software products — choose to implement only portions of an ERP system and develop an external interface to other ERP or stand-alone systems for their other application needs.
The two key components of an ERP system are a common database and a modular software design. A common database is the system that allows every department of a company to store and retrieve information in real-time. Using a common database allows information to be more reliable, accessible, and easily shared. Furthermore, a modular software design is a variety of programs that can be added on an individual basis to improve the efficiency of the business. This improves the business by adding functionality, mixing and matching programs from different vendors, and allowing the company to choose which modules to implement. These modular software designs link into the common database, so that all of the information between the departments is accessible and real-time.