web services done right done quickly
Download
Skip this Video
Download Presentation
Web Services Done Right Done Quickly

Loading in 2 Seconds...

play fullscreen
1 / 34

Web Services Done Right Done Quickly - PowerPoint PPT Presentation


  • 116 Views
  • Uploaded on

Web Services Done Right Done Quickly. Matthew Fowler New Technology/ enterprise Ltd London. Agenda. NT/e\'s Experience Architecture for Web Services JeeWiz - A J2EE System Generator. NT/ e ’s Experience with BEA. 40 Projects on behalf of BEA All sizes - very large to small

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Web Services Done Right Done Quickly' - candace


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
web services done right done quickly

Web ServicesDone RightDone Quickly

Matthew Fowler

New Technology/enterprise Ltd

London

agenda
Agenda

NT/e\'s Experience

Architecture for Web Services

JeeWiz - A J2EE System Generator

nt e s experience with bea
NT/e’s Experience with BEA

40 Projects on behalf of BEA

All sizes - very large to small

All roles - architect to deployer

All stages - Proof Of Concept to go-live

WLS Training - Development, Admin

WLS 4.0 -> WLS 6.1

WLC, WLPI, WLCS

some projects
Some Projects

Banks: Deutsche, Dresdner, UBS Warburg

Finance: Capital One, EBRD, Crest

Comms: British Telecom, Nokia, Equant

FT100: BA, BP Amoco, Sainsburys

Others: FT, TAG Maclaren, Jumpy, Vizzavi

BEA Partners: Accenture, CSC, Scient

part 2 architecture for web services
Part 2.Architecture for Web Services

The Background - BT Project

The Battles

The Principles

The Architecture - A Synthesis

the background
British Telecom

Internal System Team

"Common Entry Point"

Multi-channel, multi-client ... large!

WLS replaced

IBM DCE RPC

WLE

The Background
slide7

Client Systems

Mainframes

RetailCall Centre

CustomerInformation

BT.com

WebLogic Server Mid-Tier

WebLogicEnterprise Login MUX

BusinessCustomers

BusinessCustomers

COSMOS

Network

Management

the battles
The Battles

RMI or EJB access route

Straight-through, no value-add

Stateful or Stateless

Ru-Use on Business Objects

Access to "Entities"

Where is the business logic

Access to mainframes/back-end services

rmi or ejb access route
RMI or EJB access route

Issue: RMI access simpler, it\'s an option

Need: Transaction & network management

Resolution: EJB - RMI excluded

Realisation: EJB Facade layer

straight through no value add
Straight-through, no value-add

Issue: enough business logic on mainframe

Need: access to login server

Resolution: Support straight-through

Value added

Transaction & network management

Access Routes at front and back ends

Realisation: Special Session EJBs

stateful or stateless
Stateful or Stateless

Issue: amount of mid-tier information

Need: response-time/throughput goals

Resolution: allow either

re use on business objects
Re-Use on Business Objects ?

Issue: Scepticism concerning reuse on "Business Objects"

Need: ROI demands maximal reuse

Resolution:

Reusable "Business Objects"

Non-reusable "Business Process Objects"

Realisation: BPOs and BOs

access to entities
Access To "Entities"

Issue: "give me entity info, no biz process"

Need: simple multi-client access to entity information

Resolution: allow access to Biz Objects

Realisation: generic "BO Access" Session EJB

Caveat: use for retrieval only

where is the business logic
Where is the business logic

Issue: Why have business logic in mid-tier?

Need: Performance, ease of programming

Resolution: allow none, or lots

Realisation: three styles:

no business object

access to business object via generic EJB

use full BPO stack

access to mainframes back end services
Issues:

Little objects, big transactions

Multiple-choices for mainframe transactions

Migration to WebServices at M/F

Resolution:

Information Layer driven by Business Process

Smart mapping, caching, XML intermediate

Access to Mainframes/back-end services
slide16

Channels

Access Routes (Servlets)

Pluggable Access Routes, e.g. SOAP, Http/XML

Accessible Services

Services (Session EJBs)

Client Identity, BP Selection, Exception Handling

Accessible Business Processes

Business Process Objects (Java)

Client-Specific Business Procedures

Business Concepts

Business Objects (Java)

e.g. AccountBO, CustomerBO, OrderBO

Dependent Data

e.g. OrderLine

Business Information

Information Objects (Java)

e.g. Account, Customer, Order

Dependent Data

Persistence

Persistence / Transactions

EJB, Connectors, Web Services, CORBA

slide17

Business ProcessAutomation

Http/XMLClient

SOAP Client

JavaClient

WLS

Http/XMLServlet

SOAPServlet

Services - Session EJBs

Business Processes

Generic BO Access

Business Objects

Information Objects

CORBA

EJB

WebServices

JCA

done right
Done Right

Major long-term savings

Can handle highly complex processes

But not done quickly

Long Proof

Application Programmer training

How to do it quickly ???

slide19
J2EE Development 1999-2001

The JeeWiz! Vision

How JeeWiz! Works

Benefits

Next Steps

Part 2.The Java Enterprise System Builder

j2ee development 1999 2001
J2EE Development 1999-2001

Start-up long and expensive

Architecture, PoC, Performance, Document

And finally … the application

Constant Change - EJB1.1/2.0, JSPs, Portals

Mixing of Infrastructure and App Development

Complex, difficult to change

j2ee development example
J2EE Development Example

8 months duration, average 4 people

Develop sample, productise, throw away

Develop sample, productise, document

Try to teach Application programmers

But it was really hard

Total cost: > DM 1,000,000

the jeewiz vision
The JeeWiz! Vision

First Vertical Slice, Localised, in 2 Weeks

Good for small or large enterprises

the jeewiz vision goals
The JeeWiz! Vision - Goals

Simplify for application developers

Easier adaptation to change

Package architectural patterns

Reduce start-up time

Reduce cost

Reduce risk

how jeewiz works
How JeeWiz! Works

Application Development and Deployment

J2EE System

Components and Patterns for Web Services

Foundation

Ant + Patterns + XML Specifications

jeewiz foundation tools
JeeWiz! Foundation - Tools

Ant - Java-based builder

more intelligence into the build process

Velocity - pattern generator

separate patterns from application definition

XML

the new specification and interchange language

slide26

JeeWiz! Foundation - Process

Patterns +Standards

Implementation

Unit TestApp Servers

J2EE Expert

Patterns +Standards Specification

ApplicationImplementation

Architect

SystemTestApp Servers

ApplicationProgrammer

ApplicationSpecification

ApplicationAnalyst

Out-of-the-boxpatterns and standards

ProductionApp Servers

DeploymentDescriptions

Assembler /Deployer

jeewiz foundation patterns
JeeWiz! Foundation - Patterns

Application Specification

Generated Code and Descriptors

Directory Naming

/src/AccountEJB/

entity

name

=

Account

File Naming

AccountPK.java

attribute

name

=

AccountID

Java Object Naming

public class AccountPK {

public AccountPK() {}

abstract public int getAccountID();

abstract public void setAccountID( int i );

}

type

=

int

Code generation

key

=

true

Deployment descriptor generation

<entity>

<ejb-name>AccountBean</ejb-name>

</entity>

jeewiz foundation deployment
JeeWiz! Foundation - Deployment

Runnable WLS configuration

Application programmer generates unit test deployment

Assembler / deployer add overrides

XSL-T (XML Transformations) today

\'XMLMerge\' utility tomorrow

jeewiz foundation
JeeWiz! Foundation

Patterns help application programmers

reduces effort

reduces complexity

reduces risk

eases maintenance

promotes standards

Foundation can be adapted to new areas

jeewiz j2ee patterns
JeeWiz! J2EE Patterns

Builds on the Foundation

Design language for J2EE applications

A complete set of patterns for

Web Services ...

to EJBs

Includes deployment

Doesn\'t (yet) include testing, Rational Rose

customer benefits
Customer Benefits

Cheaper, quicker start-up

Improved productivity for bulk of developers

Cheaper, quicker maintenance

Clearer reponsibilities for personnel

Easier to use new technologies

jeewiz usps
JeeWiz USPs

Combination of

build engine is end-to-end and adaptable

NT/e\'s EJB pattern

enterprise-level features for deployment

EJB2.0 and Web Services

No run-time overhead/cost

jeewiz futures
JeeWiz! Futures

Automatic testing

Integration with Rational Rose / RUP

Documentation production

Business Rules using EJB2.0

JCA, integration with WLI

ad