12.5 Marejeo
Sehemu hii inakusanya vifaa vya marejeo vya mwongozo: ulinganisho na mwili wa
maarifa wa SWEBOK, faharasa ya viwango na mifumo iliyotajwa kote, na bibliografia
iliyochaguliwa ya usomaji unaopendekezwa. Vyanzo vya kila sura pia vinaonekana
katika sehemu ya Marejeo na usomaji zaidi mwishoni mwa kila sura.
Ulinganisho na SWEBOK
Mwongozo huu umeoanishwa na SWEBOK V4.0 ya IEEE Computer Society (Software
Engineering Body of Knowledge). Maeneo yote 18 ya maarifa yamefunikwa; jedwali
linaoanisha kila moja na sura zinazoshughulikia, kisha mwongozo unakwenda mbali
zaidi ya SWEBOK hadi AI, data, UX, DevOps, uendelevu, mtiririko, na teknolojia ya
maslahi ya umma.
| Eneo la maarifa la SWEBOK V4.0 | Sura kuu |
|---|
| 1. Mahitaji ya programu | 2.8, 11.1, 5.1 |
| 2. Usanifu wa programu | 3.1, 3.2, 3.3 |
| 3. Usanifu wa kina wa programu | 2.2, 3.1 |
| 4. Ujenzi wa programu | 2.9, 2.1 |
| 5. Majaribio ya programu | 2.4, 8.5 |
| 6. Operesheni za uhandisi wa programu | 9.1, 9.2, 9.3, 8.1 |
| 7. Matengenezo ya programu | 3.7, 3.6, 10.4 |
| 8. Usimamizi wa usanidi wa programu | 2.10, 2.6, 8.2 |
| 9. Usimamizi wa uhandisi wa programu | 10.1, 10.6, 10.2 |
| 10. Mchakato wa uhandisi wa programu | 1.4, 10.7, 10.8 |
| 11. Mifano na mbinu za uhandisi wa programu | 2.12, 3.1, 2.2 |
| 12. Ubora wa programu | 2.11, 2.4, 3.1 |
| 13. Usalama wa programu | 4.1, 4.2, 4.3, 4.4 |
| 14. Mazoea ya kitaaluma ya uhandisi wa programu | 10.5, 1.1, 1.3 |
| 15. Uchumi wa uhandisi wa programu | 10.10, 10.1, 9.4 |
| 16. Misingi ya kompyuta | 2.13, 3.3, 3.4 |
| 17. Misingi ya hisabati | 2.13, 11.3 |
| 18. Misingi ya uhandisi | 2.13, 3.1 |
Viwango na mifumo
Kiambatisho hiki ni faharasa iliyopangwa ya viwango halisi, mifumo, na kanuni
zilizorejelewa kote katika mwongozo. Ni kisaidizi cha uelekezaji, si mwongozo wa
uzingatiaji: shauriana daima na chanzo chenye mamlaka na, pale panapofaa, na
wakili au mkaguzi mwenye sifa kwa matini ya sasa na matumizi kwa muktadha wako.
Maingizo yamepangwa kwa eneo. Kila moja inataja kiwango au mfumo, chombo
kilichokitoa, upeo wa mstari mmoja, na sura au maeneo ambapo kinahusika zaidi.
Pale jina linapofupishwa kwa kawaida, kifupisho kinaonyeshwa. Namba za hati na
vichwa vinatolewa tu pale vimeimarika vizuri; hakuna URL zilizojumuishwa.
Jinsi ya kutumia kiambatisho hiki
- Kanuni (kwa mfano, GDPR, HIPAA) zinafunga kisheria ndani ya mamlaka na
sekta yake. Zinaweka wajibu, si mazoea mazuri tu.
- Viwango (kwa mfano, ISO/IEC 27001, WCAG) ni vipimo rasmi, mara nyingi
vinavyoweza kuthibitishwa. Vingine ni vya hiari; vingine vinaamriwa na sheria
au mkataba.
- Mifumo (kwa mfano, NIST CSF, NIST AI RMF) ni mwongozo wenye muundo, kwa
kawaida wa hiari, unaoubadilisha kulingana na wasifu wako wa hatari.
- Matumizi yanategemea mamlaka, sekta, aina za data, na masharti ya kimkataba.
Mashirika mengi lazima yatimize kadhaa kati ya hivi kwa wakati mmoja.
Usalama na faragha
| Kiwango / mfumo | Chombo kilichokitoa | Upeo (mstari mmoja) | Sura kuu / maeneo |
|---|
| ISO/IEC 27001 | ISO / IEC | Mahitaji ya Mfumo wa Usimamizi wa Usalama wa Taarifa (ISMS). | 4.1–4.6 Usalama na uzingatiaji |
| ISO/IEC 27002 | ISO / IEC | Mwongozo na seti ya udhibiti inayounga mkono ISO/IEC 27001. | 4.1–4.4 Usalama |
| ISO/IEC 27017 / 27018 | ISO / IEC | Udhibiti wa usalama maalum kwa wingu (27017) na ulinzi wa PII kwenye wingu (27018). | 4.3 Usalama wa miundombinu na wingu; 4.5 Faragha |
| NIST Cybersecurity Framework (CSF) | National Institute of Standards and Technology | Mfumo wa hiari uliopangwa kuzunguka Tawala, Tambua, Linda, Gundua, Itikia, Pona. | 4.1, 4.4 Misingi ya usalama na operesheni |
| NIST SP 800-53 | National Institute of Standards and Technology | Orodha ya udhibiti wa usalama na faragha kwa mifumo ya taarifa. | 4.3, 4.6 Usalama wa wingu na uzingatiaji |
| NIST SP 800-63 | National Institute of Standards and Technology | Miongozo ya uhakikisho wa utambulisho wa kidijitali na uthibitishaji. | 4.2, 4.3 Usalama wa programu na miundombinu |
| OWASP Top Ten | Open Worldwide Application Security Project | Hatari muhimu zaidi za usalama wa programu za wavuti, zinazosasishwa mara kwa mara. | 4.2 Usalama wa programu |
| OWASP ASVS | Open Worldwide Application Security Project | Mahitaji na majaribio yenye madaraja ya kuthibitisha usalama wa programu. | 2.4, 4.2 Majaribio na usalama wa programu |
| OWASP SAMM | Open Worldwide Application Security Project | Kielelezo cha ukomavu cha kujenga na kutathmini programu ya usalama wa programu. | 4.1 Misingi ya usalama na utamaduni |
| STRIDE | Ilianzia Microsoft | Taksonomia ya uundaji wa vitisho ya kuainisha vitisho. | 4.2 Usalama wa programu |
| MITRE ATT&CK | MITRE | Msingi wa maarifa wa mbinu na tekniki za adui kwa ugunduzi na ulinzi. | 4.4 Operesheni za usalama |
| SLSA | Open Source Security Foundation (OpenSSF) | Mfumo wa madaraja wa uadilifu na asili ya mnyororo wa ugavi wa programu. | 4.2, 8.1, 10.3 Mnyororo wa ugavi na utoaji |
| SBOM (SPDX / CycloneDX) | Linux Foundation (SPDX); OWASP (CycloneDX) | Miundo ya kawaida ya orodha za vifaa vya programu. | 4.2, 10.3 Usalama wa programu na leseni |
| PCI DSS | PCI Security Standards Council | Mahitaji ya usalama ya kushughulikia data ya kadi za malipo. | 4.2, 4.5, 4.6 Usalama, faragha, uzingatiaji |
Uzingatiaji na serikali
Marekani
| Kanuni / mfumo | Chombo kilichokitoa | Upeo (mstari mmoja) | Sura kuu / maeneo |
|---|
| HIPAA | US Dept. of Health and Human Services | Kinga za taarifa za afya zinazolindwa (PHI). | 4.5, 4.6 Faragha na uzingatiaji |
| SOX (Sarbanes-Oxley Act) | US Congress / SEC | Mahitaji ya kuripoti fedha na udhibiti wa ndani kwa kampuni za umma. | 4.6, 10.2 Uzingatiaji na ukaguzi |
| FISMA | US Congress | Mahitaji ya programu ya usalama wa taarifa kwa mashirika ya shirikisho. | 4.3, 4.6 Usalama wa wingu na uzingatiaji |
| FedRAMP | US General Services Administration / FedRAMP PMO | Idhini ya usalama iliyosawazishwa kwa huduma za wingu zinazotumiwa na mashirika ya shirikisho. | 4.3, 4.6 Usalama wa wingu na uzingatiaji |
| NIST SP 800-171 | National Institute of Standards and Technology | Ulinzi wa taarifa zisizo za siri zinazodhibitiwa (CUI) kwenye mifumo isiyo ya shirikisho. | 4.6 Uzingatiaji (mnyororo wa ugavi wa ulinzi) |
| CMMC | US Department of Defense | Uthibitisho wa ukomavu wa usalama wa mtandao wa wakandarasi wa ulinzi. | 4.6 Uzingatiaji (ulinzi) |
| FIPS 140-3 | National Institute of Standards and Technology | Mahitaji ya usalama kwa moduli za kriptografia. | 4.3 Usalama wa miundombinu na wingu |
| CCPA / CPRA | Jimbo la California | Haki za faragha za watumiaji na wajibu wa biashara huko California. | 4.5 Faragha na ulinzi wa data |
Umoja wa Ulaya na Uingereza
| Kanuni / kiwango | Chombo kilichokitoa | Upeo (mstari mmoja) | Sura kuu / maeneo |
|---|
| GDPR | Umoja wa Ulaya | Kanuni pana kuhusu uchakataji wa data binafsi. | 4.5, 4.6 Faragha na uzingatiaji |
| UK GDPR / Data Protection Act 2018 | Uingereza | Utaratibu wa Uingereza wa ulinzi wa data baada ya Brexit. | 4.5, 4.6 Faragha na uzingatiaji |
| eIDAS | Umoja wa Ulaya | Mfumo wa utambulisho wa kielektroniki na huduma za uaminifu. | 4.2, 4.3 Usalama |
| NIS2 Directive | Umoja wa Ulaya | Wajibu wa usalama wa mtandao kwa vyombo muhimu na vya msingi. | 4.4, 4.6 Operesheni za usalama na uzingatiaji |
| DORA (Digital Operational Resilience Act) | Umoja wa Ulaya | Mahitaji ya ustahimilivu wa kiuendeshaji kwa sekta ya fedha. | 9.1, 10.2 Kutegemewa na ukaguzi |
| EU AI Act | Umoja wa Ulaya | Kanuni ya mifumo ya AI inayotegemea hatari (tazama utawala wa AI hapa chini). | 6.1, 6.5 Mkakati wa AI na AI ya kuwajibika |
Ufikivu
| Kiwango | Chombo kilichokitoa | Upeo (mstari mmoja) | Sura kuu / maeneo |
|---|
| WCAG (2.1 / 2.2) | World Wide Web Consortium (W3C) | Miongozo ya maudhui ya wavuti yanayofikika, yenye ngazi za uzingatiaji A/AA/AAA. | 5.3 Ufikivu; 5.1–5.6 UX na frontend |
| WAI-ARIA | World Wide Web Consortium (W3C) | Majukumu, hali, na sifa kwa programu tajiri za mtandao zinazofikika. | 5.3, 5.6 Ufikivu na frontend |
| Section 508 | US Access Board / sheria ya shirikisho ya Marekani | Mahitaji ya ufikivu kwa ICT ya shirikisho ya Marekani, yaliyooanishwa na WCAG. | 5.3 Ufikivu (serikali ya Marekani) |
| EN 301 549 | ETSI / CEN / CENELEC | Mahitaji ya ufikivu ya Ulaya kwa ununuzi wa ICT, yaliyooanishwa na WCAG. | 5.3 Ufikivu (sekta ya umma ya EU) |
| ADA (Americans with Disabilities Act) | US Congress | Sheria ya haki za kiraia inayokataza ubaguzi wa ulemavu, inayotumika kwa huduma za kidijitali. | 5.3 Ufikivu |
| ISO/IEC 40500 | ISO / IEC | Kupokelewa kimataifa kwa WCAG 2.0 kama kiwango rasmi. | 5.3 Ufikivu |
Utawala wa AI
| Mfumo / kanuni | Chombo kilichokitoa | Upeo (mstari mmoja) | Sura kuu / maeneo |
|---|
| NIST AI Risk Management Framework (AI RMF) | National Institute of Standards and Technology | Mfumo wa hiari wa kutawala, kuchora, kupima, na kusimamia hatari ya AI. | 6.1, 6.5 Mkakati wa AI na AI ya kuwajibika |
| ISO/IEC 42001 | ISO / IEC | Mahitaji ya Mfumo wa Usimamizi wa AI (AIMS). | 6.1, 6.5 Utawala wa AI |
| ISO/IEC 23894 | ISO / IEC | Mwongozo wa usimamizi wa hatari mahususi wa AI. | 6.5 AI ya kuwajibika na ya kuaminika |
| EU AI Act | Umoja wa Ulaya | Wajibu wa kisheria wenye madaraja ya hatari kwa watoa na watumiaji wa mifumo ya AI. | 6.1, 6.3, 6.5 Programu na utawala wa AI |
| OECD AI Principles | Organisation for Economic Co-operation and Development | Kanuni za msingi wa maadili za AI ya kuaminika, zenye ushawishi kwenye sera. | 6.5, 10.5 AI ya kuwajibika na maadili |
Ubora na mchakato
| Kiwango / mfumo | Chombo kilichokitoa | Upeo (mstari mmoja) | Sura kuu / maeneo |
|---|
| ISO/IEC 25010 | ISO / IEC | Kielelezo cha ubora wa bidhaa ya programu (ufaafu wa kiutendaji, kutegemewa, usalama, n.k.). | 2.2, 2.4 Usanifu na majaribio |
| ISO/IEC/IEEE 12207 | ISO / IEC / IEEE | Michakato ya mzunguko wa maisha ya programu. | 1.4, 10.1 Njia za kufanya kazi na usimamizi wa programu |
| ISO 9001 | ISO | Mahitaji ya Mfumo wa jumla wa Usimamizi wa Ubora. | 10.2 Hatari, ukaguzi, na uhakikisho |
| CMMI | ISACA / CMMI Institute | Kielelezo cha ukomavu cha uwezo na uboreshaji wa mchakato. | 10.1, 10.2 Usimamizi wa programu na uhakikisho |
| Vipimo vya DORA | DevOps Research and Assessment (Google Cloud) | Vipimo vinne muhimu vya utendaji wa utoaji kwa timu za programu. | 8.1, 8.4, 9.1 Utoaji, jukwaa, kutegemewa |
| SPACE framework | Watafiti wa Microsoft / GitHub | Kielelezo cha vipimo vingi cha kupima tija ya wasanidi. | 1.3, 8.4 Ukuaji na uzoefu wa msanidi |
| ITIL | AXELOS / PeopleCert | Mfumo wa mazoea ya usimamizi wa huduma za IT. | 9.1, 9.3 Kutegemewa na usimamizi wa matukio |
Usanifu
| Kiwango / mfumo | Chombo kilichokitoa | Upeo (mstari mmoja) | Sura kuu / maeneo |
|---|
| ISO/IEC/IEEE 42010 | ISO / IEC / IEEE | Kiwango cha maelezo ya usanifu na mitazamo. | 2.7, 3.1 Nyaraka na misingi ya usanifu |
| TOGAF | The Open Group | Mfumo wa usanifu wa biashara na mbinu ya uendelezaji. | 3.1, 10.1 Usanifu na usimamizi wa jalada |
| C4 model | Jumuiya (Simon Brown) | Mbinu ya ngazi nne ya kuonyesha usanifu wa programu kwa picha. | 2.7, 3.1 Nyaraka na usanifu |
| arc42 | Jumuiya (Starke / Hruschka) | Kielezo cha kupanga nyaraka za usanifu. | 2.7, 3.1 Nyaraka na usanifu |
| ADRs | Mazoea ya jumuiya | Rekodi nyepesi za maamuzi muhimu ya usanifu. | 1.5, 2.7, 3.1 Kufanya maamuzi na nyaraka |
Wingu na DevOps
| Kiwango / mfumo | Chombo kilichokitoa | Upeo (mstari mmoja) | Sura kuu / maeneo |
|---|
| CIS Benchmarks | Center for Internet Security | Misingi ya usanidi salama inayotokana na makubaliano kwa mifumo na wingu. | 4.3, 8.2 Usalama wa miundombinu na IaC |
| CNCF landscape and projects | Cloud Native Computing Foundation | Mfumo ikolojia na viwango vya kompyuta ya asili ya wingu (k.m., Kubernetes). | 8.3 Kontena na asili ya wingu |
| OCI (Open Container Initiative) | Open Container Initiative (Linux Foundation) | Viwango huria vya miundo ya picha ya kontena na wakati wa kuendesha. | 8.3 Kontena na asili ya wingu |
| OpenTelemetry | Cloud Native Computing Foundation | Kiwango kisichofungwa na muuzaji cha telemetry (ufuatiliaji, vipimo, kumbukumbu). | 9.2 Uonekanaji na ufuatiliaji |
| Open Policy Agent (OPA) | Cloud Native Computing Foundation | Injini ya sera ya matumizi ya jumla ya sera-kama-msimbo. | 4.6, 8.2, 8.3 Uzingatiaji, IaC, uratibu |
| SRE practices | Google (zinatumika sana) | Mbinu inayotegemea SLI/SLO/bajeti ya makosa ya kuendesha huduma za kutegemewa. | 9.1 Uhandisi wa kutegemewa wa tovuti |
| FinOps Framework | FinOps Foundation | Mazoea ya usimamizi wa fedha za wingu na uwajibikaji wa gharama. | 9.4 Gharama, uendelevu, programu ya kijani |
Data
| Kiwango / mfumo | Chombo kilichokitoa | Upeo (mstari mmoja) | Sura kuu / maeneo |
|---|
| DAMA-DMBOK | DAMA International | Mwili wa maarifa unaopanga nidhamu za usimamizi wa data. | 7.1 Mkakati wa data na utawala |
| ISO/IEC 38505 | ISO / IEC | Utawala wa data kama mali ya shirika. | 7.1 Utawala wa data |
| ISO 8000 | ISO | Viwango vya ubora wa data na data kuu. | 7.1, 7.2 Utawala wa data na uhandisi |
| Data mesh | Jumuiya (Zhamak Dehghani) | Mbinu iliyogawanywa, inayoelekezwa kwa kikoa ya data kama bidhaa. | 7.1, 7.2 Mkakati wa data na uhandisi |
| DCAM | EDM Council | Kielelezo cha tathmini ya uwezo wa usimamizi wa data. | 7.1 Mkakati wa data na utawala |
Maelezo kuhusu upeo na mabadiliko
Viwango na kanuni hubadilika. Namba za matoleo (kwa mfano, WCAG 2.1 dhidi ya
2.2, au miaka ya marekebisho ya ISO) na orodha za udhibiti hubadilika kwa muda,
na sheria mpya (kama kanuni za AI na ustahimilivu za kisekta) zinaendelea
kujitokeza. Chukulia kiambatisho hiki kama ramani ya kuanzia: thibitisha toleo la
sasa, mamlaka, na matumizi kabla ya kutegemea ingizo lolote kwa uamuzi wa
uzingatiaji au ununuzi. Pale sura za mwongozo na kiambatisho hiki zinapotofautiana
kwa undani, hati chanzo chenye mamlaka daima ndiyo inayotawala.
Usomaji unaopendekezwa
Kiambatisho hiki ni orodha ya usomaji iliyochaguliwa, yenye maelezo, inayoenea
kila eneo la mwongozo. Inapendelea kazi zilizoumba mazoea kwa ukubwa: vitabu vya
kale vinavyotambuliwa, marejeo makali, na viwango na ripoti ambazo timu kubwa, za
biashara kubwa na za serikali zinapimwa dhidi yake.
Kila ingizo linatoa kichwa na mwandishi/waandishi, likifuatiwa na sentensi moja
kuhusu kwa nini ni muhimu. Orodha imepangwa chini ya sehemu kumi za kitabu. Soma
kwa kuchagua: chukua kazi mbili au tatu zilizo karibu zaidi na maumivu yako ya sasa,
si rafu nzima. Kazi inapovuka maeneo, imewekwa pale ilipo na manufaa zaidi; nyingi
zinastahili sehemu kadhaa.
Maelezo kuhusu viwango: vyombo kama NIST, OWASP, W3C/WCAG, ISO, na programu ya
DORA huchapisha hati hai zinazorekebishwa mara kwa mara. Taja na usome toleo la
sasa; maelezo yaliyo hapa chini yanaeleza madhumuni yao ya kudumu.
Misingi: utamaduni, watu, na mchakato
- Accelerate: The Science of Lean Software and DevOps. Nicole Forsgren, Jez Humble, Gene Kim. Msingi wa utafiti unaoonyesha kwamba utendaji wa utoaji unatabiri utendaji wa shirika, na unaofafanua vipimo (sasa vinaitwa DORA) vya kuupima.
- The Phoenix Project. Gene Kim, Kevin Behr, George Spafford. Riwaya ya biashara inayofanya mtiririko, kazi inayoendelea, na “Njia Tatu” za DevOps ziwe rahisi kueleweka kwa viongozi na wenye mashaka vilevile.
- Team Topologies: Organizing Business and Technology Teams for Fast Flow. Matthew Skelton na Manuel Pais. Msamiati wa vitendo (timu zilizooanishwa na mtiririko, za jukwaa, za kuwezesha, na za mfumo mdogo tata) wa kubuni mashirika yanayozalisha programu nzuri.
- An Elegant Puzzle: Systems of Engineering Management. Will Larson. Mifumo iliyojaribiwa uwandani ya kupima ukubwa wa timu, kusimamia ukuaji wa shirika, na kufanya maamuzi yanayojirudia ya uongozi wa uhandisi.
- Staff Engineer: Leadership Beyond the Management Track. Will Larson. Inafafanua mifano ya staff-plus na njia ya uongozi wa kiufundi kwa wanaotaka athari bila kuwa mameneja.
- The Manager’s Path. Camille Fournier. Mwongozo wa hatua kwa hatua kutoka kiongozi wa kiufundi hadi mtendaji unaoegemeza ngazi za taaluma na mpito kuingia usimamizi.
- The Staff Engineer’s Path. Tanya Reilly. Mwenzi wa fasihi ya staff-plus unaolenga kazi ya kila siku ya uongozi wa kiufundi, ushawishi, na kuelekeza bila mamlaka.
- Peopleware: Productive Projects and Teams. Tom DeMarco na Timothy Lister. Hoja ya kudumu kwamba matatizo makuu ya programu ni ya kijamii, si ya kiufundi.
- The Mythical Man-Month. Frederick P. Brooks Jr. Asili ya Sheria ya Brooks na tofauti ya ugumu wa lazima dhidi ya wa ajali ambayo bado inatawala uwekaji wafanyakazi na ratiba.
- The Fearless Organization: Creating Psychological Safety in the Workplace. Amy C. Edmondson. Msingi wa utafiti wa utamaduni usio na lawama na usalama unaofanya kujifunza kutoka kushindwa kuwezekane.
- Thinking, Fast and Slow. Daniel Kahneman. Maelezo ya uhakika ya upendeleo wa kiakili, muhimu kwa usaili wenye muundo, usawazishaji, na kufanya maamuzi kwa uaminifu.
Ufundi wa upangaji programu na ubora wa msimbo
- The Pragmatic Programmer: Your Journey to Mastery. Andrew Hunt na David Thomas. Orodha ya msingi ya tabia za kitaaluma (DRY, orthogonality, tracer bullets) inayofafanua ufundi unamaanisha nini.
- Refactoring: Improving the Design of Existing Code. Martin Fowler. Orodha ya kawaida ya mabadiliko yanayohifadhi tabia na nidhamu ya kuboresha msimbo mfululizo kwa msaada wa majaribio.
- Clean Code: A Handbook of Agile Software Craftsmanship. Robert C. Martin. Kiwango kinachotumika sana (na kinachobishaniwa) cha majina, kazi, na usomekaji kinachoumba matarajio ya mapitio ya timu nyingi.
- Code Complete. Steve McConnell. Mwongozo kamili, unaorejelea ushahidi, wa mazoea ya ujenzi unaobaki msingi wa kina wa ubora wa upangaji programu.
- Test-Driven Development: By Example. Kent Beck. Utangulizi wa asili, wa vitendo wa mzunguko wa nyekundu-kijani-rekebisha na usanifu wa majaribio kwanza.
- Working Effectively with Legacy Code. Michael Feathers. Kisanduku cha zana cha uhakika cha kuongeza majaribio na kubadilisha kwa usalama msimbo usio nayo, kisichoepukika kwa mifumo ya muda mrefu.
- Growing Object-Oriented Software, Guided by Tests. Steve Freeman na Nat Pryce. Onyesho lililofanyiwa kazi la TDD ya nje-ndani, mocking, na kuendeleza usanifu kupitia majaribio.
- A Philosophy of Software Design. John Ousterhout. Mjadala mkali, wenye misimamo wa ugumu, moduli za kina, na kuficha taarifa unaopinga kwa manufaa baadhi ya imani za “clean code.”
Usanifu na mifumo
- Designing Data-Intensive Applications. Martin Kleppmann. Rejeo bora zaidi la kisasa la mabadilishano ya uhifadhi, nakala, ugawaji, uthabiti, na uchakataji wa mkondo kwa ukubwa.
- Fundamentals of Software Architecture: An Engineering Approach. Mark Richards na Neal Ford. Utafiti mpana, wa sasa wa mitindo ya usanifu, sifa, na jukumu na kufanya maamuzi kwa mbunifu.
- Software Architecture: The Hard Parts. Neal Ford, Mark Richards, Pramod Sadalage, Zhamak Dehghani. Mjadala unaolenga maamuzi wa mabadilishano ya usanifu uliosambazwa, ukubwa wa huduma, na umiliki wa data.
- Building Evolutionary Architectures. Neal Ford, Rebecca Parsons, Patrick Kua. Inatambulisha kazi za ufaafu na usanifu uliobuniwa kubadilika kwa usalama kwa muda.
- Domain-Driven Design: Tackling Complexity in the Heart of Software. Eric Evans. Asili ya miktadha iliyopakana, lugha ya pamoja, na jumla: msamiati wa usanifu wa kisasa wa huduma.
- Building Microservices: Designing Fine-Grained Systems. Sam Newman. Rejeo la kugawanya, mipaka ya huduma, usambazaji, na athari za kishirika za huduma ndogo.
- Monolith to Microservices. Sam Newman. Orodha ya mifumo ya kugawanya kwa ongezeko, kama mtini-wa-kunyonga na tawi-kwa-ufupisho, bila kuandika upya kwa mlipuko mmoja wenye hatari.
- Patterns of Enterprise Application Architecture. Martin Fowler. Rejeo la mifumo yenye majina (repository, unit of work, na zaidi) lililoipa mifumo ya biashara lugha ya pamoja.
- Enterprise Integration Patterns. Gregor Hohpe na Bobby Woolf. Orodha ya uhakika ya mifumo ya ujumbe inayoegemeza usanifu unaoendeshwa na matukio na usio wa wakati mmoja.
- Release It! Design and Deploy Production-Ready Software. Michael T. Nygard. Chanzo cha kivunja mzunguko, kigawanyo, na mifumo mingine ya uthabiti kwa mifumo inayonusurika uzalishaji halisi.
- Design Patterns: Elements of Reusable Object-Oriented Software. Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides (“Gang of Four”). Orodha ya kihistoria, ya maamuzi ya mifumo ya kiolengo na msamiati wa pamoja wa usanifu.
Usalama, faragha, na uaminifu
- Threat Modeling: Designing for Security. Adam Shostack. Mwongozo wa vitendo, kamili wa STRIDE na uundaji wa vitisho wenye muundo kama mazoea ya kawaida ya uhandisi.
- Security Engineering: A Guide to Building Dependable Distributed Systems. Ross Anderson. Rejeo la kiensaiklopedia la jinsi mifumo halisi inavyoshindwa na jinsi ya kujenga inayopinga mashambulizi.
- The Tangled Web: A Guide to Securing Modern Web Applications. Michal Zalewski. Ziara ya ukali ya mfano wa usalama wa kivinjari na njia fiche ambazo majukwaa ya wavuti yanasaliti dhana za kijinga.
- Cryptography Engineering. Niels Ferguson, Bruce Schneier, Tadayoshi Kohno. Mwongozo wa mtendaji wa kutumia kriptografia kwa usahihi na kuepuka makosa ya kawaida, hatari.
- Building Secure and Reliable Systems. Heather Adkins et al. (Google). Muunganiko wa Google wa usalama na kutegemewa kama sifa zilizoshikamana zilizobuniwa tangu mwanzo.
- Zero Trust Networks. Evan Gilman na Doug Barth. Mjadala wazi wa kanuni na mekanika za usanifu wa mtandao wa kutoamini kamwe, kuthibitisha daima.
- OWASP Top 10. OWASP Foundation. Msingi wa makubaliano wa hatari muhimu zaidi za usalama wa programu za wavuti, unaorejelewa na sera na ukaguzi ulimwenguni.
- OWASP Application Security Verification Standard (ASVS). OWASP Foundation. Orodha hakiki yenye madaraja, inayoweza kujaribiwa ya mahitaji ya usalama inayofaa mikataba na vigezo vya kukubalika.
- NIST SP 800-53: Security and Privacy Controls for Information Systems and Organizations. NIST. Orodha ya udhibiti iliyo kiini cha usalama wa shirikisho la Marekani na msingi wa idhini za FedRAMP na FISMA.
- NIST Cybersecurity Framework (CSF). NIST. Muundo unaopokelewa sana wa tambua-linda-gundua-itikia-pona wa kupanga programu ya usalama.
- NIST SP 800-207: Zero Trust Architecture. NIST. Fasili ya rejeo na usanifu wa rejeo unaoegemeza programu nyingi za uaminifu-sifuri za biashara kubwa na serikali.
UX, UI, na usanifu wa bidhaa
- The Design of Everyday Things. Don Norman. Matini ya msingi kuhusu uwezo wa kutumika, ishara, maoni, na usanifu unaomlenga binadamu unaotumika mbali zaidi ya vitu vya kimwili.
- Don’t Make Me Think, Revisited. Steve Krug. Hoja fupi, ya kudumu ya utumiaji unaojielezea na thamani ya majaribio ya utumiaji ya bei nafuu, ya mara kwa mara.
- About Face: The Essentials of Interaction Design. Alan Cooper, Robert Reimann, David Cronin. Rejeo kamili la usanifu wa mwingiliano, persona, na usanifu unaoelekezwa na malengo.
- Design Systems: A Practical Guide. Alla Kholmatova. Maelezo yaliyojikita ya kujenga mifumo thabiti ya vijenzi vinavyotumika tena na lugha ya pamoja iliyo nyuma yake.
- Refactoring UI. Adam Wathan na Steve Schoger. Mwongozo wa vitendo, unaoendeshwa na mifano wa ung’arishaji wa kuona kwa wahandisi wanaobuni violesura bila mafunzo rasmi.
- Letting Go of the Words: Writing Web Content that Works. Ginny Redish. Mwongozo wa uhakika wa usanifu wa maudhui ya lugha rahisi, yanayolenga kazi.
- Inclusive Design Patterns / Accessibility for Everyone. Heydon Pickering; Laura Kalbag. Wenzi wa vitendo wa kujenga violesura vinavyofanya kazi kwa wigo mzima wa uwezo wa binadamu.
- A Web for Everyone: Designing Accessible User Experiences. Sarah Horton na Whitney Quesenbery. Daraja linaloongozwa na kanuni kati ya viwango vya ufikivu na uzoefu mzuri wa mtumiaji.
- Web Content Accessibility Guidelines (WCAG) 2.2. W3C. Kiwango kinachorejelewa kimataifa (kinachotambulika, kinachoendeshwa, kinachoeleweka, imara) nyuma ya sheria nyingi za ufikivu.
- U.S. Web Design System (USWDS). Serikali ya Marekani. Mfano unaofanya kazi wa mfumo wa usanifu unaofikika, wenye msingi wa viwango, uliojengwa kwa huduma za umma kwa ukubwa.
Akili bandia na kujifunza kwa mashine
- Designing Machine Learning Systems. Chip Huyen. Mwongozo bora wa vitendo wa kujenga mifumo ya ML ya uzalishaji mwanzo hadi mwisho: data, vipengele, usambazaji, na ufuatiliaji.
- Reliable Machine Learning: Applying SRE Principles to ML in Production. Cathy Chen et al. Inapanua nidhamu ya SRE (SLO, ufuatiliaji, mwitikio wa tukio) hadi mifumo ya kujifunza kwa mashine.
- Deep Learning. Ian Goodfellow, Yoshua Bengio, Aaron Courville. Rejeo la kawaida la kitaaluma la nadharia na mbinu zilizo nyuma ya mitandao ya neva ya kisasa.
- AI Engineering: Building Applications with Foundation Models. Chip Huyen. Mwongozo wa sasa wa kubuni, kutathmini, na kuendesha programu zilizojengwa kwa mifano mikubwa ya msingi.
- Weapons of Math Destruction. Cathy O’Neil. Hoja hai ya uwajibikaji wa algoriti na madhara ya ulimwengu halisi ya mifano isiyochunguzwa, muhimu kwa AI ya sekta ya umma.
- Interpretable Machine Learning. Christoph Molnar. Rejeo kamili, linalopatikana bure la mbinu za maelezo kwa mifano na utabiri wake.
- NIST AI Risk Management Framework (AI RMF 1.0). NIST. Mfumo wa rejeo wa kutawala, kuchora, kupima, na kusimamia hatari ya AI, unaorejelewa zaidi na zaidi katika sera na ununuzi.
Data, uchanganuzi, na ufahamu
- The Data Warehouse Toolkit: The Definitive Guide to Dimensional Modeling. Ralph Kimball na Margy Ross. Rejeo la kawaida la miundo ya nyota na uundaji wa vipimo kwa uchanganuzi.
- Trustworthy Online Controlled Experiments: A Practical Guide to A/B Testing. Ron Kohavi, Diane Tang, Ya Xu. Mwongozo wenye mamlaka wa kuendesha majaribio yanayozalisha matokeo ya kutegemewa, yanayoweza kutekelezwa kwa ukubwa.
- Fundamentals of Data Engineering. Joe Reis na Matt Housley. Ramani isiyofungwa na muuzaji ya mzunguko wa kisasa wa maisha ya data na mazoea ya uhandisi nyuma yake.
- Data Mesh: Delivering Data-Driven Value at Scale. Zhamak Dehghani. Matini ya msingi ya mbinu inayoelekezwa kwa kikoa, inayolenga bidhaa ya kupanga data kwa ukubwa.
- Storytelling with Data. Cole Nussbaumer Knaflic. Mwongozo wa vitendo wa taswira za data za uaminifu, wazi na kuwasilisha ufahamu kwa wafanya maamuzi.
- The Visual Display of Quantitative Information. Edward R. Tufte. Kazi ya msingi ya uadilifu wa picha, wino-wa-data, na maadili ya kuonyesha data kwa uaminifu.
- DAMA-DMBOK: Data Management Body of Knowledge. DAMA International. Mfumo kamili wa rejeo wa utawala wa data, usimamizi, ubora, na uorodheshaji.
- The Book of Why. Judea Pearl na Dana Mackenzie. Utangulizi unaosomeka wa makisio ya sababu, muhimu kuhama kutoka uhusiano hadi maamuzi yanayoweza kutetewa.
Uotomatishaji, DevOps, na uhandisi wa jukwaa
- The DevOps Handbook. Gene Kim, Jez Humble, Patrick Debois, John Willis. Mwongozo kamili unaotafsiri “Njia Tatu” kuwa mazoea thabiti ya mtiririko, maoni, na kujifunza endelevu.
- Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation. Jez Humble na David Farley. Matini ya msingi ya mabomba ya usambazaji, uotomatishaji, na kutoa programu kwa usalama na mara nyingi.
- Infrastructure as Code: Managing Servers in the Cloud. Kief Morris. Rejeo la kuchukulia miundombinu kama programu: moduli, majaribio, kutobadilika, na kupotoka.
- Team Topologies. Matthew Skelton na Manuel Pais. (Tazama Misingi.) Pia ni muhimu hapa kwa kuumba timu za jukwaa na uzoefu wa msanidi wanaoutoa.
- Kubernetes Patterns. Bilgin Ibryam na Roland Huß. Orodha ya mifumo inayotumika tena ya kubuni programu za asili ya wingu kwenye Kubernetes.
- Software Engineering at Google. Titus Winters, Tom Manshreck, Hyrum Wright. Jinsi mazoea ya uhandisi kama majaribio, mapitio, zana, na usimamizi wa utegemezi yanavyopanuka hadi makumi ya maelfu ya wahandisi kwa miongo.
- The Twelve-Factor App. Adam Wiggins (Heroku). Ilani fupi, yenye ushawishi ya kujenga huduma zinazoweza kubebwa, zinazopanuka, za asili ya wingu.
- DORA State of DevOps Report. DORA / Google Cloud (kila mwaka). Programu endelevu ya utafiti nyuma ya vipimo vinne muhimu vya utoaji na uwezo unaoendesha utendaji.
Uendeshaji, kutegemewa, na uonekanaji
- Site Reliability Engineering: How Google Runs Production Systems. Betsy Beyer, Chris Jones, Jennifer Petoff, Niall Richard Murphy (wahariri). Matini ya msingi inayofafanua SLI, SLO, bajeti za makosa, na nidhamu ya kuhandisi kutegemewa.
- The Site Reliability Workbook. Betsy Beyer et al. (wahariri). Mwenzi wa vitendo wenye mifano, SLO zilizofanyiwa kazi, na mwongozo wa utekelezaji.
- Observability Engineering. Charity Majors, Liz Fong-Jones, George Miranda. Fasili ya kisasa ya uonekanaji, data ya kardinalitii ya juu, na kutatua yasiyojulikana-yasiyojulikana kwenye uzalishaji.
- Implementing Service Level Objectives. Alex Hidalgo. Mwongozo wa kina, wa vitendo wa kubuni, kupima, na kutumia SLO na bajeti za makosa vizuri.
- Release It!. Michael T. Nygard. (Tazama Usanifu.) Pia ni wa msingi hapa kwa mifumo ya uthabiti wa uzalishaji na kuendesha mifumo inayostahimili.
- The Art of Capacity Planning. Arun Kejariwal na John Allspaw. Mbinu inayoendeshwa na data ya kutabiri mahitaji na kupanga uwezo kwa mifumo inayokua.
- Chaos Engineering: System Resiliency in Practice. Casey Rosenthal na Nora Jones. Mjadala wa uhakika wa kuingiza kushindwa kwa makusudi ili kujenga imani katika ustahimilivu wa mfumo.
- Google SRE Book, Chapter on Postmortems. Google. Kielelezo kinachoigwa sana cha uchambuzi wa baada ya tukio bila lawama na kujifunza kutoka matukio.
Biashara kubwa, serikali, na maslahi ya umma
- Working in Public: The Making and Maintenance of Open Source Software. Nadia Eghbal. Utafiti muhimu wa jinsi chanzo huria kinavyodumishwa kweli, na mzigo wa wasimamizi nyuma ya utegemezi ambao biashara kubwa zinautegemea.
- Recoding America: Why Government Is Failing in the Digital Age and How We Can Do Better. Jennifer Pahlka. Maelezo ya macho wazi ya kwa nini teknolojia ya sekta ya umma inashindwa na jinsi mageuzi yanayolenga utoaji yanavyoweza kurekebisha.
- Digital Transformation at Scale: Why the Strategy Is Delivery. Andrew Greenway et al. Mafunzo kutoka UK Government Digital Service kuhusu kubadilisha huduma za umma kwa kutoa, si kupanga.
- Project to Product. Mik Kersten. Flow Framework ya kuhamisha biashara kubwa kutoka ufadhili unaotegemea mradi hadi mikondo ya thamani ya bidhaa za kudumu.
- Escaping the Build Trap. Melissa Perri. Jinsi mashirika yanavyokosea pato kuwa matokeo, na jinsi usimamizi wa bidhaa unavyorekebisha, kwa uhusiano wa moja kwa moja na utawala wa jalada na programu.
- U.S. Digital Services Playbook. U.S. Digital Service. Seti fupi ya mbinu za kutoa huduma bora za kidijitali za serikali zinazomlenga mtumiaji.
- GOV.UK Service Manual and Service Standard. UK Government Digital Service. Kiwango kilichochapishwa, kinachofanya kazi cha kujenga huduma nzuri za umma, kinachoigwa sana na serikali nyingine.
- NIST SP 800-37: Risk Management Framework. NIST. Mfumo wa mchakato nyuma ya idhini ya kuendesha (ATO) na ufuatiliaji endelevu katika mifumo ya shirikisho ya Marekani.
- The FinOps Foundation Framework. FinOps Foundation. Kielelezo cha rejeo cha mwonekano wa gharama za wingu, uboreshaji, na uwajibikaji kuvuka fedha na uhandisi.
Jinsi ya kutumia orodha hii
- Anza na maumivu yako. Usambazaji ukiwa wa polepole na wa kutisha, soma Accelerate, Continuous Delivery, na ripoti za DORA kabla ya kingine chochote.
- Soma kwa muongo, si mbio. Pendelea kazi zinazoeleza kanuni za kudumu kuliko zile zilizofungwa na toleo mahususi la zana.
- Thibitisha toleo la sasa la viwango. NIST, OWASP, WCAG, ISO, na DORA hurekebisha machapisho yao; fanya kazi daima kutoka toleo la hivi karibuni na uandike toleo kwenye sera zenu.
- Jenga rafu ya pamoja. Timu iliyosoma vitabu viwili au vitatu kati ya hivi kwa pamoja hubishana kidogo na kuamua haraka, kwa sababu inashiriki msamiati na seti ya vituo vya rejeo.
- Tazama pia sura ya 12.5 kwa faharasa kamili ya viwango na mifumo ya rejeo, na sura ya 12.6 kwa jinsi ya kupanga mfuatano wa kupokea mazoea ambayo kazi hizi zinaeleza.