detec ng and quan fying different types of self admi ed
play

Detec%ng and Quan%fying Different Types of Self-Admi;ed - PowerPoint PPT Presentation

Detec%ng and Quan%fying Different Types of Self-Admi;ed Technical Debt Everton da S. Maldonado and Emad Shihab Self-Admi;ed Technical Debt Iden%fica%on


  1. Detec%ng ¡and ¡Quan%fying ¡Different ¡ Types ¡of ¡Self-­‑Admi;ed ¡Technical ¡Debt ¡ Everton ¡da ¡S. ¡Maldonado ¡and ¡ Emad ¡Shihab ¡

  2. Self-­‑Admi;ed ¡Technical ¡Debt ¡ Iden%fica%on ¡ Code ¡Comments ¡ can ¡be ¡used ¡to ¡detect ¡TD ¡ Comment ¡Pa2erns ¡ “ hack ” ¡ “probably ¡a ¡bug” ¡ ¡ “ fix ¡this ¡crap ” ¡ “ duct-­‑tape ” ¡ Self-­‑Admi;ed ¡Technical ¡Debt ¡

  3. Examples of Self-admitted Technical Debt ¡

  4. Different ¡Types ¡of ¡Technical ¡Debt ¡ ¡ Technical ¡debt ¡is ¡a ¡broad ¡concept: ¡ ¡ Design ¡debt ¡, ¡ ¡ DocumentaBon ¡debt, ¡ ¡ Requirement ¡debt ¡… ¡ ¡ What ¡types ¡of ¡TD ¡are ¡Self-­‑Admi;ed? ¡

  5. Case ¡Study ¡ 5 ¡open ¡source ¡Java ¡projects ¡ ( Ant, ¡ArgoUML, ¡Columba, ¡JFreeChart ¡and ¡Jmeter ) ¡ 606K ¡ + ¡ ¡SLOC ¡ 39K ¡ ¡ ¡+ ¡ ¡Extracted ¡comments ¡ 8k ¡ + ¡ ¡ ¡ ¡ ¡ ¡Classes ¡ 5 ¡

  6. Manual ¡Classifica%on ¡of ¡Comments ¡ The ¡manual ¡classifica%on ¡took ¡about ¡ ¡95 ¡hours ¡ Can ¡a ¡comment ¡have ¡more ¡than ¡one ¡ ¡ classifica%on? ¡ There ¡is ¡a ¡possibility. ¡

  7. Quan%fying ¡Self-­‑Admi;ed ¡TD ¡ Comments ¡ Project ¡ # ¡of ¡analyzed ¡ # ¡of ¡self-­‑ % ¡of ¡self-­‑ comments ¡ admi;ed ¡ ¡ admi;ed ¡TD ¡ TD ¡comments ¡ per ¡project ¡ Ant ¡ 4,140 ¡ 134 ¡ 3.2 ¡ ArgoUML ¡ 9,788 ¡ 1,653 ¡ 16.8 ¡ Columba ¡ 6,569 ¡ 295 ¡ 4.4 ¡ JFreeChart ¡ 4,433 ¡ 219 ¡ 4.9 ¡ Jmeter ¡ 8,163 ¡ 375 ¡ 4.6 ¡ TOTAL ¡ 33,093 ¡ 2,676 ¡ -­‑ ¡ 7 ¡

  8. Types ¡of ¡Self-­‑Admi;ed ¡TD ¡ 100 Design debt Design debt Requirement debt 60 Requirement debt Defect debt 80 Test debt Defect debt Documentation debt Percentage Test debt Documentation debt 60 Percentage 40 40 20 0 Ant Jmeter ArgoUml JFreeChart Columba Ant Jmeter Columba ArgoUml JFreeChart 8 ¡

  9. Examples ¡of ¡Self-­‑Admi;ed ¡TD ¡ Design ¡Debt: ¡ “quick ¡& ¡dirty, ¡to ¡make ¡nested ¡mapped ¡p-­‑sets ¡work:” ¡ ¡ ¡[from ¡Ant] ¡ ¡ Requirement ¡Debt: ¡ “TODO: ¡no ¡methods ¡yet ¡for ¡getClassname” ¡[from ¡Ant] ¡ Defect ¡Debt: ¡ “Bug ¡in ¡above ¡method” ¡-­‑ ¡[from ¡Jmeter] ¡ 9 ¡

  10. Take ¡Home ¡Messages ¡ 1. ¡ We ¡found ¡ 5 ¡types ¡of ¡self-­‑admi2ed ¡TD . ¡ 2. ¡ 3.2% ¡ -­‑ ¡16.8% ¡ of ¡the ¡comments ¡contains ¡ some ¡type ¡of ¡technical ¡debt . ¡ 3. ¡ Design ¡and ¡ Requirement ¡debt ¡are ¡the ¡ most ¡common ¡types ¡of ¡self-­‑admi2ed ¡TD. ¡ 10 ¡

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend