This Post is in continuation with my Previous post
SOA Interview Questions : Service Oriented Architecture Interview Questions Part 1
http://osb-dheeraj.blogspot.in/2016/02/soa-interview-questions-service.html
Can you Explain loose coupling, and How to
achieve it ?
Loose coupling is an approach to interconnecting the components in a system
or network so that those components, also called elements, depend on each other
to the least extent practicable.
The Mediation pattern,
using an enterprise service bus (ESB/OSB), will help in achieving
loose coupling to the
highest level. It will establish independence between consumers and providers
on all levels, including message formats (including SOAP, REST, XML, binary)
and transport protocols (including HTTP, FTP, JMS, File, MQ, JCA Adapter, DB
etc).
Architecturally speaking
this means the separation of concerns between consumers and providers on the
transport, message type, and message format levels.
How do I integrate my Legacy applications with
SOA ?
Legacy applications are
frequently at the core of your IT enterprise. With the right skills and tools,
you need to identify discrete elements within your legacy applications and
“wrap” them in standards-based interfaces and use them as services within your
SOA. It is possible to integrate your legacy system with other system using SOA
applications.
SOA and ESB technology
provides support to most available message formats (including SOAP, REST, XML,
binary, CSV, Text etc) and transport protocols (including HTTP, FTP, JMS, File,
MQ, JCA Adapter, DB etc).
The Service of a SOA should be engineered as
stateless or stateful ?
Service should be
stateless. It may have a context within its stateless execution, but it will
not have an intermediary state waiting for an event or a call-back. The
retention of state-related data must not extend beyond a request/response on a
service. This is because state management consumes a lot of resources, and this
can affect the scalability and availability that are required for a reusable
service.
How does the ESB/OSB fits in an Enterprise IT
system ?
The Enterprise Service
Bus is a core element of any SOA. ESBs provide the “any to any” connectivity
between services within your own company, and beyond your business to connect
to your trading partners and External service provoders. But SOA does not stop
at just implementing an ESB. Depending on what your goals are, you may want to
use an ESB to connect other services within your SOA such as information
services, interaction services and business process management services.
Additionally, you will need to consider development services and IT service management
services. The SOA reference architecture can help you lay out an SOA
environment that meets your needs and priorities. The ESB is part of this
reference architecture and provides the backbone of an SOA but it should not be
considered an SOA by itself.
Challenges faced in SOA adoption
While
implementing a service-oriented architecture, a company faces below challenges
:
- Service
identification. What is a service? What
is the business functionality to be provided by a given service? What is
the optimal granularity of the service?
- Service
location. Where should a service be
located within the enterprise or outside Enterprise Firewall over Internet
?
- Service
packaging. How is existing
functionality within legacy mainframe systems to be re-engineered or
wrapped into reusable services?
- Service
orchestration. How are composite
services to be orchestrated?
- Service
routing. How are requests from
service consumers to be routed to the appropriate service and/or service
domain?
- Service
governance. How will the enterprise
exercise governance processes to administer and maintain services?
- Service
messaging standards adoption. How will the enterprise
adopt a given standard consistently?
What is Web Service ?
A Web service has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP (Simple Object Access Protocol) messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards.
We can identify two major classes of Web services:
1. REST-compliant Web services, in which the primary purpose of the service is to manipulate representations of Web resources using a uniform set of stateless operations.
2. Arbitrary Web services, in which the service may expose an arbitrary set of operations.
A Web service has an interface described in a machine-processable format (specifically WSDL). Other systems interact with the Web service in a manner prescribed by its description using SOAP (Simple Object Access Protocol) messages, typically conveyed using HTTP with an XML serialization in conjunction with other Web-related standards.
We can identify two major classes of Web services:
1. REST-compliant Web services, in which the primary purpose of the service is to manipulate representations of Web resources using a uniform set of stateless operations.
2. Arbitrary Web services, in which the service may expose an arbitrary set of operations.
While identifying services which one is better – top-down and
bottom-up methodologies encourages re-use and maintenance?
Since
the top-down approach is business-driven it can be practical to separate
the different concerns of business and IT on different plans, providing a
common ground in between. So in most situations it the most appropriate if you
want to improve reuse and ROI in the medium/longterm.
What do you mean by SOA governance? What are the
functions of governance?
SOA
governance is a concept used for activities related to
exercising control over services in service-oriented architecture (SOA) solutions. One
viewpoint, from IBM and others, is that SOA governance is an extension (subset) of IT governance which itself is an extension of corporate governance.
Some
key activities that are often mentioned as being part of SOA governance are:
11. Managing the portfolio
of services: This includes planning development of new services and updating
current services.
22. Managing the service
lifecycle: This is meant to ensure that updates of services do not disturb
current services to the consumers.
33. Using policies to
restrict behavior: Consistency of services can be ensured by having the rules
applied to all the created services.
44. Monitoring performance
of services: The consequences of service downtime or underperformance can be
severe because of service composition. Therefore action can be taken instantly
when a problem occurs by monitoring service performance and availability.
1. SOA Interview Questions : Service Oriented Architecture Interview Questions Part 3
http://osb-dheeraj.blogspot.com/2016/02/soa-interview-questions-service_21.html
2. SOA Interview Questions : Service Oriented Architecture Interview Questions Part 4
http://osb-dheeraj.blogspot.com/2016/02/soa-interview-questions-service_77.html
http://osb-dheeraj.blogspot.in/2016/02/soa-interview-questions-service_15.html
No comments:
Post a Comment