Please navigate to the bottom of the page for Table of Contents

Tuesday, January 22, 2013

SOA interview questions

In this post we will review a few key aspects that you should understand about SOA based services. In my experience, there is no substitute for actual experience developing SOA based services, but this introduction should get you enough to start.

What is SOA?
SOA is an architecture for building applications using reusable, interoperable services which have well defined business functionalities and can be orchestrated to achieve a specific functionality by utilizing them together.

4 facts you should know about SOA Services

1.       SOA separates business functions into services (endpoints), which are made accessible over a network in order to allow users to combine and reuse them in their applications.
2.       The SOA services can be developed in different languages and OS’es as long as they follow the SOA principles.
3.       Services are unassociated and loosely coupled units that do not directly rely on each other for their full functioning. Rather than services embedding calls to each other in their source code, they use defined protocols that describe how services pass and parse messages using description metadata.
4.       Orchestration is a process where business functionality from various services are combined in a system fully aware of all available services and the associated metadata that defines these services and their characteristics.

SOA principles
SOA principles were first defined by Thomas Erl. These 8 principles are underlying to any good architecture that utilizes SOA design to build their products and services:

1.       Standardized service contract: Services adhere to a communications agreement, as defined collectively by one or more service-description documents.
2.       Service loose coupling: Services maintain a relationship that minimizes dependencies and only requires that they maintain an awareness of each other.
3.       Service abstraction: Beyond descriptions in the service contract, services hide logic from the outside world.
4.       Service reusability: Logic is divided into services with the intention of promoting reuse.
5.       Service autonomy: Services have control over the logic they encapsulate.
6.       Service statelessness: Services minimize resource consumption by deferring the management of state information when necessary
7.       Service discoverability: Services are supplemented with communicative meta data by which they can be effectively discovered and interpreted.
8.       Service composability: Services are effective composition participants, regardless of the size and complexity of the composition.

Explain some of the common terms in a SOA based architecture
SOA registry is a metadata store for services which describes what each services can do, their location, and communication protocol.

SOA workflow helps define work flow using the services in a SOA registry.

Service broker reads the work flow and takes services from the SOA registry and ties them together.

SOA supervisor ensures that services do not have issues. It deals mainly with performance issues of the system so that appropriate service levels are met.

Service Contract
Service Contract defines the “What” of a service. Think of it as a contract agreement (aka protocol) between the service and the consuming application (aka client). More specifically, it describes parameters and return values for a method.

Service Address
Service Address defines the “Where”. In other words, where can the clients find this service. Address is a URL, which points to the location of the service.

Service Binding
A Service can offer many different bindings. Bindings are the “How” you connect, access and communicate with the service. For example, SOAP over HTTP or BINARY over TCP.


  1. Replies
    1. I am glad that I saw this post. It is informative blog for us and we need this type of blog thanks for share this blog, Keep posting such instructional blogs and I am looking forward for your future posts. Python Projects for Students Data analytics is the study of dissecting crude data so as to make decisions about that data. Data analytics advances and procedures are generally utilized in business ventures to empower associations to settle on progressively Python Training in Chennai educated business choices. In the present worldwide commercial center, it isn't sufficient to assemble data and do the math; you should realize how to apply that data to genuine situations such that will affect conduct. In the program you will initially gain proficiency with the specialized skills, including R and Python dialects most usually utilized in data analytics programming and usage; Python Training in Chennai at that point center around the commonsense application, in view of genuine business issues in a scope of industry segments, for example, wellbeing, promoting and account. Project Center in Chennai

  2. SOA-Service Oriented Architecture


  3. The blog or and best that is extremely useful to keep I can share the ideas
    of the future as this is really what I was looking for, I am very comfortable and pleased to come here. Thank you very much.
    tanki online | 2048 game|


    NO.1 AQM Services | Application Quality Managment Services | Austere Technologies

  5. Hi Buddie,

    Thank you! Thank you! Thank you! Your blog was a total game changer!

    I'm learning to process sound in Java, and I thought I would start with the "javax.sound.sampled" package. I thought I would open a wav file and then play it through my computer's speaker.

    I'm calling javax.sound.sampled. AudioSystem. getAudioInputStream(InputStream), and getting an exception, and now I'm feeling kind of lost. The exception is: mark/reset not supported

    I guess it means I need some kind of better AudioInputStream class (one which supports mark/reset), or maybe it doesn't like the wav file which I picked? (I just picked some random wav file out of a /Windows/Media directory, like "alarm01.wav".)

    I read multiple articles and watched many videos about how to use this tool - and was still confused! Your instructions were easy to understand and made the process simple.


  6. They are extremely communicative and their project management skills are top notch. They listen and take feedback extremely well.
    design companyes

  7. Their patience and attention UX San Francisco to detail set them apart from other vendors.
    best ux companies

  8. Wow! Such an amazing and helpful post this is. I really really love it. I hope that you continue to do your work like this in the future also.

    Apache Spark Training in Pune
    Spark Training Institute in Pune

  9. They worked beyond the slogo designing services
    cope of a normal business day to ensure clear communication and quality service.

  10. Plumbing & HVAC Services San Diego
    Air Star Heating guarantees reliability and quality for all equipment and services.
    Air Star Heating is specializing in providing top-quality heating, ventilating, air conditioning, and plumbing services to our customers and clients.
    Our company is leading the market right now. By using our seamless and huge array of services. Our customers can now have the privilege of taking benefit from our services very easily and swiftly. To cope up with the desires and needs of our clients we have built an excellent reputation. We are already having a huge list of satisfied customers that seem to be very pleased with our services.

    Plumbing & HVAC Services in San Diego. Call now (858) 900-9977 ✓Licensed & Insured ✓Certified Experts ✓Same Day Appointment ✓Original Parts Only ✓Warranty On Every Job.

  11. They delivered what they promised and did an excellent job communicating with the SaaS provider and the customer
    top brand consulting firms

  12. I wanna thanks to a great extent for providing such informative and qualitative material therefore often.
    Bay Area design firm