Separation Logic is a sub-structural logic that supports local reasoning for imperative programs. It is designed to elegantly describe sharing and aliasing properties of heap struc...
Software architects have techniques to deal with many quality attributes such as performance, reliability, and maintainability. Usability, however, has traditionally been concerned...
— The use of design patterns usually changes the approach of software design and makes software development relatively easy. This paper extends work on a forensic model for Logic...
The formal specification of design patterns is widely recognised as being vital to their effective and correct use in software development. It can clarify the concepts underlying ...
Requirements such as distribution or tracing have an impact on multiple classes in a system. They are cross-cutting requirements, or aspects. Their support is, by necessity, scatt...