wso2con asia 2016: building web apps using web-oriented architecture

32
Building Web Apps Using Web- Oriented Architecture (WOA) Dakshitha Ratnayake Lead Solutions Engineer WSO2

Upload: wso2-inc

Post on 22-Jan-2017

568 views

Category:

Technology


0 download

TRANSCRIPT

Building Web Apps Using Web-Oriented Architecture (WOA) Dakshitha Ratnayake Lead Solutions Engineer WSO2

Building Web Apps

Using Web-Oriented

Architecture (woa)

Dakshitha Ratnayake

Lead Solutions Engineer

Woa defintion

• Web-oriented architecture (WOA) is a type of software architecture that is designed to be used for website and Web applications.

• It builds on service-oriented architecture (SOA) by adding support for Web-based software application and services.

• The key difference between SOA and WOA is the use of REST APIs by WOA instead of SOAP by SOA.

• No! • WOA is much more than REST! • REST is just the foundational architectural style for WOA.. • WOA is really a set of best practices for designing Web

applications • WOA includes:

– a set of consumption models – a set of widely-used standards and technologies for data

representation, data exchange and portability

• Identity, security, Web applications model, new distribution models are not accounted for by REST alone either.

Is woa just rest?

Dakshitha Ratnayake

Lead Solutions Engineer

The WOA

Stack

apis Widgets

Mashups

OPML

• WOA clearly offers a number of advantages to traditional SOA. – improved service consumption models that are:

• less expensive

• Less time consuming to use

–link architecture to drive information discovery, leverage, and analysis.

–The profound business implications of open web APIs

Woa vs soa

• The WOA approach is not ideal for every scenario.

• For the enterprise architecture, no one approach will fit all needs.

• Most enterprises have the inevitable mix of the following:

–legacy applications

–existing investments in SOAP-style SOA

–point-to-point integration infrastructure

• true pure-play WOA will be all but nonexistent.

Should woa replace soa?

How woa adds value to

soa

• WOA is a way of implementing SOA by creating services that are RESTful resources.

• Woa dramatically simplifies things over the traditional WS-* approach.

• WOA resources are stateless and self-descriptive.

• Hundreds of companies have opened their SOA to the Web - Most are using WOA models for this.

WOA = SOA + WWW + REST

Dakshitha Ratnayake

Lead Solutions Engineer

Trigger for web apis

• The significant shift came when smartphones became mainstream.

• Mobile application ("app") development became commonplace and accessible to a huge audience of developers.

• apps can rarely do much on their own.

• They need to interact with the world of data around them.

Building Web Apps

Using Web-Oriented

Architecture (woa)

Dakshitha Ratnayake

Lead Solutions Engineer

Typical Three-Layered

Architecture

User Interface

Business

Data

Architecure Patterns

User Interface

Business

Data

MVC

WOA

Architecture Patterns

View Controller

Model

Browser

Business

Data

rest rest rest

technologies

WOA

Security SOAP

Architecture Patterns

Mobile App (Native/HTML5)

(Restful/JSON) APIs

Integration Services (WS-*,xml,soap)

Core Services (WS-*,xml,soap)

CAN be B2B Partners

How wso2 fits in

Mobile App (Native/HTML5)

(Restful/JSON) APIs

Integration Services (WS-*,xml,soap)

Core Services (WS-*,xml,soap)

B2B Partners

Getting started

Dakshitha Ratnayake

Lead Solutions Engineer

AS-iS Landscape

Mediation/Integration

Connectors

Adapters

New Services

Existing Services

Legacy Applications

Identity & Key Management

Analytics

Consumer Channels

Service Registry

DataBases

Enable SOA

Mediation/Integration

Connectors

Adapters

New Services

Existing Services

Legacy Applications

Identity & Key Management

Analytics

Consumer Channels

Service Registry

Registry/ Repository

Mediation/Integration

Connectors

Adapters

New Services

Existing Services

Legacy Applications

Identity & Key Management

Analytics

Consumer Channels

Service Registry

Identity And Access

Control

Mediation/Integration

Connectors

Adapters

New Services

Existing Services

Legacy Applications

Identity & Key Management

Analytics

Consumer Channels

Service Registry

Connectivity Internal

Mediation/Integration

Connectors

Adapters

New Services

Existing Services

Legacy Applications

Identity & Key Management

Analytics

Consumer Channels

Service Registry

Connectivity external

Mediation/Integration

Connectors

Adapters

New Services

Existing Services

Legacy Applications

Identity & Key Management

Analytics

Consumer Channels

Service Registry

Enable WOA with APIs

API Management

Mediation/Integration

Connectors

Adapters

New Services

Existing Services

Legacy Applications

Identity & Key Management

Analytics

Consumer Channels

Service Registry

Monitoring and

Analytics

API Management

Mediation/Integration

Connectors

Adapters

New Services

Existing Services

Legacy Applications

Identity & Key Management

Analytics

Consumer Channels

Service Registry

Fill in the blanks

API Management

Mediation/Integration

Connectors

Adapters

New Services

Existing Services

Legacy Applications

Identity & Key Management

Analytics

Consumer Channels

Service Registry

Manage Applications

APP Publisher APP Store

FIND

SUBSCRIBE Explore

Creators

PUBLISH

Manage

Monitor

RUNTIME

WEB APP GAteway

APPS

Monito

ring A

nd A

nalytics

Design

END USERS

END-USER APPs

Security/throttling./SLAs

• WOA != REST

• REST is WOA’s fundamental architectural pattern

• WOA offers a number of advantages to traditional SOA

• WoA = rest + soa + www

Key Takeaways

Questions?

Image Source - http://www.nextavenue.org/wp-content/uploads/2015/05/10-job-interview-questions-you-should-ask_0.jpg

https://www.techopedia.com/definition/30272/web-oriented-architecture-woa

http://www.cnet.com/news/web-oriented-architecture-and-the-rise-of-pragmatic-soa/

http://www.slideshare.net/lucasjellema/adf-enterprise-mobilityrestificationofsoasuitemay2014

http://asanka.abeysinghe.org/2011/05/extend-web-architecture-with-soa.html

references

Thank You