Four Strategies for Managing Technical Debt
Current literature related to software engineering research, developers’ blogs, as well as software engineering developers’ conferences talk in a great deal about technical debt. It is relevant to ask — why technical debt is an important concern for a software development team? Why should we care about technical debt? What if technical […]
Does Your Architecture Smell?
Disclaimer: Here is the original source of the article. Reproduced here with permission. Kent Beck coined the term “code smell” in the popular Refactoring book by Martin Fowler and defined it informally as “certain structures in the code that suggest (sometimes they scream for) the possibility of refactoring”. An excessive […]
“Refactoring for Software Architecture Smells” – IWoR
The paper “Refactoring for Software Architecture Smells” to appear in the proceedings of the 1st International Workshop on Refactoring (IWoR), co-located with Automated Software Engineering (ASE) conference, to be held on 4 Sept 2016 in Singapore. Abstract Code smells and refactoring have received considerable interest from the academia as well […]
Refactoring for Software Architecture Smells: Potential Research Directions
Smells and refactoring have received considerable focus from the academia as well as from the industry in the past two decades. Various tools, processes, techniques, and practices have been proposed to identify smells arising at the granularity of code and (to some extent) of design. However, architecture smells and corresponding […]
Ten Must to Read Books for Software Architects
In our workshops on software architecture, one of the questions towards the end is: “There is so much to learn about software architecture – what books would you recommend us to read?”. To answer this question, we provide you a list of 10 must to read books in our opinion […]
Refactoring for Architecture Smells: An Introduction
“Cities grow, cities evolve, cities have parts that simply die while other parts flourish; each city has to be renewed in order to meet the needs of its populace… Software-intensive systems are like that.” – Grady Booch “Code smells” or “bad smells”  are considered structures or code fragments that […]
Understanding Software Design Quality
What is software design quality? How do we create high-quality designs? How do we evaluate software design quality? These are some of the questions that a developer or an architect may have. In this article, we attempt to bring out our perspective on these aspects. What is design quality? Software […]
Are Patterns Good, Always?
It is a common belief in the developer community that since design patterns encapsulate good and proven design solutions, one should use them as often as possible during software development. However, during our design assessments, we have come across many design cases where design patterns have been used but the […]