Viskositet (programmering)

Viskositet  - den negative kvalitet af programkoden (eller udviklingsmiljøet ), et af tegnene på dårligt design , udtrykt i softwaresystemets reducerede modtagelighed for ændringer ( engelsk  changeability ).

Definition

Viskositeten af ​​software siges at være, når man foretager ændringer relateret til nogle aspekter af softwaresystemet, uden at overtræde principperne i projektet, er forbundet med en stor investering af tid og kræfter [1] [2] . Nedsat evne til at ændre kan skyldes: vanskeligheden ved at isolere de komponenter, der påvirkes af ændringerne; uforholdsmæssigt mange påkrævede ændringer i sammenligning med mængden af ​​ændringer i softwarekrav ; ændringers dybtgående indvirkning på systemet som helhed [3] .

I processen med at udvikle og vedligeholde software sætter viskositet programmører over for et valg: om de vil beholde de oprindelige designbeslutninger, når de implementerer et nyt krav, eller at bryde dem ved at bruge "hacking-teknikker" og følge vejen til "mindst modstand" [ 2] . På grund af manglende tid og manglende forståelse for projektet bliver den oprindelige plan overtrådt oftere og oftere [1] .

Viskositet kan relateres ikke kun til selve softwaren, men også til udviklingsmiljøet. Et ineffektivt, langsomt udviklingsmiljø kan komme i vejen for den rigtige tilgang og tvinge dig til at ty til tvivlsom praksis. Faktorer, der påvirker viskositeten af ​​et medium, kan omfatte udviklingsprocessen , procedurer for genbrug af kode , organisatoriske og juridiske begrænsninger [2] .

I programmeringssprog og andre systemer til notation skelner forskerne Thomas Green og Marian Petre viskositet som en af ​​de kognitive dimensioner . Samtidig er viskositeten opdelt i kumulativ ( eng.  knock-on ), hvilket afspejler i hvilken grad en ændring får andre til at genoprette kodekonsistens, og repetitive ( eng.  repetitive ), udtrykt som "modstand mod ændringer". Så når man sammenlignede viskositeten af ​​deklarative og proceduremæssige programmeringssprog, viste det sig, at BASIC har en lav iterativ viskositet sammenlignet med Prolog . Med kumulativ viskositet blev situationen vendt. Det har vist sig, at viskositet er forårsaget af et helt sæt af multidirektionelle faktorer, og viskositeten i sig selv refererer både til den anvendte notation (kode) og til det anvendte værktøjssæt [4] .

Relaterede begreber

Ud over viskositet er der andre lignende, men ikke tilsvarende softwarefunktioner, der forhindrer ændringer.

Se også

Noter

  1. 1 2 3 Amra og andre, 2014 .
  2. 1 2 3 Suryanarayana, Samarthyam, Sharma, 2014 .
  3. Spinellis, 2006 .
  4. Rinderle-Ma, S. og Sadiq, S. og Leymann, F. Business Process Management Workshops: BPM 2009 International Workshops, Ulm, Tyskland, 7. september 2009, Revised Papers. - Springer, 2010. - S. 480. - ISBN 9783642121852 .
  5. Martin, Newkirk, Koss, 2004 , s. 151.
  6. Martin, Newkirk, Koss, 2004 , s. 152.

Litteratur

Links