Softverska entropija
Izvor: Wikipedija
Softverska entropija je pojam kojim se opisuje entropija koja nastaje u softverskim sustavima kada ih se izmijeni. Rad o softverskom inženjeringu autora Ivara Jacobsona i suradnika. [1] opisuje softversku entropiju kao:
- Prema drugom zakonu termodinamike, u načelu, nerednost zatvorena sustava se ne može smanjiti, nego može samo ostati ista ili još narasti. Mjera za taj nered je entropija. Ovaj zakon je izgleda vjerojatan i za softverske sustave; čim se izmijeni sustav, njegov nered, odnosno entropija uvijek raste. Ovo je poznato kao softverska entropija.
- U razvijanju softvera postoje slične teorije. Usporedi Lehmanov rad iz 1985. godine.[2], gdje je predložio nekoliko zakona, od kojih neki glase:
-
- Računalni program kojeg se koristi će se izmijeniti.
- Kad se program izmijeni, njegova složenost će biti veća, osim ako netko aktivno ne radi suprotivu tome.
Andrew Hunt i David Thomas rabe izraz Fixing Broken Windows kao metaforu za izbjegavanje softverske entropije u razvijanju softvera.[3]
Proces refaktoriranja koda može rezultirati postupnim smanjenjem softverske entropije.
Usporedi [uredi]
- softverska krtost
- softversko trunjenje
- trunjenje bitova
- kodni smrad
- bug (softver)
- špageti kod
- dependencija
- dependencijski pakao
- zakrpa
Reference [uredi]
- ↑ (1992.) Object-Oriented Software Engineering: A Use Case Driven Approach, str. 69.-70., ACM Press. Addison-Wesley. ISBN 0201544350
- ↑ (1985.) Program evolution: processes of software change, Academic Press Professional, Inc., San Diego, CA.
- ↑ (1999.) The Pragmatic Programmer, Addison Wesley. ISBN 0-201-61622-X - Naputak br. 4 (od 22 naputka) glasi Ne živi uz razbijene prozore (=Windowse koji su pukli)" (eng. "Don't Live with Broken Windows").