دين تقني

الدين التقني هو مصطلح يستخدم في مشاريع تطوير البرمجيات لوصف الأعمال الإضافية الناجمة عن:

1) تأجيل مهام صيانة البرامج (على سبيل المثال: تأجيل إصلاح الأعطال bugs، تأجيل المهام المتعلقة باختبار البرنامج، تأجيل مهمة تحديث الوثائق، تأجيل مهمة إعادة هيكلة البرنامج، الخ...). أو

2) استخدام تصاميم أو تعليمات برمجية غير مطابقة لمعايير وممارسات الجودة. هذه المهام المؤجلة أو غير المطابقة لمعايير الجودة تمثل ديناُ تقنياُ على البرنامج.

فكرة الديون التقنية مشتقه من مفهوم الديون المالية ، حيث أن المقترض يستفيد من الدين في تحقيق بعض الأهداف قصيرة الأجل مثل الاستثمار أو شراء سلعة. ولكن هذا الدين يجلب تكاليف إضافية عن طريق سعر الفائدة. نفس الفكرة بالنسبة للديون التقنية، حيث يمكن للمطورين تحميل بعض الديون التقنية لتحقيق أهداف قصيرة الأجل مثل إصدار نسخة من البرنامج بأقل وقت وجهد ممكن. ولكن إبقاء الديون التقنية لفترة طويلة يتسبب في تعقيد البرنامج وبالتالي زيادة في تكلفة صيانة البرنامج على المدى البعيد. حيث أن أي برنامج أو تطبيق يتغير وينمو بشكل متسارع. وبالتالي المواصلة في تأجيل مهام الصيانة سيزيد من تكلفتها مستقبلاٌ ، لإن البرنامج أصبح أكبر من حيث الحجم وعدد المميزات.

مجموعة من الباحثين والمطورين وضعوا تعريفًا محددًا للديون التقنية وهو «مجموعة من التصاميم و التعليمات البرمجية المناسبة في الوقت الحالي، ولكن تجعل التغييرات المستقبلية للبرنامج أكثر صعوبة. الديون التقنية تمثل مسؤولية والذي تأثيرها يقتصر على الجودة الداخلية للبرنامج وبالتحديد سهولة الصيانة والتطوير».

مراجع 

استعارات
معمارية البرمجيات
صيانة البرمجيات
مصطلحات هندسة البرمجيات