Welcome to my blog

Thursday, 1 September 2016

SOA Two marks

Service Oriented Architecture

UNIT I

1. What is Service-oriented Architecture?
SOA is a form of technology architecture that adheres to the principles of service orientation. When realized through Web services technology platform, SOA establishes the potential to support and promote these principles throughout the business process and automation domains of an enterprise.

2. Define Contemporary SOA
Major software vendors are continually conceiving new web services specifications and building increasingly powerful XML and Web services support into current technology platforms. The result is an extended variation of Service oriented architecture  referred to as Contemporary SOA.

3. What are the benefits of SOA
Improved integration ( and intrinsic interoperability)
Inherent reuse
Streamlined architectures and solutions
Leveraging the legacy investment

4. Define ‘Standard’ vs ‘specification’ vs ‘Extension’
Standard – An accepted industry standard. All of the first-generation Web services specifications are considered as standards.
Specification – A proposed or accepted standard, described in a specification. XML standards, first-generation Web services standards, and WS-* extensions all exist within specifications.
Extension – An extension typically represents a WS-* specification or a feature provided by a WS-* specification.

5. What is Single-tier client-server architecture?
The environment in which bulky mainframe backend served thin clients, are considered as an implementation of single-tier client server architecture.

6. Define two-tier architecture
Two-tier architecture consists of multiple fat clients, each with its own connection to a database on a central server. Here client side software performs the bulk of processing.

7. What is meant by distributed internet architecture?
Distributed internet architecture introduced  a new physical tier called the web server. This resulted in HTTP replacing proprietary RPC protocols used to communicate between the users workstation and the server.

8. What are the parts of automation logic?
The four identified parts of automation logic related to different sized units of logic as follows:
Ø  Messages=units of communication
Ø  Operations=units of work
Ø  Services=units of processing logic(collections of units of work)
Ø  Processes=units of automation logic(coordinated aggregation of units of work)

9. What is meant by service orientation?
Service orientation is based on the design of services which emphasizes loose coupling between units of processing logic (services).

10. What are the principles of service orientation?
  •   Services are reusable
  •  Services share a formal contract
  •  Services are loosely coupled
  •  Services abstract underlying logic
  • Services are composable
  • Services are autonomous
  • Services are stateless


11. How loose coupling is achieved between services?
Loose coupling is a condition wherein a service acquires knowledge of another service while still remaining independent of that service. It is achieved through the use of service contracts that allow services to interact within predefined parameters.

12. What is meant by service autonomy?
Autonomy requires that the range of logic exposed by a service exist within an explicit boundary. Service autonomy is a primary consideration when deciding how application logic should be divided up into services and which operations should be grouped together within a service context.

13. Write about service-level autonomy.
Here service boundaries are distinct from each other, but the service may share underlying resources. For example, a wrapper service that encapsulates a legacy environment that also is used independently from the service has service level autonomy.

14. Define pure autonomy.
The underlying logic is under complete control and ownership of the service. This is the case when the underlying logic is built from the ground up in support of the service.

15. What is meant by separation of concerns?
“Seperation of concerns” is an established software engineering theory based on the idea of breaking down a large problem into a series of individual concerns


UNIT II

1. What is meant by web service?
The term web services describes a standardized way of integrating Web based applications using the XML, SOAP, WSDL and UDDI open standards over an Internet protocol backbone.

2. List out the characteristics of Web services Framework.
ü  An abstract (vendor-neutral) existence defined by standards organizations and implemented by (proprietary) technology platforms
ü  core building blocks that include Web services, service descriptions, and messages
ü  A communications agreement centered around service descriptions based on WSDL
ü  A messaging framework comprised of SOAP technology and concepts
ü  a service description registration and discovery architecture sometimes realized through UDDI
ü  a well-defined architecture that supports messaging patterns and compositions a second generation of Web services extensions (also known as the WS-* specifications) continually broadening its underlying feature-set .

3. List the Web services platform elements:
  • SOAP (Simple Object Access Protocol)
  • UDDI (Universal Description, Discovery and Integration)
  • WSDL (Web Services Description Language)


4. Define Intermediaries
Web services and service agents that route and process a message after it is initially sent and before it arrives at its ultimate destination are referred to as intermediaries or intermediary services.

5. Explain about the types of intermediaries.
There are two types of intermediaries: Active intermediary and passive intermediary.
Active intermediary: route messages to a forwarding destination. These intermediaries always alter data in header blocks and may insert or even delete header blocks entirely.
Passive intermediary: responsible for routing messages to a subsequent location. This type of intermediary use the message header to determine routing path but it does not modify the message.

6. What is meant by endpoint?
A WSDL describes the point of contact for a service provider known as the service endpoint or just endpoint.

7. Define service contract.
Service contract means a set of conditions that must be met and accepted by a potential service requestor to enable successful communication.

8. Define message payload.
The actual message contents are hosted by the message body, which typically consists of XML formatted data. The contents of a message body are often referred to as message payload.

9. Write about Message Exchange patterns.
Message Exchange patterns (MEP)  represent  a set of templates that provide a group of already mapped out sequences for the exchange of messages. The most common example is request and response pattern.

10. Write about publish-and–subscribe model.
Publisher and subscriber involved in the transmission and receipt of messages. This asynchronous MEP accommodates a requirement for a publisher to make its messages available to a number of subscribers interested in receiving them.

11. What are the steps involved in the publish-and-subscribe model.
Step 1: The subscriber sends a message to notify the publisher that it wants to receive messages on a particular topic.
Step 2: Upon the availability of the requested information, the publisher broadcasts messages on the particular topic to all of that topic’s subscribers.

12. What is meant by activity?
An activity is a generic concept used to represent a task or a unit of work performed by a set of services.

13. Write about ACID transactions.
Atomic – Either all of the changes within the scope of the transaction succeed or none of them succeed.
Consistent – None of the the data changes made as a result of the transaction can violate the validity of any associated data models. Any violations result in a rollback of the transaction.
Isolated – If mulatiple transactions occur concurrently, they may not interfere with each other. Each transaction must be guaranteed an isolated execution environment.
Durable – Upon the completion of a successful transaction, changes made as a result of the transaction can survive subsequent failures.

15. Define orchestration.
Orchestration has been called the  “heart of SOA”, as it establishes a means of centralizing and controlling a great deal of inter and intra application logic through a standardized service model.

16.  Write about choreography.
Choreography is a complex activity comprised of a service composition and a series of MEPS.
The concept of choreography extends the SOA vision to standardize cross-organization collaboration.

17. What is meant by hybrid services?
Services that contain both application and business logic can be referred to as hybrid application services or hybrid services.

18. Write about wrapper services.
Wrapper services are most used for integration purposes. They consist of services that encapsulate (Wrap) some or all parts of a legacy environment to expose legacy functionality to service requestors.

19. What are the two models created in business service layer abstraction?
ü  Task-centric business service
ü  Entity-centric business service

20. What are the three common layers of SOA?
ü  Application service layer
ü  Business service layer
ü  Orchestration service layer

UNIT III

1. What is the domain of service oriented analysis?
The process of determining how business automation requirements can be represented through service-orientation is the domain of the Service Oriented analysis.

2. Define service modeling.
Service modeling is a process of identifying candidate service operation and then grouping them into a logical context.

3. Define Service oriented design.
Service-oriented design is a heavily standards-driven phase that incorporates industry conventions and service-orientation principles into the service design process. The service layers designed during this stage can include the orchestration layer, which results in a formal business process definition.

4. Define Business-centric SOA
Business-centric SOA is the process of introducing service oriented principles into the domain of business analysis.

5. Write about BPM models.
Business Process Management Models is a set of activities that is essential for a new or existing business in a way that helps an organization to optimize current business processes and future organizational and operational changes.

6. Write about Entity-centric Business services.
Entity-centric business services generally are produced as part of a long-term or on-going analysis effort to align business services with existing corporate business models.

7. What are the key service orientation principles applied to service candidate?
ü  reusability                                
ü  statelessness
ü  autonomy                  
ü  discoverability
8. Write about abstract definition and concrete definition.
WSDL document consists of abstract and concrete definition. The abstract definition contains a series of parts that include types, message, and port type (or interface), whereas the concrete definition is comprised of binding and service parts.

9. Write about the input and output elements.
Each operation construct contains input and/or output child elements that represent the request and response messages the operation is capable of processing.

10. Draw the structure of SOAP message.

11. What is the role of envelope element?
The Envelope element represents the root of SOAP message structures. It contains a mandatory Body construct and an optional Header construct.

12. What is Fault element?
The optional Fault construct provides a readymade error response that is added inside the Body construct.

13. Write the fundamental components to compose SOA.
Ø  XML data representation architecture
Ø  Web services built upon industry standards
Ø  A platform capable of hosting and processing XML data and Web services

14. Write the steps for composing SOA
Step 1: Choose Service layers
Step 2: Position core SOA standards
Step 3: Choose SOA extensions

15. What is the need for speculative analysis in Entity centric business service design?
Speculative analysis may be required to properly outfit an entity-centric business service with the required range of generic operations.

16. What is the need for application service design?
Application services need to be designed in a solution agnostic manner, implementing the utility service model so that reuse can be maximized.

17. What are the steps involved in task centric service design process?
ü  Define workflow logic
ü  Derive initial interface
ü  Apply service orientation
ü  Standardize service interface
ü  Identify required processing

18. Write about the definitions element.
This is the root or parent element of every WSDL document. It houses all other parts of the service definition and is also the location in which the many namespaces used within WSDL documents are established.

19. How business services build agility into business models?
A two-way agility is achieved by applying service layer abstraction to both business and technology ends establishes the potential for an enterprise. Changes originating in the business logic domain are accommodated by the application logic domain are accommodated by the application logic domain and vice versa.

20. What are the types of logic suitable for abstracting orchestration layer?
Potential types of logic suitable for orchestration layer include:
ü  business rules
ü  conditional logic
ü  exception logic
ü  sequence logic

UNIT IV

1. What are the requirements needed for representing basic architectural model?
ü  Development environment to program and assemble the software program. It provides a development tool that supports a programming language.
ü  Runtime for  designing our Software.
ü  APIs that expose features and functions offered by the runtime so that we can build our software program to interact with and take advantage of these features and functions.
ü  An operating system on which to deploy the runtime, APIs, and the software program. The operating system interfaces with the underlying hardware will provide additional services that can be used by the software program

2. Draw the fundamental software technology architecture layers

3. Write the types of API included in J2EE platform
ü  JAXP
ü  JAX-RPC
ü  JAXR
ü  JAXM
ü  SAAJ
ü  JAXB
ü  JMS

4. What is meant by Service Implementation Bean?
Service Implementation Bean is a class that is built by a developer to house the custom business logic of a web service.

5. Define Generated stub.
The generated stub (or just "stub") is the most common form of service client. It is auto-generated by the JAX-RPC compiler (at design time) by consuming the service provider WSDL, and producing a Java-equivalent proxy component.

6. Define dynamic proxy and dynamic invocation interface.
The dynamic proxy is a proxy component that can be invoked as any other Java component, except that the actual stub is not created until its methods are invoked at runtime. Secondly, the dynamic invocation interface bypasses the need for a physical stub altogether and allows for fully dynamic interaction between a Java component and a WSDL definition at runtime.

7. What is handlers?
To support SOAP header processing, the JAX-RPC API allows for the creation of specialized service agents called handlers. Handlers can process SOAP header blocks for messages sent by J2EE service requestors or for messages received by EJB Endpoints and JAX-RPC Service Endpoints.

8. What are the platform extensions supported in J2EE?
ü  IBM Emerging Technologies Toolkit
ü  Java Web Services Developer Pack

9. Write about JAX-WS`
Java API for XML Web Services (JAX-WS) is a technology for building web services and clients that communicate using XML. JAX-WS allows developers to write message-oriented as well as Remote Procedure Call-oriented (RPC-oriented) web services.

10. Define SEI and Service Implementation class
ü  The service endpoint interface (SEI) is a Java interface class that defines the methods to be exposed as a Web service.
ü  The service implementation class (also referred to as the service bean) implements the service endpoint interface and handles the actual servicing of incoming SOAP requests

11. Define JAX-B
Java Architecture for XML Binding (JAXB) allows Java Developers to map Java classes to XML representations. JAXB provides two main features: the ability to marshal Java objects into XML and vice versa.

12. Define Marshalling and Un marshaling.
Marshalling converts Java objects into XML data and unmarshalling converts xml data back to java objects.

13. List the architecture components of JAX-B
ü  schema compiler
ü  schema generator
ü  binding runtime framework

14. Define Registry
An XML registry is an infrastructure that enables the building, deployment, and discovery of web services.
15. Define JAX-RPC
The Java API for XML-Based RPC (JAX-RPC) is an implementation of Remote  Procedure Call (RPC) technology in the Java language. The J2ME JAX-RPC subset allows Java developers to create portable web services clients that can easily exchange data between clients and back-end servers

16. List the architecture components of .NET framework
ü  ASP.NET web forms
ü  ASP.NET web services
ü  Assemblies

17. Draw the layers of the J2EE platform as they relate to SOA.


18. Write about WSE
The Web Services Enhancements (WSE) is a toolkit that establishes an extension to the .NET framework providing a set of supplementary classes geared specifically to support key WS-* specification features. It is designed for use with Visual Studio and currently promotes support for the following WS-* specifications: WS-Addressing, WS-Policy, WS-Security (including WS-SecurityPolicy, WS-SecureConversation, WS-Trust), WS-Referral, and WS-Attachments and DIME (Direct Internet Message Encapsulation).

19. Define CLR
The Common Language Runtime (CLR) provided by the .NET framework. CLR supplies a collection of runtime agents that provide a number of services for managing .NET applications including cross language support, central data typing,  object lifecycle and memory management.

20. Write down the features of CLR
  1. Load IL code of the application into the runtime
  2. Compile the IL Code into the Native Code.
  3. Execute the Code
  4. Enforce Security
  5. Type Safety
  6. Memory Management
  7. Thread Support
  8. CAS (Code Access Security)
  9. Provide exception manager, common debugger, interoperability.
  10. Garbage Collection
  11. Cross language Integration, especially cross Lang. inheritance.

UNIT V

1. Write about WS-BPEL
WS-BPEL stands for Web services Business Process Execution Language. WS-BPEL is an XML based language enabling users to describe business process activities as Web services and define how they can be connected to accomplish specific tasks.

2. Define Process element`
The process element is the root element and must have a name attribute for assigning the name value. It is used to establish the process definition related namespaces.

3. Differentiate getVariable property and getVariableData functions.
getVariableProperty function: This function allows global property values to be retrieved from variables. It simply accepts the variable and property names as input and returns the requested value.
getVariableData function: This function is required to provide other parts of the process logic to access this data. This function has a mandatory variable name parameter and two optional arguments that can be used to specify a part of the variable data.

4. List some of the attributes of invoke element.
ü  partner element
ü  port Type element
ü  operation element
ü  input variable element
ü  output variable element

5. Write about Identifier and Expires element.
These two elements originate from a utility schema to provide reusable elements. The identifier element used to associate a unique ID value with the current activity. The Expires element sets an expires date that establishes the extent of the activity’s possible lifespan.

6. Define coordination context element.
The coordination context element is used to carry information about active coordination to participants, This parent construct contains a series of child elements that each houses a specific part of the context information being relayed by the header.

7. Define channels
Channels are the principle mechanism used to realize an interaction. A channel is named, described, and then related to the roles that realize its behavioral interface.

8. Write down the three specifications of WS-policy
ü  WS-policy
ü  WS-policy Assertions
ü  WS-policy Attachments

9. What are the assertion elements of WS-Policy?
ü  Text encoding
ü  Language
ü  spec Version
ü  Messagepredicate

10. What is the use of Preference attribute.
The preference attribute is used to specify the service’s preference as an integer value , larger integer means it denotes higher preference. Omitted preference is interpreted as a 0.

11. Write about the security element.
This element represents the fundamental header block provided by WS-Security. The security element can have a variety of child elements, ranging from XML-Encryption and XML-Signature constructs to the token elements provided by WS-Security specification itself.

12. What is meant by the BinarySecurityToken element?
The BinarySecurityToken element defines a security token that is binary encoded.

13. Write about the CipherData, CipherValue, and CipherReference elements.
The CipherData construct is required and must contain either a cipherValue element hosting the characters representing the encrypted text or a CipherReference element that provides a pointer to the encrypted values.

14. Define Canonicalization method.
This element identifies the type of  “canonicalization algorithm” used to detect and represent subtle variances in the document content.

15. Write about the Digest value element.
This element contains a value that represents the document being signed. This value is generated by applying the DigestMethod algorithm  to the XML document.