case of fusion middleware - ougf 2014 harmony
DESCRIPTION
NOPERU is the organization responsible for handing out permits that Corporations, Governments and Citizens need for activities that involve emissions -such as CO2 - or resource usage - such as energy or water. NOPERU works with 100s users from five locations. A transition is taking place from decentralized data, Oracle Forms based application silos, paper based documents, data oriented, outdated character based user interfaces to a future steeped in Fusion Middleware, with modern pages (ADF), a serviced oriented architecture with decoupling and reuse (SOA Suite and OSB), a unified database (Oracle 11gR2) and digital documents (WebCenter Content). Then a business process approach (BPM Suite & BAM) that aligns with how business really works and provides operational insight to managers. This presentation tells the story of the transition, functional, architectural and technological aspects. The associated OTN Article can be found at : http://www.oracle.com/technetwork/articles/soa/jellema-case-for-fmw-1985090.htmlTRANSCRIPT
Lucas Jellema
OUGF Harmony 2014 – 4-5 June 2014 – Finland
A case of Fusion Middleware - when, why, how and what
The Presenter:Lucas Jellema
• Lives in The Netherlands (close to Amsterdam)• Started doing Oracle in 1994 with Oracle Consulting
(Oracle Designer, Forms, Database)• Joined AMIS in 2002 – now working as CTO, Consultant (Architect,
Technical Lead, Programmer) and Trainer• Oracle ACE (2005) & ACE Director (2006)• Author of ‘Oracle SOA Suite 11g Handbook’
(Oracle Press, 2010) (and working on 12c edition)
• Presenter at Oracle OpenWorld, JavaOne and many Oracle and Java User Group Conferences
• Frequent blogger at http://technology.amis.nl• Active with SQL & PL/SQL, Java EE & ADF, SOA, BPM & more
Fusion Middleware
Overview
• Introducing NOPERU
• Business Objectives
• IT goals
• Architecture
• Technology selection
• IT organization 2.0
• Project roadmap
• Learning experience and conclusions
4
Emissions and Resource Usage
Introducing NOPERU
• National Organization for Permits for Emission and Resource
Usage
• Commercial enterprise, government agency or a private person
requires permit for non-trivial activities (‘fair use’)
• Permit application processing takes from three weeks up to two
years, including appeals
• The process can end with:
– A permit, free of charge
– A permit provided some form of fee or tax is paid
– Rejection
• During the process, NOPERU may require an applicant to
provide additional information
Introducing NOPERU
• NOPERU has five regional branches with three departments each: commercial, governmental, citizens
• Interactions with NOPERU are on paper or through fax and telephone; responses are only given during office hours
commercial
citizen
government
commercial
citizen
government
commercial
citizen
government
commercial
citizen
government
commercial
citizen
government
Introducing NOPERU
• NOPERU has decentralized computer facilities: local application &
database instances with on-site staff
• NOPERU’s applications were developed in the early 90s and have
undergone several upgrades
– Some are Oracle Forms, all run on Oracle Database (11g)
• Each sector has a very similar system for the permit application process
– they all stem from the same base application
– then after cloning they were independently developed
• The applications are unattractive and have a steep learning curve
– They provide a window on data – not a wizard style, task driven UI
8
Business ObjectivesGo Forward 2010-2018
• Faster processing of permit requests• 24/7 availability (the shop is always open for customers)• Multi-channel (web portal, mobile, …)• Ban on paper – everything digital • Self-service (type in yourself, verify yourself, lookup yourself, …)• Flexible change process with short time to market• Cost reduction• Improve Data Quality• Shorter learning curve for new employees
– be able to use temp workers to handle peaks and meet at least the legal deadlines
• Automate as much of the permit application process as possible
9
The Road Ahead
Paperless
24/7
Self-service
Multi Channel
Agile
Process Driven
Data Quality
Cost Reduction
10
IT Objectives
• Work under ‘enterprise architecture’: structured, planned, controlled• Consolidation
– Data– Applications– Infrastructure
• Leverage industry standards and open technology components– Use standard applications (COTS) whenever possible (buy before build)– Never build generic, non-business specific components
• Work with a small number of strategic vendors (that take responsibility)• Setup Master Data and Information Lifecycle Management
– Data integrity– Archival procedures
11
Architecture
• Enterprise Architecture and High-level Information Architecture design• Mid-term architecture roadmap• Reference Architecture
– Patterns, decisions, guidelines,
• Domains: – Documents, – Finance, – Permits & Applications, – CRM, – Expertise (Legal, Scientific,…)
CRM Finance
Expertise Documents
Permits & Applications
12
Decentralized Silos to central, consolidated Layers
13
Layered Architecture
Data
Business
Interface
14
Focused Layered Architecture
Data
Business
Interface• Modern• Volatile• Customized• Variety• Visible
• Reuse• Consolidation• Slowly
evolving• Long lasting
16
Data
Business
Service Oriented Architecture
Interface
CRM Expertise Docs Finance P&A
17
Data
Business
Service Oriented Architecture
Interface
CRM Expertise Docs Finance P&A
elementary service
elementary service
elementary service
elementary service
elementary service
18
Data
Business
Service Oriented Architecture
Interface
CRM Expertise Docs Finance P&A
elementary service
elementary service
elementary service
elementary service
elementary service
19
Data
Business
Service Oriented Architecture
Interface
CRM Expertise Docs Finance P&A
business process
presentation service
presentation service
composite service
composite service
elementary service
elementary service
elementary service
elementary service
elementary service
Utility service
20
Data
Business
Service Oriented Architecture
Interface
CRM Expertise Docs Finance P&A
business process
presentation service
presentation service
composite service
composite service
elementary service
elementary service
elementary service
elementary service
elementary service
Utility service
Decision Svc
21
Data
Business
Process Oriented Architecture
Interface
CRM Expertise Docs Finance P&A
business process
presentation service
presentation service
composite service
composite service
elementary service
elementary service
elementary service
elementary service
elementary service
Utility service
Decision Svc
22
Process Orientation
• Efficiency – automation instead of manual• Optimization – simulation, modeling, improvement• Speed – immediate action instead of asynchronous humans• Quality – (tested) automation instead of human error prone (over typing)• Quality – deadline monitoring and timed triggers• Flexibility – re-configuration at run-time• Management Information –
live operational insight in status and progress of process instances– Also: Audit trail, Trend analysis
• Learning curve – quickly introducing new staff in guided process
BPMN – Business Processing Modeling Notation
• BPMN – industry wide standard for modeling business processes– Supported by platforms for modeling, simulation & analysis and runtime
execution & monitoring
• Common elements in BPMN– flows (decision, loop,
parallel, exception)– human actions
(by various parties) – automated activities
(service calls) – internal & external coordination
signals and events
24
Adaptive Case Management
Case Workers
Investigate
Collaborate
Identify & Leverage Experts Record Communications
& Other Events
Request More Information
ResolveCommunicate
Documents External Data
Case Data
Case Manager
Alerts
Monitor & Optimize
Approve & Audit
External Participants
Report
Seek Updates
Provide Requested Information
Demand Recourse
25
Business
Data
Central Event Facility
Events for decoupled interaction
Interface
CRM Expertise Docs Finance P&A
business process
presentation service
presentation service
composite service
composite service
elementary service
elementary service
elementary service
elementary service
elementary service
Utility service
Decision Svc
Content Repository
EmailEmail
Service Bus
DWHDWH LDAPLDAP
Bulk Data Integration
BPM/ACM & Workflow
Internal UI ApplicationsInternal UI
Applications
PortalPortalWeb
ApplicationsWeb
Applications
BAMBAM
External Web
Services
Data
Integration
Process orchestration
Iden
tity
Man
agem
ent &
Sec
urity
Citizens, Companies, Government, Agencies
Internal StaffB2B
MobileMobile
User InterfaceApplication Interface
Web Sites & Content
Web Sites & Content
Business RuleService
Orchestration
Technology Adapters
Content & Document
management
Adm
inis
trat
ion,
moi
nto
ring
, co
nfig
ura
tion
CRMCRMKnowledgeKnowledge P&AP&A Finance
Required components
Event Handler
27
Vendor & Technology SelectionVendor Requirements
• Vendor and Technology/Product are a package deal: you select one and the other
• Small number of strategic, committed vendors– Ideally taking responsibility for results
• Proven technology with verifiable references• Products that are strategic to the vendor• Vendors with enough substance• Products that are open and support industry standards
– And run on common platform
• Products with substantial community support– Partners, specialists, books and educational resources, active forums, social media
activity, user groups and conferences
28
Vendor & Technology SelectionProcess
• Phase 1– RFI– Market Analysis– Peer investigation
• Screening => Short List• Phase 2
– Proposal and plan – what, how, (creative) conditions– Presentation of Customer References and Product strategy & roadmap– (Reference Visit)
• Selection• Negotations => Deal or No Deal
29
NOPERU’s mapping of components to vendor portfolio
Content Repository
EmailEmail
Service Bus:Oracle Service
Bus
DWHDWH LDAPLDAP
BPM/ACM & Workflow:SOA Suite & BPM Suite
Internal UI Applications:ADF & Forms
Internal UI Applications:ADF & Forms
PortalPortalWeb AppsASP.NET
Web AppsASP.NET
BAM:Oracle BAM
BAM:Oracle BAM
External Web
Services
Data
Integration
Process orchestration
Iden
tity
Man
age
men
t &
Sec
urity
Mobile?
Mobile?
User InterfaceApplication Interface
Web SitesMS Sharepoint
Web SitesMS Sharepoint
Business Rule:SOA Suite
Service Orchestration:SOA Suite (BPEL)
Technology Adapters:SOA Suite
Content & Document management:
WebCenter Content
Adm
inis
trat
ion,
moi
nto
ring
, co
nfig
ura
tion
CRMCRMKnowledgeKnowledge P&AP&A Finance
Bulk Data Integration:
ODI Event Handler:SOA Suite EDN
30
Open ends
• Portal and Mobile technology selection are kept separate– The decoupled architecture allows for this distinction
• Identity Management & Security is also deferred– The OPSS (Oracle Platform Security Services in WebLogic Server) make this a
viable option too– Special challenge: external users (citizens, companies)
31
IT-Organization 2.0
• Agile Software Development– Frequent delivery– Continuous feedback to and prioritizing by business owner– Each team has analysts/designers, developers, testers
32
Scrum board
• CurrentSprint backlog– derived
from ProductBacklog
33
Team organization: Focused on technology – specialize on skill
Data
Business
Interface
CRM Expertise Docs Finance P&A
business process
presentation service
presentation service
composite service
composite service
elementary service
elementary service
elementary service
elementary service
elementary service
Utility service
business process
business process
34Team organization: per domain/feature slide and one team across domains
Data
Business
Interface
CRM Expertise Docs Finance P&A
business process
presentation service presentation
service
composite service
composite service
elementary service
elementary service
elementary service
elementary service
elementary service
Utility service
presentation service
business process
presentation service
business process
35Team organization: per project – across domains and skills
Data
Business
Interface
CRM Expertise Docs Finance P&A
business process
presentation service presentation
service
composite service
composite service
elementary service
elementary service
elementary service
elementary service
elementary service
Utility service
presentation service
business process
presentation service
business process
36
IT-Organization 2.0
• Training & Coaching program– Bring in experienced consultants to do and show how to do (enabling is key) – And to apply best practices and to avoid pitfalls– Set up Competence Centers (virtual expertise guilds)
• The Platform is crucial– Database and Middleware (Application Server, Enterprise Service Bus, Process
Engine, …)
• “Quick time to market” requires break-down of walls between Development, Administration and Maintenance
• => DevOps
The “Platform”
Hardware
VM
O/S
Application Server
Database
Application
Application
Application
WebLogic & platform-components
WebLogic Server
SOA Suite & BPM FormServerWC Portlets
OBI EEOSB
SOA Composite
WS*, Java/JEE & ADF apps
Forms App
WC Content
OSB Service
AdaptersJava EE services++
Cache, Messaging, Timers, Work Managers, …
BPM Process
Enterprise Manager 12c
Activities and areas
Prepare Execute (run-time)
design build test monitor modify• urgent• planned
Application(functional)
Platform(non functional)
Infrastructure
• operational• analysis
Hardware
VM
O/S
Application Server
Database
Application
Activities and areasPrepare Execute (run-time)
design build test monitor modify• urgent• planned
Application(functional)
Platform(non functional)
Infrastructure
BPM & SOA Suite/Service Bus, BAM WebCenter Content (pka UCM) WebLogic Java EE Application Server Database
Operating System (Virtual Machines) Network, Storage, Hardware
req
SLA
UI: ADF, HTML/JS, Java, BAM Process: BPM(N) Services: OSB & SOA Suite; BI Publisher Database: SQL & PL/SQL QA,
Gover-nance, ALM,
provisioning
• operational• analysis
Oracle Enterprise Manager- RUEI- -BTM
- FMW Console- - WLS Console
- Grid Control
FMW Composers(dt @ rt)
- Page Composer- Process Composer
- SOA Composer- OSB Console
- WC Content Editor- Application Facilities
DevOps – to bring togetherPrepare Execute (run-time)
design build test monitor modify• urgent• planned
Application(functional)
Platform(non functional)
Infrastructure
BPM & SOA Suite/Service Bus, BAM WebCenter Content (pka UCM) WebLogic Java EE Application Server Database
Operating System (Virtual Machines) Network, Storage, Hardware
req
SLA
UI: ADF, HTML/JS, Java, BAM Process: BPM(N) Services: OSB & SOA Suite; BI Publisher Database: SQL & PL/SQL
QA, Gover-nance, ALM
• operational• analysis
Oracle Enterprise Manager- RUEI- BTM
- FMW Console- - WLS Console
- Grid Control
FMW Composers(dt @ rt)
- Page Composer- Process Composer
- SOA Composer- OSB Console
- WC Content Editor- Application Facilities
DevOps
42
Automate software engineering
• Code quality control• Testing:
– Web Services: SoapUI (functional) , LoadUI (load & stress) – Java and ADF Business Components: jUnit (function & load) – Web applications: JMeter (functional and primarily load); Selenium (functional) ;
Oracle Application Testing Suite (under evaluation for both functional and load testing)
– Database: SoapUI, QCTO, DB Unit, SQL Developer
• Build: Ant, Maven• Deploy: Hudson, investigating Bamboo• Incident Management and Scrum backlog management: Jira• Source Control: Subversion (Git?)• Collaboration & Knowledge Sharing: MediaWiki, Sharepoint, MS Lync (IM)• [Environment] Provisioning: Puppet
43
Project Roadmap
• B2B Corporate Sector – automated exchange; central db and replication with regional instances
• Digital Documents (central content server, internal application used from regional offices)
• UI for internal staff – sector Citizens – ADF, CRUD style (central DB)• Forms 11g upgrade (from Forms 4.5 Client Server); regional instances• Portal for Corporate clients• Mobile app for internal managers (developed by outsourcing party)
Future:• Standard Application for CRM
– Expose through services
• BPM/ACM for process approach (operational insight through dashboard, process improvement, integrated document flow)
• Use of Cloud facilities?
Learning experience & conclusions
• Consolidation has made a huge difference– Far less administrative effort, much faster upgrades/rollouts, easier ‘cross the
board’ reporting
– Central infrastructure becomes a crucial element whose failure impacts thousands of users => special attention is required
• The transition [to: agile, de-siloed, SOA, centralized, 24/7, …] is scary and overwhelming
– Guidance, reassurance, explanations, and almost spiritual support are absolutely necessary to motivate and enable staff in almost every role
• Communication is essential for the success of the kind of rapid evolution NOPERU is going through
• Database is [still] hugely important (for performance, integrity, development)– With the emphasis on new and shiny, this is sometimes overlooked
Learning experience & conclusions
• Scrum has made a huge difference– Flexibility, team commitment, real time insight, business link
– Management is still struggling to really, truly let go of waterfall approach with its apparent guarantees (Holy Grail: the company backlog)
• SOA requires up-front investments– Reuse can only happen when there are reusable assets
– Bookkeeping & Project Accounting enters a new realm as well
• Governance of reusable assets should quickly be established across the teams
• Layered Architecture and Encapsulation ensures that teams can work in parallel, legacy can be wrapped and reused and local optimizations can continually be applied– Chunks of Work can be outsourced fairly easily (in theory, from a technical
perspective)
46
Data
Business
The glue between teams and components: common data model
Interface
CRM Expertise Docs Finance P&A
business process
presentation service
presentation service
Common Languagefor Interfaces, Messages and Events
composite service
composite service
elementary service
elementary service
elementary service
elementary service
elementary service
Utility service
Summary
• Many organization share similar objectives, predicaments and solutions• Common requirements:
– Multi-channel, flexible, 24/7, cost efficiency, lower risk, paperless– Consolidation, standardization, under architecture, decoupling
• Layered, decoupled architecture – upside down piramid• Common Technology: (for example from Oracle)
– Enterprise Service Bus, BPMN process engine, Digital Content Management, Enterprise Database
– Tools to quickly create modern UIs for various channels on SOA• Organizational changes:
– Agile software development approach – close cooperation between business and IT => “embrace change”
• Roadmap: frequent, small steps with business value• Try to benefit from existing experience
– vendors, consultants, partners
OTN Article: http://bit.ly/1p60gcE
• Blog : technology.amis.nl– On Oracle, SQL, Java, SOA, BPM & more
• Email : [email protected]
• : lucasjellema
• : www.amis.nl, [email protected] +31 306016000 Edisonbaan 15,
Nieuwegein