Differences

This shows you the differences between two versions of the page.

fullcost-background [2012/01/27 13:34]
simon [B.4 Complementarity with other research programmes]
fullcost-background [2012/04/09 14:15] (current)
kohei [B.2 Current state of knowledge]
Line 50: Line 50:
 environment such as clouds. For example,  environment such as clouds. For example, 
 during the last decade Amazon converted all of the software during the last decade Amazon converted all of the software
-components in its infrastructure so that they are based on explict+components in its infrastructure so that they are based on explicit
 communication interfaces centring on RPC/RMI, HTTP/SOAP and messaging. communication interfaces centring on RPC/RMI, HTTP/SOAP and messaging.
 The framework Amazon has achieved is commercially known as SOA (Service Oriented Architecture). The framework Amazon has achieved is commercially known as SOA (Service Oriented Architecture).
Line 66: Line 66:
 the above three forms of communication interfaces and beyond, and the the above three forms of communication interfaces and beyond, and the
 lack of clean programming language support for distributed computing. lack of clean programming language support for distributed computing.
 +
 +There are also ongoing efforts for standardising frameworks for developing large-scale distributed service-oriented systems, mainly focusing on high-level modelling languages, including the RUP standard by IBM (the RUP standard), Microsoft and others, based on existing notations such as UML and BPMN (which are originally intended for business process modelling). Their main aim is to deal with the challenges of how we can capture compatibility of interfaces of heterogeneous distributed components and their causal dependencies. These efforts currently lack a unifying basis by which we can model a general class of communication behaviours and then ground the resulting models onto programming abstractions, hence source code and runtime. Such a grounding is precisely what has made the existing modelling artifact, such as UML class diagrams, an effective basis for development.
 +
  
 === B.2.2 Production-level programming languages for building distributed services === === B.2.2 Production-level programming languages for building distributed services ===
Line 159: Line 162:
  
 Research prototype languages are often equipped with a full type checker, as well as a lightweight runtime system. Reflecting their experimental nature, runtime and tool support is often elementary. However, through their development, many important results have been obtained regarding, among others: programmability; type checking and type inference algorithms; runtime design; integration of behavioural types with traditional programming language constructs and their validation methods; dynamic validation mechanisms; and design and development experience. Some of these experiments are being further developed to offer more robust production-level support of safety assurance based on behavioural types, often associated with existing frameworks and languages, such as SOA, BPEL, and messaging infrastructure. Research prototype languages are often equipped with a full type checker, as well as a lightweight runtime system. Reflecting their experimental nature, runtime and tool support is often elementary. However, through their development, many important results have been obtained regarding, among others: programmability; type checking and type inference algorithms; runtime design; integration of behavioural types with traditional programming language constructs and their validation methods; dynamic validation mechanisms; and design and development experience. Some of these experiments are being further developed to offer more robust production-level support of safety assurance based on behavioural types, often associated with existing frameworks and languages, such as SOA, BPEL, and messaging infrastructure.
- 
  
  
 
fullcost-background.txt · Last modified: 2012/04/09 14:15 by kohei
 
Except where otherwise noted, content on this wiki is licensed under the following license:CC Attribution-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki