Axa Assurance Maroc - Insurer Innovation Award 2024
Cor source solutions on premise to on demand saas u 2 2012
1. Eileen Boerger
President
ISV PATH TO CLOUD
MOVING YOUR PRODUCT FROM ON-PREMISE ON-DEMAND
February 28, 2012
SaaS University
2. ON-PREMISE TO ON-DEMAND
Business objectives?
Licensing model?
On-demand software
New features? product
Leverage current product?
Modularity
Security
Current on-premise Multi-tenancy
software product Scalability
3. LEVELS OF SAAS MATURITY
1. Internet-accessible 2. Configurable per
One instance per customer
customer
3. Multi-tenant 4. Fully
efficient scalable, configurable,
Multi-tenant
4. SAAS SOFTWARE LAYERS
Browser/Thin Client
Presentation Layer
Business Logic
Metadata
Services
Business
Services
Services
Security
Data Access Layer
Database
Maturity Level 4
5. SAAS SOFTWARE ARCHITECTURE -- CHARACTERISTICS
Browser/Thin Client
Presentation Layer
Business Logic
Metadata
Services
Business
Services
Services
Security
Data Access Layer
Database
Maturity Level 4
6. KEY FACTORS OF SAAS ENABLEMENT
Factor Considerations
oUnderstand business objectives, including licensing model
Business and project planning oAssessment of current product and skills needed
oIncremental project plan or new product development
oSupport for multi-tenancy
Architectural Planning oScalability and manageability considerations
oTechnical approach and use of current product
oFlexible processes for requirements, change management,
Development and service process development and testing
restructuring oAdopt agile methodology for development
oCustomer service model
oAll or subset of current product features
Well-articulated requirements oModernization of user Interface
oAdditional features required
oMore flexible and maintainable Infrastructure
Infrastructure migration
oBalance resources between existing product and SaaS
Existing product support enablement-how?
7. WHY AGILE WORKS FOR SAAS DEVELOPMENT
New and
CorSource
New Product Changing
Software
(SaaS) Requirements
Development
• New business model • Not fully known at start • Predictable schedule
• New interaction model • Need to involve clients • Incremental dev
• New features • Need to evolve over time • Short iterations
• Working iterations
• Quick evolution
Agile methodologies foster product evolution during
development resulting in products that better meet
customer requirements.
8. KEY BENEFITS OF AGILE METHODOLOGIES
Key Characteristic Key Benefits
Predictable Delivery o Can predict product delivery with more accuracy
Schedule
Flexible requirements o More rapid response to changing requirements over time
Iterative – incremental o Allows business and technology to stay in sync
development o Able to maintain a sustainable rate of development
Continuously working o Development and testing in sync at all times
software o Few quality issues at end of full development
o Can demo and get feedback continuously
Team orientation o Gain understanding and buy-in of full team, including
customers in many cases
o Monitor and improve team performance over time
10. SAAS ENABLEMENT STEPS-EVOLUTIONARY APPROACH
SaaS
Product
Enable high Scalability
Add tenant awareness / admin. tools 4
Add configurability / product partitions
3
Enable service-oriented components
Levels of 2
Decrease infrastructure cost
Maturity
Deploy as multi-instance SaaS-ready 1
Restructure business processes
Web-enable product
Modernize legacy code Preparing for SaaS
Plan SaaS incrementally
Support legacy
Current
Product
11. RETAIL SOFTWARE COMPANY – CURRENT PRODUCT TECHNOLOGIES
Product Development Current Product
Business Needs Needs Technologies
o Grow business in mid- o Help on planning Saas o Delphi
market with SaaS enablement o Crystal Reports
product Additional resources to
o o Sharepoint
o Deliver SaaS product develop SaaS product
ASAP
SaaS Enablement Example
12. KEY OBJECTIVES - PRIORITIES
Priority Objective
High Launch SaaS product ASAP (to capture market share
with smaller businesses)
Medium o Move to up-to-date technology
o Improve software’s extensibility to partners
o Improve user interface and functionality
o Support product segmentation / modular deployment
SaaS Enablement Example
14. PRIMARY TECHNOLOGY CHOICES
Selected
Area Rationale
Technology
Application Microsoft .NET Company X has current skills and foundational
Architecture architecture. Other option is Java, which provides no
significant advantages.
GUI Platform Microsoft Aligns best with .NET. Scripting / rapid development
ASP.NET choices such as PHP or Ruby on Rails do not provide
the robustness and flexibility required of enterprise
software.
Database Microsoft SQL Company X has current skills and foundational
Management Server architecture. SQL Server 2005 has reached par with
System Oracle, DB2, and open source alternatives (e.g. MySQL)
for all but the highest transaction loads.
15. SOFTWARE ARCHITECTURE – CURRENT PRODUCT
Presentation Application Services Business Persistence Data Storage
Core Product
Delphi Visual Delphi Delphi Microsoft
Components BOs DAOs SQL
Server
Today
E-Commerce
Browser ASP.NET WCF
Service
Retail Software Company
16. SOFTWARE ARCHITECTURE – UPDATED CURRENT PRODUCT
Presentation Application Services Business Persistence Data Storage
Core Product
Delphi Delphi Microsoft
BOs DAOs SQL
Server
.NET .NET
Today Wrapper Wrapper
E-Commerce
Browser ASP.NET WCF
Service
Retail Software Company
17. SOFTWARE ARCHITECTURE – STEP TO FUTURE PRODUCT
Presentation Application Services Business Persistence Data Storage
Core Product
Delphi Visual Delphi Delphi Microsoft
Components BOs DAOs SQL
Server
.NET .NET
Today Wrapper Wrapper
E-Commerce
Browser ASP.NET WCF
Service
Future Browser ASP.NET WCF
Service
Retail Software Company
18. SOFTWARE ARCHITECTURE – FUTURE PRODUCT
Presentation Application Services Business Persistence Data Storage
Core Product
Delphi Visual Delphi Delphi Microsoft
Components BOs DAOs SQL
Server
.NET .NET
Today Wrapper Wrapper
E-Commerce
Browser ASP.NET WCF
Service
WCF .NET .NET Microsoft
Future Browser ASP.NET Service BOs DAOs SQL
Server
Retail Software Company
19. FIVE PHASES TO SAAS – RETAIL SOFTWARE COMPANY
o Applic. is multi-tenant-aware
o Functional enhancements
1. Web Enable o Partitionable UI
o Separate DB for each tenant (in a
single DB instance)
o Web UI (ASP.NET) o Load testing
o UI enhancements
o Light services layer (WCF) 2. SaaS Launch
o Use current Delphi BOs/DAOs o Multi-tenant DB
o Customizability (forms designer, plug-ins, …) o Tenant-aware admin tool
o Data integrations (e.g. offline POS) o Migration tool
o Migrate Crystal to the Web o Functional enhancements
o Include SharePoint Services 3. True SaaSo Still set up by Prof. Svcs.
incremental deployment as needed
4. Complete Technology Migration
o .NET Business Objects
o .NET Data Access Objects o Optional phase
o Complete services set (plus refactored object o Refactor DAOs
model, SPROCS, updated UI, etc.)
o Active Directory 5. Extreme Scalability
Year 1 2H Year 2 2H Year 3 1H Year 3 2H
21. SUMMARY OF KEY SAAS ENABLEMENT STEPS
Key Step Key Elements of Step
Target market requirements and timing
Identify business objectives o
o Business process changes
o Licensing model
SaaS planning and development experience
Determine outsourcing strategy o
o Value-added onshore presence
o Current product support
Phased approach vs “big-bang”
Develop high-level SaaS product o
o New features needed for this market
roadmap
Current product SaaS suitability assessment
Determine technology approach and o
o Key technologies to be used
software architecture o Architecture considerations
Phases and deliverables, including “sprint” plans
Develop overall project plan, including o
o Resources, schedule, cost
infrastructure plan o Infrastructure needed
Minimum necessary to keep product competitive
Plan and provide existing product o
o Balance resources between existing product and SaaS
support enablement