SCC: a service centered calculus
read more
Citations
A calculus for orchestration of web services
Foundations of Session Types and Behavioural Contracts
SENSORIA process calculi for service-oriented computing
Semantic-Based development of service-oriented systems
Sessions and Pipelines for Structured Service Programming
References
The Lambda Calculus. Its Syntax and Semantics
Workflow Patterns
Coordination models and languages
Language Primitives and Type Discipline for Structured Communication-Based Programming
Language Primitives and Type Discipline for Structured Communication-Based Programming, Subject Reduction and Type Safety Theorems
Related Papers (5)
Frequently Asked Questions (9)
Q2. What future works have the authors mentioned in the paper "Scc: a service centered calculus" ?
While distribution of processes over sites is certainly a needed issue in their agenda, the development of a type system is a major goal for future work. The authors also plan to investigate the use of the session-closing mechanism for programming long-running transactions and related compensation policies in the context of web applications, in the vein e. g. of [ 7, 13 ], and its relationship with the cCSP and the sagas-calculi discussed in [ 6 ]. The authors believe that this type system would show the benefits of the concept of session even more clearly. The impact of adding a mechanism of delegation deserves further investigation.
Q3. What is the motivation behind the introduction of a new calculus?
The motivation behind the introduction of a new calculus is that a small set of well-disciplined primitives will favor and make more scalable the development of typing systems and proof techniques centered around the notions of service and session, for ensuring, e.g., compatibility of client and service behaviour, or the absence of deadlock in service composition.
Q4. What is the function tn used to check if a session is closed?
An auxiliary function tn is defined on active contexts that keeps track of the termination names associated to sessions in which the hole of the context is enclosed.
Q5. What is the role of formalisms for service description in the project?
A crucial role in the project will be played by formalisms for service description that lay the mathematical basis for analysing and experimenting with components interactions, for combining services and formalising crucial aspects of service level agreements.
Q6. What is the -reduction rule for the lazy semantics?
The authors recall that the λ expressions M,N, ... can be either a variable x, the abstraction λx.M or the application M N , and that the β-reduction rules for the lazy semantics are:(λx.M)N → M [N/x]
Q7. What is the function tn used to check?
For instance, in the first rule (which is an adaptation of the corresponding first rule in Figure 3) the function tn is used to check whether the invocation of the service s must be interpreted as a termination signal or not.
Q8. What are some of the features that have been left out of the present version of the calculus?
Some features that naturally fall within the scope of service oriented computing have been left out of (well-formed processes in) the present version of the calculus.
Q9. What is the difference between PSC and the full calculus?
2.2 Encoding of PSC into π-calculusIn this subsection the authors aim to show that PSC can be seen as a disciplined fragment of the π-calculus, where processes can communicate only according to the interaction mechanisms provided by the service oriented metaphor.