SlideShare a Scribd company logo
1 of 50
UCPath On MuleSoft
Anypoint Platform
By
UCOP - TDS
UCPath – quick intro
• Replace and consolidate multiple PPS instances
• Harmonize HR and payroll processes
• PeopleSoft HCM
• Hosted at OMCS (Oracle Managed Cloud Services)
• Multiple integration points, files and webServices
2
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
Organizations served
Production
•UCOP
•UCLA (UCPath IDM interfaces)
•UCR
•UCM
•ASLA
External Vendors
•Salesforce
•Glacier
Data Center Apps(SD)
•FileNet
•AYSO
•TCS
UCRS
•Pre-Production In-progress
•UCLA Tracker
•UCSB Universal
•UCSF
•UCSD
•UCSC
•UCH
•UCBLAB
•UCD
•UCB
•ANR
•UCI
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
Current UCPath Web Service Interfaces
Interfaces Type Vendor Campuses
E-017 -FileMonitoring Inbound UCPC
I-107
Seperated Employees
Inbound UCOP IDM
I-165
Employee Security
Inbound All
I-186
Employee Security
Inbound All
I-262
Custom
UCID/Email/Phone
Inbound All
I-371
Trigger I280
Inbound All Campuses
I-606C
FileNet
Inbound FileNet
E-044B
JobTitle
Inbound TCS
I-619
Taxation
Inbound Glacier
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
Current UCPath Web Service Interfaces
Interfaces Type Vendor Campuses
I-280
Person Data change
Outbound All
I-606A
Address/Benefits/Job
/PersonData changes
Outbound Salesforce
AYSO
I606B
Address Change
Outbound AYSO
I-370
FS Combo Code
Validation
Outbound UCLA
UCR
I-367
Department Updates
Outbound D2
I-352
Employee Delete
Outbound All
E-042
Tier2016
Outbound Retirement
Choice
UCPath’s Current IntegrationPlatform
Oracle SOA Suite 11g – Hosted by OMCS
SOA Components Used
• OSB(Oracle Service Bus) – Inbound/Outbound Proxy
Services
• SOA(BPEL) – Orchestration Process
• BAM – Activity Monitoring
• MDS – Meta-data Store
• OHS – Reverse Proxy, Context based routing
• OWSM - Policy Manager
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
CurrentIntegrationPlatform…
CurrentIntegrationPlatform…
Many environments + manual configuration U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
CurrentIntegrationPlatform…
Where we spend our time
• Connecting to locations/vendors – IP/port
whitelisting
• Network configuration per env
• Debugging network configuration issues – Packet
capture - Involve OMCS network team
• Key management – Per env/manual
• SOA stack(OSB, SOA, BAM, OHS, OWSM) per env
• Separate consoles for each SOA component
• Separate log files
• Development IDEs –
Jdeveloper(BPEL)/Eclipse(OSB)/Web based console
• Compiling and deploying source code – Separate
scripts
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
Opportunity to modernize
• Decided to replace the integration platform so we can simplify and
automate
• Selected IPaaS (Integration Platform as a Service)
• IPaaS vendors are investing heavily in their platforms
• Most applications are, or will be, cloud-hosted
• IPaaS lets us focus on the webServices, not environments, infrastructure
• Platform we choose was robust enough to work for system wide
projects like UCPath and for multiple campuses use too
10
U
R
M
Mulesoft
Anypoint platform
Features of Anypoint platform
• Design Center
• Exchange
• Management Center
• Access Management
• API Manager
• Runtime Manager
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
Design Center
• Mule Application
• Hosted environment where we
can create Mule apps and test
the functionality
• API Specification
• RAML specification
• API fragment
• Use/reuse in API spec
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
Anypoint platform
Exchange
• Share reusable API’s which can used
across enterprise
• Discover API’s shared by other users and request
access to the API.
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
Management Center
API Manager
Runtime Manager
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
• Jenkins is a self-contained, open source automation
server which can be used to automate all sorts of
tasks related to building, testing, and delivering or
deploying software
ContinuousIntegration /ContinuousDevelopment
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
GIT is the source code repository we are using for mule app’s.
Repository URL of GIT and the branch it build’s on
GIT
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
Polling interval
Build script
High-level Architectural Design
Integration Architectural Patterns
U
C
P
a
t
h
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
• API Led Connectivity
• Reliability Pattern
• High Availability Pattern
APILed Connectivity
U
C
P
a
t
h
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
Layers
• System APIs
• Process APIs
• Experience APIs
Reliability Pattern
U
C
P
a
t
h
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
High-levelArchitecturalDesign…
High-levelArchitecturalDesign…
Internal Mule API/Service Architecture U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
CurrentIntegrationPlatform…
Few environments, more automation U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
High-levelArchitecturalDesign…
Anypoint Studio - IDE
• Eclipse based IDE, open source & free
• Build integrations graphically or in XML
• Jumpstart your integrations with pre-built connectors,
templates, and examples
• Debug with design-time error-handling or Java and XML
exception handling
• Map and transform data easily - Dataweave
• Integrate testing into your existing CI/CD process using MUnit
• Easily deploy APIs and integrations built in Studio to the cloud
or on-premises
• Built-in Maven support
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
Mule Application
Flow
• Message Source
• Message Processors
• Connectors
• Transformers
• Filters
• Flow Controls
• Scopes
• Error Handlers
Sub-flow
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
MuleApplication…
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
MuleApplication…
Building a Mule Application
1. Define API spec in Design
Center
2. Import project into Studio
3. Generate Flows
4. Generate Munit
5. Commit & Deploy
6. Test
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
High-levelArchitecturalDesign…
Building a Mule Application
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
30
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
MuleApplication…
31
Create API Specification
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
MuleApplication…
32
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
MuleApplication…
33
Import project from Design Center to AnypointStudio and generate flows from the
RAML
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
34
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
35
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
36
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
UCPathAPIs
• System Layer (8)
• ucpath-campus-sys-api
• ucpath-glacier-sys-api
• ucpath-peoplesoft-sys-api
• ucpath-redwood-sys-api
• ucpath-routing-sys-api
• ucpath-sfdc-sys-api
• ucpath-ucidm-sys-api
• ucpath-notification-sys-api
• Process Layer (1)
• ucpath-common-orchestration-prc-api
• Experience Layer (1)
• ucpath-soap-exp-ap
38
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
AnypointPlatform–ExperienceSofar
• Faster development – Migrated 17 SOA services to 10 APIs
in 3 months
• One IDE - design, develop, unit test, deploy
• Less custom code – Out of the box connectors,
components
• Transformations made easy - Dataweave
• 2-way SSL, Msg Encr –CXF vs WSC
• One log file
• Very responsive customer support
39
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
OrganizationandBusinessGroups
 Organization
 Our top level org is “UC Online”.
 This is the parent Entity and holds all the parent assets
 The administration of Business Groups is delegated to the Business group
admins under the parent org
 Business Groups
 Business Groups are sub-entities created under the “UC Online” organization
above
 This can be a system wide project e.g. UCPath, or a Campus e.g. UCMerced,
UCOP
 Business group owner is the Business group admin
 There are multiple Business groups within the “UC Online” organization
above
40
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
AssetSharing–APIExchange
 Exchange Private
 For internal developers (viewer, contributor, or administrator access)
 Assets could be limited to Business groups
 Exchange Portal
 Exchange admins only can share assets
 Shared Externally with developers outside of their own organization
 What can be shared ?
 Mule XML example code, Template, Connector, APIs
 Custom information assets.
 Advantages
 Model and reuse code and APIs
 Easy access
 Create a repository
41
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
Organization and Business Groups
42
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
UCOP -UCPath IDM Interfaces
 UCOP is Providing and Consuming Services to/from UCPath since past few
years.
 Current UCOP setup for services
 The current interfaces are deployed on JBoss Application server.
 Where we spend our time
 Maintaining the Application server.
 Regenerating the class for any WSDL changes.
 This also involves deployment of new artifacts.
 Software upgrades for Application server.
 Maintaining Multiple environments(Dev, QA, UAT, Prod).
 Coordination with Multiple team.
43
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
 Looking at the features MuleSoft is providing UCOP IAM has selected
MuleSoft as the new integration platform.
 Mule is the most lightweight integration platform available.
 Mule integrates tightly with Spring.
 Mule uses common tools that all Java developers are familiar with, like Maven,
Eclipse, JUnit and Spring.
 Mule IDE Anypoint Studio helps new developers get up to speed quickly with a
graphical development environment.
 Process large messages efficiently XML, JSON, flat files, binary and file
attachments, streams, and Java objects.
 Provides flexibility to deploy apps on cloud or on premise.
 Upgrades managed by MuleSoft 44
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
 Maintaining and syncing the repository (i.e. WSDL, XSD and other
changes) – Use of API Exchnage
 To keep up with the market and technology evolution.
 In Line with UCPath and other UC who are using MuleSoft.
 Deploy same code base across multiple environments.
 Reduces the dependency of Application servers plugins.
45
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
UCOPIDMinterfacetoCloudHub
• In Anypoint Platform, has a future to configure External Identity.
• Anypoint Supports SAML2.0.
• Anypoint Platform was tested configuring using Shibboleth.
• Login to Anypoint and click on external identity to configure the
IDP.
46
Anypoint PlatformSupportforSSO U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
 When did I start thinking about MuleSoft.
 How did I approach.
 Training on MuleSoft.
 Process/Plan to Migrate existing UCOP IDM interfaces.
 Testing UCPath interfaces
47
MyExperiencewith MuleSoft U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
• Easy to learn
• Basic knowledge of XML, JSON, java/object oriented
programming and integration technologies such as
HTTP, JMS, JDBC, REST and SOAP.
• Mulesoft provides free self study development
fundamental course
• Trainings we took:
• Anypoint Platform Development: Fundamentals
(Mule 3) - Online instructor-led
• API Dev Advanced Training – 3-4 days – Online
instructor led
• Please check https://www.training.mulesoft.com for
more information
Training
49
CoE (Center of Excellence)
UCOP is going to form a new COE to provide consultation
and professional services on the CloudHub platform.
Members:
• Jerome McEvoy (jerome.mcevoy@ucop.edu)
• Mukund Gidadhubli (mukund.gidadhubli@ucop.edu)
• Rahul Morthala (rahul.morthala@ucop.edu)
• Sushant Prasad (sushant.prasad@ucop.edu)
• Krishna Mohan (krishna.mohan@ucop.edu)
Contact any member if your have questions
50
Learn more about accessing CloudHub (in 30 minutes)
U
C
P
A
T
H
O
N
A
N
Y
P
O
I
N
T
P
L
A
T
F
O
R
M
Q & A

More Related Content

Similar to UCCSC-UCPath-Mulesoft.pptx

Live Introduction to the Cloud Native Microservices Platform – open, manageab...
Live Introduction to the Cloud Native Microservices Platform – open, manageab...Live Introduction to the Cloud Native Microservices Platform – open, manageab...
Live Introduction to the Cloud Native Microservices Platform – open, manageab...
Lucas Jellema
 
RubiOne: Apache Spark as the Backbone of a Retail Analytics Development Envir...
RubiOne: Apache Spark as the Backbone of a Retail Analytics Development Envir...RubiOne: Apache Spark as the Backbone of a Retail Analytics Development Envir...
RubiOne: Apache Spark as the Backbone of a Retail Analytics Development Envir...
Databricks
 
[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li
[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li
[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li
Ambassador Labs
 

Similar to UCCSC-UCPath-Mulesoft.pptx (20)

Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401Application Delivery Patterns for Developers - Technical 401
Application Delivery Patterns for Developers - Technical 401
 
OpsStack--Integrated Operation Platform
OpsStack--Integrated Operation PlatformOpsStack--Integrated Operation Platform
OpsStack--Integrated Operation Platform
 
Live Introduction to the Cloud Native Microservices Platform – open, manageab...
Live Introduction to the Cloud Native Microservices Platform – open, manageab...Live Introduction to the Cloud Native Microservices Platform – open, manageab...
Live Introduction to the Cloud Native Microservices Platform – open, manageab...
 
Transforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOpsTransforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOps
 
Containers Anywhere with OpenShift by Red Hat
Containers Anywhere with OpenShift by Red HatContainers Anywhere with OpenShift by Red Hat
Containers Anywhere with OpenShift by Red Hat
 
DevOps for Network Engineers
DevOps for Network EngineersDevOps for Network Engineers
DevOps for Network Engineers
 
Coding Secure Infrastructure in the Cloud using the PIE framework
Coding Secure Infrastructure in the Cloud using the PIE frameworkCoding Secure Infrastructure in the Cloud using the PIE framework
Coding Secure Infrastructure in the Cloud using the PIE framework
 
MuleSoft London Community October 2017 - Hybrid and SAP Integration
MuleSoft London Community October 2017 - Hybrid and SAP IntegrationMuleSoft London Community October 2017 - Hybrid and SAP Integration
MuleSoft London Community October 2017 - Hybrid and SAP Integration
 
RubiOne: Apache Spark as the Backbone of a Retail Analytics Development Envir...
RubiOne: Apache Spark as the Backbone of a Retail Analytics Development Envir...RubiOne: Apache Spark as the Backbone of a Retail Analytics Development Envir...
RubiOne: Apache Spark as the Backbone of a Retail Analytics Development Envir...
 
[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li
[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li
[QCon London 2020] The Future of Cloud Native API Gateways - Richard Li
 
Accelerating Digital Transformation: It's About Digital Enablement
Accelerating Digital Transformation:  It's About Digital EnablementAccelerating Digital Transformation:  It's About Digital Enablement
Accelerating Digital Transformation: It's About Digital Enablement
 
.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles
 
Mulesoft meetup 9thmay Thiruvananthapuram
Mulesoft meetup 9thmay ThiruvananthapuramMulesoft meetup 9thmay Thiruvananthapuram
Mulesoft meetup 9thmay Thiruvananthapuram
 
TechTalk: Wind Tunnel, Personas, and Testing Real UX
TechTalk: Wind Tunnel, Personas, and Testing Real UXTechTalk: Wind Tunnel, Personas, and Testing Real UX
TechTalk: Wind Tunnel, Personas, and Testing Real UX
 
Mobility and federation of Cloud computing
Mobility and federation of Cloud computingMobility and federation of Cloud computing
Mobility and federation of Cloud computing
 
DevOps and APIs: Great Alone, Better Together
DevOps and APIs: Great Alone, Better Together DevOps and APIs: Great Alone, Better Together
DevOps and APIs: Great Alone, Better Together
 
Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)
 
Transformacion e innovacion digital Meetup - Application Modernization and Mi...
Transformacion e innovacion digital Meetup - Application Modernization and Mi...Transformacion e innovacion digital Meetup - Application Modernization and Mi...
Transformacion e innovacion digital Meetup - Application Modernization and Mi...
 
Event Bus as Backbone for Decoupled Microservice Choreography - Lecture and W...
Event Bus as Backbone for Decoupled Microservice Choreography - Lecture and W...Event Bus as Backbone for Decoupled Microservice Choreography - Lecture and W...
Event Bus as Backbone for Decoupled Microservice Choreography - Lecture and W...
 
Turning up-the-heat
Turning up-the-heatTurning up-the-heat
Turning up-the-heat
 

Recently uploaded

Jax, FL Admin Community Group 05.14.2024 Combined Deck
Jax, FL Admin Community Group 05.14.2024 Combined DeckJax, FL Admin Community Group 05.14.2024 Combined Deck
Jax, FL Admin Community Group 05.14.2024 Combined Deck
Marc Lester
 

Recently uploaded (20)

Abortion Clinic In Springs ](+27832195400*)[ 🏥 Safe Abortion Pills in Springs...
Abortion Clinic In Springs ](+27832195400*)[ 🏥 Safe Abortion Pills in Springs...Abortion Clinic In Springs ](+27832195400*)[ 🏥 Safe Abortion Pills in Springs...
Abortion Clinic In Springs ](+27832195400*)[ 🏥 Safe Abortion Pills in Springs...
 
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCAOpenChain Webinar: AboutCode and Beyond - End-to-End SCA
OpenChain Webinar: AboutCode and Beyond - End-to-End SCA
 
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdfStrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
StrimziCon 2024 - Transition to Apache Kafka on Kubernetes with Strimzi.pdf
 
Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...
Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...
Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...
 
^Clinic ^%[+27788225528*Abortion Pills For Sale In soweto
^Clinic ^%[+27788225528*Abortion Pills For Sale In soweto^Clinic ^%[+27788225528*Abortion Pills For Sale In soweto
^Clinic ^%[+27788225528*Abortion Pills For Sale In soweto
 
Auto Affiliate AI Earns First Commission in 3 Hours..pdf
Auto Affiliate  AI Earns First Commission in 3 Hours..pdfAuto Affiliate  AI Earns First Commission in 3 Hours..pdf
Auto Affiliate AI Earns First Commission in 3 Hours..pdf
 
OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024OpenChain @ LF Japan Executive Briefing - May 2024
OpenChain @ LF Japan Executive Briefing - May 2024
 
Community is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea GouletCommunity is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea Goulet
 
how-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdfhow-to-download-files-safely-from-the-internet.pdf
how-to-download-files-safely-from-the-internet.pdf
 
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
Tree in the Forest - Managing Details in BDD Scenarios (live2test 2024)
 
Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024
Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024
Anypoint Code Builder - Munich MuleSoft Meetup - 16th May 2024
 
Food Delivery Business App Development Guide 2024
Food Delivery Business App Development Guide 2024Food Delivery Business App Development Guide 2024
Food Delivery Business App Development Guide 2024
 
Abortion Clinic Pretoria ](+27832195400*)[ Abortion Clinic Near Me ● Abortion...
Abortion Clinic Pretoria ](+27832195400*)[ Abortion Clinic Near Me ● Abortion...Abortion Clinic Pretoria ](+27832195400*)[ Abortion Clinic Near Me ● Abortion...
Abortion Clinic Pretoria ](+27832195400*)[ Abortion Clinic Near Me ● Abortion...
 
Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?
 
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
COMPUTER AND ITS COMPONENTS PPT.by naitik sharma Class 9th A mittal internati...
 
[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse
[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse
[GeeCON2024] How I learned to stop worrying and love the dark silicon apocalypse
 
BusinessGPT - Security and Governance for Generative AI
BusinessGPT  - Security and Governance for Generative AIBusinessGPT  - Security and Governance for Generative AI
BusinessGPT - Security and Governance for Generative AI
 
Evolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI EraEvolving Data Governance for the Real-time Streaming and AI Era
Evolving Data Governance for the Real-time Streaming and AI Era
 
Lessons Learned from Building a Serverless Notifications System.pdf
Lessons Learned from Building a Serverless Notifications System.pdfLessons Learned from Building a Serverless Notifications System.pdf
Lessons Learned from Building a Serverless Notifications System.pdf
 
Jax, FL Admin Community Group 05.14.2024 Combined Deck
Jax, FL Admin Community Group 05.14.2024 Combined DeckJax, FL Admin Community Group 05.14.2024 Combined Deck
Jax, FL Admin Community Group 05.14.2024 Combined Deck
 

UCCSC-UCPath-Mulesoft.pptx

  • 1. UCPath On MuleSoft Anypoint Platform By UCOP - TDS
  • 2. UCPath – quick intro • Replace and consolidate multiple PPS instances • Harmonize HR and payroll processes • PeopleSoft HCM • Hosted at OMCS (Oracle Managed Cloud Services) • Multiple integration points, files and webServices 2
  • 3. U C P A T H O N A N Y P O I N T P L A T F O R M Organizations served Production •UCOP •UCLA (UCPath IDM interfaces) •UCR •UCM •ASLA External Vendors •Salesforce •Glacier Data Center Apps(SD) •FileNet •AYSO •TCS UCRS •Pre-Production In-progress •UCLA Tracker •UCSB Universal •UCSF •UCSD •UCSC •UCH •UCBLAB •UCD •UCB •ANR •UCI
  • 4. U C P A T H O N A N Y P O I N T P L A T F O R M Current UCPath Web Service Interfaces Interfaces Type Vendor Campuses E-017 -FileMonitoring Inbound UCPC I-107 Seperated Employees Inbound UCOP IDM I-165 Employee Security Inbound All I-186 Employee Security Inbound All I-262 Custom UCID/Email/Phone Inbound All I-371 Trigger I280 Inbound All Campuses I-606C FileNet Inbound FileNet E-044B JobTitle Inbound TCS I-619 Taxation Inbound Glacier
  • 5. U C P A T H O N A N Y P O I N T P L A T F O R M Current UCPath Web Service Interfaces Interfaces Type Vendor Campuses I-280 Person Data change Outbound All I-606A Address/Benefits/Job /PersonData changes Outbound Salesforce AYSO I606B Address Change Outbound AYSO I-370 FS Combo Code Validation Outbound UCLA UCR I-367 Department Updates Outbound D2 I-352 Employee Delete Outbound All E-042 Tier2016 Outbound Retirement Choice
  • 6. UCPath’s Current IntegrationPlatform Oracle SOA Suite 11g – Hosted by OMCS SOA Components Used • OSB(Oracle Service Bus) – Inbound/Outbound Proxy Services • SOA(BPEL) – Orchestration Process • BAM – Activity Monitoring • MDS – Meta-data Store • OHS – Reverse Proxy, Context based routing • OWSM - Policy Manager U C P A T H O N A N Y P O I N T P L A T F O R M
  • 8. CurrentIntegrationPlatform… Many environments + manual configuration U C P A T H O N A N Y P O I N T P L A T F O R M
  • 9. CurrentIntegrationPlatform… Where we spend our time • Connecting to locations/vendors – IP/port whitelisting • Network configuration per env • Debugging network configuration issues – Packet capture - Involve OMCS network team • Key management – Per env/manual • SOA stack(OSB, SOA, BAM, OHS, OWSM) per env • Separate consoles for each SOA component • Separate log files • Development IDEs – Jdeveloper(BPEL)/Eclipse(OSB)/Web based console • Compiling and deploying source code – Separate scripts U C P A T H O N A N Y P O I N T P L A T F O R M
  • 10. Opportunity to modernize • Decided to replace the integration platform so we can simplify and automate • Selected IPaaS (Integration Platform as a Service) • IPaaS vendors are investing heavily in their platforms • Most applications are, or will be, cloud-hosted • IPaaS lets us focus on the webServices, not environments, infrastructure • Platform we choose was robust enough to work for system wide projects like UCPath and for multiple campuses use too 10
  • 12. Anypoint platform Features of Anypoint platform • Design Center • Exchange • Management Center • Access Management • API Manager • Runtime Manager U C P A T H O N A N Y P O I N T P L A T F O R M
  • 13. Design Center • Mule Application • Hosted environment where we can create Mule apps and test the functionality • API Specification • RAML specification • API fragment • Use/reuse in API spec U C P A T H O N A N Y P O I N T P L A T F O R M Anypoint platform
  • 14. Exchange • Share reusable API’s which can used across enterprise • Discover API’s shared by other users and request access to the API. U C P A T H O N A N Y P O I N T P L A T F O R M
  • 15. Management Center API Manager Runtime Manager U C P A T H O N A N Y P O I N T P L A T F O R M
  • 16. U C P A T H O N A N Y P O I N T P L A T F O R M • Jenkins is a self-contained, open source automation server which can be used to automate all sorts of tasks related to building, testing, and delivering or deploying software ContinuousIntegration /ContinuousDevelopment
  • 17. U C P A T H O N A N Y P O I N T P L A T F O R M GIT is the source code repository we are using for mule app’s. Repository URL of GIT and the branch it build’s on GIT
  • 19. High-level Architectural Design Integration Architectural Patterns U C P a t h O N A N Y P O I N T P L A T F O R M • API Led Connectivity • Reliability Pattern • High Availability Pattern
  • 22. High-levelArchitecturalDesign… Internal Mule API/Service Architecture U C P A T H O N A N Y P O I N T P L A T F O R M
  • 23. CurrentIntegrationPlatform… Few environments, more automation U C P A T H O N A N Y P O I N T P L A T F O R M
  • 24. High-levelArchitecturalDesign… Anypoint Studio - IDE • Eclipse based IDE, open source & free • Build integrations graphically or in XML • Jumpstart your integrations with pre-built connectors, templates, and examples • Debug with design-time error-handling or Java and XML exception handling • Map and transform data easily - Dataweave • Integrate testing into your existing CI/CD process using MUnit • Easily deploy APIs and integrations built in Studio to the cloud or on-premises • Built-in Maven support U C P A T H O N A N Y P O I N T P L A T F O R M
  • 25. Mule Application Flow • Message Source • Message Processors • Connectors • Transformers • Filters • Flow Controls • Scopes • Error Handlers Sub-flow U C P A T H O N A N Y P O I N T P L A T F O R M
  • 27. MuleApplication… Building a Mule Application 1. Define API spec in Design Center 2. Import project into Studio 3. Generate Flows 4. Generate Munit 5. Commit & Deploy 6. Test U C P A T H O N A N Y P O I N T P L A T F O R M
  • 28. High-levelArchitecturalDesign… Building a Mule Application U C P A T H O N A N Y P O I N T P L A T F O R M
  • 32. 33 Import project from Design Center to AnypointStudio and generate flows from the RAML U C P A T H O N A N Y P O I N T P L A T F O R M
  • 36.
  • 37. UCPathAPIs • System Layer (8) • ucpath-campus-sys-api • ucpath-glacier-sys-api • ucpath-peoplesoft-sys-api • ucpath-redwood-sys-api • ucpath-routing-sys-api • ucpath-sfdc-sys-api • ucpath-ucidm-sys-api • ucpath-notification-sys-api • Process Layer (1) • ucpath-common-orchestration-prc-api • Experience Layer (1) • ucpath-soap-exp-ap 38 U C P A T H O N A N Y P O I N T P L A T F O R M
  • 38. AnypointPlatform–ExperienceSofar • Faster development – Migrated 17 SOA services to 10 APIs in 3 months • One IDE - design, develop, unit test, deploy • Less custom code – Out of the box connectors, components • Transformations made easy - Dataweave • 2-way SSL, Msg Encr –CXF vs WSC • One log file • Very responsive customer support 39 U C P A T H O N A N Y P O I N T P L A T F O R M
  • 39. OrganizationandBusinessGroups  Organization  Our top level org is “UC Online”.  This is the parent Entity and holds all the parent assets  The administration of Business Groups is delegated to the Business group admins under the parent org  Business Groups  Business Groups are sub-entities created under the “UC Online” organization above  This can be a system wide project e.g. UCPath, or a Campus e.g. UCMerced, UCOP  Business group owner is the Business group admin  There are multiple Business groups within the “UC Online” organization above 40 U C P A T H O N A N Y P O I N T P L A T F O R M
  • 40. AssetSharing–APIExchange  Exchange Private  For internal developers (viewer, contributor, or administrator access)  Assets could be limited to Business groups  Exchange Portal  Exchange admins only can share assets  Shared Externally with developers outside of their own organization  What can be shared ?  Mule XML example code, Template, Connector, APIs  Custom information assets.  Advantages  Model and reuse code and APIs  Easy access  Create a repository 41 U C P A T H O N A N Y P O I N T P L A T F O R M
  • 41. Organization and Business Groups 42 U C P A T H O N A N Y P O I N T P L A T F O R M
  • 42. UCOP -UCPath IDM Interfaces  UCOP is Providing and Consuming Services to/from UCPath since past few years.  Current UCOP setup for services  The current interfaces are deployed on JBoss Application server.  Where we spend our time  Maintaining the Application server.  Regenerating the class for any WSDL changes.  This also involves deployment of new artifacts.  Software upgrades for Application server.  Maintaining Multiple environments(Dev, QA, UAT, Prod).  Coordination with Multiple team. 43 U C P A T H O N A N Y P O I N T P L A T F O R M
  • 43.  Looking at the features MuleSoft is providing UCOP IAM has selected MuleSoft as the new integration platform.  Mule is the most lightweight integration platform available.  Mule integrates tightly with Spring.  Mule uses common tools that all Java developers are familiar with, like Maven, Eclipse, JUnit and Spring.  Mule IDE Anypoint Studio helps new developers get up to speed quickly with a graphical development environment.  Process large messages efficiently XML, JSON, flat files, binary and file attachments, streams, and Java objects.  Provides flexibility to deploy apps on cloud or on premise.  Upgrades managed by MuleSoft 44 U C P A T H O N A N Y P O I N T P L A T F O R M
  • 44.  Maintaining and syncing the repository (i.e. WSDL, XSD and other changes) – Use of API Exchnage  To keep up with the market and technology evolution.  In Line with UCPath and other UC who are using MuleSoft.  Deploy same code base across multiple environments.  Reduces the dependency of Application servers plugins. 45 U C P A T H O N A N Y P O I N T P L A T F O R M UCOPIDMinterfacetoCloudHub
  • 45. • In Anypoint Platform, has a future to configure External Identity. • Anypoint Supports SAML2.0. • Anypoint Platform was tested configuring using Shibboleth. • Login to Anypoint and click on external identity to configure the IDP. 46 Anypoint PlatformSupportforSSO U C P A T H O N A N Y P O I N T P L A T F O R M
  • 46.  When did I start thinking about MuleSoft.  How did I approach.  Training on MuleSoft.  Process/Plan to Migrate existing UCOP IDM interfaces.  Testing UCPath interfaces 47 MyExperiencewith MuleSoft U C P A T H O N A N Y P O I N T P L A T F O R M
  • 47. U C P A T H O N A N Y P O I N T P L A T F O R M • Easy to learn • Basic knowledge of XML, JSON, java/object oriented programming and integration technologies such as HTTP, JMS, JDBC, REST and SOAP. • Mulesoft provides free self study development fundamental course • Trainings we took: • Anypoint Platform Development: Fundamentals (Mule 3) - Online instructor-led • API Dev Advanced Training – 3-4 days – Online instructor led • Please check https://www.training.mulesoft.com for more information Training
  • 48. 49 CoE (Center of Excellence) UCOP is going to form a new COE to provide consultation and professional services on the CloudHub platform. Members: • Jerome McEvoy (jerome.mcevoy@ucop.edu) • Mukund Gidadhubli (mukund.gidadhubli@ucop.edu) • Rahul Morthala (rahul.morthala@ucop.edu) • Sushant Prasad (sushant.prasad@ucop.edu) • Krishna Mohan (krishna.mohan@ucop.edu) Contact any member if your have questions
  • 49. 50 Learn more about accessing CloudHub (in 30 minutes)

Editor's Notes

  1. Accelerate developer productivity with a single graphical environment for integration with SaaS and on-premises systems, data integration, API implementation, and testing. Then deploy your applications on-premises or in the cloud with the Mule runtime.
  2. Accelerate developer productivity with a single graphical environment for integration with SaaS and on-premises systems, data integration, API implementation, and testing. Then deploy your applications on-premises or in the cloud with the Mule runtime.
  3. Accelerate developer productivity with a single graphical environment for integration with SaaS and on-premises systems, data integration, API implementation, and testing. Then deploy your applications on-premises or in the cloud with the Mule runtime.
  4. Accelerate developer productivity with a single graphical environment for integration with SaaS and on-premises systems, data integration, API implementation, and testing. Then deploy your applications on-premises or in the cloud with the Mule runtime.
  5. Accelerate developer productivity with a single graphical environment for integration with SaaS and on-premises systems, data integration, API implementation, and testing. Then deploy your applications on-premises or in the cloud with the Mule runtime.
  6. Accelerate developer productivity with a single graphical environment for integration with SaaS and on-premises systems, data integration, API implementation, and testing. Then deploy your applications on-premises or in the cloud with the Mule runtime.
  7. Accelerate developer productivity with a single graphical environment for integration with SaaS and on-premises systems, data integration, API implementation, and testing. Then deploy your applications on-premises or in the cloud with the Mule runtime.