HOME

TheInfoList




Feature creep is the excessive ongoing expansion or addition of new
features Feature may refer to: Computing * Feature (CAD), could be a hole, pocket, or notch * Feature (computer vision), could be an edge, corner or blob * Feature (software design) is an intentional distinguishing characteristic of a software item ( ...
in a product, especially in
computer software Software is a collection of instructions Instruction or instructions may refer to: Computing * Instruction, one operation of a processor within a computer architecture instruction set * Computer program, a collection of instructions Music * I ...

computer software
,
video games#REDIRECT Video game#REDIRECT Video game A video game is an electronic game that involves interaction with a user interface or input device such as a joystick, game controller, controller, computer keyboard, keyboard, or motion sensing device ...

video games
and consumer and business electronics. These extra features go beyond the basic function of the product and can result in
software bloat Software bloat is a process whereby successive versions of a computer program In imperative programming, a computer program is a sequence of instructions in a programming language that a computer can execute or interpret. In declarative programm ...
and over-complication, rather than simple design. The definition of what qualifies as "feature creep" does vary among end users, where what is perceived as such by some users may be considered practical functionality by others.


Causes

The most common cause of feature creep is the desire to provide the consumer with a more useful or desirable product, in order to increase sales or distribution. However, once the product reaches the point at which it does everything that it is designed to do, the manufacturer is left with the choice between adding functions some users might consider unneeded (sometimes at the cost of efficiency), and sticking with the old version (at the cost of a perceived lack of improvement). Another major cause of feature creep might be a compromise from a committee which decides to implement multiple, different viewpoints or use cases in the same product. Then, as more features are added to support each approach, it might be necessary to have cross-conversion features between the multiple paradigms, further complicating the total features.


Characteristics

Feature creep is one of the most common sources of
cost In production Production may be: Economics and business * Production (economics) * Production, the act of manufacturing goods * Production, in the outline of industrial organization, the act of making products (goods and services) * Production ...
and schedule overruns. It thus endangers and can even kill products and projects.


Control

There are several methods to control feature creep, including: strict limits for allowable features, multiple variations, and pruning excess features.


Separation

Temptation of later feature creep may be avoided to some degree by basing initial design on strong software fundamentals, such as logical separation of functionality and data access, e.g. using submenus which are optionally accessible by
power user A power user is a user User may refer to: Ancient Egyptian roles * User (ancient Egyptian official)User was an ancient Egypt Ancient Egypt was a civilization of Ancient history, ancient North Africa, concentrated along the lower reache ...
s who desire more functionality and a higher
verbosity Verbosity or verboseness is speech or writing that uses more words than necessary, e.g. "in spite of the fact that" rather than "although". The opposite of verbosity is plain language Plain language is writing designed to ensure the reader und ...
of information. It can be actively controlled with rigorous
change management Change management (sometimes abbreviated as CM) is a collective term for all approaches to prepare, support, and help individual An individual is that which exists as a distinct entity Entity may refer to: Computing * Character entity refere ...

change management
and by delaying changes to later delivery phases of a project.


Variations and options

Another method of controlling feature creep is to maintain multiple variations of products, where features are kept limited and reduced in the more basic variations, e.g.
Microsoft Windows Microsoft Windows, commonly referred to as Windows, is a group of several proprietary {{Short pages monitor