User Tools

Site Tools


skill-tree:sd:5:b

SD5 Software Quality

Learnign objectives

* Understand Coding Standards * Understand Code Quality

  • Apply software engineering methods and practices especially in the context of high-performance computing.
  • Develop parallel programs and to apply software engineering methods and best practices.
  • Assess code quality using different metrics, e.g. length of functions, length of files, lines of code, complexity metrics, code coverage.
  • Use static code analysis tools in order to calculate the metrics (e.g. http://cppcheck.sourceforge.net/).
  • Identify bad code structures (known as bad smells) in order to assess the quality of the code design.

* Understand Refactoring

  • Apply common code refactorings in order to improve code quality, such as extract method, extract class, rename class and when it is suitable to apply which refactoring.
  • Apply refactoring that are specific to programming languages (e.g. Fortran).

* Understand Code Reviews

  • Use a review system like Gerrit to organize the code reviews.
  • Document code review results and resulting tasks in an issue tracking system (for example Jira).
  • Define checklists for code reviews.
  • Conduct code reviews in pairs or in a team.
  • Document code review results and resulting tasks in an issue tracking system (for example Jira).
  • Demonstrate awareness of technical debt during software development and how to pay technical debt.

Subskills

skill-tree/sd/5/b.txt · Last modified: 2024/09/11 12:30 by 127.0.0.1