From Score to Coast From Cooperative, Distributed, and Process-Aware Web Information Systems to Web Scale Trustworthy Collaborative Information Systems
Ecoo : the origin Pour développer du logiciel – Partager des données – Coordonner des activités Domaines de recherche – Edition Collaborative – Gestion des processus métiers – Transactions de longue durée – Services
Support for Building Pyramids Large scale collaboration is required to solve big problems and challenges Collaboration of people and services Requires confidence (trust+control)
Where do we stand IT Layer Business Layer Design time RunTime Infrastructure Layer Users
An original tension Implicit Coordination – Data sharing – Group Awareness Explicit coordination – Process modeling – Control of the execution A common view : Enforcing properties on data sharing and coordination
Results New algorithms for optimistic replication Collaborative systems Inter-organisation and cooperative workflow systems Models for safe service compositions Software/Platform – Bonita, Libresource, Qualipso Factory, DSMW, Etc.
Score to Coast
Collaborative Data Management How to support people working together, distributed in time, space and organisations Collaborate without a central authority IT Layer Optimistic replication IT Layer Optimistic replication Business Layer Collaborative Editing Business Layer Collaborative Editing
Optimistic Replication Investigate and evaluate new algorithms – Operational Transformation – WooT (Without Operational Transformation) – CRDT Support for decentralized « Real Time » Collaborative Systems Understand their behaviour
Experiment algorithms How do they behave – With real users, – With a lot of users – With different kind of scenarios – With different kind of deployment Evaluating CRDTs for Real-time Document EditingEvaluating CRDTs for Real-time Document EditingAhmed-Nacer Mehdi; Ignat Claudia- Lavinia ; Oster Gérald ; Roh Hyun-Gul; Urso Pascal inria ACM. 11th ACM Symposium on Document Engineering, Sep 2011inria
First Results Executing the same input with different algorithms But we need more input Evaluating CRDTs for Real-time Document EditingEvaluating CRDTs for Real-time Document EditingAhmed-Nacer Mehdi; Ignat Claudia- Lavinia ; Oster Gérald ; Roh Hyun-Gul; Urso Pascal inria ACM. 11th ACM Symposium on Document Engineering, Sep 2011inria
Awareness & Trust Concurrent editing generate conflicts Important issues – How to detect conflicts – How to solve conflicts – How to avoid conflicts – How to respect privacy – How to enforce privacy rules
Optimistic data sharing control Explicit sharing contract Explicit Trust representation Audit log against the contract Update trust value based on audit Hien Thi Thu Truong, Claudia-Lavinia Ignat, Mohamed-Rafik Bouguelia and Pascal Molli. A Contract-extended Push-Pull-Clone Model. CollaborateCom 2011
Coordination in dynamic situation Application to crisis management Issues – Changing goals – No central authority – Privacy/governance issues Proposal – A Dynamic activity model – Design time = Execution time – Temporal dependencies – P2p Sharing between organisations
Coordination in dynamic situation IT Layer Governance Aware Optimistic Replication IT Layer Governance Aware Optimistic Replication Business Layer Dynamic Process Management Business Layer Dynamic Process Management Design time RunTime Users
Service Composition Development of applications at the scale of the web How to develop services that are – Efficient, Safe, Secure, Flexible, Adaptative How to ensure/enforce some properties on service composition – Transactional properties, Security properties, Privacy/Quality of service From programmableweb.com
Engineering Service Composition Designing the composition (What, How) Defining the contracts Verifying the contracts Deploying/executing Monitoring/Auditing Responding to contract violation IT Layer Deployment/Execution IT Layer Deployment/Execution Business Layer Modeling/Specifying/Checking Business Layer Modeling/Specifying/Checking
Declarative Service Composition Composition Design Composition Monitoring Composition Implementatio n & Validation Composition Execution Ehtesham ZahoorEhtesham Zahoor, Olivier Perrin, Claude Godart: An Event-Based Reasoning Approach to Web Services Monitoring. ICWS 2011: Claude GodartICWS 2011 Closing the loop is a challenge
Our landscape evolves quickly The web as a platform – To collaborate – To produce and share data – To produce and deliver services Elastic Computing – P2P – Cloud Infrastructure
The scale is changing Regarding data production – Wikipedia – Climate Change Report Regarding coordination – Crisis Management For both – OSS
Self services are coming
Heterogeneity is back again
New ecosystems have appeared Smartphone and tablet apps They are based on services (REST API)
The Coast Project Collaborative data management Data centric service composition Trustworthy collaborative systems
Collaborative data management Large scale data sharing Collaborative editing Real time p2p collaborative editing Conflict management
Problems How to ensure eventual consistency with optimistic replication ? How to avoid conflicts when documents are edited concurrently How to handle conflicts efficiently ? Up to what scale ?
Our approach Develop new optimistic replication algorithms – For new data types – For new scales Study group awareness mechanisms – For communities – For heterogeneous settings
Service composition Thousands of services – Not related to traditional models Thousands of business apps – New software objects based on service composition
Problems How to build applications through service assembly How to represent and validate – Terms of Service (that should be enforced) – Service Level Agreement (the promise) What kind of properties can we ensure on service composition How to govern their evolution
Our approach Define models to describe Service ToS and SLA that allow to create – Safe composition – Certified composition Define and validate method for service based software engineering Incorporate the economic dimension of service delivery (probably easier)
Trustworthy Collaborative Systems Collaborative system : composition of collaborative systems Define the confidence attributes – Trust and/or Control – Certification Confidence is a relation – Service/Service – User/User – User/Service
An approach grounded on contract Confidence contracts in collaborative environments – Between participants – Between services – Between users and the environment Validation of contracts and of their composition A posteriori contracts verification
Scientific challenge Definition and validation of confidence attributes for – Data sharing – Collaboration – Service composition Real time or deferred control Optimistic approach for safety and security
Methods Theory – Algorithms and models Experience – We need to invent protocols That scale That demonstrate usability That are reproducible Design Science – We invent and validate artifacts based on research hypothesis
Composition, confidence and contracts Hard to enforce contracts Definition of a – Technical, business, social – Verification a posteriori Application to service categories – Eg. Data storing and sharing services 35
Applications Software development environments – Cloud based forge as A composition of services for collaboration A support for trusted composition of trusted services Large scale multi organisational cooperative environment Cloud9Ide
Valorisation The Cloud is an opportunity – Iterative and incremental approach Available platform to integrate and experiment our services – Collaborative editing. – Context and awareness management. – Coordination and data services. – Service contract management.
Questions ?
Trust (Ben Schneiderman) Guideline 1.1. Disclose patterns of past performance. Guideline 1.2. Provide references from past and current users. Guideline 1.3. Get certifications from third parties. Guideline 1.4. Make it easy to locate, read, and enforce policies involving privacy and security. Guideline 2.1. Clarify each participant’s responsibilities. Guideline 2.2. Provide clear guarantees with compensation. Guideline 2.3. Support dispute resolution and mediation services.