Information Technology Reference
In-Depth Information
Our collaboration in the OOI project has had interesting impacts on our work
and research. First, the practical requirements, emerging from their use cases,
led to the several advances of the MPST theory and the Scribble language (in-
terruptible conversations [8], generic protocols [5] and protocol annotations).
Second, we found that many OOI use cases can be categorised into a small set of
parameterised protocols. As an example, the majority of service-oriented proto-
cols, with diverse message signatures, are now derived from a single parametrised
RPC service protocol; rather than requiring a Scribble protocol per application
instance, one parameterised protocol can be provided per application library.
This is a convenient approach because we have observed that developers are (so
far) often not accustomed to writing protocols explicitly and formally. Finally,
the integration of our toolchain proceeded from the specification and verification
of the smaller, lower-level protocols in the OOI system, such as RPC. In general,
the kinds of bugs detected by our toolchain (e.g. messages to/from the wrong
participant) did not frequently arise for these smaller protocols; however, this
starting point enabled a straightforward, non-intrusive integration (not a single
line of existing application code was changed) that eased the adoption of the tool
by the developers. The next phase of the ongoing integration is to port the more
complex application protocols to Scribble, given the monitoring infrastructure
(independent of the protocol size) is already in place: our toolchain is able to
verify any Scribble protocol using the single generic monitor implementation.
References
1. Advanced Message Queuing Protocol homepage, http://www.amqp.org/
2. Bocchi, L., Chen, T.-C., Demangeon, R., Honda, K., Yoshida, N.: Monitoring net-
works through multiparty session types. In: Beyer, D., Boreale, M. (eds.) FMOOD-
S/FORTE 2013. LNCS, vol. 7892, pp. 50-65. Springer, Heidelberg (2013)
3. Chen, T.-C., Bocchi, L., Denielou, P.-M., Honda, K., Yoshida, N.: Asynchronous
distributed monitoring for multiparty session enforcement. In: Bruni, R., Sassone,
V. (eds.) TGC 2011. LNCS, vol. 7173, pp. 25-45. Springer, Heidelberg (2012)
4. Denielou, P.-M., Yoshida, N.: Multiparty session types meet communicating au-
tomata. In: Seidl, H. (ed.) ESOP 2012. LNCS, vol. 7211, pp. 194-213. Springer,
Heidelberg (2012)
5. Honda, K., Hu, R., Neykova, R., Chen, T.-C., Demangeon, R., Denielou, P.-M.,
Yoshida, N.: Structuring Communication with Session Types. In: COB 2012. LNCS
(2012) (to appear)
6. Honda, K., Mukhamedov, A., Brown, G., Chen, T.-C., Yoshida, N.: Scribbling in-
teractions with a formal foundation. In: Natarajan, R., Ojo, A. (eds.) ICDCIT 2011.
LNCS, vol. 6536, pp. 55-75. Springer, Heidelberg (2011)
7. Honda, K., Yoshida, N., Carbone, M.: Multiparty asynchronous session types. In:
POPL 2008, pp. 273-284. ACM (2008)
8. Hu, R., Neykova, R., Yoshida, N., Demangeon, R.: Towards practical interruptible
conversations. This volume
9. Session Python (SPY) resource page, http://www.doc.ic.ac.uk/ ~ rn710/spy/
10. Ocean Observatories Initiative, http://www.oceanobservatories.org/
11. Scribble-OOI collaboration, https://confluence.oceanobservatories.org/
display/CIDev/OOI+Use+Cases+in+Scribble
12. Scribble project home page, http://www.scribble.org
13. JBoss Scribble site, http://www.jboss.org/scribble
 
Search WWH ::




Custom Search