Vanilla software

From Wikipedia, the free encyclopedia

Vanilla software is computer software that is not customized from its delivered form - i.e. it is used by a business without any customizations applied to it. In contrast, Enterprise Resource Planning systems (ERPs) suppliers integrate (or attempt to integrate) all data and processes of an organization into a single 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 single, unified database to store data for the various system modules. This characteristic is shared by Vanilla software, but at the general sacrifice of optimization to the needs of the specific business type(s) targeted by the software developers, leading frequently to large segments of the overall package which are little used if ever. On the other hand, depending upon market niche and task needs, vanilla software can become a widespread de facto industry standard utilized widely by huge segments of groups of businesses and individuals with similar needs—many 'Office suite' collections, while competing for market share by offering differing fringe or specialty small niche applications in a bundled suite, nonetheless reach such significantly large widespread adoption with their principle products in the suite that the competing offerings blend and have taken on the functionally attributes the competitor's systems... creating slightly different flavors of vanilla, which have little distinction in task capabilities or key features, with slightly different look, see, and feel presentations (avoiding copyright infringements)—word processing and spreadsheet applications programs, in particular, are prime examples of this 'Vanilla with some differences' software with extremely deep market penetration.

[edit] ERP system customizations

For example, many ERP systems have a common framework from which their modules are built - for example, PeopleSoft ERP modules are all built around a technical framework known as PeopleTools which is a generic name that describes various development and infrastructure components that allow for relatively easy and flexible application deployment.

This gives users of the software the opportunity to customize or tweak the way the systems work to better emulate specific business processes that may not fit in with the "vanilla" or standard delivered software.

As ERP systems are supposed to be examples of best business practice, customizations should be minimal, and most companies opt to alter their business processes to fit into this "best practice". Additionally, customizations are rarely supported by the software supplier, and taken to extremes, may invalidate a support contract.

[edit] Upgrading customizations

Furthermore, when it comes to implementing upgrades or software patches, the customizations will invariably need to be compared to the changes being implemented in order to ensure they do not conflict with changes made in upgrades - often a customization may be to temporarily repair a bug, but can be taken out when an "official" fix or patch is released, potentially restoring a system closer to "Vanilla" again. For complex customizations, upgrades can be prohibitively time consuming and difficult to manage - consequently the rule is to keep customizations to a minimum if you wish to minimize maintenance costs.