Gharama Halisi ya Kubadilisha Muktadha: Masomo kutoka PRs 5M
Tulichambua data kutoka PRs 5M+ kupima gharama halisi ya kubadilisha muktadha kwa wasanidi – na tatizo haliko unapolitarajia.
By Ellis Keane · 2026-03-29
Gharama ya kubadilisha muktadha ambayo makala mengi yanainukuu – dakika 23 za kurudisha umakini baada ya kukatizwa, kutoka utafiti wa Gloria Mark wa UC Irvine – ni ugunduzi halisi kutoka utafiti halisi. Lakini ilipima wafanyakazi wa maarifa kwa ujumla mwaka 2008, sio wahandisi wa programu. Na sekta ya blogu inayozidisha dakika 23 na idadi iliyokadiriwa ya kukatizwa kwa siku (kawaida kati ya 6 na 15, kulingana na hisia za mwandishi) ili kupata takwimu za kutisha za gharama ya mwaka – daima zinaambatana na picha ya stoki ya mtu anayeshika kichwa – inafanya kitu ambacho utafiti wa asili haukukusudia kamwe.
Nina ushiriki wa kibinafsi katika swali hili. Katika kampuni yangu ya awali, nilitumia – hii si mfano wa kupita kiasi – asilimia 80 hadi 100 ya siku fulani tu kama kipanga njia cha binadamu. Sikusimba msimbo, wala kuupitia. Nilituma taarifa kati ya watu na zana, kwa sababu hakuna mfumo ulioziunganisha. Uzoefu huo ni sehemu ya sababu tulijenga Sugarbug, lakini pia ndiyo maana ninaona mashaka katika vikokotoo vya kawaida vya gharama ya kubadilisha muktadha. Vinapima kukatizwa. Havipimi siku ambazo hufiki kamwe kwenye kitu ulichokusudiwa kukatizwa kutoka kwake.
Kwa hivyo tulitaka kujua ni nini kubadilisha muktadha kunagharimu kweli katika kazi ya uhandisi – sio katika maneno ya dhahania ya tija ya wasanidi, bali kupimwa katika kitu ambacho timu zinazalisha kila siku: pull requests. Tuliunganisha matokeo kutoka masomo matatu ya kiwango kikubwa yanayohusu PRs zaidi ya milioni 5 katika miradi elfu nyingi ya chanzo huria, na tuliangalia ni nini kweli kinasababisha muda wa mapitio ya pull request.
Ugunduzi mkuu: kubadilisha muktadha kwa gharama zaidi sio arifa ya Slack inayovunja mtiririko wako wa kazi. Ni pull request inayokaa kwenye foleni ya mapitio kwa siku moja, inalazimisha mwandishi kujenga upya mfano mzima wa akili wakati maswali hatimaye yanafika.
Seti za Data Tulizotumia
Hatujajenga kiscraper maalum na kuchambua PRs 10,000 kwa kujitegemea. Tuliunganisha matokeo kutoka masomo mawili yaliyopitiwa na rika na seti moja kubwa ya data ya sekta, kisha tulijaribu hitimisho zao dhidi ya kila moja.
stat: "3.35M" headline: "Pull requests zilizochambuliwa na Zhang et al." source: "Pull Request Latency Explained: An Empirical Overview (Empirical Software Engineering, 2022)"
Seti tatu kuu za data:
- Zhang et al. (2022), iliyopitiwa na rika: PRs 3,347,937 zilizofungwa katika miradi 11,230. Ilitumia uregresho wa mstari wa athari mchanganyiko kutambua kinachosababisha ucheleweshaji wa mapitio ya PR. Ilichapishwa katika Empirical Software Engineering.
- Adadot (2023), seti ya data ya sekta: PRs 300,000+ zilizoungwa mkono kutoka wasanidi ~30,000. Haikupitiwa na rika, lakini sampuli ni kubwa na mbinu (uhusiano wa tau ya Kendall) ni wazi. Ilizingatia ukubwa wa PR dhidi ya muda wa kuwasilisha.
- Utafiti wa mapitio mengi (2019), uliopitiwa na rika: PRs 1,836,280 katika miradi 760 ya GitHub. Ulichapishwa katika Information and Software Technology. Unachunguza tabia ya mapitio ya wakati mmoja – kiashiria cha moja kwa moja cha kubadilisha muktadha katika mapitio ya msimbo.
Tulilinganisha hizi na Ripoti ya DORA State of DevOps 2024 na Ripoti ya Uzoefu wa Wasanidi wa Atlassian 2024 (uchunguzi wa wasanidi 2,100+ kuhusu kubadilisha muktadha, tija ya wasanidi, na upande wa kibinadamu wa tatizo).
Foleni Ndiyo Muuaji Halisi
Zhang et al. waligundua kwamba muda unaochukua PR kupokea jibu lake la kwanza – maoni ya kwanza, mapitio ya kwanza, chochote cha kwanza – unaeleza 58.7% ya tofauti katika muda mzima wa maisha ya PR. Hiyo ndiyo kitabiri chenye nguvu zaidi kilichozingatiwa katika seti ya data – mbele ya ukubwa wa PR, ugumu wa msimbo, au idadi ya faili zilizobadilishwa! Hakuna linganisho.
Gharama kubwa zaidi ya kubadilisha muktadha katika mapitio ya msimbo sio kubadilisha wenyewe – ni foleni inayoundwa wakati kila mtu anashughulika kubadilisha muktadha kati ya mambo mengine.
Fikiria maana yake katika vitendo. Mhandisi anafungua PR saa nne asubuhi. Mpitiaji aliyeteuliwa amezama katika tawi lake la kipengele, au yuko kwenye mkutano, au anapanga ujumbe wa Slack (na kwa uaminifu, labda yote matatu kwa mfululizo). PR inakaa. Wakati mtu anaichukua saa tisa mchana, mwandishi ameshakwenda kwenye kitu kingine kabisa. Sasa mpitiaji ana maswali, ikimaanisha mwandishi lazima abadilishe muktadha kurudi kwenye msimbo aliouandika masaa matano iliyopita, ajenga upya mfano wa akili, na ajibu. Jibu hilo linafika saa kumi na moja jioni, lakini mpitiaji ameshaenda nyumbani.
PR inazidi kuzeeka siku moja zaidi.
Data inapendekeza hii ni tatizo la kufoleni zaidi kuliko tatizo la nidhamu – na gharama ya kubadilisha muktadha ya foleni hiyo inajumuika kwa njia ambazo vikokotoo vya kukatizwa vinakosa kabisa.
PRs Ndogo Hazitakuokoa
Umesikia hii hapo awali: PRs ndogo zinapitiwa haraka, kwa hivyo weka PRs zako ndogo. Hiyo si makosa kabisa, lakini ukubwa wa athari ni (kweli kweli) mdogo zaidi kuliko unavyotarajia.
Uchambuzi wa Adadot wa PRs 300,000+ uligundua uhusiano wa tau ya Kendall wa 0.06 tu kati ya ukubwa wa PR na muda wa uwasilishaji – uhusiano dhaifu, ingawa utafiti haukutoa vipindi vya ujasiri kwa takwimu ya jumla. PRs chini ya mistari 100 zina uwezekano wa karibu 80% wa kukamilika ndani ya wiki, ambayo inasikika vizuri mpaka unapogundu kuwa hiyo ndiyo kiwango sawa cha kukamilika kama PR iliyokaa kwenye foleni ya mapitio ya mtu kwa siku sita!
stat: "0.06" headline: "Uhusiano kati ya ukubwa wa PR na muda wa uwasilishaji" source: "Uchambuzi wa Adadot wa PRs 300,000+ kutoka wasanidi ~30,000 (2023)"
Ugunduzi wa kuvutia zaidi: uhusiano huu ulitofautiana sana kati ya mashirika, ukiwa na anuwai kutoka 0.1 hadi karibu 0.7 kulingana na kampuni. Ambayo inapendekeza kwamba ukubwa wa PR sio kizuizi kwa asili – utamaduni wa mapitio na mchakato unaozunguka PR ndiyo. Timu yenye utaratibu imara wa mapitio inaweza kushughulikia PRs kubwa kwa ufanisi. Timu ambapo mapitio ni jambo la nyongeza itajitahidi na PRs za ukubwa wowote.
Kizingiti cha mistari 400 kutoka utafiti wa mapitio ya msimbo wa SmartBear/Cisco kinashikilia kama heuristic muhimu – data ya Adadot pia iligundua kwamba ushiriki wa mapitio hupungua zaidi ya anuwai hiyo. Lakini kuimarisha PRs ndogo bila kurekebisha utaratibu wa msingi wa mapitio ni – nasema hivi kwa upendo wa kweli kwa kila meneja wa uhandisi aliyejaribu – kupanga viti kwenye sitaha ya meli inayozama.
Kila Mtu Anapitia Kila Kitu Wakati Mmoja
Utafiti wa mapitio mengi uligundua kwamba 62% ya pull requests zinahusisha wasanidi wanaopitia PRs nyingi wakati huo huo. Muhimu zaidi, waligundua uhusiano mkubwa wa kitakwimu: mapitio mengi ya wakati mmoja kwa kila mpitiaji yalihusishwa na muda mrefu zaidi wa utatuzi wa PR.
Asilimia 62 ya pull requests zinahusisha wasanidi wanaopitia PRs nyingi wakati huo huo – na mapitio mengi yanaunganishwa moja kwa moja na nyakati ndefu zaidi za utatuzi. attribution: Utafiti wa mapitio mengi ya pull requests, PRs 1.8M katika miradi 760
Utaratibu ni wa kimaumbile (ingawa utafiti, ukiwa wa kiuchunguzi, hauthibitishi mwelekeo wa sababu). Mpitiaji anachukua PR #1, anasoma diff, anaanza kuunda mfano wa akili wa kile msimbo unajaribu kufanya. Kisha arifa inafika – PR #2 inahitaji mapitio kwa sababu inazuia usambazaji. Mpitiaji anabadilisha muktadha. Anarudi kwenye PR #1, anahitaji kusoma upya nusu ya diff kwa sababu mfano wa akili umedhoofika.
Piga mfano huu kwa timu ya wahandisi wanane, kila mmoja akiwa na PRs mbili au tatu zilizo wazi, kila mmoja akipitia kwa wenzake wawili au watatu, na upotevu wa uratibu unaanza kuelezea wenyewe. Kwa upande mwingine, Ripoti ya DORA 2024 iligundua kwamba kundi la "watendaji wa juu" lilishuka kutoka 31% hadi 22% wakati kundi la watendaji wa chini liliongezeka kutoka 17% hadi 25%. DORA haitekelezi mapitio ya wakati mmoja ya PR kama sababu, lakini upotevu wa uratibu unaoongezeka ni mchangiaji mmoja unaowezekana kwa mabadiliko hayo.
Makosa ya Makadirio ya Gharama ya Kubadilisha Muktadha
Niruhusu niwe wa moja kwa moja kuhusu takwimu ya "dola 50,000 kwa msanidi kwa mwaka" inayozunguka kwa upana katika makala za gharama ya kubadilisha muktadha. Mbinu nyuma ya makadirio mengi haya ni: chukua dakika 23 za kurudisha umakini, zidisha kwa idadi ya kukatizwa kwa siku iliyokadiriwa (kawaida kati ya 6 na 15, kulingana na jinsi mwandishi anahisi), zidisha kwa kiwango cha kila saa cha msanidi, na hesabu ya mwaka.
Tatizo sio kwamba hisabati ni mbaya. Tatizo ni kwamba inachukulia mabadiliko yote ya muktadha kama sawa. Kubadilisha kutoka kuandika msimbo kwa undani hadi ujumbe wa Slack unaulizwa wapi chakula cha timu kiko – hiyo ni kubadilisha muktadha. Kubadilisha kutoka kupitia PR moja hadi kupitia PR tofauti katika msingi wa msimbo tofauti kabisa – hiyo pia ni kubadilisha muktadha. Lakini gharama ya utambuzi haifanani hata kidogo, na kuzifanya sawa katika kiwango kimoja cha kila saa kunafunika mahali ambapo uharibifu halisi unafanyika.
Kusema kwa uwazi: katika kazi yangu ya mwisho, siku ya kawaida ilimaanisha kubadilisha kati ya Notion, Linear, Mattermost, Proton Mail, Proton Calendar, Discord, Twitter, Farcaster, na njia nyingi za Telegram na Signal – na nina uhakika ninasahau nusu dazeni. Sasa ninatumia wachache (Signal, Obsidian, Figma, GitHub, barua pepe, kalenda). Gharama kwa kila mabadiliko haijabadilika. Kilichobadilika ni ni muktadha mingapi inayoshindana kwa umakini – na ipi kati yao iliyokuwa muhimu kweli.
Data ya PR inapendekeza kwamba mabadiliko ya gharama kubwa ni yale yanayounda foleni, sio yale yanayovunja mtiririko wa kazi. Msanidi anayepigwa simu kupitia PR mara moja (ndani ya dakika chache) na anafanya mapitio ya haraka ya mistari 50 – hiyo ni usumbufu mfupi wenye faida kubwa. Msanidi anayeweka ombi hilo la mapitio pamoja na mengine manne na kushughulikia kesho – hiyo ni usumbufu mrefu zaidi kwa mpitiaji lakini huunda gharama kubwa zaidi kwa mwandishi na timu.
Vikokotoo vya gharama vinavyopima nini
- Usumbufu wa mtu binafsi – mara ngapi mtiririko wa mtu unavunjwa
- Muda wa kurudisha umakini – muda wa kurudi kwenye kazi ya awali
- Kuzidisha kiwango cha kila saa – nambari kubwa za kutisha za mwaka
Data ya PR inavyoonyesha kweli
- Uundaji wa foleni – PRs zinazosubiri jibu la kwanza
- Wakati mmoja wa mapitio – wapitiajiwaishio PRs nyingi
- Ucheleweshaji wa msururu – mabadiliko ya muktadha ya mwandishi yanayojumuisha ucheleweshaji wa mpitiaji
Maana Yake kwa Timu Yako
Ukijaribu kupunguza gharama ya kubadilisha muktadha kwa wasanidi katika timu yako, jibu la vitendo ni la kuchosha – ambalo labda ndiyo maana haandikiwi sana. Si zana. Si mfumo wa mchakato wenye programu ya uthibitisho. Ni utaratibu wa mapitio. (Najua, najua. Hakuna aliyepandishwa cheo kwa kuboresha utaratibu wa mapitio.)
Vipimo vya uhandisi vya LinearB vya 2025, vilivyotolewa kutoka PRs 6.1M katika mashirika 3,000, viligundua kwamba timu zinazofanikisha nyakati bora za mzunguko (chini ya siku 2.5) zilikuwa na sifa moja: zilipitia PRs haraka. Si kwa sababu zilikuwa na PRs chache, au kwa sababu PRs zao zilikuwa ndogo (ingawa mara nyingi zilikuwa), bali kwa sababu kujibu maombi ya mapitio ndani ya masaa kulikuwa kawaida ya timu, sio jambo la nyongeza.
Kwa kumbukumbu, Ben na mimi – timu ya watu wawili – tunajibu PRs za kwanza kwa dakika, sio masaa, kwa wastani. Hiyo si kujivunia nidhamu (hatufanyi hivyo). Ni makubaliano ya timu: maombi ya mapitio ndiyo arifa pekee ambayo hauweki kwenye foleni. Vitendo vya CI na majaribio ya kiotomatiki hushughulikia ukaguzi wa kimitambo, ikimaanisha mapitio ya kibinadamu – sehemu inayohitaji muktadha halisi – ni mfupi na hufanyika mara moja. Makubaliano yalikuja kwanza. Zana tu ziliyafanya yaendelee.
Kwa vitendo, hii inamaanisha:
- Pima muda hadi jibu la kwanza, sio muda wa mzunguko peke yake. Ukifuatilia vipimo vya DORA, ongeza hii. Ni kitabiri chenye nguvu zaidi cha kipimo cha PR (kikiieleza 58.7% ya tofauti ya maisha ya PR, kulingana na Zhang et al.).
- Punguza wakati mmoja wa mapitio. Mpitiaji akiwa na maombi matatu ya mapitio yanayosubiri, ya nne hayatapata mapitio mazuri hata hivyo. Data ya mapitio mengi ilionyesha uhusiano wazi kati ya wakati mmoja na ucheleweshaji. Anza na kikwazo cha WIP cha mapitio mawili ya wakati mmoja na fuatilia athari.
- Acha kuimarisha ukubwa wa PR kwa kujitegemea. PRs ndogo ni nzuri, lakini hazibadilishi timu inayopitia mambo kweli. Timu inayozalisha PRs ishirini za mistari 50 kwa siku na mzigo wa mapitio wa masaa 48 iko katika hali mbaya zaidi kuliko timu inayozalisha PRs tano za mistari 200 zenye mapitio siku hiyo hiyo.
- Kubali kwamba mapitio ni kazi halisi. Uchunguzi wa Atlassian wa 2024 uligundua kwamba 69% ya wasanidi hupoteza masaa 8+ kwa wiki kutokana na upotevu wa muda. Mapitio hayahitaji kuwa moja ya upotevu huo wa muda – lakini tu yakichukuliwa kama shughuli ya uhandisi ya daraja la kwanza, sio usumbufu wa kazi "halisi".
Na hii ndiyo sehemu ambayo hakuna katika nafasi ya zana za tija – sisi wenyewe tukiwemo, kwa uaminifu – anayotaka kusema kwa sauti: uingiliaji wenye athari kubwa zaidi kwa gharama ya kubadilisha muktadha katika timu za uhandisi si zana. Ni makubaliano ya timu kuhusu wakati PRs zinapitiwa. Kawaida ya kimya ya timu yako ikiwa ni "nitashughulikia mapitio ninapopata nafasi," hakuna kiasi cha zana kinachozuia msururu wa kufoleni unaodhihirishwa na data ya PR.
Zana husaidia – uwezo wa kuona muktadha kamili wa PR bila kufungua vichupo vinne vya kivinjari hupunguza mzigo wa utambuzi kwa kila mabadiliko, na kuonyesha mapitio yanayozuia kazi za watu wengine husaidia kipaumbele. Lakini nguzo kuu ni makubaliano, na makubaliano ni bure. Hakuna kikokotoo cha dakika 23 kinachohitajika.
Kubadilisha muktadha kwa gharama zaidi si arifa inayovunja mtiririko wako wa kazi. Ni ombi la mapitio linalokaa kwenye foleni kwa siku moja, inalazimisha mwandishi kujenga upya muktadha wa akili wakati maswali hatimaye yanafika.
Pata akili ya ishara moja kwa moja kwenye kisanduku chako cha barua.
Maswali Yanayoulizwa Mara kwa Mara
Q: Ni kiasi gani gharama ya kubadilisha muktadha kwa msanidi mmoja kwa mwaka? A: Makadirio yanatofautiana, lakini utafiti wa msingi ni mwembamba zaidi kuliko makala nyingi inavyopendekeza. Utafiti wa Gloria Mark katika UC Irvine uligundua dakika 23 za kurudisha umakini baada ya kukatizwa, na uchunguzi wa Atlassian wa 2024 kwa wasanidi zaidi ya 2,100 uligundua kuwa 69% hupoteza masaa 8+ kwa wiki kutokana na upotevu wa muda. Takwimu ya dola inategemea sana dhana za mshahara, mara ya kukatizwa, na jinsi unavyofafanua 'kubadilisha' – ndiyo maana tulizingatia data ya PR.
Q: Je, Sugarbug husaidia kupunguza kubadilisha muktadha kwa timu za uhandisi? A: Ndiyo. Sugarbug inaunganisha zana kama Linear, GitHub, Slack, na Figma katika grafu moja ya maarifa, ili wahandisi waweze kuona muktadha kamili wa kazi – PR inayohusika, majadiliano ya Slack, maoni ya Figma – bila kufungua vichupo vinne. Lengo ni mabadiliko machache, sio zana chache.
Q: Ni ukubwa gani bora wa pull request kupunguza ucheleweshaji wa mapitio? A: Utafiti kutoka uchambuzi wa Adadot wa PRs 300,000+ uligundua kuwa PRs chini ya mistari 100 ya msimbo zina uwezekano wa karibu 80% wa kukamilika ndani ya wiki moja. Zaidi ya mistari 400, ubora wa mapitio na kasi ya kukamilika vinapungua. PRs ndogo pia hupunguza mzigo wa kubadilisha muktadha kwa mpitiaji.
Q: Je, Sugarbug inaunganishwa na pull requests za GitHub? A: Ndiyo. Sugarbug inakusanya shughuli za GitHub – PRs, maoni, mapitio, na mabadiliko ya hali – na kuziunganisha na ishara zinazohusiana katika zana zako nyingine. Ikiwa suala la Linear lilizaa PR, na mnyororo wa Slack ulijadili mkakati, Sugarbug inaunganisha hizi tatu kiotomatiki.
Q: Takwimu ya 'dakika 23 za kurudisha umakini' inatoka wapi? A: Inatoka kwenye utafiti wa Gloria Mark katika UC Irvine, uliochapishwa katika 'The Cost of Interrupted Work: More Speed and Stress' (CHI 2008). Utafiti uligundua kuwa wafanyakazi walihitaji wastani wa dakika 23 na sekunde 15 kurudi kwenye kazi yao ya awali baada ya kukatizwa. Inastahili kutambua kwamba utafiti uliangalia wafanyakazi wa maarifa kwa ujumla, sio wahandisi wa programu hasa.