Assessing technical debt by identifying design flaws in software systems | IBM Journals & Magazine | IEEE Xplore