Viskozita (programování)

Viskozita  - negativní kvalita programového kódu (nebo vývojového prostředí ), jeden ze znaků špatného návrhu , vyjádřená sníženou náchylností softwarového systému ke změnám ( anglicky  changeability ).

Definice

Viskozita softwaru je prý při provádění změn souvisejících s některým aspektem softwarového systému, aniž by došlo k porušení zásad stanovených v projektu, spojena s velkou investicí času a úsilí [1] [2] . Snížená schopnost změny může být způsobena: obtížností izolovat složky ovlivněné změnami; neúměrné množství požadovaných úprav ve srovnání s množstvím změn softwarových požadavků ; hluboký dopad změn na systém jako celek [3] .

V procesu vývoje a údržby softwaru staví viskozita programátorům před volbu: zda zachovat původní návrhová rozhodnutí při implementaci nového požadavku, nebo je prolomit pomocí „hackerských technik“ a následovat cestu „nejmenšího odporu“ [ 2] . Kvůli nedostatku času a nepochopení projektu je původní plán stále častěji porušován [1] .

Viskozita může souviset nejen se samotným softwarem, ale také s vývojovým prostředím. Neefektivní, pomalé vývojové prostředí může překážet správnému přístupu a donutit vás uchýlit se k pochybným praktikám. Faktory, které ovlivňují viskozitu média, mohou zahrnovat vývojový proces , procedury opětovného použití kódu , organizační a právní omezení [2] .

V programovacích jazycích a dalších systémech pro zápis rozlišují výzkumníci Thomas Green a Marian Petre viskozitu jako jednu z kognitivních dimenzí . Zároveň se viskozita dělí na kumulativní ( angl.  knock-on ), odrážející míru, do jaké jedna změna způsobí, že ostatní obnoví konzistenci kódu, a repetitivní ( angl.  repetitivní ), vyjádřenou jako „odolnost vůči změnám“. Takže při srovnání viskozity deklarativních a procedurálních programovacích jazyků se ukázalo, že BASIC má ve srovnání s Prologem nízkou iterativní viskozitu . S kumulativní viskozitou byla situace opačná. Ukázalo se, že viskozita je způsobena celým souborem vícesměrných faktorů a viskozita samotná se vztahuje jak k použité notaci (kódu), tak k použité sadě nástrojů [4] .

Související pojmy

Kromě viskozity existují další podobné, ale ne ekvivalentní softwarové funkce, které zabraňují změnám.

Viz také

Poznámky

  1. 1 2 3 Amra a další, 2014 .
  2. 1 2 3 Suryanarayana, Samarthyam, Sharma, 2014 .
  3. Spinellis, 2006 .
  4. Rinderle-Ma, S. a Sadiq, S. a Leymann, F. Workshopy řízení obchodních procesů: Mezinárodní semináře BPM 2009, Ulm, Německo, 7. září 2009, Revidované články. - Springer, 2010. - S. 480. - ISBN 9783642121852 .
  5. Martin, Newkirk, Koss, 2004 , str. 151.
  6. Martin, Newkirk, Koss, 2004 , str. 152.

Literatura

Odkazy