Web services done right done quickly l.jpg
This presentation is the property of its rightful owner.
Sponsored Links
1 / 34

Web Services Done Right Done Quickly PowerPoint PPT Presentation

  • Uploaded on
  • Presentation posted in: General

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

Download Presentation

Web Services Done Right Done Quickly

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 l.jpg

Web ServicesDone RightDone Quickly

Matthew Fowler

New Technology/enterprise Ltd


Agenda l.jpg


NT/e's Experience

Architecture for Web Services

JeeWiz - A J2EE System Generator

Nt e s experience with bea l.jpg

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


Some projects l.jpg

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 l.jpg

Part 2.Architecture for Web Services

The Background - BT Project

The Battles

The Principles

The Architecture - A Synthesis

The background l.jpg

British Telecom

Internal System Team

"Common Entry Point"

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

WLS replaced



The Background

Slide7 l.jpg

Client Systems


RetailCall Centre



WebLogic Server Mid-Tier

WebLogicEnterprise Login MUX






The battles l.jpg

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 l.jpg

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 l.jpg

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 l.jpg

Stateful or Stateless

Issue: amount of mid-tier information

Need: response-time/throughput goals

Resolution: allow either

Re use on business objects l.jpg

Re-Use on Business Objects ?

Issue: Scepticism concerning reuse on "Business Objects"

Need: ROI demands maximal reuse


Reusable "Business Objects"

Non-reusable "Business Process Objects"

Realisation: BPOs and BOs

Access to entities l.jpg

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 l.jpg

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 l.jpg


Little objects, big transactions

Multiple-choices for mainframe transactions

Migration to WebServices at M/F


Information Layer driven by Business Process

Smart mapping, caching, XML intermediate

Access to Mainframes/back-end services

Slide16 l.jpg


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 / Transactions

EJB, Connectors, Web Services, CORBA

Slide17 l.jpg

Business ProcessAutomation


SOAP Client





Services - Session EJBs

Business Processes

Generic BO Access

Business Objects

Information Objects





Done right l.jpg

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 l.jpg

J2EE Development 1999-2001

The JeeWiz! Vision

How JeeWiz! Works


Next Steps

Part 2.The Java Enterprise System Builder

J2ee development 1999 2001 l.jpg

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 l.jpg

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 l.jpg

The JeeWiz! Vision

First Vertical Slice, Localised, in 2 Weeks

Good for small or large enterprises

The jeewiz vision goals l.jpg

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 l.jpg

How JeeWiz! Works

Application Development and Deployment

J2EE System

Components and Patterns for Web Services


Ant + Patterns + XML Specifications

Jeewiz foundation tools l.jpg

JeeWiz! Foundation - Tools

Ant - Java-based builder

more intelligence into the build process

Velocity - pattern generator

separate patterns from application definition


the new specification and interchange language

Slide26 l.jpg

JeeWiz! Foundation - Process

Patterns +Standards


Unit TestApp Servers

J2EE Expert

Patterns +Standards Specification



SystemTestApp Servers




Out-of-the-boxpatterns and standards

ProductionApp Servers


Assembler /Deployer

Jeewiz foundation patterns l.jpg

JeeWiz! Foundation - Patterns

Application Specification

Generated Code and Descriptors

Directory Naming






File Naming






Java Object Naming

public class AccountPK {

public AccountPK() {}

abstract public int getAccountID();

abstract public void setAccountID( int i );





Code generation




Deployment descriptor generation




Jeewiz foundation deployment l.jpg

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 l.jpg

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 l.jpg

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 l.jpg

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 l.jpg

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 l.jpg

JeeWiz! Futures

Automatic testing

Integration with Rational Rose / RUP

Documentation production

Business Rules using EJB2.0

JCA, integration with WLI

  • Login