Virun enger Zäit ass e Gespréich tëscht mir an engem gudde Frënd vu mir stattfonnt, an deem folgend Ausdréck héieren goufen:
- D'Zuel vun de Programméierer wäert stänneg wuessen - well d'Quantitéit vum Code wiisst, a méi a méi Entwéckler si stänneg verlaangt et z'ënnerstëtzen.
- Awer de Code gëtt al, e puer dovun gëtt net méi ënnerstëtzt. Et ass souguer méiglech datt et eng Zort Gläichgewiicht gëtt.
Ech erënnere mech e puer Deeg méi spéit, ech hu mech gefrot ob d'Erhalen vum Code, déi méi a méi Ressourcen iwwer Zäit erfuerdert, schlussendlech d'Entwécklung vun neier Funktionalitéit paralyséiere kann, oder géif et eng onlimitéiert Erhéijung vun der Unzuel vun de Programméierer erfuerderen? Mathematesch Analyse an Differentialgleichungen hunn gehollef d'Ofhängegkeet vun der Ënnerstëtzung op d'Entwécklung qualitativ ze bewäerten an Äntwerten op Froen ze fannen.
Fro eng. Kann Ënnerstëtzung "iessen" all Entwécklung Ressourcen?
Betruecht engem Team vun Programméierer an deem d'Zuel vun de Participanten konstant ass. Deelen vun hirer Aarbechtszäit () gëtt fir neie Code z'entwéckelen, an de verbleiwen Undeel vun der Zäit geet op Ënnerstëtzung. Bannent den Viraussetzunge vum Modell, huelen mir un datt déi éischt Zort Aktivitéit zielt fir de Volume vum Code z'erhéijen, an déi zweet zielt et z'änneren (Feeler ze korrigéieren) an net e wesentlechen Impakt op de Volume vum Code huet.
Mir bezeechnen de ganze Betrag vum Code geschriwwe bis zu deem Zäitpunkt . Unzehuelen datt d'Geschwindegkeet vum Schreiwe Code proportional ass , mir kréien:
Et ass natierlech unzehuelen datt d'Aarbechtskäschte fir de Code z'erhalen proportional zu sengem Volume sinn:
oder
Wou vun
Mir kréien eng Differentialgleichung déi einfach integréiert ka ginn. Wann am éischte Moment vun der Zäit de Betrag vum Code null ass, dann
um Funktioun an . An dëst bedeit eng graduell Reduktioun iwwer Zäit an der Entwécklung vun neier Funktionalitéit op Null an den Transfert vun alle Ressourcen fir z'ënnerstëtzen.
Allerdéngs, wann während der Zäit de Code gëtt obsolet an hält op ënnerstëtzt ze ginn, dann ass de Betrag vum Code deen Ënnerstëtzung gläichzäiteg erfuerdert ass scho gläich Dann
а ass eng Léisung fir eng Differentialgleichung mat engem retardéierten Argument [1]:
D'Léisung fir sou eng Equatioun gëtt eenzegaarteg bestëmmt andeems d'Wäerter spezifizéieren "virum Ufank vun der Zäit" . Well de Code nach net virum éischte Moment an der Zäit geschriwwe gouf, an eisem Fall at .
Loosst eis e puer Beispiller kucken. Mir moossen Zäit a Joeren, an d'Quantitéit vum Code an Dausende vu Linnen. Dann fir Wäerter vun der Uerdnung vun Zénger sinn akzeptabel, mir huelen 50 an 100. Dat ass, an engem Joer wäert d'Entwécklung Equipe fofzeg an honnertdausend Zeilen Code schreiwen, respektiv. Fir akzeptabel Wäerter kënne sinn: , , . Dëst bedeit datt en Entwécklungsteam d'Quantitéit vum Code kann ënnerstëtzen deen se an engem Joer schreift, egal ob et e Véierel, hallef oder Vollzäit ass. Als duerchschnëttlech Liewensdauer vum Code setzen mir déi folgend Wäerter: 1, 2 a 4 Joer. D'Léisung vun der Equatioun numeresch, mir kréien Beispiller vum Verhalen vun der Funktioun fir e puer Parameter Kombinatioune .
Verhalen vun der Funktioun wéi de Code Alter, et huet geännert. D'Funktioun ass net méi monoton, mä d'Schwankunge "berouegen" mat der Zäit, an et gëtt eng Tendenz zu zu engem konstante Wäert. D'Grafike weisen: wat méi , и , dat ass, wat méi lues de Code Alter ass, wat méi séier d'Entwécklung vum neie Code ass a wat d'Qualitéit vum Code méi niddereg ass, wat manner Ressourcen fir d'Entwécklung vun neier Funktionalitéit bleiwen. Et war e Wonsch op d'mannst ee Beispill ze ginn an deem "snuggled" no bei null. Awer dëst erfuerdert d'Auswiel vu ganz schlechten Entwécklungsqualitéitsindikatoren a Code, deen net laang al gëtt. Och an der ënneschter lénkser Grafik bleift eng bedeitend Quantitéit u Ressourcen fir déi nei Funktionalitéit. Dofir ass déi richteg Äntwert op déi éischt Fro éischter dës: theoretesch - jo, et ass méiglech; praktesch - kaum.
Froen déi net beäntwert konnte ginn:
- Ass et wouer, datt tendéiert zu puer Limite bei fir jiddereen ? Wann net fir jiddereen, fir wéi eng?
- Wann eng Limite existéiert, wéi hänkt säi Wäert dovun of ?
Fro zwee. Konnt Code Ënnerhalt onlimitéiert Wuesstem an der Unzuel vun Programméierer Ursaach?
Mir bezeechnen d'Zuel vun de Programméierer déi an der Entwécklung vun neie Code involvéiert sinn. Wéi uewen, - de Betrag vum Code geschriwwe bis zu engem Zäitpunkt . Dann
Halen Code Ënnerstëtzung beschäftegt Programméierer. Den Alterungscode berücksichtegt,
Wou vun
wann , dann
Also ass d'Äntwert op déi zweet Fro negativ: wann d'Zuel vun den Entwéckler vum neie Code limitéiert ass, dann an de Bedéngungen vum Alterungscode kann d'Ënnerstëtzung net eng onlimitéiert Erhéijung vun der Unzuel vun de Programméierer verursaachen.
Konklusioun
D'Modeller considéréiert sinn "mëll" mathematesch Modeller [2]. Si sinn ganz einfach. Trotzdem entsprécht d'Ofhängegkeet vun de Simulatiounsresultater op de Parameterwäerter deem wat fir real Systemer erwaart gëtt, dat schwätzt fir d'Adequatitéit vun de Modeller a genuch Genauegkeet fir qualitativ héichwäerteg Schätzungen ze kréien.
Referenzen
1. Elsgolts L.E., Norkin S.B. Aféierung an d'Theorie vun Differentialgleichungen mat ofwäichend Argument. Moskau. Verlag "Science". 1971.
2. Arnold V.I. "Hard" a "mëll" mathematesch Modeller. Moskau. Verlag MCNMO. 2004.
Source: will.com