Karten 29 Karten
Lernende 1 Lernende
Sprache Deutsch
Stufe Universität
Erstellt / Aktualisiert 26.03.2021 / 03.04.2021
Lizenzierung Keine Angabe
0 Exakte Antworten 29 Text Antworten 0 Multiple Choice Antworten
Fenster schliessen


  • degree of effectiveness and efficiency with which the product can be modified
  • consists of 
    • Analysability
    • Modularity
    • Reusability
    • Modifiability
    • Testability
Fenster schliessen

Why is Maintainability important?

  • reduces costs during maintenance
  • enables other 7 characteristics of software product quality (security, functional suitability, performance)
Fenster schliessen

How is Maintainability achieved?

  • writing clean code 
  • improves internal and external quality of product
Fenster schliessen

Clean Code - Definition

  • clear, understandable, comprehensible, logical and disciplined implementation of code
  • code is designed to be easy to read, change, expand and maintain
Fenster schliessen

Conventions - Idea and Problem


  • improve readability by creating common look and feel


  • Conventions are ignored (no knowledge)
  • Conventions differ between languages and communities
Fenster schliessen

Convention - English

Reasons for other Languages

  • harder to write english commentaries/find names
  • bad english skills could lead to misunderstandings/typos

Reasons for using English:

  • English communities are much larger 
  • for help of english community, dont have to translate
  • no mixture of english programming language and local language
  • you should be able to read and speak fluent English
Fenster schliessen

Convention - which to use

  • use language default
    • detailed guidelines available
    • style switches necessary when working on multiple projects within the same team or project with multiple languages
  • decide in your team on a standard
    • keep consistent
    • one style over all languages
    • maybe switching styles between teams
Fenster schliessen

Bad Smells - Definition

  • indications of poor coding and design choices that may lead to bad maintainability
  • technically not incorrect
  • indicate weaknesses and could be slowing down development or increase risk of bugs
  • code vs architectural level