Effective Detection of Self- admitted Technical Debt Everton S. Maldonado Emad Shihab Department of.

Slides:



Advertisements
Similar presentations
1 Introduce characters. Establish the setting. 2 Introduce the main conflict. 3 Actions taken to deal with the conflict. Resulting complications. 4 Actions.
Advertisements

Time In / Time Out Service technicians are now required to save Time Tracker records for each job they do. In technical terms, each Order where Type =
Unit Tests DEFINITION AND OVERVIEW by Paul M. code of the damned. com.
Min Zhang School of Computer Science University of Hertfordshire
Preventive Software Maintenance: The Past, the Present, the Future Nikolaos Tsantalis Computer Science & Software Engineering Consortium for Software Engineering.
Software Quality Metrics
GRADUATING PROJECT ORIENTATION BY Professor Muhammad Arshad Malik
Technical Specification / Schedule Department of Computer Science and Engineering Michigan State University Spring 2007 Team : CSE 498, Collaborative Design.
Instruction set architecture Problems Prof. Sin-Min Lee Department of Mathematics and Computer Science.
Quality is about testing early and testing often Joe Apuzzo, Ngozi Nwana, Sweety Varghese Student/Faculty Research Day CSIS Pace University May 6th, 2005.
6. & 7. Teams: Technical Specification / Schedule Project Title Team Member 1 Team Member 2 Team Member 3 Team Member 4 Department of Computer Science.
Metrics-Based Analysis of UML Designs Department of Computer Science & Engineering Ryan Stephenson Advisor: Prof. Betty H.C. Cheng Software Engineering.
How to Debug Debugging Detectives Debugging Desperados I GIVE UP! MyClass.java.
Average Income Advantages Educational Requirements.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Industrial Application.
Introduction to High-Level Language Programming
A Light-weight Approach to Coreference Resolution for Named Entities in Text Marin Dimitrov Ontotext Lab, Sirma AI Kalina Bontcheva, Hamish Cunningham,
CS 325: Software Engineering March 5, 2015 Modeling and Design of Rule-Based Systems Rule-Based Systems Interpreter Pattern Code Reviews.
Software Engineering Modern Approaches
Chapter 8: Systems analysis and design
These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
Validation Metrics. Metrics are Needed to Answer the Following Questions How much time is required to find bugs, fix them, and verify that they are fixed?
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University What Kinds of.
Advanced Programing practices
Project Tracking. Questions... Why should we track a project that is underway? What aspects of a project need tracking?
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University What Do Practitioners.
Computer Programmer. 3 Tasks that are performed Write, update, and maintain computer programs or software tasks Correct computer program errors Test programs.
SZZ – An overview David Bowes University of Hertfordshire.
Disciplined Software Engineering Lecture #7 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department.
Software Engineering Quality What is Quality? Quality software is software that satisfies a user’s requirements, whether that is explicit or implicit.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University Applying Clone.
Refactoring1 Refactoring DEPARTMENT OF COMPUTER SCIENCE AND SOFTWARE ENGINEERING CONCORDIA UNIVERSITY February 6, 2009.
SYSTEMSDESIGNANALYSIS 1 Chapter 20 Software Engineering Jerry Post Copyright © 1997.
©Ian Sommerville 2004 Software Engineering. Chapter 21Slide 1 Chapter 21 Software Evolution.
© 2012 IBM Corporation Rational Insight | Back to Basis Series Chao Zhang Code Review.
Recovering Design Technical Debt from Source Code Comments Department of Computer Science and Software Engineering Concordia University Montreal, Canada.
PROCESSING, ANALYSIS & INTERPRETATION OF DATA
Department of Computer Science, Graduate School of Information Science & Technology, Osaka University 1 Towards an Assessment of the Quality of Refactoring.
MAGDALINA MEDINA INDUSTRIAL ENGINEERING -HUMAN FACTORS -INDUSTRIAL MANAGEMENT SYSTEMS Mars Robotic Curriculum using “Shared World” views.
Department of Computer Science, Graduate School of Information Science & Technology, Osaka University 1 Towards an Investigation of Opportunities for Refactoring.
KUFA UNIVERSITY Department of Computer Science 09/12/2015.
Workshop #1: Introduction to Graduation Project Wednesday September 2 nd at 10 am Capstone Committee Department of Computer Science.
Performance Study of Message Passing in an Event Service: Java RMI vs. TCP Sockets Laxminarayan Muktinutalapati (Lux) Department of Computing and Information.
Department of Computer Science, Graduate School of Information Science & Technology, Osaka University An Empirical Study of Out-dated Third-party Code.
What is regression testing? Regression testing is a type of testing that ensures there are no defects/issues in exiting functionality because of new change.
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University 1 Extracting Sequence.
OVERVIEW OF ENGINEERING MANUAL, Part 2 Susan Hoyler TIA, Director Standards Development and Promotion.
GCSE ICT Information and Data: By the end of this, you should be able to state the difference between DATA and INFORMATION.
IT Job Roles. ICT Technician An ICT technician is a person who works in an IT based environment and their job is to fix any computer that is not functioning.
Presented by Lu Xiao Drexel University Quantifying Architectural Debt.
Computer Software engineer By: Eric Musser. What is This? Computer engineers make programs to run a computer. Computer engineers make programs to run.
Testing Worshop in Software Engineering Project Department of Computer Science Ben-Gurion university 1Worshop in SE ProjectSpring 2013.
Trends in Computing You are expected to research a computing related technology (such as mobile phones, social networks etc.) You will communicate these.
Week#3 Software Quality Engineering.
These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
© 2012 IBM Corporation Rational Insight | Back to Basis Series Working on Enhancement/Defect Nick Hu Shuai 2012/05/17.
Recapping: Distribution of data.
Lab 7: Business Process Modeling Notation (BPMN)
Applications of Data Mining in Software Engineering
Microsoft Customer Service Phone Number Microsoft Customer Service Phone Number Microsoft Customer Service Phone Number.
: Clone Refactoring Davood Mazinanian Nikolaos Tsantalis Raphael Stein
Problem Solving: Structure Charts
Objectives To gain a basic understanding of the Programming and Software Development Pathway. To discover career options available within the Programming.
CSE 498, Collaborative Design
Auxiliary Rubrics Module 6 Activity Overview
Document 5.4.1(4) Regional Basic Observing Network (RBON) Concept
Work Plan For 6LoWPAN Platform
CS 325: Software Engineering
Presentation transcript:

Effective Detection of Self- admitted Technical Debt Everton S. Maldonado Emad Shihab Department of Computer Science and Software Engineering Concordia University 1

Research Goal 2 Thus far, comments have been used to identify self-admitted technical debt Our goal is to find other ways to identify self-admitted technical debt

Current limitations 3 We only have one source for self-admitted technical debt, which is using comments.

4 Research Overview

Case study on Eclipse 5

Investigating Eclipse Bugs 6 For our next charts: -Creation is when the bug was opened in the bug tracker -Commit is when a code change was submitted to address the specific bug -Resolution is when the bug was marked as fixed

Number of days Number of bugs Corrective Changes 7 Average: Median : 35 Creation x Commit Number of bugs Number of days Commit x Resolution Number of bugs Number of days Creation x Resolution Average: Median : 15 Average: Median : 66

Advantages 8 -Developer input/confessions about the system are taken into consideration -Can bring more insights about how technical debt is introduced into the source code - A light-weight approach

Ongoing and Future Work 9 Manual examination of commits to identify patterns found in the commits messages that relate to self-admitted technical debt Classify types of technical debt and relate them to specific types of fixes or refactoring

10

Effective Detection of Self- admitted Technical Debt Everton S. Maldonado Concordia University 11 Emad Shihab Concordia University

Thus far … 12 Recent work has shown that technical debt is prevalent and unavoidable Thus far, comments have been used to identify self-admitted technical debt

Our work 13 Find ways to effectively identify self-admitted technical debt is necessary Using: - Commit messages - Bug reports - Online discussions (e.g., StackOverflow)

Our work 14 We perform a case study on Eclipse …..to find out more… …come see my poster