Despite the automated refactoring support provided by today's IDEs many program transformations that are easy to conceptualize-such as improving the implementation of a desig...
This article presents an approach to using open-source tools and open-source projects to add realistic and practical examples to a course on software design in a professional maste...
Compared with texts, graphs are more intuitive to express comparative and structural information. Many graphical approaches, however, lack a formal basis for precise specification...
Design patterns encode proven solutions to recurring design problems. To use a design pattern properly, we need to 1) understand the design problem the pattern resolves, 2) recogn...
Transformational design integrates design and verification. It combines "correctness by construciion" and design creativity by the use ofpre-proven behaviour preserving ...