Research
Our research focused on methods, techniques, notations, and tools for building better software and building it better, based on several guiding ideas: components and reuse; object technology; Design by Contract; systematic approaches to concurrency and distribution; practically applicable formal methods.
Research Projects
Verification and formal methods
- Eve: the Eiffel verification environment, integrating various verification tools
- AutoTest: contract-based automatic testing
- AutoFix: automatic program fixing
- AutoInfer: automatic inference of better contracts
- CITADEL: dynamic contract inference for Eiffel
- gin-pink: automatic inference of loop invariants from postconditions
- QFIS: a decidable theory of sequences and a supporting program verifier
- MultiStar: separation logic meets Eiffel
- EiffelBase2 and model-based contracts: trusted object-oriented components
- AutoProof (formerly known as EVE Proofs): Eiffel proofs using Boogie
- Proof techniques for object-oriented software: proof transformation
Concurrency
- Concurrency Made Easy (CME): an ERC Advanced Grant project on advancing the state-of-the-art in concurrent programming
- Roboscoop: programming robotics applications in SCOOP
- SCOOP: a general, easy to use programming mechanism for concurrent, multi-threaded, distributed, Web service applications
Empirical software engineering
Distributed development
- CloudStudio: distributed development in the cloud
- DOSE: Distributed and Outsourced Software Engineering