HomeSolutionsSOA & Enterprise Applications

SOA & Enterprise Applications

 

Service Oriented Architecture (SOA) is a flexible set of design principles used for system integration and automation of critical business processes. SOA addresses the challenge of integrating multiple systems that use different languages network protocols and data formats. As an architecture, SOA improves business agility, fosters re-usability of application logic and eliminates the boundaries between business domains.

soa-enterprise   

Over the past decade the service-oriented approach to application design has become mainstream, out-pacing all other architectural styles in adoption and user acceptance. SOA generally provides a faster, more cost-effective way for developers to integrate entperise systems across disparate organizations, allowing internal applications and external users to access busines services through well understood and well defined interfaces. 

Service Oriented Architecture enables companies to expose critical business functions as reusable components by packaging them into interoperable services that can be used by disparate systems. Composite applications, also referred to as service-oriented, are built by combining such services into a new application or business process.


It is common for departments within a company to develop and deploy SOA services using different implementation languages and network protocols, using message-oriented middleware to facilitate communication between the loosly-couped service components.

The Benefits of SOA

From a business perspective, SOA can help organizations to respond more quickly and cost-effectively to the changing market conditions and needs of their customers. For developers, service oriented design promotes reuse of business logic at the macro (service component) level rather than micro (classes, function or method) level.

The architectural approach can also simplify interconnection and access to existing (legacy) IT assets. Application developers benefit from SOA by gaining access re-usable functionality. Instead of developing process automation components from scratch, developers can tap into existing services to assemble new and unique applications.  

Additional SOA benefits:

  • cost-effective solutions when comapred to traditional integration tools
  • increased business agility, allowing easy change management and re-engineering
  • increased developer productivity when contrasted to custom solutions
  • improved system metrics, analytics and compliance reporting

Key Platform Features

The Service Application Engine™ is built from the ground up to host composite, service-oriented applications and to support a broad variety of protocols, providing flexible service interface definition facilities and allowing SOA projects to be completed at a fraction of the time and cost of traditional solutions.

The engine allows developers to exploit Service Oriented Architecture (SOA) and Event Stream Processing (ESP) techniques in order to build scalable, data-centric process flows, manage service component life-cycle and distributed deployment. Integration Service Packs allow the application fabric to connect to a broad range of packaged applications and external systems.

  • The fabric's collaborative development environment allows developer teams to create and share service, interface and data format definitions.
  • Broad connectivity to packaged applications such as Oracle and JDE Edwards, BPM, integration tools, LDAP, Files, FTP, Web Services, databases and more.
  • Access to Relational Databases: Oracle, Microsoft SQL Server, Sybase, IBM or any JDBC compliant data source.
  • Integration with Messaging Systems such JMS, IBM/WebsphereMQ or TIBCO/Rendezvous.
  • Extensible connection factory API allows developers to create their own connection factories making them a part of the fabric's reusable infrastructure.
  • Granular transaction control on database operations, allowing transacted flows and batch operations.
  • Reliable connectivity, capable of fault-tolerant recovery when accessing external systems. .
  • Easy process flow creation using  a simple event flow language with SQL-like syntax.
  • Moderator facilities and API allow developers to query component relationships and process flow, providing a way to inspect and report on the state of an active system.
  • Access to a variety of structured and semi-structured (unstructured) data formats, including Excel spreadsheets, XML documents, JSON objects and binary files.
  • Full support for REST and AJAX access to any fabric node using standard HTTP or an optimized Java Script client library.
  • Peer-to-peer messaging provides a real-time, low-latency communication fabric without the need for a centralized broker or distribution hub, reducing administrative overhead and eliminating the single point of failure.
  • Data routing and distribution rules may be specified using a simple, SQL-like syntax.
  • Fast, scalable and easy to use data grid that enables processing, query and aggregation of in-flight data using SQL or a user-defined Domain Specific Language.
  • Model-driven data cache facilities allow users to define Queues, Tables, Maps or Process Queue collections, providing facilities to create large scale data-centric process flows.
  • Supports Certified DeliveryDistribution Lists and Multi-Party Acknowledgement of data delivery.
  • Graphical visualization using the TruView Operations Console™ allows developers and operations staff to collaboratively manage process flows providing comprehensive Auditing and Reporting.
  • Real-Time Messaging and Notifications over HTTP, native messaging or popular Instant Messaging clients (ie. Trillium, ICQ or Pandion)
  • Integrated security allows developers to lock down service calls across the fabric and validate against external security mechanisms such as LDAP.