Transcript

Diwakar K VApril 13, 2023

- 2 -

What is SOA?

How is SOA Testing different from traditional testing?

L&G SOA Project Architecture

Testing model in SOA Test Team

Scope of Automation & Framework followed

Scripting standards

Communication model – Offshore & Onshore

Q& A

- 3 -

Why do I need to learn another Architecture ?Why do I need to learn another Architecture ?

Is there a problem or need that it addresses?Is there a problem or need that it addresses?

Is there a problem or need that it addresses?Is there a problem or need that it addresses?

- 4 -

A small story about the growth of grocery shop and the problems it faced while expanding its business

• Mr. Edward owned a grocery store specialized in selling international food items

• Hired more employees

• Started IT department. Hired consultant

A small story about the growth of grocery shop and the problems it faced while expanding its business

• Mr. Edward owned a grocery store specialized in selling international food items

• Hired more employees

• Started IT department. Hired consultant

InfraInfra

DataData

LogicLogic

InterfaceInterface

PeoplePeople

Traditional three-tier structure

- 5 -

On his way to prosperity ,he started opening new branches at many places !!!!

He replicated the same software at all the places because the organizational structure were identical

replications of his first shop

He enjoyed more success and the software made data management and data storage very easy!!!

On his way to prosperity ,he started opening new branches at many places !!!!

He replicated the same software at all the places because the organizational structure were identical

replications of his first shop

He enjoyed more success and the software made data management and data storage very easy!!!

InfraInfra

DataData

LogicLogic

InterfaceInterface

InfraInfra

DataData

LogicLogic

InterfaceInterface

InfraInfra

DataData

LogicLogic

InterfaceInterface

EAI

ETL

EAI

ETL

PeoplePeople

- 6 -

• Competition in the global market

• Cost cutting but wasn’t enough

• Buy international food processing companies

• Discussed with IT department - merging 2 companies software - 18 months to 2 year

• Competition in the global market

• Cost cutting but wasn’t enough

• Buy international food processing companies

• Discussed with IT department - merging 2 companies software - 18 months to 2 year

As boundaries within and between enterprises become increasingly permeable, there is a

greater need for information flow. This is inhibited by the 'information silos' formed

by traditional software applications. Service oriented architecture (SOA) replaces

these silos with loosely-coupled services, enabling information to flow as needed,

and delivering enterprise agility

SOA helps systems remain scalable & flexible while your business is

growing/changing

- 7 -

- 8 -

• Enterprises are made up of a set of Business Processes

–Day to day, week to week, year to year stuff

• These business processes can be broken down into more

fundamental discrete building blocks known as Services

• Enterprises are made up of a set of Business Processes

–Day to day, week to week, year to year stuff

• These business processes can be broken down into more

fundamental discrete building blocks known as Services

Business ProcessBusiness Process

Sub ProcessSub Process

Sub ProcessSub Process

Sub ProcessSub Process

ActivityActivity

ActivityActivity

ActivityActivity Services

Service is the IT realization of some self-contained business functionality

It hides the technical implementation details

◦ Abstract black box with a formal contract of engagement

◦ Allows business people to understand it

Can be reused and assembled into Business Processes

Consumer & provider of the service are loosely coupled

- 9 -

- 10

-

Business Process building blocks

This is what big Business wants! They want to play with their Legoand make lots and lots of money

This is what big Business wants! They want to play with their Legoand make lots and lots of money

- 11

-

Claim Request

Validate Input

Create Claim Application

Verify the Credibility

Transfer Application Data

Approve Claim Reject Claim

Send response

(Reuse existing) (Reuse existing)

(Reuse existing) (Reuse existing)

(Use external)(Use external)

(Create new) (Create new)

Options

• Reuse existing

service

• Use external

service

• Create new

service

Options

• Reuse existing

service

• Use external

service

• Create new

service

Business-Driven vs Technically driven Interface

Service Reuse

Service Compositions (Composite Applications)

Loose Coupling (of Service Consumers & Providers)

- 12

-

Technically driven Interface CustomerOP (action, //”create”, ”read”, ”change”, “delete” id, // customer id or null name, // new customer name or null address, // new customer address or null account) // new customer bank account or null

- 13

-

Business-driven

• create Customer (name, // new customer name

• address, //customer address

• account) //customer bank account

• read Customer (id) // customer id

SOA is not about “out with the old, in with the new”

SOA is about reuse

Redundancy problem - Many similar programs

◦ Especially after acquisitions

With SOA you end with one single business service for a given function that gets

used

everywhere in your organization

Advantage - Changes only have to be made in one place

- 14

-

- 15

-

InfraInfra

DataData

LogicLogic

InterfaceInterface

PeoplePeople

InfraInfra

DataData

LogicLogic

InterfaceInterface

PeoplePeopleConversation

EAI

ETL

• Conversation - Human Level

• EAI - Logic Level

• ETL - Data Level

• Conversation - Human Level

• EAI - Logic Level

• ETL - Data Level

- 16

-

InfraInfraInfraInfra

DataData

LogicLogic

InterfaceInterface

PeoplePeople

DataData

ServiceService

ProcessProcess

InterfaceInterface

PeoplePeople

- 17

-

InfraInfra

DataData

LogicLogic

InterfaceInterface

PeoplePeople

InfraInfra

DataData

ServiceService

ProcessProcess

InterfaceInterface

PeoplePeople

Service Access Mediation

Service Operations

- 18

-

- 19 -

InfraInfra

DataData

LogicLogic

InterfaceInterface

PeoplePeople

InfraInfra

DataData

ServiceService

ProcessProcess

InterfaceInterface

PeoplePeopleWeb Browser Interface

Fat Client Interface

Cell Phone/PDA Interface

EDI Channel Interface

Web Services Interface

- 20 -

X YWW W

C

Z

B

BusinessUnit I

BusinessUnit II

Corp Unit

A

• Applications A, B and C all need Customer Information

• W = Similar ‘Get Customer Information’ applications

• Applications A, B and C all need Customer Information

• W = Similar ‘Get Customer Information’ applications

- 21 -

X YW

C

Z

B

BusinessUnit I

BusinessUnit II

Corp Unit

A

ServiceConsumers

ServiceProvider

Components

W = “Get Customer Information” as a shared serviceW = “Get Customer Information” as a shared service

- 22 -

- 23 -

Reduction in the cost of maintaining application portfolio

◦ Change & test only one service

◦ Only need skills set in which the service was developed

Enables business to update its operations more quickly

◦ Only one place where code change needs to be made and so change

is implemented quickly

◦ Reduces Business risk

◦ Errors limited to new development, not in reuse of existing services

◦ So less rework & testing because of less defects

- 24 -

Governance is imperative for success in SOA

Establishing & Enforcing processes & policies

◦ To ensure that existing services are reused & not duplicated

◦ Who is allowed to change a service that is reused by others

◦ Ensure that services are developed in alignment with business requirements

◦ Ensure that projects follow the established governance policies

- 25 -

- 26 -

- 27 -

• SOA Testing is Testing an Architecture

• Services may/may not have a user interface

• Dynamic changes in the business requirements

• Data driven business logic within services

• External services to the organization

• Predicting the future usage of services to assist with performance, load, stress, scalability.

• SOA Testing is Testing an Architecture

• Services may/may not have a user interface

• Dynamic changes in the business requirements

• Data driven business logic within services

• External services to the organization

• Predicting the future usage of services to assist with performance, load, stress, scalability.

- 28 -

- 29 -

• UI applications are developed using WICKET, SPRING and AJAX

- 30 -

• The orchestrations are responsible for managing the overall execution of a specific business process – orchestration directs and manages the assembly of multiple component business activity services, to create a composite business process.

• Developed in WID (Web Sphere Integration Developer – IBM) and deployed on WPS (Web Sphere Process Server).

- 31

-

• These services represent discrete business activities or functions that can be reused by other business units across the enterprise.

• Developed in WID (Web Sphere Integration Developer – IBM) and deployed on WPS (Web Sphere Process Server).

- 32

-

• It is a layer which helps in communicating with backend systems. This layer consists of L&G Technical infrastructure like MQ, CTG (CICS Transition Gateway) ., etc

Test Stages

Functional Test• Services (SET)• User Interface (UI test)• Shake down (E2E Test, including

extranet)

Non Functional Test• Performance• Portability• Usability

OAT

UAT• User Acceptance testing

Model Office (Business Trialling)• Business processes• Customer experience

- 33

-

Test Familiarization◦ Understanding the service functionality, getting familiar with the data attributes, looking the

CVT codes required for all mandatory attributes.

Test Preparation◦ Derive High level test conditions from Business functionality provided in the service contract◦ Prepare the skeleton data sheet, Browse the Mainframe database for fetching the data,

Populate the sheet with data and prepare the data ready for all the test conditions specified.

DEC◦ Submit the high level test conditions for SA review and identify the DEC

Test execution through Harness◦ Test execution is done in Test Harness, a façade interface for the business services. Expected

and actual data is compared

Defect fixing

- 34

-

Test Familiarization◦ Understanding the UI functionality, getting familiar with the data attributes, looking

the CVT codes required for all mandatory attributes.

Test Preparation◦ Derive Test cases covering Mandatory validations and functionality of the UI screens

DEC◦ Submit the UI test cases as DEC

Test execution through UI Prototype◦ Test execution is done once UI prototype is ready

Defect fixing

- 35

-

Input the Payload data through the test harness for the Orchestration service, and click on submit.

At the same time login to the BPC* explorer and check if a human task and a Process task has been created

The Human task should have all the Common data and the Payload data mentioned in the Task document and the Orchestration service. Check all the data is correct and make changes to the payload data if required (on BPC). Complete the task on BPC. This should be returned back to the Orchestration service, which would initiate the next task.

Open Bare Tail (Open source tool) and check the log files. This should have all the payload data, which is returned back to the Orchestration. Verify this payload data.

The Orchestration will continue to create the next task synchronously which again can be viewed on BPC.

The above process is repeated till the last task has been checked as per the Sequence in the Activity Diagram shown below.

- 36

-

Flow identified and framework is used to create e2e test cases Test preparation done for the flow UI screens can only be seen

- 37

-

Microsoft Excel Worksheet

- 38

-

top related