software bloat - Computer Definition
Refers to the ever-increasing complexity of software. Modern operating systems and applications are huge in size and complexity compared to software in personal computers in the late 1970s and early 1980s. They are absolutely gigantic next to software of the 1950s and 1960s. Larger with Each Version Software tends to get larger and more complex with each version. It is due to many reasons, including the increasing capacities of the computer's memory and disk, which allow programmers to be much less concerned with conservation. It is also due to the increased number of functions placed in an application for marketing purposes, most of which are not needed by 95% of all users (see bloatware). A significant contribution to software bloat is that in order to make it easier to write a program, much of today's software is written in higher levels of abstraction. This eliminates the coding tedium but increases the number of instructions the computer must execute (see abstraction layer). Another reason for software bloat is too many cooks in the kitchen. The more that software code is patched by different people, the more obtuse it can become. After numerous versions, a program's logic can become unbelievably convoluted. See Wirth's law and Freedman's law.