Mada 5.3
Uhandisi wa Programu na Majukwaa katika Sekta ya Umma
Jinsi chombo cha umma kinavyoamua kujenga au kununua programu yake, kama kinaruhusu deni la kiufundi na kufungwa kwa muuzaji kupunguza kimya kimya chaguzi zake za baadaye, na kama kinachukulia msimbo chanzo unaotokana kama mali inayomilikiwa au kisanduku cheusi kinachokodishwa, huamua ni uwezo wa kweli kiasi gani dola linabaki nao muda mrefu baada ya mkataba ulioanzisha mfumo kusainiwa na kusahaulika.
Kwa nini hili ni muhimu katika thamani ya umma
Karibu kila huduma ya umma ambayo mwananchi anaigusa leo — kusajili kuzaliwa, kudai faida, kulipa bili ya kodi, kuweka tarehe ya mahakama — inaendeshwa na programu mahali fulani nyuma ya kaunta au skrini. Programu hiyo mara chache ni ununuzi wa mara moja; inakuwa sehemu ya miundombinu ya kudumu ya dola, mara nyingi ikizidi muda wa utawala uliouagiza, msambazaji aliyeujenga, na lugha ya programu ambayo wahandisi wake walifunzwa. Chombo cha umma hakipati programu kama kinavyopata jengo au barabara, ambapo hali ya mali inaonekana; programu huzorota bila kuonekana, na bili ya kuoza huko inafika miaka baadaye kama dharura.
Mvutano unaoendesha mada hii ni wa kimuundo. Programu kwa asili ni ya kurudiarudia — mahitaji yanakuwa wazi zaidi watumiaji wanapoingiliana na mfumo unaofanya kazi, na mazoezi bora ya kihandisi ni kujenga kitu kidogo, kujifunza, na kurekebisha. Mizunguko ya ununuzi na uwajibikaji wa umma (tazama Mada 3.7 — Ununuzi wa Umma na Uagizaji wa Huduma), kwa upande mwingine, ilijengwa kwa kazi za mtaji na mikataba ya ulinzi: maelezo yaliyowekwa, tuzo moja kubwa, malipo ya hatua, na hoja ya biashara iliyosainiwa miaka kabla ya utoaji kuanza. Bunge au mkaguzi anapotarajia mkataba wa bei isiyobadilika, wigo usiobadilika na timu ya kihandisi inahitaji kubadilisha mwelekeo baada ya toleo la kwanza, kutolingana kunajitokeza kama kuongezeka kwa wigo, kupita bajeti, au mfumo uliobainishwa kwa usahihi mwaka 2019 na uliopitwa na wakati ukifika.
Majukwaa ambayo mazoezi ya kihandisi ya mada hii yapo kujenga — mifumo ya pamoja ya utambulisho, njia za malipo, zana za usimamizi wa kesi zinazotumika tena kuvuka idara — ni somo la Mada 5.1 (tazama Mada 5.1 — Serikali Mtandao na Mageuzi ya Kidijitali); mada hii inahusu nidhamu ya kujenga na kununua programu inayofanya jukwaa lolote kama hilo, au huduma yoyote moja, kuwa ya kutegemewa, inayoweza kubadilishwa, na kumilikiwa na chombo cha umma kinachoitegemea badala ya muuzaji yeyote aliyetokea kuandika kwanza.
Dhana kuu
Uamuzi wa kujenga-dhidi-ya-kununua ni uchaguzi kati ya kuagiza programu maalum iliyoandikwa kwa hitaji la shirika moja na kupitisha programu ya kawaida inayoweza kusanidiwa iliyokwisha kujengwa kwa soko la wanunuzi wanaofanana. Kununua kwa kawaida ni nafuu na hatari ndogo kwa hitaji ambalo si la kipekee kweli — malipo ya mishahara, barua pepe, usimamizi wa kesi wa kawaida — wakati kujenga kunahalalishwa tu pale hitaji ni tofauti vya kutosha kwamba hakuna bidhaa inayoweza kusanidiwa inayofaa, au pale uwezo wenyewe ni mali ya kimkakati ambayo shirika linahitaji kumiliki na kuendeleza.
Deni la kiufundi ni mfano wa kielelezo, uliobuniwa na mhandisi wa programu Ward Cunningham mwaka 1992, wa gharama iliyokusanyika ya kuchagua njia ya haraka ya kutoa programu sasa badala ya njia kamili zaidi ambayo ingechukua muda mrefu zaidi. Deni la kiufundi, kama deni la kifedha, si kosa kimsingi kulichukua — hoja ya Cunningham mwenyewe ilikuwa kwamba kutoa msimbo unaofanya kazi haraka na kuurekebisha baadaye kunaweza kuwa uamuzi sahihi — lakini deni ambalo halilipwi kamwe linakusanya riba kama utoaji wa polepole, kasoro zaidi, na hatari inayopanda, na chombo cha umma kisichoweza kuona deni lake hakiwezi kuamua kama kiliwajibike au kuliacha lijikusanye.
Mfumo wa urithi ni teknolojia ya zamani, programu, au jukwaa linalobaki katika matumizi hai licha ya kupitwa na wakati, mara nyingi kwa sababu kulibadilisha ni ghali au kwa sababu hakuna aliyebaki shirikani anayeelewa kikamilifu inachofanya. Mifumo ya urithi ni ya kudumu hasa serikalini: mifumo ya msingi ya kodi, faida, na bima ya kijamii iliyoandikwa miongo iliyopita kwa lugha kama COBOL — Common Business-Oriented Language, iliyobuniwa mwaka 1960 kwa kompyuta ya kiutawala — bado inachakata miamala kwa mamilioni ya wananchi, kwa sababu mifumo inafanya kazi na maarifa ya kitaasisi yanayohitajika kuyastaafisha kwa usalama mara nyingi yamestaafu yenyewe kwanza.
Kuboresha programu ni neno la jumla la kubadilisha, kuandika upya, au kuhamisha mfumo wa urithi kwenda usanifu, lugha, au jukwaa la kisasa. Kuboresha programu kunaenea kutoka kuandika upya kikamilifu hadi chaguzi za tahadhari zaidi kama kuweka msimbo ule ule kwenye miundombinu ya kisasa, na uchaguzi kati yake ni uamuzi wa usimamizi wa hatari kama wa kiufundi.
Mfumo wa mtini unaonyonga ni mbinu ya kuboresha polepole, iliyopewa jina la mzabibu unaokua kuzunguka mti mwenyeji na kuubadilisha taratibu, ambamo utendaji mpya unajengwa kando ya mfumo wa urithi na trafiki inaelekezwa kwake kipande kimoja kimoja, badala ya kubadilisha mfumo mzima katika ubadilishaji mmoja. Mfumo wa mtini unaonyonga ni muhimu kwa sababu unaruhusu kila ongezeko kujaribiwa, kutenguliwa, au kusimamishwa bila kuzima huduma nzima — kinyume cha kubadilisha kwa mlipuko mmoja, ambapo mfumo wa zamani unazimwa na mpya kuwashwa katika wakati mmoja bila njia ya kurudi nyuma kama kuna kosa.
Kufungwa kwa muuzaji hutokea pale mteja anapokuwa tegemezi kwa teknolojia ya umiliki, miundo ya data, au masharti ya mkataba ya msambazaji mmoja kiasi kwamba kubadilisha hadi msambazaji mwingine kunabeba gharama au hatari isiyovumilika. Kufungwa kwa muuzaji ni hatari ya kipekee katika programu ya sekta ya umma kwa sababu mnunuzi ni mteja wa kurudiwa mwenye uwezo mdogo wa kivitendo wa kuondoka kutoka mfumo unaoendesha huduma muhimu, jambo linalodhoofisha nafasi yake ya kujadili katika kila upya unaofuata.
Programu huria na ya chanzo wazi ni programu inayosambazwa chini ya leseni inayowapa watumiaji uhuru wa kutumia, kusoma, kurekebisha, na kusambaza upya msimbo chanzo. Programu huria na ya chanzo wazi inasaidia sera ya chanzo-wazi-kwa-chaguo-msingi, ambayo chini yake chombo cha umma kinaelekea kuchapisha msimbo chanzo kinachouagiza isipokuwa sababu mahususi — unyeti wa usalama, haki za upande wa tatu — inahalalisha kuuzuia; hoja kwa kawaida inafupishwa kama "fedha za umma, msimbo wa umma": programu iliyolipiwa mara moja kwa fedha za umma haipaswi kuhitaji kulipiwa tena, katika mamlaka tofauti, na chombo tofauti cha umma kinachotatua tatizo lilelile.
Bidhaa ya umma ya kidijitali ni programu, data, au maudhui yaliyo wazi, yaliyotolewa chini ya leseni wazi, yaliyobuniwa kusaidia kutimiza lengo la maendeleo au utawala wa umma badala ya kuzalisha faida ya kibiashara. Bidhaa za umma za kidijitali zinaandaa upya utoaji wa chanzo wazi wa serikali moja kama sehemu ya miundombinu pana, ya pamoja ambayo serikali nyingine na mashirika ya asasi za kiraia wanaweza kuchota moja kwa moja, si ishara ya uwazi ya ndani tu.
Maendeleo ya programu ya agile ni neno mwavuli kwa mbinu za kurudiarudia za kujenga programu zinazopendelea programu inayofanya kazi, utoaji wa mara kwa mara, na kujibu mabadiliko kuliko kufuata mpango uliowekwa mapema. Maendeleo ya programu ya agile yanasimama kinyume na mfano wa mporomoko wa maji, mbinu ya mfuatano ambamo mahitaji, usanifu, ujenzi, na majaribio kila moja hukamilika kikamilifu kabla ya linalofuata kuanza; mvuto wa mporomoko wa maji kwa vyombo vya umma siku zote umekuwa kwamba hatua zake zinalingana vizuri na mkataba wa bei isiyobadilika na mzunguko wa bajeti wa kila mwaka, ndiyo sababu sheria nyingi za ununuzi bado zinaudhania, hata pale utoaji ni wa agile kweli.
Bidhaa ndogo inayoweza kutumika ni toleo dogo zaidi la huduma linaloweza kutolewa kwa watumiaji halisi kujaribu kama linafanya kazi na kujifunza cha kujenga baadaye. Dhana ya bidhaa ndogo inayoweza kutumika, iliyorekebishwa kuwa miongozo ya huduma za kidijitali za sekta ya umma, inaipa timu ya kurudiarudia njia inayoweza kutetewa ya kuonyesha mfadhili au mkaguzi kitu halisi na kinachofanya kazi muda mrefu kabla ya wigo kamili kukamilika — mradi mchakato wa uwajibikaji unakubali toleo dogo kweli badala ya kulichukulia kama bidhaa iliyokamilika chini ya jina tofauti.
Mazoea bora
- Elekea kununua kwa mahitaji yasiyotofautishwa, na uhifadhi kujenga kwa kile kilicho cha kipekee kweli. Malipo ya mishahara, barua pepe, na mahitaji ya jumla ya usimamizi wa kesi mara chache hutofautiana vya kutosha na shirika lingine lolote kuhalalisha programu maalum; jenga tu pale hitaji, kiwango, au hitaji la kumiliki na kuendeleza uwezo kwa miongo ni tofauti kweli na kile soko linatoa.
- Fanya deni la kiufundi lionekane kabla ya kuamua ni kiasi gani cha kubeba. Tunza rejista ya njia fupi zinazojulikana, marekebisho yaliyoahirishwa, na utegemezi usioungwa mkono kwa kila mfumo unaotumika, ukipitiwa kwa mzunguko uliowekwa, ili kubeba deni kwa mwaka mwingine kuwa maridhiano ya makusudi badala ya hakuna anayeangalia.
- Usipange kamwe ubadilishaji mmoja, usioweza kutenguliwa kama njia pekee ya kutoka kwenye mfumo muhimu wa urithi. Pendelea mbinu za kuongezeka polepole kama mfumo wa mtini unaonyonga zinazoruhusu kila kipande kujaribiwa, kutenguliwa, na kutolewa taratibu; kubadilisha kwa mlipuko mmoja mfumo ambao mamilioni wanautegemea kunajikita miaka ya hatari katika wikendi moja bila njia ya kurudi kama kitu kinashindwa.
- Chukulia msimbo chanzo ambao shirika lako linalipia kuandikwa kama mali inayomilikiwa, si huduma inayokodishwa. Jadili escrow ya msimbo chanzo au umiliki kamili wakati wa kuingia mkataba, si baada ya mzozo kuanza, kwa kuwa muuzaji anayeshikilia nakala pekee ya msimbo wa huduma yako muhimu ni kufungwa kwa muuzaji kwa usanifu.
- Chapisha msimbo chanzo kama wazi kwa chaguo-msingi, na uhitaji uhalalisho mahususi kuuzuia. Sera ya chanzo-wazi-kwa-chaguo-msingi, inayotumika kwa uthabiti, inageuza programu maalum ya kila idara kuwa mali ya pamoja ya serikali nzima badala ya gharama ya mara moja, na inaruhusu wataalamu wa nje kupata kasoro za usalama ambazo timu ya ndani peke yake ingekosa.
- Andika mikataba ya programu inayofanya utoaji wa kurudiarudia kuwa halali, si tu unawezekana kiufundi. Mkataba unaolipa dhidi ya maelezo yaliyowekwa wakati wa kusaini tu unailazimisha timu kuchagua kati ya mazoezi ya uaminifu ya agile na kufuata mkataba; tumia malango ya ufadhili ya hatua yanayofungwa na programu iliyoonyeshwa kufanya kazi badala ya hatua moja mwishoni.
- Fadhili uboreshaji kama programu inayoendelea, si mradi wa mtaji wa mara moja. Mfumo wa urithi ulioboreshwa mara moja kisha kuachwa kwa miaka ishirini mingine unajikusanyia hatari ileile ulioanza nayo; tenga bajeti kwa upya endelevu, wa polepole kama mamlaka ya barabara inavyotenga kwa kuweka lami upya, si kubadilisha kwa kishindo mara moja kwa kila kizazi.
- Chagua viwango vya wazi na miundo ya data inayohamishika hata unaponunua programu ya kibiashara. Kuhitaji mfumo wa msambazaji kuhifadhi na kuuza nje data kwa miundo wazi, iliyoandikwa kunaweka gharama za kubadilisha chini hata pale programu yenyewe ni ya umiliki, na mara nyingi ni kinga inayoweza kufikiwa zaidi ya karibu dhidi ya kufungwa kuliko kusisitiza kila mfumo uwe chanzo wazi.
- Jenga bidhaa ndogo inayoweza kutumika na uionyeshe kwa watumiaji halisi kabla ya kujitolea kwa wigo kamili. Kutoa toleo dogo kweli, kisha kurudiarudia juu ya kilichojifunzwa, kunakamata dhana zisizo sahihi zikiwa bado nafuu kurekebisha, badala ya baada ya mfumo kamili kujengwa dhidi yake.
- Dumisha uwezo wa kihandisi wa ndani wa kutosha kuwa mnunuzi mwenye akili, hata pale utoaji unakandarasiwa. Chombo cha umma kilichoondoa utaalamu wake wa kiufundi hakiwezi kutathmini pendekezo la msambazaji, kuona dalili za mapema za mradi wenye shida, au kujadili kutoka kufungwa, kanuni zake za ununuzi zikisema nini kwenye karatasi.
- Staafisha wasifu wa hatari wa mfumo wa urithi kabla ya kiolesura chake cha mtumiaji. Weka kipaumbele kubadilisha lugha zisizoungwa mkono, miundombinu isiyo na viraka, na miunganisho isiyoandikwa — kushindwa kunakosababisha kukatika na uvunjaji — kabla ya uboreshaji wa kuonekana wenye hatari ndogo zaidi ya kiutendaji.
- Pima afya ya utoaji kwa viashiria vya kihandisi, si tofauti ya bajeti na ratiba tu. Mzunguko wa utekelezaji, viwango vya kasoro, na umri wa kipengele kongwe zaidi cha deni la kiufundi ambacho hakijashughulikiwa vinaambia bodi ya utawala zaidi kuhusu kama programu itafanikiwa kuliko kama kwa sasa iko ndani ya bajeti, mara nyingi kiashiria cha mwisho kusogea.
Maswali ya kujadili na timu yako
Je, tunajua kweli ni kiasi gani cha deni la kiufundi tunalobeba, mfumo kwa mfumo? Vyombo vingi vya umma vinaweza kutaja bajeti yao ya mtaji kwa mwaka lakini haviwezi kutaja, kwa kujiamini yoyote, ni sehemu gani ya mali yao ya programu inaendeshwa kwa vipengele visivyoungwa mkono, mantiki isiyoandikwa, au msimbo ambao hakuna anayebaki katika wafanyakazi anayeuelewa kikamilifu. Tumia swali hili kuomba kila mmiliki wa mfumo chumbani akadirie, kwa uaminifu, anajiamini kiasi gani kwamba timu yao ingeweza kubadilisha kwa usalama mfumo wao muhimu zaidi bila kuvunja kitu ambacho hakuna aliyetarajia. Jadilini ingechukua nini kugeuza makadirio hayo kuwa rejista halisi, inayopitiwa kwa mzunguko uliowekwa, badala ya maarifa ya kikabila yanayoondoka mhandisi muhimu anapoondoka. Fikirini pia nani anaamua sasa ni kiasi gani cha deni kinachokubalika kubeba, na kama uamuzi huo ni wa makusudi au kwa chaguo-msingi.
Mfumo wetu muhimu zaidi wa urithi ukihitaji kubadilishwa kuanzia leo, je, tungepanga ubadilishaji wa mlipuko mmoja au uhamishaji wa polepole — na kwa nini? Silika ya kubadilisha mfumo wa zamani wote mara moja mara nyingi inaendeshwa na mizunguko ya bajeti na urahisi wa usimamizi wa programu kuliko hitaji la kiufundi, na inajikita hatari kubwa katika wakati mmoja. Tumia swali hili kupitia, kwa uhalisia, uhamishaji wa polepole wa mtindo wa mtini unaonyonga wa mfumo wenu muhimu zaidi wa urithi ungeonekanaje, kipande kwa kipande. Jadilini ni nini kinawazuia kuchagua njia hiyo leo — ufadhili uliopangwa kuzunguka tarehe moja ya kuzinduliwa, mchakato wa utawala unaotaka hatua moja safi, au kikwazo halisi cha kiufundi kinachofanya uhamishaji wa polepole usiwezekane kwa mfumo huu.
Nani anamiliki msimbo chanzo wa programu ambayo shirika letu limelipia kuijenga kweli, na tungeweza kuthibitisha? Vyombo vingi vya umma hugundua, uhusiano na msambazaji unapoharibika tu, kwamba mkataba haukuwahi kuhakikisha umiliki wazi au escrow ya msimbo ambao huduma zao muhimu zinautegemea. Tumia swali hili kuvuta mikataba ya mifumo yenu mitatu muhimu zaidi ya maalum na kukagua, mahususi, kila moja inasema nini kuhusu umiliki wa msimbo, escrow, na haki ya kupeleka msimbo kwa msambazaji mwingine. Jadilini kingetokea nini kesho msambazaji wenu mkuu wa mojawapo ya mifumo hiyo mitatu akifilisika au kukataa kuendelea na uhusiano.
Ni wapi tunaelekea programu iliyofungwa, ya umiliki kwa mazoea, wakati mbinu ya chanzo-wazi-kwa-chaguo-msingi ingetuhudumia vilevile au vizuri zaidi? Sera za chanzo-wazi-kwa-chaguo-msingi zipo hasa kwa sababu vyombo vingi vya umma vinatatua matatizo yanayopishana kwa kujitegemea, kila kimoja kikilipa gharama kamili ya programu ambayo chombo kingine cha umma kimeijenga na kingeweza kuishiriki. Tumia swali hili kutambua mfumo mmoja unaojengwa au kubainishwa sasa na kuuliza kama mfanano tayari upo kama programu ya chanzo wazi mahali pengine serikalini, au kama ule mnaoujenga unaweza kutolewa kwa manufaa kwa wengine kuutumia tena. Jadilini kikwazo mahususi gani — wasiwasi wa usalama, mazoea ya ununuzi, ukosefu wa sera wazi — kinazuia kutumia tena huko kweli, badala ya kudhani hakihusiani na hapa.
Je, mchakato wetu wa ununuzi na uwajibikaji unaruhusu utoaji wa agile wa uaminifu, au unabadilisha tu majina ya hatua za mporomoko wa maji kuwa mbio? Ni jambo la kawaida kwa timu kuendesha sherehe za agile kwa jina huku bado ikifadhiliwa, kutawaliwa, na kuripotiwa dhidi ya maelezo yaliyowekwa wakati wa kusaini mkataba, jambo linalozalisha upya kila hali ya kushindwa ya mporomoko wa maji chini ya lebo ya agile. Tumia swali hili kufuatilia programu moja hai ya kidijitali kutoka hoja yake ya biashara hadi uripoti wake wa sasa wa utawala na uulize kama muundo wa ufadhili ungevumilia programu kubadilisha mwelekeo kulingana na kile toleo la mapema la kweli lilichofundisha. Jadilini nini kingehitaji kubadilika katika jinsi programu inavyofadhiliwa na kuripotiwa ili utoaji wa kurudiarudia uwe wa kweli badala ya wa mapambo (tazama Mada 3.7 — Ununuzi wa Umma na Uagizaji wa Huduma).
Je, tuna uwezo wa kutosha wa kihandisi wa ndani kuwa mnunuzi mwenye akili wa mifumo tunayoitegemea zaidi? Shirika ambalo limekandarasia hukumu yake yote ya kiufundi, si uwezo wake wa utoaji tu, haliwezi kusema kama pendekezo la msambazaji ni thabiti, kama mradi unaelekea kimya kimya kwenye matatizo, au bei ya haki ya kazi ni nini. Tumia swali hili kuuliza ni watu wangapi katika shirika lenu wangeweza kupitia kwa kuaminika pendekezo la usanifu wa kiufundi kwa mfumo wenu muhimu zaidi, na namba hiyo imebadilikaje katika miaka mitano iliyopita. Jadilini ingechukua nini kujenga upya uwezo huo pale umemomonyoka, na shirika lenu linapoteza nini, katika nafasi ya kujadili kama katika hatari ya utoaji, kwa kila mwaka inayopita bila hiyo.
Kwa vitendo: mfano wa thamani ya umma
Serikali ya kikanda ya kubuni — kwa kielelezo tu, si maelezo ya mamlaka yoyote halisi — iliendesha madai yake ya faida ya ukosefu wa ajira kupitia mfumo ulioandikwa kwanza zaidi ya miaka thelathini iliyopita, ukitunzwa na idadi inayopungua ya wahandisi walioelewa lugha yake ya awali ya programu. Kiasi cha madai kilikuwa kimekua mbali kupita kile ambacho wabunifu wa mfumo walitarajia, uendeshaji wa usindikaji wa kila usiku ulizidi kushindwa kukamilika kabla ya miamala ya asubuhi kuanza, na uongozi wa teknolojia wa wakala ulionya kwamba kukatika bila kupangwa kuathiri malipo ya faida sasa kulikuwa suala la lini, si kama.
Silika ya kwanza ya wakala ilikuwa jibu la kawaida kwa tatizo lililohisi la dharura: kuagiza mkataba mmoja mkubwa wa kubadilisha mfumo mzima kwa jukwaa la kisasa, lililobainishwa kikamilifu mapema, likitolewa dhidi ya ratiba isiyobadilika ya miaka miwili na wikendi moja ya ubadilishaji mwishoni. Mapitio ya kabla ya utekelezaji yaliyoagizwa na kamati ya ukaguzi ya wakala yaliibua swali gumu kabla mkataba haujasainiwa: nini kingetokea kwa malipo ya faida kwa mamia ya maelfu ya wadai kama mfumo mpya ungekuwa na kasoro isiyogunduliwa katika wiki yake ya kwanza ya uendeshaji hai kamili, mfumo wa zamani ukiwa umeondolewa tayari na hakuna njia ya kurudi.
Wakala ulibadilisha mwelekeo. Uliendelea kuendesha mfumo wa urithi kama mfumo wa rekodi na kuanza kujenga utendaji mpya wa kupokea madai na kutathmini ustahiki kando yake, kwa kutumia mbinu ya mtini unaonyonga: kila moduli mpya ilitolewa kwa asilimia ndogo ya madai mapya kwanza, ikathibitishwa dhidi ya pato sambamba la mfumo wa zamani, na kupanuliwa tu matokeo yake yalipolingana. Ndani ya miezi kumi na minane, wingi wa madai mapya yalipitia vipengele vya kisasa huku mfumo wa awali ukishughulikia mzigo wa kesi unaopungua, na uwezo wa kurudisha kesi yoyote moja kwenye njia ya zamani kitu kilipoonekana si sawa. Wakala pia ulihitaji, katika kila mkataba mpya uliotolewa kwa kazi hii, kwamba msimbo chanzo umilikiwe na wakala na uchapishwe kama chanzo wazi mara mapitio ya usalama yakikamilika, ili serikali nyingine za kikanda zinazokabili tatizo lilelile la kompyuta kuu zinazozeeka ziweze kurekebisha vipengele badala ya kurudia ujenzi uleule kutoka mwanzo.
Kubadilisha kabisa kazi za mwisho za masalio ya mfumo wa urithi kulichukua karibu miaka minne — zaidi, kwenye karatasi, kuliko mpango wa awali wa mlipuko mmoja wa miaka miwili uliyoahidi. Lakini hakuna mdai aliyewahi kupata kukatika bila kupangwa wakati wa mpito, kila ongezeko lilikuwa dogo vya kutosha kutenguliwa ndani ya saa kasoro ilipopatikana, na serikali mbili jirani za kikanda zilianza kurekebisha msimbo wa wakala uliochapishwa wa tathmini ya ustahiki kwa mifumo yao wenyewe ndani ya mwaka wa kwanza wa kutolewa kwake.
Mitazamo minne ya sekta
Serikali za mitaa
Serikali ya mtaa kwa kawaida huendesha idadi kubwa ya mifumo midogo, isiyounganishwa badala ya majukwaa machache ya kiwango cha kitaifa, jambo linalomaanisha deni la kiufundi hujikusanya kuvuka programu nyingi zilizoagizwa na kutunzwa tofauti badala ya mfumo mmoja mkuu unaoonekana. Mamlaka za mitaa kwa kawaida zina uwezo mdogo zaidi wa kihandisi wa ndani wa ngazi yoyote ya serikali, jambo linalofanya hoja ya kununua programu ya kawaida inayoweza kusanidiwa badala ya ujenzi maalum kuwa na nguvu hasa, na kufanya majukwaa ya pamoja ya kikanda au ya kitaifa — somo la Mada 5.1 (tazama Mada 5.1 — Serikali Mtandao na Mageuzi ya Kidijitali) — njia yenye thamani kubwa hasa ya kuepuka kila mamlaka kujenga upya uwezo uleule kando.
Serikali ya kitaifa
Serikali ya kitaifa ndipo mifumo ya zamani zaidi na yenye matokeo makubwa zaidi ya urithi huelekea kukaa — kodi ya msingi, bima ya kijamii, na utawala wa faida — kwa sababu hii mara nyingi ilikuwa miongoni mwa juhudi za kwanza za kuweka kompyuta kwa kiwango kikubwa serikalini na sasa inabeba hatari za juu zaidi kwa kushindwa kwa uboreshaji wowote. Serikali ya kitaifa kwa kawaida ina uwezo wa kitaalamu wa kibiashara na kihandisi wa kuendesha programu ya uboreshaji ya kuongezeka kweli na kujadili umiliki halisi wa msimbo katika mikataba yake, na kwa kawaida ndiyo ngazi ya serikali iliyo katika nafasi bora zaidi ya kuweka sera ya chanzo-wazi-kwa-chaguo-msingi yenye kiwango cha kutosha nyuma yake kufanya matumizi tena ya serikali nzima yatokee kweli.
Sekta ya kijamii na mashirika yasiyo ya faida
Mashirika yasiyo ya faida na ya hisani mara chache yanajenga majukwaa makubwa maalum yenyewe, lakini mara nyingi yako upande wa kupokea wa programu iliyoagizwa au iliyoamriwa na mfadhili wa serikali — lango la uripoti, mfumo wa usimamizi wa kesi ambao ruzuku au mkataba unahitaji kuutumia — kwa ushawishi mdogo juu ya usanifu wake, deni lake la kiufundi, au muuzaji wake. Shirika la sekta ya kijamii linalotegemea mfumo ulioamriwa na serikali linarithi hali za kushindwa za mfumo huo bila kurithi nguvu yoyote ya kuzirekebisha, ambayo ni sababu moja zaidi kwa nini mahusiano ya ufadhili yanayotegemea matokeo yanahitaji kuzingatia mzigo wa kiutendaji wa teknolojia iliyoamriwa (tazama Mada 3.7 — Ununuzi wa Umma na Uagizaji wa Huduma), si kipimo cha matokeo chenyewe tu.
Ya pande nyingi na ya kimataifa
Vyombo vya pande nyingi na mashirika ya maendeleo yanazidi kukuza programu iliyojengwa kwa utawala wa umma wa nchi moja kama bidhaa ya umma ya kidijitali ambayo nchi nyingine zinaweza kuirekebisha, badala ya kila serikali kuagiza mfumo unaolingana kutoka msambazaji binafsi kwa gharama kamili. Hatari ya kipekee hapa ni kwamba bidhaa ya umma ya kidijitali iliyojengwa kwa muktadha wa kisheria na wa kiutawala wa nchi moja inaweza kupitishwa mahali pengine na marekebisho machache mno, ikiingiza dhana — kuhusu utambulisho, ustahiki, au mchakato — ambazo hazihamishiki kweli; ahadi ya miundombinu ya pamoja, wazi ni ya kweli, lakini tu pale uwezo wa kweli wa kurekebisha wa mahali unaambatana na msimbo.
Njia za kawaida za kushindwa
Ubadilishaji wa mlipuko mmoja unaoshindwa wakati wa kuanza. Mfumo muhimu wa urithi unabadilishwa katika ubadilishaji mmoja, usioweza kutenguliwa baada ya miaka ya maendeleo bila mfiduo wowote hai wa uzalishaji, na kasoro inayoonekana tu kwa kiwango halisi au katika kesi ya pembezoni ambayo hakuna aliyeijaribu inajitokeza siku ya kwanza ya uendeshaji kamili, bila njia ya kurudi kwenye mfumo wa zamani kwa sababu umeondolewa tayari. Gharama inapimwa kwa malipo yaliyokosa, huduma zilizokataliwa, au kukatika kunakoathiri hasa wananchi ambao mfumo upo kuwahudumia, wakati mbaya zaidi iwezekanavyo — wakati ambapo kila mtu alikuwa akitegemea mbadala kufanya kazi.
Mkusanyiko wa kimya wa deni la kiufundi. Shinikizo la tarehe ya mwisho mara kwa mara linashinda hoja dhidi ya muda unaohitajika kurekebisha njia fupi zinazojulikana, na kila kuahirisha kunaweza kutetewa kibinafsi, hadi deni lililokusanywa linafanya hata badiliko dogo kuwa ghali na hatari kwa kiasi kisicholingana. Gharama inajitokeza miaka baadaye kama mfumo ambao hakuna anayeweza kuubadilisha kwa usalama, nguvu kazi iliyoacha kimya kimya kujaribu chochote isipokuwa viraka vya dharura zaidi, na programu ya mwisho ya uboreshaji kubwa na ghali zaidi kuliko upya endelevu, mdogo ungekuwa.
Kufungwa kwa muuzaji kuchanganywa na utulivu. Chombo cha umma kinafanya upya mkataba wa msambazaji yuleyule mara kwa mara kwa sababu kubadilisha kunaonekana kusumbua mno kujaribu, bila kuwahi kujaribu gharama halisi za kubadilisha zingekuwa nini au kujadili umiliki wa msimbo na miundo wazi ya data ambavyo vingeweka gharama hizo kudhibitiwa. Gharama ni nafasi dhaifu ya kudumu ya kujadili bei na masharti, inayogunduliwa tu ubora wa huduma wa msambazaji unaposhuka au bei zake kupanda na chombo cha umma kinagundua hakina mbadala wa kuaminika.
Agile ya mapambo. Timu ya utoaji inapitisha sherehe za agile — mikutano ya kusimama, mbio, orodha ya kazi — huku mkataba, ufadhili, na muundo wa utawala vinavyosimamia bado vikidhani maelezo yaliyowekwa na hatua moja ya endelea/acha, kwa hivyo timu inaripoti kasi ya mbio huku ikitoa kwa kweli dhidi ya mpango wa mporomoko wa maji chini yake. Gharama ni kwamba hakuna faida halisi ya agile — maoni ya mapema ya watumiaji yakibadilisha mwelekeo, hatari kufichuliwa mapema — inayotimia, huku mwonekano wa mazoezi ya kisasa ukifanya ugumu wa msingi kuwa mgumu zaidi kwa vyombo vya usimamizi kuuona na kuupinga.
Sera ya chanzo wazi bila mpango wa kudumisha. Chombo cha umma kinachapisha msimbo chanzo kutimiza sera ya chanzo-wazi-kwa-chaguo-msingi lakini kinachukulia utoaji kama hatua ya mara moja ya kufuata sheria, bila rasilimali za kupitia michango ya nje, kuweka viraka vya udhaifu, au kudumisha nyaraka. Gharama ni hazina iliyochapishwa inayoonekana wazi lakini inayofanya kazi kama mwisho uliokufa usiotunzwa, jambo linalodhuru imani katika programu pana ya chanzo-wazi-kwa-chaguo-msingi kuliko kutochapisha kabisa kungefanya.
Kielelezo cha ukomavu
| Kipengele kidogo | Kuanzisha | Kuendeleza | Kusawazisha | Kusimamia | Kuratibu |
|---|---|---|---|---|---|
| Deni la kiufundi linaonekana na kusimamiwa | Deni halijaandikwa na linajulikana tu kwa njia isiyo rasmi na wahandisi binafsi | Orodha ya sehemu ipo kwa baadhi ya mifumo, haipitiwi kwa mzunguko uliowekwa | Rejista ya deni inafunika mifumo yote muhimu na kupitiwa kwa mzunguko ulioandikwa | Kupunguza deni kunafadhiliwa na kufuatiliwa dhidi ya malengo yanayopimika | Data za deni zinashirikishwa kuvuka mali nzima ya shirika kuweka kipaumbele uwekezaji wa uboreshaji |
| Uboreshaji wa urithi unaepuka hatari ya mlipuko mmoja | Kubadilisha kunadhaniwa kumaanisha kuandika upya kamili na ubadilishaji mmoja | Mbinu za kuongezeka polepole zinatumika mara kwa mara, bila mbinu thabiti | Uhamishaji wa polepole wa mtindo wa mtini unaonyonga ndio chaguo-msingi lililoandikwa kwa mifumo muhimu | Maendeleo ya uhamishaji na utayari wa kurudi nyuma vinapimwa na kuripotiwa kikamilifu | Mbinu na zana za uboreshaji zinashirikishwa na kuboreshwa kuvuka vyombo rika vya umma |
| Maamuzi ya kujenga-dhidi-ya-kununua ni ya makusudi | Kujenga au kununua kunachaguliwa kwa mazoea au uhusiano wa msambazaji, bila kutathminiwa | Tathmini fulani hufanyika, bila uthabiti, kabla ya maamuzi makuu ya programu | Fremu ya uamuzi iliyoandikwa inatumika kwa kila uchaguzi muhimu wa kujenga-au-kununua | Matokeo ya kujenga-au-kununua yanafuatiliwa dhidi ya uhalalisho wake wa awali kadiri muda unavyopita | Uwezo na masomo ya kujenga-au-kununua yanashirikishwa na vyombo vingine vya umma vinavyokabili uchaguzi uleule |
| Msimbo chanzo na data ni wazi kwa chaguo-msingi | Utoaji uliofungwa, wa umiliki ndio chaguo-msingi lisilohojiwa | Kuchapisha chanzo wazi hutokea mara kwa mara, kuendeshwa na timu binafsi | Sera ya chanzo-wazi-kwa-chaguo-msingi imeandikwa na kutumika kwa uthabiti | Msimbo uliochapishwa unatunzwa kikamilifu, ukiwa na rasilimali za michango ya nje | Msimbo uliochapishwa unatumika tena kuvuka serikali na mamlaka nyingine, matumizi tena yakifuatiliwa kama faida |
| Njia ya utoaji inalingana na muundo wa uwajibikaji | Mikataba na utawala vinadhani mporomoko wa maji bila kujali utoaji unafanyikaje | Sherehe za agile zinatumika, lakini ufadhili na utawala bado vinafunga kwa maelezo yaliyowekwa | Mikataba na malango ya ufadhili yamepangwa kuzunguka programu iliyoonyeshwa kufanya kazi | Afya ya utoaji inapimwa kwa viashiria vya kihandisi, si tofauti ya bajeti na ratiba tu | Kanuni za ununuzi na uwajibikaji zinarekebishwa kikamilifu, kwa ushahidi, kuendana na utoaji wa kurudiarudia |
Orodha ya ukaguzi
- Orodhesha deni la kiufundi la kila mfumo muhimu na upitie rejista kwa mzunguko uliowekwa.
- Tumia fremu iliyoandikwa ya kujenga-dhidi-ya-kununua kabla ya kujitolea kwa programu yoyote mpya muhimu.
- Kwa uingizwaji wowote wa mfumo wa urithi, chagua uhamishaji wa polepole kama chaguo-msingi na uhitaji uhalalisho wazi wa ubadilishaji wa mlipuko mmoja.
- Thibitisha masharti ya umiliki wa msimbo chanzo au escrow katika kila mkataba wa programu kabla ya kusaini.
- Chapisha msimbo chanzo chini ya sera ya chanzo-wazi-kwa-chaguo-msingi, yenye mchakato ulioandikwa wa isipokuwa.
- Toa rasilimali za udumishaji unaoendelea kwa kila hazina iliyochapishwa chini ya sera hiyo, si utoaji wake wa awali tu.
- Hitaji miundo wazi, iliyoandikwa ya data hata pale programu ya msingi ni ya umiliki.
- Panga malango ya ufadhili kuzunguka programu iliyoonyeshwa kufanya kazi badala ya hatua moja ya maelezo yaliyowekwa.
- Jenga na ujaribu bidhaa ndogo inayoweza kutumika na watumiaji halisi kabla ya kujitolea kwa wigo kamili.
- Fuatilia mzunguko wa utekelezaji, viwango vya kasoro, na deni la kiufundi lililobaki kama viashiria vya kudumu vya utawala.
- Tathmini uwezo wa kihandisi wa ndani dhidi ya kinachohitajika kuwa mnunuzi mwenye akili, na ufunge mapengo yaliyotambuliwa.
- Weka kipaumbele miundombinu isiyoungwa mkono na miunganisho isiyoandikwa kabla ya uboreshaji wa mapambo.
Vyanzo muhimu
- GOV.UK Service Standard, Government Digital Service, Uingereza — kiwango cha kitaifa cha huduma ya kidijitali kinachohitaji utoaji wa kurudiarudia, unaomlenga mtumiaji na viwango vya wazi kwa huduma za umma.
- Office of Management and Budget, Federal Source Code Policy (M-16-21), Marekani — sera ya shirikisho inayohitaji mawakala kuzingatia matumizi tena na utoaji wa chanzo wazi kwa programu maalum iliyoendelezwa na serikali.
- Free Software Foundation Europe, kampeni ya Public Money, Public Code — hoja, iliyoendelezwa kwa hadhira ya Ulaya, ya kutoa msimbo chanzo wa programu iliyofadhiliwa na umma chini ya leseni huria na za chanzo wazi.
- Ward Cunningham, "The WyCash Portfolio Management System" (ripoti ya uzoefu ya OOPSLA 1992) — kauli ya asili ya mfano wa kielelezo wa deni la kiufundi.
- Digital Public Goods Alliance — mpango wa wadau wengi unaotunza viwango na rejista ya programu, data, na maudhui yaliyo wazi yaliyobuniwa kuhudumia malengo ya maendeleo ya umma.
Marejeo
- Technical debt — Wikipedia — https://en.wikipedia.org/wiki/Technical_debt
- Ward Cunningham — Wikipedia — https://en.wikipedia.org/wiki/Ward_Cunningham
- Legacy system — Wikipedia — https://en.wikipedia.org/wiki/Legacy_system
- COBOL — Wikipedia — https://en.wikipedia.org/wiki/COBOL
- Software modernization — Wikipedia — https://en.wikipedia.org/wiki/Software_modernization
- Strangler fig pattern — Wikipedia — https://en.wikipedia.org/wiki/Strangler_fig_pattern
- Vendor lock-in — Wikipedia — https://en.wikipedia.org/wiki/Vendor_lock-in
- Free and open-source software — Wikipedia — https://en.wikipedia.org/wiki/Free_and_open-source_software
- Digital public good — Wikipedia — https://en.wikipedia.org/wiki/Digital_public_good
- Agile software development — Wikipedia — https://en.wikipedia.org/wiki/Agile_software_development
- Waterfall model — Wikipedia — https://en.wikipedia.org/wiki/Waterfall_model
- Minimum viable product — Wikipedia — https://en.wikipedia.org/wiki/Minimum_viable_product
- Service Standard — GOV.UK, Government Digital Service — https://www.gov.uk/service-manual/service-standard
- Requirements for Achieving Efficiency, Transparency, and Innovation Through Reusable and Open Source Software (M-16-21) — Digital.gov, Office of Management and Budget — https://digital.gov/resources/requirements-for-achieving-efficiency-transparency-and-innovation-through-reusable-and-open-source-software/
- Public Money, Public Code — Free Software Foundation Europe — https://publiccode.eu/
- "The WyCash Portfolio Management System" (OOPSLA 1992 experience report) — Ward Cunningham — http://c2.com/doc/oopsla92.html
- Digital Public Goods Alliance — https://digitalpublicgoods.net/