Sa programues nevojiten për të ruajtur kodin e shkruar më parë?

Pak kohë më parë, mes meje dhe një miku im të mirë u zhvillua një bisedë në të cilën u dëgjuan këto fraza:

— Numri i programuesve do të rritet vazhdimisht - sepse sasia e kodit po rritet dhe gjithnjë e më shumë zhvillues kërkohen vazhdimisht ta mbështesin atë.
— Por kodi po vjetërohet, disa prej tij nuk mbështeten më. Madje është e mundur që të ketë një lloj ekuilibri.

Duke i kujtuar ato disa ditë më vonë, pyesja veten nëse ruajtja e kodit, që kërkon gjithnjë e më shumë burime me kalimin e kohës, mund të paralizojë përfundimisht zhvillimin e funksionalitetit të ri, apo do të kërkonte një rritje të pakufizuar të numrit të programuesve? Analiza matematikore dhe ekuacionet diferenciale ndihmuan për të vlerësuar në mënyrë cilësore varësinë e sasisë së mbështetjes nga zhvillimi dhe për të gjetur përgjigje për pyetjet.

Pyetja e parë. A mund të mbështesë "të hajë" të gjitha burimet e zhvillimit?

Konsideroni një ekip programuesish në të cilin numri i pjesëmarrësve është konstant. Ndarja e kohës së tyre të punës Sa programues nevojiten për të ruajtur kodin e shkruar më parë? (Sa programues nevojiten për të ruajtur kodin e shkruar më parë?) shpenzohet për zhvillimin e kodit të ri, dhe pjesën e mbetur të kohës Sa programues nevojiten për të ruajtur kodin e shkruar më parë? shkon në mbështetje. Brenda supozimeve të modelit, supozojmë se lloji i parë i aktivitetit synon rritjen e vëllimit të kodit, dhe i dyti synon ndryshimin e tij (korrigjimin e gabimeve) dhe nuk ka një ndikim të rëndësishëm në vëllimin e kodit.

Le të shënojmë Sa programues nevojiten për të ruajtur kodin e shkruar më parë? e gjithë sasia e kodit të shkruar deri në atë moment në kohë Sa programues nevojiten për të ruajtur kodin e shkruar më parë?. Duke supozuar se shpejtësia e shkrimit të kodit është proporcionale Sa programues nevojiten për të ruajtur kodin e shkruar më parë?, marrim:

Sa programues nevojiten për të ruajtur kodin e shkruar më parë?

Është e natyrshme të supozohet se kostot e punës për ruajtjen e kodit janë proporcionale me vëllimin e tij:

Sa programues nevojiten për të ruajtur kodin e shkruar më parë?

ose

Sa programues nevojiten për të ruajtur kodin e shkruar më parë?

prej të cilit

Sa programues nevojiten për të ruajtur kodin e shkruar më parë?

Ne marrim një ekuacion diferencial që mund të integrohet lehtësisht. Nëse në momentin fillestar sasia e kodit është zero, atëherë

Sa programues nevojiten për të ruajtur kodin e shkruar më parë?

Sa programues nevojiten për të ruajtur kodin e shkruar më parë? funksion Sa programues nevojiten për të ruajtur kodin e shkruar më parë?Dhe Sa programues nevojiten për të ruajtur kodin e shkruar më parë?. Dhe kjo do të thotë një reduktim gradual me kalimin e kohës në zhvillimin e funksionalitetit të ri në zero dhe transferimin e të gjitha burimeve në mbështetje.

Megjithatë, nëse gjatë kohës Sa programues nevojiten për të ruajtur kodin e shkruar më parë? kodi bëhet i vjetëruar dhe pushon së mbështeturi, pastaj sasia e kodit që kërkon mbështetje në të njëjtën kohë Sa programues nevojiten për të ruajtur kodin e shkruar më parë? tashmë është e barabartë Sa programues nevojiten për të ruajtur kodin e shkruar më parë? atëherë

Sa programues nevojiten për të ruajtur kodin e shkruar më parë?

Sa programues nevojiten për të ruajtur kodin e shkruar më parë?

а Sa programues nevojiten për të ruajtur kodin e shkruar më parë? është një zgjidhje për një ekuacion diferencial me një argument të vonuar [1]:

Sa programues nevojiten për të ruajtur kodin e shkruar më parë?

Zgjidhja e një ekuacioni të tillë përcaktohet në mënyrë unike duke specifikuar vlerat Sa programues nevojiten për të ruajtur kodin e shkruar më parë? "para fillimit të kohës" Sa programues nevojiten për të ruajtur kodin e shkruar më parë?. Meqenëse kodi nuk ishte shkruar ende përpara momentit fillestar në kohë, në rastin tonë Sa programues nevojiten për të ruajtur kodin e shkruar më parë? при Sa programues nevojiten për të ruajtur kodin e shkruar më parë?.

Le të shohim disa shembuj. Ne do të masim kohën në vite dhe sasinë e kodit në mijëra rreshta. Pastaj për Sa programues nevojiten për të ruajtur kodin e shkruar më parë? vlerat e rendit të dhjetëra janë të pranueshme, ne do të marrim 50 dhe 100. Kjo do të thotë, në një vit ekipi i zhvillimit do të shkruajë përkatësisht pesëdhjetë dhe njëqind mijë rreshta kodi. Për Sa programues nevojiten për të ruajtur kodin e shkruar më parë? vlerat e pranueshme mund të jenë: Sa programues nevojiten për të ruajtur kodin e shkruar më parë?, Sa programues nevojiten për të ruajtur kodin e shkruar më parë?, Sa programues nevojiten për të ruajtur kodin e shkruar më parë?. Kjo do të thotë që një ekip zhvillimi mund të mbështesë sasinë e kodit që shkruan në një vit, pavarësisht nëse është një çerek, gjysma ose me kohë të plotë. Si jetëgjatësi mesatare e kodit, ne do të vendosim vlerat e mëposhtme: 1, 2 dhe 4 vjet. Duke zgjidhur ekuacionin numerikisht, marrim shembuj të sjelljes së funksionit Sa programues nevojiten për të ruajtur kodin e shkruar më parë? për disa kombinime parametrash Sa programues nevojiten për të ruajtur kodin e shkruar më parë?.
Sa programues nevojiten për të ruajtur kodin e shkruar më parë?
Sjellja e funksionit Sa programues nevojiten për të ruajtur kodin e shkruar më parë? me kalimin e vjetër të kodit, ai ka ndryshuar. Funksioni nuk është më monoton, por luhatjet "qetësohen" me kalimin e kohës dhe ka një tendencë për të Sa programues nevojiten për të ruajtur kodin e shkruar më parë? në një vlerë konstante. Grafikët tregojnë: aq më shumë Sa programues nevojiten për të ruajtur kodin e shkruar më parë?, Sa programues nevojiten për të ruajtur kodin e shkruar më parë? и Sa programues nevojiten për të ruajtur kodin e shkruar më parë?d.m.th., sa më ngadalë të vjetërohet kodi, aq më shpejt zhvillimi i kodit të ri dhe sa më i ulët të jetë cilësia e kodit, aq më pak burime do të mbeten për zhvillimin e funksionalitetit të ri. Kishte një dëshirë për të dhënë të paktën një shembull në të cilin Sa programues nevojiten për të ruajtur kodin e shkruar më parë? "i strukur" afër zeros. Por kjo kërkonte përzgjedhjen e treguesve të cilësisë shumë të dobët të zhvillimit dhe kodit që nuk plaket për një kohë të gjatë. Edhe në grafikun e poshtëm majtas, një sasi e konsiderueshme burimesh mbeten për funksionalitetin e ri. Prandaj, përgjigja e saktë për pyetjen e parë është më tepër kjo: teorikisht - po, është e mundur; praktikisht - vështirë.

Pyetje që nuk mund të përgjigjen:

  1. A është e vërtetë që Sa programues nevojiten për të ruajtur kodin e shkruar më parë? tenton në një farë kufiri në Sa programues nevojiten për të ruajtur kodin e shkruar më parë? per te gjithe Sa programues nevojiten për të ruajtur kodin e shkruar më parë?? Nëse jo për të gjithë, atëherë për cilët?
  2. Nëse ekziston një kufi, nga varet vlera e tij Sa programues nevojiten për të ruajtur kodin e shkruar më parë??

Pyetja dy. A mund të shkaktojë mirëmbajtja e kodit rritje të pakufizuar të numrit të programuesve?

Le të shënojmë Sa programues nevojiten për të ruajtur kodin e shkruar më parë? numri i programuesve të përfshirë në zhvillimin e kodit të ri. Si më sipër, Sa programues nevojiten për të ruajtur kodin e shkruar më parë? — sasia e kodit të shkruar deri në një moment në kohë Sa programues nevojiten për të ruajtur kodin e shkruar më parë?. atëherë

Sa programues nevojiten për të ruajtur kodin e shkruar më parë?

Mbajeni të zënë mbështetjen e kodit Sa programues nevojiten për të ruajtur kodin e shkruar më parë? programuesit. Duke marrë parasysh kodin e plakjes,

Sa programues nevojiten për të ruajtur kodin e shkruar më parë?

prej të cilit

Sa programues nevojiten për të ruajtur kodin e shkruar më parë?

Nëse Sa programues nevojiten për të ruajtur kodin e shkruar më parë?, Pastaj

Sa programues nevojiten për të ruajtur kodin e shkruar më parë?

Kështu, përgjigja për pyetjen e dytë është negative: nëse numri i zhvilluesve të kodit të ri është i kufizuar, atëherë në kushtet e plakjes së kodit, mbështetja nuk mund të shkaktojë një rritje të pakufizuar të numrit të programuesve.

Përfundim

Modelet e konsideruara janë modele matematikore "të buta" [2]. Ato janë shumë të thjeshta. Sidoqoftë, varësia e rezultateve të simulimit nga vlerat e parametrave korrespondon me atë që pritet për sistemet reale, kjo flet në favor të përshtatshmërisë së modeleve dhe saktësisë së mjaftueshme për të marrë vlerësime me cilësi të lartë.

referencat

1. Elsgolts L.E., Norkin S.B. Hyrje në teorinë e ekuacioneve diferenciale me argument devijues. Moska. Shtëpia botuese "Shkenca". 1971.
2. Arnold V.I. Modele matematikore "të vështira" dhe "të buta". Moska. Shtëpia botuese MCNMO. 2004.

Burimi: www.habr.com

Shto një koment