Design patterns offer flexible solutions to common problems in software development. Recent studies have shown that several design patterns involve crosscutting concerns. Unfortun...
Software often needs to be modified for accommodating requirements changes through the software life cycle. To deal with several accidental requirements changes related to softwa...
To create successful interactive systems, user interface designers need to cooperate with developers and application domain experts in an interdisciplinary team. These groups, how...
We believe that design patterns can be an effective means of consolidating and communicating program construction expertise for functional programming, just as they have proven to...
Software designs decay over time. While most studies focus on decay at the system level, this research studies design decay on well understood micro architectures, design patterns...