Exam preparation

advertisement
Exam preparation



Explain the layers of the SOA concept model
o Business Process Layer
o Orchestration Service Layer
o Application Service Layer
o Components Layer
Map the concept model to the prototype
o What layers are implemented in the prototype
o Explain what we have done according to the layers
 Short discussion of the degree of SOA in the prototype
 Collection of WS-Services
 Service orchestration
o Autonomous
 Description of services according to:
 Are not autonomous
o Control of execution environment
o Control of the persistent layer/database layer
o What has been left out of the layers?
 How can this be achieved?
 Examples
 Consequences
o Tight coupling between client and service
o Fine-grained services vs. coarse-grained services
 [Linkage between SOA and WS/JAX-RPC/Prototype….]
 Explain the linkage between them all.
SOA vs. OOAD
o Service-Orientation Principle and Related Object-Orientation Principles
 Service reusability
 Object Oriented Principals or Goals like:
o Reusable classes
o Abstraction
o Encapsulation
 Service reusability can be seen as a continuation of OOP
 Service contract
 Use of service contracts and interfaces when building object-oriented
application
 Use of WSDL
o Similarities as a abstraction of the description of a class
 Service loose coupling
 Use of interfaces decouples a class from the user
 Coupling is on of the primary concepts of SOA







Use of inheritance and OOP
o More tight coupling between units of processing logic
o SOA design approach provides a more loose coupling
Service abstraction
 OOP principal of abstraction requires an interface for a class
 Encapsulation support this concept by information hiding
o Any logic within a class exposed via the interface is not
accessible to the external world.
o Abstraction in SOA accomplishes much of the same as OOP
encapsulation.
 Hide the underlying details of the service
 Service contract is available and offered to the
service provider.
Service composability
 The association concept is supported in OOP.
 SOA also makes support for this principle.
 Hierarchy of objects can be composed in OOP.
 Hierarchy of services can be composed in SOA.
Service autonomy
 Achieving a level of independence between units of processing logic is
made possible in SOA => loosely coupled relationship between services.
 OOP provides references through object and inheritance based
dependencies within object-oriented design.
o Lower degree of object-level autonomy.
Service statelessness
 In OOP objects keeps state through classes and data that are stateful.
 Stateless services differ from objects in OOP.
 Possible to create stateful services and stateless objects
o Statelessness is emphasized in SOA.
Service discoverability
 Interfaces in OOP should be designed to be:
o consistent
o descriptive
 Can ease to distinguish and identify units of processing logic.
o Also makes it possible to support reuse by allowing classes to be
more easily discovered.
 Discoverability is also a principal supported in SOA
o Services can be discovered
 Service contracts be as communicative as possible to
support discoverability at the design time and run time.
Registry
o Use of dynamic lookup
o How client types make use of dynamic lookup of services
 Client types
 Generated stubs clients
 Proxy clients
 DII clients
o How can it be used in a dynamic look-up client?
o How much information is required at development time?
o Not used by the prototype
o Advantages/disadvantages with this client type
 Complex types
o Usage scenario

Use of complex types
o [Model of the concept]
o Client types and usage of complex types
 Proxy clients
 DII clients
 Mapping of Java collections?

[Second generation Web services ]
o Java/XML mapping
 Mapping Java to XML
 How this is done
o Mapping of collections
o Interoperability – consequences
o Complex types
Are Web services suited for SOA
Download