+ All Categories
Home > Documents > Planning

Planning

Date post: 25-May-2015
Category:
Upload: zubin67
View: 287 times
Download: 0 times
Share this document with a friend
Popular Tags:
38
Planning & Delivering Service Oriented Architecture (SOA) University of California, San Diego May 24, 2006 © Copyright UC Regents, 2006
Transcript
Page 1: Planning

Planning & Delivering Service Oriented Architecture (SOA)

University of California, San Diego

May 24, 2006

© Copyright UC Regents, 2006

Page 2: Planning

2

Topics

About UCSD

What is SOA?

Why Implement SOA?

Implementation Challenges

The UCSD SOA Framework

UCSD Examples Experiences and Case Studies

Q&A

Page 3: Planning

3

About UCSD

26,100 Students

23,500 Employees (Including Medical Center)

$1.9 Billion Annual Budget

$728 Million Annual Research Funding_______________________________________________________________________________________

IBM Mainframe and Sun Solaris Servers

Java (J2EE)

DB2

Page 4: Planning

4

UC San Diego and the

University of Minnesota cited as best practices in December 2005 cover story about administrative cost savings in universities

External Recognition

Page 5: Planning

5

“Using a combination of

technological and organizational resources, UCSD fosters a continuous improvement cycle that constantly strives to enhance university business operations.”

Nov. 2005 Study by the Educause Center for Applied Research

External Recognition

Page 6: Planning

6

The New Business Architecture

Page 7: Planning

7

About UCSD

Ease of Use and Access

Common Look & Feel

Web-Based Systems

Interoperability and Open Architecture

Single Signon

Evolution v. Revolution

Cost-Effectiveness

UCSD Goals:

Page 8: Planning

8

About UCSD: Business Portal

Page 9: Planning

9

About UCSD: MyDashboard – Leave Activity Report

Page 10: Planning

10

About UCSD:MyDashboard – Financial Information

Page 11: Planning

11

SOA Alphabet Soup

XMLDISCO

UDDI

XSDXSLT

rpcMoM

WS-I

DIME

SOAP

ReST

DTDSAX

DOM

BEPL

XPath

WSDL

BEPL4WS

SAML

Schema

Web Service

OASIS

SOASODA

Digital Signature

Messaging

EAI

BPMXSLT

Page 12: Planning

12

IT Challenges

Web

Life-cycles continue to shrink

Systems constantly changing for business needs

Regardless of platform, DB, technology – all systems need to:

Interoperate Communicate Integrate

Leverage departmental IT staff in enterprise development

Page 13: Planning

13

Architecture Needs

Loosely-coupled with reusable components

Promote productivity - reduce the time-to-market

Greater business agility

To drive business processes closer to end users

Technology independent

Leverage and integrate existing applications

Provide standard connections between systems

Abstract the complexity for the developers

Page 14: Planning

14

What is Service-Oriented Architecture?

What is SOA?SOA (service-oriented architecture) is a broad framework within which enterprises build, deploy, and manage services; these services are application components that can be called upon by other applications using standard protocols. The primary objective is a more agile application infrastructure that responds swiftly to shifting business demands.

Page 15: Planning

15

What is a Service?

Services are application components that are available to other applications using standard protocols (typically XML)

Examples: Create a PO inside a mainframe application Retrieving & updating student info Reviewing & changing HR benefits

Page 16: Planning

16

What is a Service

Campus Users

IBM Mainframe

PDA

Server

COBOL Application

1989Middleware

Service for retrieving & updating

Travel Information

Example of a “Service” that incorporates Mainframe code

XML

XHTML

Page 17: Planning

17

What is SOA?

Analogy to A/V Components

Years ago electronic systems were self-contained monolithic systems

Today’s electronics are pluggable and independent

Standardized connections.

Today's interchangeable components

1952-57 TV 1918-45 Radio1962 Telephone

Page 18: Planning

18

Benefits of SOA

Independence from Technology

Adequate Business Infrastructure

Agility

Reuse

Risk Mitigation

Evolutionary Approach

Cost Savings

More Efficient Development Process

Feedback at Different Levels

Page 19: Planning

19

Key Components of a SOA

A service oriented architecture is a software architecture that is based on the following key concepts:

A service consists of a contract, one or more interfaces and an implementation

SOA

Service BusService

RepositoryService

Application Frontend

Contract Implementation Interface

Business Logic Data

Page 20: Planning

20

Using a Service

Development time discovery imposes a fairly simple model. The developer is responsible for locating all required information from the service repository in order to create a client that interacts correctly with the service instance.

Developer

Service Repository

Service Contract

ServiceClient

(Application frontend or services)

Service Stub

Contains

CreatesSearches in

Based on

Invokes

Uses

Fulfills

Describes

Page 21: Planning

21

A Service Example

Message Server

Campus Application

Service

Department Application

VendorApplication

Service

Java Interface

Java/.NET/Other

Interface

Java/.NET/Other

Interface

Student Information

servicesService Contract

ResponseName : Mary SmithDOB : 10/11/1982College : MuirOther Info...

Lookup By Student ID A123456

Mainframe

SOAP XML Request

SOAP XML Response

Page 22: Planning

22

Planning for SOA @ UCSD

Approach: Think strategically and plan tactically Evolutionary not revolutionary Focus on approach, not technology “Leave & layer vs. rip & replace” Gartner Group Make it easy for developers to adopt Natural progression of original OO Architecture and

Approach Not going to happen overnight- It takes time: “the true

adoption is about two years behind the hype”. Gartner Group

Page 23: Planning

23

Planning for SOA @ UCSD

Process Experiment with Web Services

Small project high degree of success Helpful not vital

Adapt some existing systems to use Services

Remove Intersystem dependencies

Establish an Internal SOA

Expand Internal SOA to include external services.

Page 24: Planning

24

Single Sign-On

Uses Shibboleth for Authentication http://shibboleth.internet2.edu/

Supported on different platforms (based on SAML)

Uses UCSD Roles & Affiliates as the data repository for authentication and authorization

Part of the UC-Trust Collaboration project for cross-campus identity management.

Page 25: Planning

25

Case Study - MyRecords Portlets

Student portlets are provided through the MyRecords tab.

Each portlet is populated from a web service.

Information comes from either the mainframe or data warehouse.

Portlet content is cached and managed through event driven messages which implement the cache policy.

Page 26: Planning

26

ElementK Integration

UCSD supplies the Portal top banner navigation, page footer and right sidebar

Single Sign-On provides user pass through from UCSD portal to KnowledgeHub.

Web Services create user account at the time of login.

UCSD Portal KnowledgeHub Integration

Page 27: Planning

27

Implementation Challenges

Technical Challenges

Creating object-like services using: Legacy Procedural Mainframe (CICS) Applications Legacy Web-Applications (Perl/CGI)

Monitoring process Trouble shooting Dealing with failures

Managing the environment

Page 28: Planning

28

Implementation Challenges

Technical Challenges (cont)

Security challenges - loosely coupled environment

Performance - XML brings robustness not speed

Optimization

Organizing the services – Registry & Repository

Page 29: Planning

29

UCSD Server Environment

Mainframe

Database Server

Portal Server

Load Balancer

Partner Applications Various Web Technologies

Authentication Server A^4

Web Farm App Servers SunFire 280r

Web Farm App ServersSunFire 280r

Portal Application Integration DiagramProduction Environment

SunFire 280r

Sunfire 4800

SUN V100

Cisco CSS 11503

Page 30: Planning

30

Implementation Challenges

Organizational and Cultural Challenges

Paradigm shift for developers

Paradigm shift for IT Managers

More organizational discipline

Governance

Page 31: Planning

31

Implementing SOA @ UCSD

Organizational Structure Web Application Developers

Enterprise Architecture & Integration Team

Portal Services - Web Content Analysts & Writers

Security Team

Legacy Mainframe Application Programmers

DBA & Data Warehouse Team

System & Tech Support (Unix & Mainframe)

Page 32: Planning

32

Implementation Challenges

Staffing Challenges Recruitment

Retention

Compensation

Adoption - Buy-in

Keeping staff motivated and excited

Page 33: Planning

33

Implementing SOA @ UCSD

Staffing Transition

Wiki Training

Framework Bootcamp

UCSD Toolbox

Conferences & classes Supervisors Project Managers

Bi-weekly staff meeting

Student Interns

Page 34: Planning

34

UCSD Toolbox

Page 35: Planning

35

UCSD Toolbox

Title

Double Click to Build ...

Webapp Name admissionssoService Name CityOfBirthPackage edu.ucsd.act.admissionsso.servicesVirtual Name adminssoDate 11/15/2005Diagram ID 1DBAlias db2

ADV_APPL_DATA_VA_V

ADC_SET_TS

LAST_ACTIVITY_DATE

APPLICATN_DATACODE

FK_APP_INTRL_REFID

USER_CODE

FK_APP_APLCN_REFNM

APPLICATN_DATA_VAL

Model Name: cityOfBirth [main]

ApplicantInfoDBO

ISIS

Model uses ISIS Mainframe DB/2

(Student Services)

PRS_PERSON_V

PERSON_FULL_NAME

INTRL_REF_ID

NAME_SUFFIX_DESC

ARCHIVED_DATE

BIRTH_DATE

Student Lookup & Create Service

PID_PERSON_ID_V

PERSON_ID

FK_PCH_INTRL_REFID

cityofbirth

dob

name

DOBDateHandler

DOBHandler2

Deploy to ... jlinkservices_db

firstname

FirstnameFormatHandler

lastname

middlename

LastnameFormatHandler

MiddlenameFormatHandler

dob_month

dob_day

dob_year

DOBMonthFormatHandler

DOBYearFormatHandler

DOBDayFormatHandler

DateValidator

DateValidator

ApplicantInfoDBO

ApplicantInfoDBO

Drag Table Icons from stencil to create under lying data model for service

Creates Service on the Mainframe

Add business rules component to field. Validation and Filtering

Creates individual service stubs

Add formatting component to field.

Click Icon to build and deploy service

Add a customized attribute to service

Page 36: Planning

36

UCSD Application Infrastructure

What did we build?

We had an application infrastructure which supported the concept of services. It could be extended and runs in a J2EE container

We already had support for and interoperability with open source technology What did we buy?

Adobe eForms Vignette Portal & Content Management ElementK (hosted) InfiNET (hosted) SciQuest (hosted) WebSphere Z/OS (hopefully, waiting for funding)

We currently have over 400+ services developed for our applications. There has been a high percentage of reuse over the last year. These will be the building blocks of our campus wide services planned for the next 12 months.

Page 37: Planning

37

UCSD Timeline

1990 2010

1991 IFIS & ISIS

Mainframe Implementation

1996First Web App

Student Address Update (Perl/CGI)

2000Java

Framework

1994

Client/ServerApps

2000

Java Development

1998

StudentLink &Web-Registration

2001Business

PortalBLINK

2005Shibboleth

SSO

TodayOver 400+ Services

2006

Dynamic CachingEvent Driven App

2005Student Portal

Tritonlink

2004

Visio Tool &Registry

2003

First Web Service

2007UCSD

External Services

2006UC Trust

2004 - 2010

SOA

1999

FinancialLink & TravelLink

2001DW

QueryLink

UCSD History & Milestones

Page 38: Planning

38

Marty Backer [email protected]

Christopher De Rosa [email protected]

Elazar Harel [email protected]

Thank You


Recommended