ልጥፍ

ቴክኒካዊ ዕዳ(Technical debt)

የቴክኒካዊ ዕዳ ጽንሰ-ሐሳብ፣ ለምን እንደሚፈጠር እና እንዴት በትንሹ ማድረግ እንደሚቻል እንመልከት።

ቴክኒካዊ ዕዳ(Technical debt)

ቴክኒካዊ ዕዳ

ቴክኒካዊ ዕዳ(Technical debt)
በልማት ሂደት ውስጥ ወዲያውኑ የሚጠየቁ ፍላጎቶችን ለማሟላት ከፊት ያለውን ፕሮጀክት በፍጥነት ለመጨረስ አቋራጭ መንገድ በመምረጥ በኋላ መክፈል የሚገባ ዋጋ

በሂሳብ አያያዝ ውስጥ ያለ ዕዳ(debt) ተቀብሎ ገንዘብ ከተበደረ ወዲያውኑ በሚያስፈልገው ቦታ ፈጣን ኢንቨስትመንት ማድረግ ቢቻልም የገንዘብ ጫና ይፈጠራል እና ዋና ገንዘቡን ከወለድ ጋር መክፈል እንዳለበት ሁሉ፣ በፊት የተገጠመውን ፍላጎት ለመፍታት ትንሽ የተዘበራረቀ ቢሆንም ልማቱን በፍጥነት ካካሄዱ ኮዱ ውስብስብ እና ተደጋጋሚ ይሆናል፣ ከዚያም በኋላ አዲስ ባህሪያትን ለመተግበር ወይም ለማስፋት ችግኝ ይፈጠራል።

ኩባንያዎች በዕዳ ተጠቅመው ተጨማሪ ኢንቨስትመንት በተገቢው ጊዜ በማስፈጸም አዲስ ምርቶችን ሊያበሩ እና የገበያ ድርሻቸውን ሊያሳድጉ እንደሚችሉ፣ ወይም ግለሰቦች ብድር በመውሰድ ቤት እንደሚገዙ ሁሉ፣ ቴክኒካዊ ዕዳን ተቀብሎ አዲስ ባህሪያትን በፍጥነት ማተግበር በሁሉም ሁኔታ መጥፎ አይደለም። ነገር ግን ቴክኒካዊ ዕዳ እንዳይከማች መቀነስ እና ሊሸከም በሚቻል ደረጃ መቆጣጠር ይመረጣል።

ቴክኒካዊ ዕዳ የሚፈጠርበት ምክንያት

የገንቢው ችሎታ በቂ ቢሆንም እንኳ በልማት ሂደት ውስጥ ቴክኒካዊ ዕዳ መፈጠሩ የማይቀር ነው፣ ከምንጩም ሙሉ በሙሉ መከላከል አይቻልም። አገልግሎቱ ሲያድግ ከመጀመሪያ የተነደፈው ኮድ ገደብ ሲደርስበት፣ መጀመሪያ ላይ ለማንበብ ቀላል እና ጥሩ ሁኔታ የሚሰራ ኮድ ቢሆንም እንኳ ያለውን ንድፍ ማሻሻል ሊያስፈልግ ይችላል። እንዲሁም ቴክኖሎጂው ራሱ ሲያድግ፣ በፊት በጣም የተለመዱ የነበሩ ላይብረሪ/ፍሬምወርኮችን ከእንግዲህ ብዙ ካልተጠቀሙባቸው ቴክ ስታኩን ወደ ሌሎች ላይብረሪ/ፍሬምወርኮች ለመቀየር ሊወስኑ ይችላሉ፣ በዚህ ሁኔታም ቀድሞ የተጻፈው ኮድ አንድ ዓይነት ቴክኒካዊ ዕዳ ይሆናል።

ከዚህ በተጨማሪ በሚከተሉት ምክንያቶችም ቴክኒካዊ ዕዳ ሊፈጠር ይችላል።

  • ፕሮጀክትን በማካሄድ ጊዜ የተነደፈውን ነገር በተገቢው ጊዜ ሰነድ አድርጎ ካልተመዘገበ፣ ሌሎች ሰዎች ወይም ጊዜ ካለፈ በኋላ ራስዎ እንኳ እንደገና ያንን ኮድ ሲያዩ ለመተርጎም ችግኝ የሚገጥማቸው ሁኔታ
  • ከእንግዲህ የማይጠቀሙባቸውን ተለዋዋጮች ወይም የDB ንጥሎች ካልተወገዱ
  • የተደጋጋሚ ስራዎችን(ለምሳሌ ማሰማራት/ግንባታ) በራስ-ሰር ካልተደረጉ በየጊዜው ተጨማሪ ጊዜና ጥረት የሚያስፈልግ ሁኔታ
  • አስቸኳይ የspec ለውጥ

ቴክኒካዊ ዕዳን በትንሹ ለማድረግ መንገዶች

በገንቢዎች መካከል ደንብ(Convention) ማቋቋም

  • ብቻውን ልማት የማይደረግ ከሆነ፣ ለተሻለ ትብብር የሚጠቀሙትን ቋንቋ ወይም ቴክ ስታክ፣ የፕሮጀክቱን የዳይሬክተሪ መዋቅር፣ የልማት ቅጥ ወዘተ ላይ ስምምነት መኖር ያስፈልጋል
  • እስከ የት ድረስ መንገዱን በአንድነት አድርገው ልማት እንደሚያካሂዱ እና ከየት ጀምሮ ለግል ነፃነት እንደሚተዉ መወሰን አለባቸው
  • በኮድ ክለሳ(code review) እርስ በርሳቸው የልማት ቅጥን ማረጋገጥ እና ሃሳብ መለዋወጥ አስፈላጊ ነው

ንጹህ ኮድ(Clean Code) መጻፍ & ሪፋክተሪንግ(Refactoring)

  • ያለው ኮድ የተዘበራረቀ ሆኖ ልማቱን እየከለከለ ከሆነ፣ የኮድ መዋቅሩን በንጹህ ሁኔታ የሚቀይር ሪፋክተሪንግ(refactoring) በማድረግ ቴክኒካዊ ዕዳን ማስወገድ ይቻላል
  • እንደሚጠበቀውም ያለው ኮድ የተዘበራረቀ ስፓጌቲ ኮድ(spaghetti code) በሆነ መጠን ሪፋክተሪንግ አስቸጋሪነቱ ይጨምራል፣ እጅግ ከፍተኛ ሁኔታ ላይ ደግሞ ሪፋክተሪንግን ፈጽሞ ትተው ያለውን ኮድ ሙሉ በሙሉ በመጣል ከመጀመሪያ እንደገና የሚገነቡበት ሁኔታም አለ
  • በተቻለ መጠን ከመጀመሪያው ጀምሮ ለማንበብ ቀላል እና ለጥገና ቀላል የሆነ ኮድ ለመጻፍ መጣር አለበት
ይህ ልጥፍ በ CC BY-NC 4.0 ፈቃድ ስር ነው።