A case of Fusion Middleware - iLOUG 2013
- 1. Lucas Jellema (AMIS – The Netherlands)
IlOUG – Tech Days, Jerusalem, 10 & 11 July 2013
A Case of Fusion Middleware
- 2. Overview
• Introducing NOPERU
• Business Objectives
• IT goals
• Architecture
• Technology selection
• IT organization 2.0
• Project roadmap
• Learning experience and conclusions
- 4. 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 for of fee or tax is paid
– Rejection
• During the process, NOPERU may require an applicant to
provide additional information
- 5. 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
- 6. 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 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
- 7. 7
Business Objectives
Go 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
• Automate as much of the permit application process as possible
- 9. 9
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
- 10. 10
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
- 19. Data
Business
19
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
- 20. Business
Data
Central Event Facility
20
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
- 21. Content
Repository
Email
Service Bus
DWH LDAP
Bulk Data
Integration
BPM & Workflow
Internal UI
Applications
Portal
Web
Applications
BAM
External
Web
Services
Data
Integration
Process
orchestration
IdentityManagement&Security
Citizens, Companies,
Government, Agencies
Internal StaffB2B
Mobile
User Interface
Application Interface
Web Sites &
Content
Business Rule
Service
Orchestration
Technology
Adapters
Content &
Document
management
Administration,mointoring,configuration
CRM
Know
ledge P&A Finance
Required components
Event Handler
- 22. 22
Vendor & Technology Selection
Vendor 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
- 23. 23
Vendor & Technology Selection
Process
• 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
- 24. 24
Mapping to vendor portfolio
Content
Repository
Email
Service Bus:
Oracle Service
Bus
DWH LDAP
BPM & Workflow:
SOA Suite & BPM Suite
Internal UI
Applications:
ADF & Forms
Portal
Web
Applications
BAM:
Oracle BAM
External
Web
Services
Data
Integration
Process
orchestration
IdentityManagement&Security
Mobile
User Interface
Application Interface
Web Sites &
Content
Business Rule:
SOA Suite
Service Orchestration:
SOA Suite (BPEL)
Technology
Adapters:
SOA Suite
Content & Document
management:
WebCenter Content
Administration,mointoring,configuration
CRM
Know
ledge P&A Finance
Bulk Data
Integration:
ODI Event Handler:
SOA Suite EDN
- 25. 25
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
- 26. 26
IT-Organization 2.0
• Agile Software Development
– Frequent delivery
– Continuous feedback to and prioritizing by business owner
– One team with designers, developers, testers
- 28. 28
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
- 29. 29
Team organization:
per domain/feature slide
and one team cross domain
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
- 30. 30
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
- 32. WebLogic & platform-components
WebLogic Server
SOA Suite
& BPM FormServerWC Portlets
OBI EEOSB
SOA
Composite
WS*,
Java/JEE &
ADF apps
Forms App
UCM
OSB
Service
AdaptersJEE services++
Cache, Messaging, Timers,
Work Managers, …
BPM
Process
- 33. 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
- 34. Activities and areas
Prepare Execute (run-time)
design build test monitor modify
• urgent
• planned
Application
(functional)
Platform
(non functional)
Infrastructure
BPM & SOA Suite/Service Bus, BAM
WebCenter Content (UCM)
WebLogic Java EE Applicatie Server
Database
Operating System
(Virtual Machines)
Network, Storage, Hardware
req
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
-FMW Console
-- WLS Console
- Grid Control
FMW Composers
(dt @ rt)
-Page Composer
-Process Composer
-SOA Composer
- OSB Console
-WC Content Editor
- Applicatie
voorzieningen
- 35. DevOps – to bring together
Prepare Execute (run-time)
design build test monitor modify
• urgent
• planned
Application
(functional)
Platform
(non functional)
Infrastructure
• BPM & SOA Suite/Service Bus, BAM
• WebCenter Content (UCM)
• WebLogic Java EE Applicatie Server
• Database
• Operating System
•(Virtual Machines)
• Network, Storage, Hardware
req
• 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
-FMW Console
-- WLS Console
- Grid Control
FMW Composers
(dt @ rt)
-Page Composer
-Process Composer
-SOA Composer
- OSB Console
-WC Content Editor
- Applicatie
voorzieningen
DevOps
- 36. 36
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
• Incident Management and Scrum backlog management: Jira
• Source Control: Subversion (Git?)
• Collaboration & Knowledge Sharing: MediaWiki, Sharepoint, MS Lync (IM)
- 37. 37
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
• BPM for process approach (operational insight through dashboard,
process improvement, integrated document flow)
- 38. 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 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) – that is sometimes overlooked
- 39. Learning experience &
conclusions
• Scrum has made a huge difference
– Flexibility, team commitment, real time insight, business link
• 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
- 40. Data
Business
40
The glue between teams and
components: common data model
Interface
CRM Expertise Docs Finance P&A
business
process
presentation
service
presentation
service
Common Language
for Interfaces, Messages and Events
composite
service
composite
service
elementary
service
elementary
service
elementary
service
elementary
service
elementary
service
Utility
service
- 41. 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
• Organizational changes:
– Agile software development approach – close cooperation between
business and IT => “embrace change”
• Roadmap: frequent, small steps with business value