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