Viskositet (programmering)

Viskositet  - den negativa kvaliteten på programkoden (eller utvecklingsmiljön ), ett av tecknen på dålig design , uttryckt i mjukvarusystemets minskade känslighet för förändring ( engelska  changeability ).

Definition

Viskositeten hos mjukvara sägs vara att göra ändringar relaterade till någon aspekt av mjukvarusystemet, utan att bryta mot principerna som fastställts i projektet, är förknippat med en stor investering av tid och ansträngning [1] [2] . Minskad förmåga att förändra kan orsakas av: svårigheten att isolera de komponenter som påverkas av förändringarna; oproportionerligt antal nödvändiga ändringar i jämförelse med mängden ändringar i programvarukraven ; djupgående inverkan av förändringar på systemet som helhet [3] .

I processen att utveckla och underhålla mjukvara, ställer viskositet programmerare inför ett val: om de ska behålla de ursprungliga designbesluten när de implementerar ett nytt krav, eller att bryta dem med "hacking-tekniker" och följa vägen för "minsta motstånd" [ 2] . På grund av tidsbrist och bristande förståelse för projektet bryts den ursprungliga planen allt oftare [1] .

Viskositeten kan relateras inte bara till själva mjukvaran utan också till utvecklingsmiljön. En ineffektiv, långsam utvecklingsmiljö kan komma i vägen för rätt tillvägagångssätt och tvinga dig att ta till tvivelaktiga metoder. Faktorer som påverkar ett mediums viskositet kan inkludera utvecklingsprocessen, förfaranden för kodåteranvändning , organisatoriska och juridiska begränsningar [2] .

I programmeringsspråk och andra system för notation särskiljer forskarna Thomas Green och Marian Petre viskositet som en av de kognitiva dimensionerna . Samtidigt delas viskositeten in i kumulativ ( eng.  knock-on ), vilket återspeglar i vilken grad en förändring får andra att återställa kodkonsistens, och repetitiv ( eng.  repetitive ), uttryckt som "motstånd mot förändringar". Så när man jämförde viskositeten för deklarativa och procedurprogrammeringsspråk visade det sig att BASIC har en låg iterativ viskositet jämfört med Prolog . Med kumulativ viskositet var situationen den omvända. Det har visat sig att viskositet orsakas av en hel uppsättning flerriktade faktorer, och viskositeten i sig hänvisar både till notationen (koden) som används och till den använda verktygslådan [4] .

Relaterade begrepp

Förutom viskositet finns det andra liknande men inte likvärdiga mjukvarufunktioner som förhindrar förändringar.

Se även

Anteckningar

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

Litteratur

Länkar