Software Engineering, Service Oriented Computing, Web Services, Verification
Domenico Bianculli, Carlo Ghezzi, Pierluigi San Pietro (2012), The Tale of SOLOIST: a Specification Language for Service Compositions Interactions, in Proceedings of the 9th International Symposium on Formal Aspects of Component Software (FACS'12)
, Mountain View, CA, USA.
Marcin Nowak, Cesare Pautasso (2012), Software Architectural Warehouse: live and collaborative architectural decision making, in Demo at the Joint 10th Working IEEE/IFIP Conference on Software Architecture (WICSA) and the 6th Eur
, Helsinki, Finland.
Domenico Bianculli (2012), Open-world Software: Specification, Verification, and Beyond
, USI, Lugano.
Aghaee Saeed, Nowak Marcin, Pautasso Cesare (2012), Reusable Decision Space for Mashup Tool Design, in Proc. of the 4th ACM SIGCHI Symposium on Engineering Interactive Computing Systems (EICS 2012)
Bianculli Domenico, Ghezzi Carlo, Pautasso Cesare, Senti Patrick (2012), Specification Patterns from Research to Industry: a Case Study in Service-based Applications, in Proceedings of the 34th International Conference on Software Engineering (ICSE 2012)
Bianculli Domenico, Giannakopoulou Dimitra, Pasareanu Corina S. (2011), Interface Decomposition for Service Compositions, in Proc. of the Proceedings of the 33rd International Conference on Software Engineering (ICSE 2011)
Nowak Marcin, Pautasso Cesare (2011), Goals, Questions and Metrics for Architectural Decision Models, in Proceedings of the 6th ICSE Workshop on Sharing and Reusing Architectural Knowledge (SHARK 2011)
Marcin Nowak, Cesare Pautasso (accepted), Team Situational Awareness and Architectural Decision Making with use of the Software Architecture Warehouse, in Proc. of the 7th European Conference on Software Architecture (ECSA 2013)
, Montpellier, France.
The Continuous and Lifelong Analysis and Verification of Open Services
(CLAVOS) project aims at consolidating current service-oriented design
methodologies and modeling languages in a rigorous software
engineering context. The project applies the notion of
analysis and verification continuously during the whole
lifecycle of open systems built out of the composition of
services. Services represent reusable software components that provide
specific functionality to clients delivering it through
standardized network and middleware infrastructure. In this project we
see services as the ultimate state of the evolution of software
components. This enables us to tailor existing advanced
software engineering techniques and extend them for the analysis and verification of
In this proposal for a project extension we refine and update the
objectives and scope of the project based on our recent findings and
the evolution of the field of the past two years.
Considering the recent emergence of REST as a novel approach to
the design and delivery of Web services, we aim at studying
how and to which extent we can apply verification and
validation techniques to RESTful Web services. Given
the emphasis of REST on dynamic discovery, loose coupling,
contract-less design, as well as dynamic typing we believe a
continuous lifelong approach to analysis and verification can
make an important contribution. Our research will target the verification of
basic RESTful services by selecting and applying suitable
static program analysis techniques, as well as compositions
of RESTful services.
As our work on service lifecycles and continuous verification
has matured, the project extension will also include
activities explicitly directed towards the evaluation of the
final project results. To do so we plan to design new
benchmarks for the assessment of the verification and
monitoring techniques developed within the project. The
effort will focus on building a reusable collection of
artifacts (services, contracts and composition models
together with the corresponding functional and non-functional
specifications) which will assist us in evaluating the
expressive power, the range of applicability, and the
performance overhead of the developed verification and
monitoring techniques. We intend to share such collection of
benchmark problems with the service engineering community to
drive future developments of service verification tools and
service composition engines.