Design patterns are a standard means to create large software systems. However, with standard object-oriented techniques, typical implementations of such patterns are not themselv...
Secure systems are best built on top of a small trusted operating system: The smaller the operating system, the easier it can be assured or verified for correctness. In this pape...
The principle of separation of concerns has long been used by software engineers to manage the complexity of software system development. Programming languages help software engin...
Robert J. Walker, Elisa L. A. Baniassad, Gail C. M...
Abstract— Framework design is a multifaceted endeavor undertaken to promote reuse of software within a family of related applications. Traditional approaches involve either the e...
Background: Co-evolution is the process in which two (or more) sets of orthologs exhibit a similar or correlative pattern of evolution. Co-evolution is a powerful way to learn abo...