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


  • 76 Views
  • 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

London


Agenda l.jpg

Agenda

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

WLC, WLPI, WLCS


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

IBM DCE RPC

WLE

The Background


Slide7 l.jpg

Client Systems

Mainframes

RetailCall Centre

CustomerInformation

BT.com

WebLogic Server Mid-Tier

WebLogicEnterprise Login MUX

BusinessCustomers

BusinessCustomers

COSMOS

Network

Management


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

Resolution:

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

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

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

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

Benefits

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

Foundation

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

XML

the new specification and interchange language


Slide26 l.jpg

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

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