Monday, August 31, 2020

SOA IQA-Basics Part-1

Why the Need For BPEL?

WSDL defined Web services have a stateless interaction model 
Messages are exchanged using Synchronous invocation
Uncorrelated asynchronous invocations
Most “real-world” business processes require a more robust interaction model
Messages exchanged in a two-way, peer-to-peer conversation lasting minutes, hours, days, etc.

BPEL provides the ability to express stateful, long-running interactions

Q. What is SOA? 

Service oriented Architecture

è It’s an architecture solution to build an integrate systems, applications, process and businesses.

è 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.

è It is a design pattern or software architecture which provide service to other application.

è It is implemented as web service.

è Architecture style and approach.

è SOA is a collection of services. 

SOA is a design methodology that advocates exposing of product functionality as services.

This enables to

Ø  Reuse functionality

Ø  Have loose coupling between functionalities

Ø    Abstract implementation

Ø  Allow multiple protocols to talk to each other 

SOA:

Ø  Reusability

Ø  Distributed deployment

Ø  Interoperability

Ø  Compensability

Key Role:

Ø  Service consumer

Ø  Service provider

Ø  Service registry

SOA key technologies include:

Ø  XML

Ø  Webservices

Ø  SOAP

Ø  WSDL

Ø  UDDI

Ø  XPATH XQUERRY

SOA Benefits:

Ø  Increase response time

Ø  Help businesses become more cost effective

Ø  Separate consumers and services

SOA Principles:

Ø  Loose Coupling

Ø  Reusability

Ø  Interoperability: In SOA, We can easily communicate btn different component in SOA.

Ø  Flexible

Ø  Service Autonomy

Ø  Service Contract

Ø  Service Abstraction

Ø  Discoverability

Ø  Service statelessness

Ø  Scalability: Without affecting code we can add different adapter


W


Q   What is the most important skill needed to adopt SOA ?technical or cultural?

Surely cultural.
->SOA does require people to think of business and technology differently. 
-> First think in terms of business functions, or services.
-> (e.g., My company does these business functions, so how can I set up my IT system to do those things for me most efficiently?).
-> (e.g., If we implement this system, what kinds of things can we do with it?)

 Q. What are the common pitfalls of SOA?

-> Developers who focus on building an SOA solution rather than solving a specific business problem are more likely to create complex, unmanageable, and unnecessary interconnections between IT resources.

-> Another common pitfall is to try to solve multiple problems at once, rather than solving small pieces of the problem.

-> Taking a top-down approach—starting with major organization-wide infrastructure investments

->Often fails either to show results in a relevant timeframe or to offer a compelling return on investment.

Q. Challenges faced in SOA adoption?

One of the challenges faced by SOA is managing services metadata.

Second biggest challenge is the lack of testing in SOA space.

Another challenge is providing appropriate levels of security.

Interoperability is another important aspect in the SOA implementations.

Vendor hype concerns SOA because it can create expectations that may not be fulfilled.

Q. Which approach between top-down and bottom-up methodologies best fits with a SOA in regards of Service identification?

SOA is an architectural style.
building architecture is a Top-Down process.
To sum up: Initially SOA is a Top-Down approach but pragmatic approach requires mixing Top-Down approach with Bottom-Up approach.

Q. What are the main benefits of SOA?

-> SOA helps create greater alignment between IT and line of business

-> More flexibility – IT flexibility to support greater business flexibility. 

-> Better reuse out of your existing IT investments as well as the new services you’re developing today.

-> SOA also provides an architectural model for integrating business partners’, customers’ and suppliers

-> This reduces cost and improves customer satisfaction.

-> Components stay loosely coupled and can be reconfigured.

-> Business services can be reused.

-> Data Security & Confidentiality.

-> Well defined Interfaces.

-> Better Flexibility and Maintenance.

Q. What is Oracle Fusion Middleware?

Oracle Fusion Middleware is a collection of standards-based software products that spans a range of tools and services.

Oracle Fusion Middleware offers complete support for development, deployment, and management.

The design tool includes a single design environment for user interface, business logic, service composition, business process or workflow, business rules, and business intelligence. The design tool enables simplified design and debugging, and to improve productivity.

Q. Is Oracle SOA same as Oracle Fusion Middleware?

No because SOA is one of the parts in Fusion middleware and SOA behaves like user interface whereas Fusion is big platform.

Q. Service-Oriented Architecture?

Service Oriented Architecture is an architectural design which includes collection of services in a network which communicate with each other. 

SOA architecture is viewed as five horizontal layers. These are described below:

·         Consumer Interface Layer:

o   This layer is used by customer

o   These are GUI based apps for end users accessing the applications. 

·         Business Process Layer:

o   Provide the business process flow. Also accommodates new changes in business easily.

o   These are business-use cases in terms of application.

·         Services Layer: These are whole-enterprise, in service inventory.

·         Service Component Layer: are used to build the services, such as functional and technical libraries.

·         Operational Systems Layer: It contains the data model.

Q. Is Oracle SOA Suite tool state full?

Yes, SOA Suite tool is a state full tool, that means in this tool we store every state in database i.e. we store all the incoming messages, transformed messages, and outgoing messages to database along with timestamp.

Q. What Is Oracle Soa Suite Tool ?­

SOA Suite tool is a middleware tool from Oracle which is based upon SOA concept comes under Oracle Fusion Middleware stack.

We use this tool for integration purpose.

.i.e. this tool is used to integrate two system/applications etc.

Q. Which Application Server Required For Oracle Soa Suite Tool?

Mostly WebLogic server is used as application server for Oracle SOA Suite tool.

Q. What is SCA

Service Component Architecture (SCA) assembly model abstracts the implementation and allows assembly of components, with little implementation details.

SCA enables you to represent business logic as reusable service components that can be easily integrated into any SCA-compliant application.

The resulting application is known as a SOA composite application. The specification for the SCA standard is maintained by the Organization for the Advancement of Structured Information Standards (OASIS).

     Service Component Architecture (SCA) provides a programming model for building applications and   systems based on a Service Oriented Architecture.
SCA is a model that aims to encompass a wide range of technologies for service components and for the access methods which are used to connect them.
The composite service has the assembly of different components of the application and these components can be deployed together at once using SCA.
The various specifications of SCA are as shown below:
Ø  Assembly Model Specification.
Ø  Binding Specification.
Ø  Components Implementation Specification.
Ø  Policy Framework Specification.
Ø  Assembling the service components into a SOA composite application.  
Ø  SCA provides a programming model that model allows creating service components written with a wide range of technologies
Ø  Provide a framework for building applications using SOA
Ø  Define a composite application where set of services are assemble together
Ø  Provide a assemble model to wire together new services and existing services
Ø  Extend and compliments existing approaches to implements services.
Ø  Designed based on open standards such as web services.

Benefits Of SCA?
1.   Easier Development : No need to write lengthy code as we get all components prebuilt.
2.    Easily compose a assembly (composite) by just linking different these prebuilt components.
3.    Better re-usability
SCA can made up of:
Ø  BPEL Process
Ø  Mediator
Ø  Human task
Ø  Business Rules
SCA simplified the entire lifecycle
Development:
è JDev can be used to develop all components.
Deployment:
è All components are grouped together in a composite and during compilation, we get a single file called SAR
è SAR can be versioned as one, deployed as one and managed as one.
Monitoring:
è EM allows to trace the entire flow, giving ability to drill down into components of a composite
     

           Q. Composite

Ø  Basic unit of SCA
Ø  It is collection of different service component ex:BPEL, Mediator etc.
Ø  Service Component that implement business logic
Ø  Binding to enable communication between Service Component and external service or between composites.
Ø  Wiring that connects components with the composite to enable communications.

Q.What is .JWS file and .jpr file?
It is a Application Workspace. Where you can find many projects.
In SOA every application extension is .jws
And every project extension is .jpr

Q. What Is BPEL?

      BPEL provides enterprises with an industry standard for business process orchestration and execution. Using BPEL, you design a business process that integrates a series of discrete services into an end-to-end process flow. This integration reduces process cost and complexity.

Ø  BPEL stands for Business Process Execution Language.

Ø  it is one of the component of SOA Suite tool.

Ø  BPEL is a XML based language used to design business process/flows.

Ø  We perform service orchestration in BPEL.

Ø  We design a business process that integrates a series of discrete services into an end-to-end process flow.

Ø  BPEL is a sub-set of the Business Process Management discipline.

Ø  BPEL bridges the gap between BPM and SOA.

Ø  BPEL does what BPM cannot do on its own

i.e. execute/orchestrate processes across department/functional systems in a standard way while at the same time providing Visibility & Control to the Business Process Owner

Q. What Are Different Parts Of BPEL?

Below are different parts of BPEL as mentioned

1.  Service Interface: A WSDL describing the functionality of the BPEL process.

 The service interface provides the end user a way to interact with the BPEL process component using Service Interface / Service Binding.

2.    Activities: units of work. The actual elements that make up the BPEL process flow or sequence of instructions to be executed.

3.    Partner links: also called Reference bindings.

 A partner link describes the roles played for the interaction between the BPEL process and the service it invokes.

Q. What Is Wire?

Connection between service & binding component and within service & binding components know as wire.

I.e. this enable us to graphically connect the components in a SOA composite application.

Q. How We Can Deploy Composite To SOA Server?

There are different methods to deploy SOA composite to SOA server.

1.       Through EM console

2.       Directly from JDeveloper

3.       Scripting (Ant, WLST etc.)

Q. Which Ide We Use For Oracle Soa Suite Tool?

We use JDeveloper IDE for Oracle SOA suite tool.

Q. Is Oracle SOA Suite tool state full 

Yes,SOA Suite tool is a state full tool, that means in this tool we store every state in database i.e. we store all the incoming messages, transformed messages, outgoing messages to database along with timestamp.

Q. What All Components/products Needs to Be Installed before We Install Oracle Soa Suite Tool?

Following components needs to be installed before we install Oracle SOA Suite.

1.    JDK

2.    Database

3.    All Required Schema (Created using RCU)

4.    WebLogic Server

Q) What Are The Components Comprise An Oracle Soa Suite Installation?

Answer :

The following components comprise an Oracle SOA Suite installation:

o    Service Infrastructure

o    Oracle Mediator

o    Oracle Adapters

o    Business Events and Events Delivery Network

o    Oracle Metadata Repository

o    Oracle Business Rules

o    Oracle WSM Policy Manager

o    Oracle BPEL Process Manager (Business Process Execution Language)

o    Human Workflow

o    Oracle Business Activity Monitoring

o    Oracle User Messaging Service

o    Oracle B2B

o    Oracle JDeveloper

o    Oracle Enterprise Manager

Q) What Is The Purpose Of Service Data Objects (sdo)?

Service Data Objects (SDO) provides a data programming architecture.
 It provides a standardized view on data,and provides efficient transportation, as well as change capture, 
in form of a change summary. 
More specifically, it collects a data graph of related business objects, called DataObjects. 
This graph tracks the schema that describes the DataObjects. 
Knowledge is not required about how to access a particular back-end data source to use SDO 
in a SOA composite application. 
Consequently, you can use static or dynamic programming styles and obtain connected and disconnected access.

Q) What is Binding component ?
" As name suggest, this component is used to bind composite application to external world. i.e. we use these components to link composite with source and target system."

Q) What are the types of Binding Components 
Binding components are of two types as mentioned below.
1. Service Binding : With the help of this binding we connect composite to source or client system or we can say this is entry point of composite.
2. Reference Binding: This binding helps composite to connect to target or reference systems or we can say it is exist point of the composite.








1 comment:

  1. Your article is valuable for me and for others. Thanks for sharing your information.
    SOA Training
    Oracle SOA Training

    ReplyDelete

SOA Overview Part-1

  Middleware It provides a mechanism for the process to interact with other processes running on multiple network machines. Advantages...