Powerpoint slides


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • Powerpoint slides

    1. 1. Planning & Delivering Service Oriented Architecture (SOA) University of California, San Diego October 30, 2006
    2. 2. <ul><li>About UCSD </li></ul><ul><li>What is SOA? </li></ul><ul><li>Why Implement SOA? </li></ul><ul><li>Planning for SOA </li></ul><ul><li>UCSD Examples Experiences and Case Studies </li></ul><ul><li>Implementation Challenges </li></ul><ul><li>The UCSD SOA Framework </li></ul>Topics
    3. 3. <ul><li>26,100 Students </li></ul><ul><li>23,500 Employees (Including Medical Center) </li></ul><ul><li>$1.9 Billion Annual Budget </li></ul><ul><li>$728 Million Annual Research Funding </li></ul><ul><li>_______________________________________________________________________________________ </li></ul><ul><li>IBM Mainframe and Sun Solaris Servers </li></ul><ul><li>Java (J2EE) </li></ul><ul><li>DB2 </li></ul>About UCSD
    4. 4. <ul><li>Ease of Use and Access </li></ul><ul><li>Common Look & Feel </li></ul><ul><li>Web-Based Systems </li></ul><ul><li>Interoperability and Open Architecture </li></ul><ul><li>Single Signon </li></ul><ul><li>Evolution v. Revolution </li></ul><ul><li>Cost-Effectiveness </li></ul>About UCSD Administrative Computing Goals:
    5. 5. <ul><li>Application life-cycles continue to shrink – demand increases </li></ul><ul><li>Systems constantly changing for business needs </li></ul><ul><li>Regardless of platform, DB, technology – all systems need to: Interoperate, Communicate & Integrate </li></ul><ul><li>Leverage departmental IT staff in development </li></ul>Driving Factors for UCSD
    6. 6. Architecture Needs <ul><ul><li>Loosely-coupled with reusable components </li></ul></ul><ul><ul><li>Promote productivity - reduce the time-to-market </li></ul></ul><ul><ul><li>Greater business agility </li></ul></ul><ul><ul><li>To drive business processes closer to end users </li></ul></ul><ul><ul><li>Technology independent </li></ul></ul><ul><ul><li>Leverage and integrate existing applications </li></ul></ul><ul><ul><li>Provide standard connections between systems </li></ul></ul><ul><ul><li>Abstract the complexity for the developers </li></ul></ul>
    7. 7. <ul><li>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. </li></ul>What is Service-Oriented Architecture?
    8. 8. What is a Service? <ul><li>Services are application components that are available to other applications using standard protocols (typically XML) </li></ul><ul><li>Examples: </li></ul><ul><ul><li>Create a PO inside a mainframe application </li></ul></ul><ul><ul><li>Retrieving & updating student info </li></ul></ul><ul><ul><li>Reviewing & changing HR benefits </li></ul></ul>
    9. 9. What is a Service
    10. 10. <ul><li>Analogy to A/V Components </li></ul><ul><li>Years ago electronic systems were self-contained monolithic systems </li></ul><ul><li>Today’s electronics are pluggable and independent </li></ul><ul><li>Standardized connections. </li></ul>What is SOA?
    11. 11. Key Components of a SOA <ul><li>A service oriented architecture is a software architecture that is based on the following key concepts: </li></ul><ul><ul><li>A service consists of a contract, one or more interfaces and an implementation </li></ul></ul>
    12. 12. Using a Service <ul><li>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. </li></ul>
    13. 13. A Service Example
    14. 14. Benefits of SOA
    15. 15. Planning for SOA @ UCSD <ul><li>Approach: </li></ul><ul><ul><li>Think strategically and plan tactically </li></ul></ul><ul><ul><li>Evolutionary not revolutionary </li></ul></ul><ul><ul><li>“ Leave & layer vs. rip & replace” Gartner Group </li></ul></ul><ul><ul><li>Make it easy for developers to adopt </li></ul></ul><ul><ul><li>Natural progression of original OO Architecture and Approach </li></ul></ul><ul><ul><li>Not going to happen overnight- It takes time: “the true adoption is about two years behind the hype”. Gartner Group </li></ul></ul>
    16. 16. Planning for SOA @ UCSD <ul><li>Process </li></ul><ul><ul><li>Experiment with Web Services </li></ul></ul><ul><ul><ul><li>Small project high degree of success </li></ul></ul></ul><ul><ul><ul><li>Helpful not vital </li></ul></ul></ul><ul><ul><li>Adapt some existing systems to use Services </li></ul></ul><ul><ul><li>Remove Intersystem dependencies </li></ul></ul><ul><ul><li>Establish an Internal SOA </li></ul></ul><ul><ul><li>Expand Internal SOA to include external services. </li></ul></ul>
    17. 17. Single Sign-On <ul><li>Uses Shibboleth for Authentication http://shibboleth.internet2.edu/ </li></ul><ul><li>Supported on different platforms (based on SAML) </li></ul><ul><li>Uses UCSD Roles & Affiliates as the data repository for authentication and authorization </li></ul><ul><li>Part of the UC-Trust Collaboration project for cross-campus identity management. </li></ul>
    18. 18. Case Study - MyRecords Portlets <ul><li>Student portlets are provided through the MyRecords tab. </li></ul><ul><li>Each portlet is populated from a web service. </li></ul><ul><li>Information comes from either the mainframe or data warehouse. </li></ul><ul><li>Portlet content is cached and managed through event driven messages which implement the cache policy. </li></ul>
    19. 19. ElementK Integration <ul><li>UCSD supplies the Portal top banner navigation, page footer and right sidebar </li></ul><ul><li>Single Sign-On provides user pass through from UCSD portal to KnowledgeHub. </li></ul><ul><li>Web Services create user account at the time of login. </li></ul>UCSD Portal KnowledgeHub Integration
    20. 20. UCSD Server Environment
    21. 21. Implementation Challenges <ul><li>Technical Challenges </li></ul><ul><ul><li>Creating object-like services using: </li></ul></ul><ul><ul><ul><li>Legacy Procedural Mainframe (CICS) Applications </li></ul></ul></ul><ul><ul><ul><li>Legacy Web-Applications (Perl/CGI) </li></ul></ul></ul><ul><ul><li>Monitoring process </li></ul></ul><ul><ul><ul><li>Trouble shooting </li></ul></ul></ul><ul><ul><ul><li>Dealing with failures </li></ul></ul></ul><ul><ul><li>Managing the environment </li></ul></ul>
    22. 22. Implementation Challenges <ul><li>Technical Challenges (cont) </li></ul><ul><ul><li>Security challenges - loosely coupled environment </li></ul></ul><ul><ul><li>Performance - XML brings robustness not speed </li></ul></ul><ul><ul><li>Optimization </li></ul></ul><ul><ul><li>Organizing the services – Registry & Repository </li></ul></ul>
    23. 23. Implementation Challenges <ul><li>Organizational and Cultural Challenges </li></ul><ul><ul><li>Paradigm shift for developers </li></ul></ul><ul><ul><ul><li>Specialists vs. Generalist </li></ul></ul></ul><ul><ul><li>Paradigm shift for IT Managers </li></ul></ul><ul><ul><li>More organizational discipline </li></ul></ul><ul><ul><li>Governance </li></ul></ul>
    24. 24. Implementing SOA @ UCSD <ul><li>Organizational Structure </li></ul><ul><ul><li>Portal Services: Web Content Analysts, Writers, UI & Usability </li></ul></ul><ul><ul><li>Enterprise Architecture & Middleware Team </li></ul></ul><ul><ul><li>Security Team </li></ul></ul><ul><ul><li>DBA & Data Warehouse Team </li></ul></ul><ul><ul><li>System & Tech Support (Unix & Mainframe) </li></ul></ul><ul><ul><li>Legacy Mainframe Application Programmers </li></ul></ul><ul><ul><li>Web Application Developers </li></ul></ul><ul><ul><ul><li>UI Developers </li></ul></ul></ul><ul><ul><ul><li>Services developers </li></ul></ul></ul><ul><ul><ul><li>Process Centric Developers </li></ul></ul></ul>
    25. 25. Implementation Challenges <ul><li>Staffing Challenges </li></ul><ul><ul><li>Recruitment </li></ul></ul><ul><ul><li>Retention </li></ul></ul><ul><ul><li>Compensation </li></ul></ul><ul><ul><li>Adoption - Buy-in </li></ul></ul><ul><ul><li>Keeping staff motivated and excited </li></ul></ul>
    26. 26. Implementing SOA @ UCSD <ul><li>Staffing Transition </li></ul><ul><ul><li>Wiki Training </li></ul></ul><ul><ul><li>Framework Bootcamp </li></ul></ul><ul><ul><li>UCSD Toolbox </li></ul></ul><ul><ul><li>Conferences & classes </li></ul></ul><ul><ul><li>Bi-weekly staff meeting </li></ul></ul><ul><ul><li>Student Interns </li></ul></ul>
    27. 27. Implementing SOA @ UCSD <ul><li>Gartner Conferences – 2002-2006 </li></ul><ul><li>Things we did: </li></ul><ul><ul><li>Take stock of what you already have </li></ul></ul><ul><ul><li>Build on existing technology </li></ul></ul><ul><ul><li>Train staff </li></ul></ul><ul><ul><li>Design Services for Re-use </li></ul></ul><ul><ul><li>Move in incremental adoption </li></ul></ul><ul><li>Things we avoided: </li></ul><ul><ul><li>Avoid guidance from vendors </li></ul></ul><ul><ul><li>SOA is NOT a technology, not a single solution, buy the technology that compliments your goals and environment </li></ul></ul><ul><ul><li>Don’t do the “Big Bang” approach </li></ul></ul><ul><ul><li>Avoid thinking of an SOA projects any differently that other project </li></ul></ul><ul><ul><li>Plethora of products in the SOA space - Common myth that you have to start with buying products </li></ul></ul>
    28. 28. UCSD Toolbox
    29. 29. UCSD Toolbox
    30. 30. UCSD Application Infrastructure <ul><li>What did we build? </li></ul><ul><ul><li>We had an application infrastructure which supported the concept of services. It could be extended and runs in a J2EE container </li></ul></ul><ul><ul><li>We already had support for and interoperability with open source technology </li></ul></ul><ul><li>What did we buy? </li></ul><ul><ul><li>Adobe eForms </li></ul></ul><ul><ul><li>Vignette Portal & Content Management </li></ul></ul><ul><ul><li>ElementK (hosted) </li></ul></ul><ul><ul><li>InfiNET (hosted) </li></ul></ul><ul><ul><li>SciQuest (hosted) </li></ul></ul><ul><ul><li>WebSphere Z/OS </li></ul></ul><ul><ul><li>IBM WD4Z </li></ul></ul><ul><ul><li>We currently have over 50+ services in production and 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. </li></ul></ul>
    31. 31. Marty Backer [email_address] Christopher De Rosa [email_address] Elazar Harel [email_address] Thank You