Skip to content

Clean-CaDET/challenges

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Supplementary Maintainability Challenges

This repository hosts examples of maintainability challenges for our ITS specialized in code maintainability. It is referenced in the paper An Intelligent Tutoring System to Support Code Maintainability Skill Development, submitted to IEEE Transactions on Learning Technologies for consideration.

The repository has three maintainability challenges. Each consists of the starting code (in the .CS file) and a README.md that includes:

  1. The description of the challenge,
  2. A description of the problem-solving approach for solving the challenge, which ends with a possible solution,
  3. The used maintainability issue detectors, and
  4. A discussion of the limitations of the concrete maintainability issue detectors to constrain the solution space.

Students typically only receive the first part of the README (challenge description). The second part (solution) would only be presented at the end of a challenge or when the goal is to present a worked example.

The challenges are grouped around three distinct code maintainability units. They are, in order of complexity:

  1. Challenge for removing noise words to produce meaningful names (link),
  2. Challenge for extracting complex logic to produce maintainable functions (link), and
  3. Challenge for creating a class with a single responsibility to produce maintainable classes (link).

About

This repository hosts several maintainability challenges that can be processed by the Clean CaDET platform. It is referenced in the paper An Intelligent Tutoring System to Support Code Maintainability Skill Development, submitted to IEEE Transactions on Learning Technologies for revision.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages