Tuesday, 9 February 2016

SOA Basic Interview Questions

SOA Basic Interview Questions



Question : What is SOA?
Ans: Service Oriented Architecture (SOA) is used to develop Enterprise applications by using a collection of services which communicates each other. Service-Oriented Architecture (SOA) is a set of principles and methodologies for designing and developing software in the form of interoperable services.

Question : Is Oracle SOA same as Oracle Fusion Middleware? 
Ans: No because SOA is one of the parts in Fusion middleware and SOA behaves like user interface where as Fusion is big platform 

Question :Principles of SOA? 
Ans:
  • Loose coupling
  • Re-usability 
  • Interoperability 
  • Flexible 

Question :  What is SCA? 
Ans: Service Component Architecture defines how various enterprise pieces are created and assembled together as modular components to increase IT Sustainability and flexibility. SCA provides a programming model for building applications and systems based on a Service Oriented Architecture. In simple terms, its like a platform on which you deploy your SOA applications in a more standard,easier and flexible manner.

Question :What is the difference between 10g and 11g?
Ans: 
  • SCA architecture was followed in 11g and not in 10g 
  • In 11g you can put all your project SOA components in composite.xml file and deploy as a single deployment unit to single server, where in 10g you have to deploy each component to the respective server (i.e. ESB to ESB server, BPEL to BPEL Server) 
  • Basically all the SOA components like BPEL, ESB (Called Mediator in 11g), & OWSM are brought into one place in 11g using SCA composite concept. 
  • The major difference between 10g & 11g would be the app server container. 10g by default runs onOC4J while 11g runs on Web logic Server. 
  • In 10g every BPEL is a separate project, but in 11g several components can make 1 project as SCA. 
  • In 10g consoles are separate for BPEL and ESB, but in 11g Enterprise Manager contains all. 
  • In 10g BAM and business rules are outside SOA Suite, but in 11g they are in SOA Suite. 
Question : What is xml?
Ans: extensible markup language is used to store or transfer data temporary. In XML all tags are user defined.

Question :Diff between well formed XML and valid XML?
Ans: If an XML satisfying all XML syntax rules then it called well formed XML, if an XML satisfying both XML rules and XSD definitions then it called valid XML.
All valid XML’s are well formed xml, but all well-formed XML may not be valid XML.

Question :XML syntax rules?
Ans:              XML Tags are Case Sensitive
a.     All XML Elements Must Have a Closing Tag
b.     XML Elements Must be Properly Nested
c.     XML Documents Must Have a Root Element
d.    XML Attribute Values Must be quoted

Question :What is XSD?
Ans: XSD (XML Schema definition) is used to define the structure of an XML. An XML Schema:
·         defines elements that can appear in a xml document
·         defines attributes that can appear in a xml document
·         defines the order of parent and child elements
·         defines data types for elements and attributes
·         Defines default and fixed values for elements and attributes.

Question :What is namespace?
Ans: XML namespaces provide a simple method for qualifying element and attribute names used in xml or  Namespace are a simple and straightforward way to distinguish names used in xml documents. namespace logically creates a separate room for the element and attribute definitions. XML Namespaces provide a method to avoid element name conflicts.

Question :What is target namespace?
Ans: A target name space in XSD used to represents all the element and attribute definitions in that current XSD.

Question: Different  types of elements in XML?
Ans: Simple type:A simple element is an XML element that contains only text. It cannot contain any other elements or attributes.
Complex type:if an element contains complex structure like child elements, attributes then it called complex type.

QuestionDifference between import and include in namespace?
Ans:  If the importing XSD namespace is equal to the current target namespace then we have to use include keyword, If the importing XSD name space is different from the current XSD target namespace then use IMPORT keyword.

QuestionHow to specify mandatory and optional elements in XSD? Or how to specify xml element occurrence in XSD?
Ans: by using keywords minoccures and maxoccures , by default minoccures=1 and maxoccures=1 (i.e all fields are mandatory).

QuestionHow to specify restrictions in XSD for xml element values?
<xs:restriction base="xs:string">

      <xs:pattern value="[a-z]"/>
    </xs:restriction>

<xs:restriction base="xs:string">

      <xs:length value="8"/>
    </xs:restriction>



Question : What is Web Service ?

Answer: Web service is a piece of code which is available on web (internet). That code of piece can be developed in any language (java, .net etc). A client invokes the web service by sending XML message and it wait for xml response (synchronously or asynchronously).

Or
Web services are application components, which are self-contained and self-describing and provide services based on the open protocol communication (i.e SOAP UI, HTTP over the net).




Question: What is WSDL ?
Answer : WSDL stands for Web Services Description Language, is an XML-based language for describing Web services and how to access them.

WSDL is a document written in XML. The document describes a Web service. It specifies the location of the service and the operations (or methods) the service exposes.



Question: Explain elements/tags of WSDL ?
Answer :  


Element Name
Description
types
It defines the xml schema data types used by the web service. inside types we have XSD.
message
Defines the data elements for each operation.Messages are connected to the elements in XSD, it brings details from TYPE. there are two messages,first message links to Process, second message links to Process response.
portType
Describes the operations that can be performed and the message involved.the port type element defines a web service,the operation that can performed and the messages that are involved.(port is logical grouping of operations),the request,response types is the most common operations,but WSDL defines four port type operations.
binding
It gives the information about the message level and transport level protocol
service
A collection of related endpoints, where an endpoint is defined as a combination of a binding and an address (URI)



Question:
What are the client service communication protocols? Or what are the service interaction patters or WSDL operation types.


 Ans:
   Service Type
Type
Definition
One Way
One-way
The service can receive a message but will not return a response
Synchronous
Request-response
The service can receive a request and will return a immediate response. Synchronous services works on single port
ASynchronous
Solicit-response
The service can receive a request and will return a delayed response.
Asynchronous services required two ports, one for request and one for send the response back.
Notification
Notification
The service can send a notification response without request



Question: Difference between Abstract and Concrete WSDL ?
Ans : Abstract WSDL contains only messages and operations. it dont have services and bindings.Abstract WSDL is also called Design time WSDL, Abstract WSDL is used by SOAP Server. 

Where as concrete WSDL contains messages, operations and transport specific information (JMS or Http).It also called run time WSDL, This is used by SOAP client. 


QuestionCan a WSDL contain multiple bindings?
 Ans: Yes, in each <binding> element we can specify specific communication protocols.



Question:What is End point URL, or End point location?

Ans: The full address of the service where it is running called “End Point Location” , or “End Point URI”. Ex:http://soathnologies:7001/soa-infra/ADD

No comments:

Post a Comment