Csg Soa Jr


Published on

CSG SOA Panel.

1 Like
  • Be the first to comment

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

No notes for slide
  • Csg Soa Jr

    1. 1. From Services to SOA at Berkeley CSG - Sept 25, 2008 <ul><li>silo-ed development </li></ul><ul><li>opaque orchestration </li></ul><ul><li>not easily pluggable </li></ul><ul><li>not reusable </li></ul>“ Sure, we can have that special-order widget for you in about six months!”
    2. 2. <ul><li>Trend: Increasingly complex and changing business processes. </li></ul><ul><li>Trend: Increasingly tech savvy business partners. </li></ul><ul><li>Trend: Increase dept/unit development of mission critical systems. </li></ul><ul><li>Trend: Decrease in resources while increase in IT demands. </li></ul>From Services to SOA at Berkeley CSG - Sept 25, 2008
    3. 3. <ul><li>Berkeley has been writing web services for the last 8 years, but they were not structured, not documented, not inventoried, not reviewed, and limitedly shared. </li></ul><ul><li>SOA is the next step for us. Our hope is SOA along with building a “Campus IT Community” and Campus Developer Support will enable </li></ul><ul><li>a) Flexibility by allowing IT-by-composition </li></ul><ul><li>b) Composition over reinvention enabling speed </li></ul><ul><li>c) Thoughtful methodology, tool, and platform selection enable quality </li></ul>From Services to SOA at Berkeley CSG - Sept 25, 2008
    4. 4. From Services to SOA at Berkeley CSG - Sept 25, 2008 THE CHALLENGE : How to get UC Berkeley from a set of unorganized, unstructured web services to SOA? We need help. We don’t have the right experience or enough of the right resources. Berkeley became Kuali Student Founder July, 2007.
    5. 5. We Got FIRST RATE Help CSG - Sept 25, 2008 <ul><li>UCB gave up 2 of the 4 Central App architects ... </li></ul><ul><li>We got 12 and a bunch of Senior developers. </li></ul><ul><li>Of special note: </li></ul><ul><li>Leo Fermin, UBC </li></ul><ul><li>Scot Gibson, UMd </li></ul><ul><li>Wil Johnson, FSU </li></ul><ul><li>For the next phase we are looking for developers: </li></ul><ul><li>At least 3 years Java experience (Sun Java certification an asset). </li></ul><ul><li>Familiarity with Spring IOC and AOP. </li></ul><ul><li>Familiarity with ORM concepts and JPA in particular </li></ul><ul><li>(preferably the hibernate implementation). </li></ul><ul><li>Advantageous if they have worked with Eclipse and SVN. </li></ul><ul><li>Knowledge of  XML, XSD, WSDL, SOAP. </li></ul>
    6. 6. From Services to SOA at Berkeley CSG - Sept 25, 2008 <ul><li>Kuali Student is... </li></ul><ul><li>a modular, open source, standards-based, </li></ul><ul><li>being developed through a community source process over a 5 year period, </li></ul><ul><li>will be delivered through a service-oriented architecture and web services, </li></ul><ul><li>rules & logic not in code (use rules/workflow engines). </li></ul>
    7. 7. Kuali Student Functional Scope Tier 1 Tier 2 - Learning Unit Management -Admissions (LUM)‏ -Scheduling - Person Identity (PI)‏ -Financial Aid - Enrollment (ENR)‏ -Concierge - Program Audit & Evaluation (PA&E)‏ - Student Financials (SFS)‏ - Concierge – limited - Application connectors - Configuration application KS - Jan 1, 2008
    8. 8. KS - Jan 1, 2008 <ul><li>Service Oriented Architecture </li></ul><ul><ul><ul><li>SOA methodology </li></ul></ul></ul><ul><ul><ul><li>Web services </li></ul></ul></ul><ul><ul><li>Component Abstraction </li></ul></ul><ul><ul><ul><li>Business processes and business rules </li></ul></ul></ul><ul><ul><ul><li>Presentation and data layers </li></ul></ul></ul><ul><ul><li>Leverage Open Source Technology </li></ul></ul><ul><ul><ul><li>Open source software stack </li></ul></ul></ul><ul><ul><ul><li>Java as the language of choice </li></ul></ul></ul><ul><ul><li>Standards Based Architecture </li></ul></ul><ul><ul><ul><li>Open, widely accepted & adopted </li></ul></ul></ul>KS Technical Guiding Principles
    9. 9. Technical Architecture Web Services Stack Recommendations - uPortal - Apache CXF/Sun Metro - CAS, Acegi - Kuali Id Mgmt (KIM)‏ - JBoss Drools - Apache Derby *Certified MySQL & Oracle <ul><li>- Apache ServiceMix </li></ul><ul><li>- Sun OpenESB </li></ul><ul><li>- Kuali Enterprise Workflow (KEW)‏ </li></ul>- KRice ? - KS BRMS Phase I Recommendations found at: http://www.kuali.org/assets/pdf/KS+Phase+I+Recommendations+v2.0.pdf Technical Architecture Web Services Stack Recommendations KS - Jan 1, 2008
    10. 10. KS & Rice Planned Alignment UI Middleware Eclipse Workbench Mapping Frameworks Technology Stack Google Web Toolkit uPortal 3.0 Id Mgmt: KIM Workflow: KEW Rules: BRMS Dictionary, Search: KNS Code Mgmt: Subversion Build: Maven Unit Test: JUnit JPA: Hibernate JAXB JAX-WS DB: Derby Service Eng: CXF/Metro Servlet: Tomcat ESB: ServiceMix Rules Eng: Drools KS & Rice Planned Alignment KS - Jan 1, 2008
    11. 11. SOA Challenges at Berkeley <ul><li>Semantic Interoperability – We don’t speak the same language (GPA, Student Registered/Enrolled, Chart String) </li></ul><ul><li>Culture NIH (NOT INVENTED HERE)/NUMC (NOT UNDER MY CONTROL), Architecture/Technical Religious wars (.net/java, REST/SOAP). </li></ul><ul><li>Business Processes Non-standard or Non-alignment (examples-UG & Grad Adm applic, grade submission) </li></ul><ul><li>Resources and Funding Models </li></ul><ul><li>Staffing </li></ul><ul><ul><ul><li>New Skill Sets (BusAnalyst, SOA, UI experts, )‏ </li></ul></ul></ul><ul><ul><ul><li>A fresh look </li></ul></ul></ul><ul><ul><ul><li>Back Filling Key Positions </li></ul></ul></ul><ul><ul><ul><li>BUSINESS ANALYSTS are rarer than we thought </li></ul></ul></ul><ul><ul><ul><li>To succeed it is not about “central resources”, </li></ul></ul></ul><ul><ul><ul><li>it is about “campus resources”. </li></ul></ul></ul>CSG - Sept 25, 2008
    12. 12. Campus Developer’s Community & Support CSG - Sept 25, 2008 <ul><li>Process and methodology </li></ul><ul><li>Toolsets </li></ul><ul><li>Technology Stacks </li></ul><ul><li>Components & Services </li></ul><ul><li>Automated Test Frameworks </li></ul><ul><li>Automated Deployment Scripts </li></ul><ul><li>Training (“How to” Websites, Book Club, Recommended Readings, Online courses, Pilot Projects, Mentors, Internships, ITAC) </li></ul><ul><li>Prototypes </li></ul><ul><li>Code review </li></ul><ul><li>Security audit </li></ul>
    13. 13. SOA Challenges at Berkeley <ul><li>Immature Technologies - (Or did not live up to the vision). BPEL </li></ul><ul><li>SOA is not about a Particular Technology - Process </li></ul><ul><li>SOA has a lot of pieces, development is in pieces - </li></ul><ul><li>What will bring this all together </li></ul><ul><li>SOA is a different way to design systems - Loose coupling </li></ul><ul><li>Loose coupling vs Performance – Example Enrollment </li></ul><ul><li>Implementation Readiness </li></ul><ul><ul><ul><li>Governance </li></ul></ul></ul><ul><ul><ul><li>Resources (Where are all the Business Analysts???) </li></ul></ul></ul><ul><ul><ul><li>Interfaces New and Old </li></ul></ul></ul><ul><ul><ul><li>Will the vendors get there? (Parviz Dousti– CMU) </li></ul></ul></ul>CSG - Sept 25, 2008
    14. 14. Loose Coupling to the n th Degree Forms of Loose Coupling Tight Loose - Physical connections Point to Point Via mediator - Communication style Synchronous Asynchronous - Data model types Common complex Simple common - Interaction Central control Distributed control - Binding Static Dynamic - Interaction Pattern Navigation Complex object trees Data-centric, Self-contained msg - Control of process logic Central Distributed - Platform Dependencies Strong dependencies Platform independent - Transactionality 2PC (two phase commit) Compensation - Deployment Simultaneous At different times - Versioning Explicit upgrades Implicit upgrades <ul><ul><ul><li>&quot;In theory there is no difference between theory and practice. But, in practice, there is.“ Yogi Berra </li></ul></ul></ul>CSG - Sept 25, 2008
    15. 15. Biggest Challenge <ul><li>Getting out of our rut – Taking several steps back </li></ul><ul><ul><ul><li>How we do our business. </li></ul></ul></ul><ul><ul><ul><li>What are we really trying to achieve? </li></ul></ul></ul><ul><ul><ul><li>How we develop our systems. </li></ul></ul></ul><ul><ul><ul><li>How is a SOA system design different? </li></ul></ul></ul><ul><ul><ul><li>Our new roles. Who does what? </li></ul></ul></ul>CSG - Sept 25, 2008
    16. 16. KS Services – Release 1 LUM <ul><li>* Authentication Service Learning Result Catalog Service </li></ul><ul><li>* Authorization Service LUI Person Relation Service </li></ul><ul><li>AZ Group Service LU Service </li></ul><ul><li>* Business Rules Management Service Organization Service </li></ul><ul><li>Communication Service Person Service </li></ul><ul><li>Contact Service Resource Service </li></ul><ul><li>Deprecated Service Descriptions Rule Repository Service </li></ul><ul><li>* Dictionary Service * Search Service </li></ul><ul><li>Fact Finder Service * Workflow Service </li></ul><ul><li>Learning Objective Service </li></ul><ul><li>* Business Agnostic Services, service contracts close to final, coding started. “Developers got anxious”. </li></ul><ul><li>** Service performance a concern so QA team has been working on enrollment service for Enrollment Module that has not be officially started. </li></ul>KS - Jan 1, 2008