Bloatware ( eng. bloatware, fatware, elephantware [1] ) er et program, der har for mange ekstra funktioner, hvis drift kræver en uforholdsmæssig mængde systemressourcer [2] [3] , især hvis disse funktioner ikke er nødvendige eller lidt brug for arbejdsprogrammer (sådanne funktioner kaldes ofte " gimmicks " (engelsk) , " klokker og fløjter " (engelsk) , bogstaveligt talt: "klokker og fløjter") [4] .
Det engelske udtryk bloatware (også engelsk crapware, shovelware ) har også en anden betydning, som refererer til ressourcekrævende forudinstalleret software , som brugeren ikke har brug for, men som pålægges ham af producenter af computere, tablets, smartphones mv. [5] [6] [7]
Den største forskel mellem bygherrer og programmører er, at bygherrer ved, hvornår de skal lægge den sidste klods, mens programmører ikke gør. Hver ny version af programmet tilføjer noget til den gamle. "Babelstårnet" vokser med stormskridt og begynder på et tidspunkt at falde.
Chris Kaspersky [8] .Hvert program udvides, indtil det kan læse mail. Programmer, der ikke kan udvide så meget, erstattes af dem, der kan.
Jamie Zawinski , udvikler af Netscape CommunicatorTeknisk oppustet software forbindes oftest med begrebet " feature creep, creeping featurism/featuritis " [ 2] , som henviser til udviklernes tendens til at tilføje flere og flere funktioner til et softwareprodukt. i et forsøg på at "følge med konkurrenter", men faktisk fører til skabelsen af et langsommere og mindre effektivt produkt [9] . Ifølge forskningsdata annonceret i 2002 blev kun 20-25 % af funktionerne i softwareprodukter brugt altid eller ofte, mens op til 45 % af funktionerne slet ikke blev brugt. Ifølge Martin Fowler skulle de fleste projekter kun være en fjerdedel af deres nuværende størrelse [10] .
Bloat påvirker ikke kun programmernes ydeevne: en stigning i mængden af programkode fører til en stigning i omkostningerne ved vedligeholdelse og udvikling. Derudover kan dårligt designede yderligere funktioner blive en kilde til sårbarheder .
En anden medvirkende faktor til "feature bloat" er den "anden systemeffekt" beskrevet af Frederick Brooks tilbage i 1975: en programmør, der udvikler sit andet system, har en tendens til at tilføje alle de funktioner, som han ikke kunne tilføje til sit første system (på grund af mangel på tid) ). ), så det andet system er ofte overbelastet med funktioner.
Niklaus Wirth skrev i 1996 artiklen "Ned med "fede programmer"" og rejste problemet med programmer, hvor stigningen i ressourcebehov overstiger stigningen i deres funktionalitet og ydeevne [11] . Han lånte udtrykket " fatware " fra en artikel fra 1993 i magasinet Byte [12] .
Wirth pegede på to spøgende "love", som ikke desto mindre nøjagtigt afspejler situationen:
To faktorer bidrager til forbrugernes accept af stadigt stigende softwarestørrelser: hurtigt stigende hardwareydeevne og uvidenhed om den grundlæggende forskel mellem vitale funktioner og dem, der er "rart at have" [11] .
Nathan Myhrvold udtrykket "software er en gas" til at beskrive følgende fænomen: uanset hvor meget hardware er blevet forbedret, har udviklere altid en tendens til at tilføje funktionalitet for at tvinge deres programmer til at nå grænserne for den ydeevne [13] .
At tilpasse gamle programmer til nye maskiner betyder som regel at foretage ændringer for at få de nye maskiner til at fungere som de gamle.
Alan Perlis [14] .Brugere har en tendens til at se oppustet software negativt. Ifølge Joel Spolsky gør de det forgæves [15] af følgende grunde:
Windows version | CPU | Hukommelse | Diskstørrelse |
---|---|---|---|
Windows 95 [16] | 25 MHz | 4 MB | ~50 MB |
Windows 98 [17] | 66MHz | 16 MB | ~200 MB |
Windows 2000 [18] | 133 MHz | 32 MB | 650 MB |
Windows XP [19] (2001) | 233 MHz | 64 MB | 1,5 GB |
Windows Vista [20] (2007) | 800MHz | 512 MB | 15 GB |
Windows 7 [21] (2009) | 1 GHz | 1 GB | 16 GB |
Windows 8 [22] (2012) | 1 GHz | 1 GB | 16 GB |
Windows 10 [23] (2015) | 1 GHz | 1 GB | 16 GB |
Windows 11 [24] (2021) | 1 GHz | 4 GB | 64 GB |
Switched Downloadsquad offentliggjorde eksempler på de værste programmer i 2008 i kategorien "elefantware", det vil sige "oppustede programmer, der får de nyeste personlige computere til at starte som en Pentium 2 med 64 MB RAM" [25] . Følgende programmer har fået navn:
Et godt eksempel på stigningen i kravene er systemkravene til installation af Microsofts OS. Som du kan se, var deres vækst klart ude af proportion med fremkomsten af nye muligheder. Det skal huskes på, at dette til dels skyldes "trunkering" af Windows-kapaciteter afhængigt af licensen, mens hovedsystemfilerne forbliver i samme antal. Minimumskravene til Windows 10 forbliver de samme som Windows 7, mens brugere og testere bemærker en faktisk stigning i hukommelsesforbruget. Bevarelsen af minimumskravene er derfor i et vist omfang af reklamekarakter.
Nero Burning ROM [26] nævnes ofte som et eksempel på uberettiget oppustethed . I løbet af livscyklussen fik pakken til dette program en grafik- og lydeditor, en lyd- og videoafspiller samt en alternativ version af optageprogrammet med en forenklet grænseflade, som alle blev leveret med et specielt shell-program til lancering og havde komplekse grafiske designstile .
Det stik modsatte af bloat er KISS- princippet , som forbyder systemer i at blive mere komplicerede, hvis de allerede fungerer godt. Også mod oppustethed er det første princip i Unix-filosofien .
I 2014 krævede Sydkorea lovligt, at softwareudviklere til smartphones skulle give mulighed for at tvinge fjernelse af uønsket bloatware ("unødvendig forudinstalleret bloatware"). Dette trin var forårsaget af den stigende praksis med præinstallation på smartphones af unødvendig ressourcekrævende software, som ikke kan fjernes med standardmidler [27] .