Fiorano Logo  
     Fiorano Login 
Products
   ESB Best Practices
  Service Design (1)
  Process Development
and Testing (2-7)
  Scalability and Load
Balancing (8-12)
  ESB Process Deployment
(13-14)
  Performance Tuning and
Memory Optimization (15-16)
  Application Integration on an
ESB
   Download PDF Now


Service Design

 

Best Practice 1

In its most fundamental form, SOA is an architectural approach in which application developers decompose problems into smaller modules (popularly known as Service Components or simply "Services"), each of which executes a well-defined business function and is implemented as an encapsulated component. The interactions between Services may be either request/reply or via events. SOA thus moves the focus of application design from the concept of distributed computing towards the intelligent design of modular Services. A single SOA application may involve multiple request/reply calls as well as multiple event-exchanges. As such, SOA logically unifies request-based and event-driven architecture into a single framework, since the distributed nature of the interaction between Services in an application is now overshadowed by the notion of software modularity. Finding the right level of granularity at which to implement a Service now becomes more important than the request/reply or event-driven exchanges of information between the components themselves.

In its purest form, a Service can be any application with a defined set of inputs and outputs. Services are language agnostic, can be developed in any programming language and have three important characteristics: Encapsulation, Modularity and Integrated Support for Requests and Events, the details of which can be found at http://www.fiorano.com/products/bca_characteristics.htm. It must be noted that web-services are a special case of a Service, though not all Services have to be web-services.

Best Practice 1

The key best practice in the development of a Services is to determine it's granularity: how many functions will the Service perform? Since one of the key principles of an SOA is to reduce the number of components in the implementation of a solution, the granularity cannot be too small; at the same time, adding too much functionality to the Service can make it too heavy. A balance needs to be struck and this is as much an art as it is a science.

The Fiorano ESB™ service development kit enables service development using one of many IDE's including Eclipse, JBuilder IntelliJ-Idea etc., Typical development tasks such as compiling, building and deploying services are performed via ANT scripts familiar to any developers. ANT scripts are especially useful while automating (without manual intervention) the process of building and deploying services and event processes into different environments such as QA/Staging and Production.

 



© Fiorano Software Inc. All Rights Reserved. Privacy Statement |Terms of Use
  Site Developed & Maintained by Fiorano Webteam.


 World Wide Support
 USA
:
+1-408-354-3210
 INDIA
:
+91 80 4017-0000
 UK
:
+44(0) 19328 95005