csg soa jr
DESCRIPTION
CSG SOA Panel.TRANSCRIPT
From Services to SOA at BerkeleyCSG - Sept 25, 2008
• silo-ed development• opaque orchestration• not easily pluggable• not reusable
“Sure, we can have that special-order widget for you in about six months!”
Trend: Increasingly complex and changing business processes. Trend: Increasingly tech savvy business partners.Trend: Increase dept/unit development of mission critical systems.Trend: Decrease in resources while increase in IT demands.
From Services to SOA at BerkeleyCSG - Sept 25, 2008
• 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.
• SOA is the next step for us. Our hope is SOA along with building a “Campus IT Community” and Campus Developer Support will enable a) Flexibility by allowing IT-by-compositionb) Composition over reinvention enabling speedc) Thoughtful methodology, tool, and platform selection enable quality
From Services to SOA at BerkeleyCSG - Sept 25, 2008
From Services to SOA at BerkeleyCSG - 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.
We Got FIRST RATE HelpCSG - Sept 25, 2008
UCB gave up 2 of the 4 Central App architects ...We got 12 and a bunch of Senior developers. Of special note:
Leo Fermin, UBC Scot Gibson, UMd Wil Johnson, FSU
For the next phase we are looking for developers:• At least 3 years Java experience (Sun Java certification an asset). • Familiarity with Spring IOC and AOP. • Familiarity with ORM concepts and JPA in particular
(preferably the hibernate implementation). • Advantageous if they have worked with Eclipse and SVN. • Knowledge of XML, XSD, WSDL, SOAP.
From Services to SOA at BerkeleyCSG - Sept 25, 2008
Kuali Student is...
• a modular, open source, standards-based,
• being developed through a community source process over a 5 year period,
• will be delivered through a service-oriented architecture and web services,
• rules & logic not in code (use rules/workflow engines).
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
KS - Jan 1, 2008
Service Oriented Architecture SOA methodologyWeb services
Component AbstractionBusiness processes and business rulesPresentation and data layers
Leverage Open Source Technology Open source software stackJava as the language of choice
Standards Based ArchitectureOpen, widely accepted & adopted
KS Technical Guiding Principles
Technical ArchitectureWeb Services Stack Recommendations
- uPortal
- Apache CXF/Sun Metro- CAS, Acegi- Kuali Id Mgmt (KIM)- JBoss Drools
- Apache Derby*Certified MySQL & Oracle
- Apache ServiceMix- Sun OpenESB-- Kuali Enterprise Workflow (KEW)
- KRice ?- KS BRMS
Phase I Recommendations found at:
http://www.kuali.org/assets/pdf/KS+Phase+I+Recommendations+v2.0.pdf
Technical ArchitectureWeb Services Stack Recommendations
KS - Jan 1, 2008
KS & Rice Planned AlignmentUI
Middleware
EclipseWorkbench
MappingFrameworks
TechnologyStack
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
SOA Challenges at Berkeley
• Semantic Interoperability – We don’t speak the same language (GPA, Student Registered/Enrolled, Chart String)
• Culture NIH (NOT INVENTED HERE)/NUMC (NOT UNDER MY CONTROL), Architecture/Technical Religious wars (.net/java, REST/SOAP).
• Business Processes Non-standard or Non-alignment (examples-UG & Grad Adm applic, grade submission)
• Resources and Funding Models
• Staffing• New Skill Sets (BusAnalyst, SOA, UI experts, )
• A fresh look
• Back Filling Key Positions
• BUSINESS ANALYSTS are rarer than we thought
• To succeed it is not about “central resources”,
it is about “campus resources”.
CSG - Sept 25, 2008
Campus Developer’s Community & Support
CSG - Sept 25, 2008
• Process and methodology• Toolsets• Technology Stacks• Components & Services• Automated Test Frameworks• Automated Deployment Scripts• Training (“How to” Websites, Book Club, Recommended
Readings, Online courses, Pilot Projects, Mentors, Internships,
ITAC)
• Prototypes• Code review• Security audit
SOA Challenges at Berkeley
• Immature Technologies - (Or did not live up to the vision). BPEL
• SOA is not about a Particular Technology - Process
• SOA has a lot of pieces, development is in pieces - What will bring this all together
• SOA is a different way to design systems - Loose coupling
• Loose coupling vs Performance – Example Enrollment
• Implementation Readiness• Governance
• Resources (Where are all the Business Analysts???)
• Interfaces New and Old
• Will the vendors get there? (Parviz Dousti– CMU)
CSG - Sept 25, 2008
Loose Coupling to the nth Degree
Forms of Loose CouplingTight 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"In theory there is no difference between theory and practice. But, in practice, there is.“ Yogi Berra
CSG - Sept 25, 2008
Biggest Challenge
• Getting out of our rut – Taking several steps back
• How we do our business.
What are we really trying to achieve?
• How we develop our systems.
How is a SOA system design different?
• Our new roles. Who does what?
CSG - Sept 25, 2008
KS Services – Release 1 LUM
*Authentication Service Learning Result Catalog Service
*Authorization Service LUI Person Relation Service
AZ Group Service LU Service
*Business Rules Management Service Organization Service
Communication Service Person Service
Contact Service Resource Service
Deprecated Service Descriptions Rule Repository Service
*Dictionary Service *Search Service
Fact Finder Service *Workflow Service
Learning Objective Service
• * Business Agnostic Services, service contracts close to final, coding started. “Developers got anxious”.
• ** Service performance a concern so QA team has been working on enrollment service for Enrollment Module that has not be officially started.
KS - Jan 1, 2008