Modern software has to evolve to meet the needs of stakeholders; but the nature and scope of this evolution is difficult to anticipate and manage. In this paper, we examine techn...
Code-patterns are statically recurring structure specific to a programming language. It can be parallel to aid in designing software systems for solving particular problems. Contr...
Several decades of software engineering research confirm that effective reuse is the only realistic approach to meeting the ever-increasing demands on the software industry. Over ...
"This book is about the fundamentals of data structures and algorithms--the basic elements from which large and complex software artifacts are built. To develop a solid unders...
As an object-oriented system evolves, its architecture tends to drift away from the original design. Knowledge of how the system has changed at coarse-grained levels is key to und...