Software Engineering in the Age of SaaS and Cloud Computing - SERA 2013 - MFF UK - August 2013
-
Upload
jaroslav-gergic -
Category
Technology
-
view
573 -
download
1
description
Transcript of Software Engineering in the Age of SaaS and Cloud Computing - SERA 2013 - MFF UK - August 2013
©2013 GoodData Corporation. All rights reserved.
SOFTWARE ENGINEERING IN THE AGE OF SAAS AND
CLOUD COMPUTING
Jaroslav GergicVP, R&D and Operations, [email protected]
SERA 2013@ MFF UK
August 7 2013
©2013 GoodData Corporation. All rights reserved.
OUR AGENDA● Introduction ● Software as a Service● Cloud Computing● Impact on Software Engineering● Discussion
© 2013 GoodData Corporation. All rights reserved
©2013 GoodData Corporation. All rights reserved.
Reporting & BI has always been aVALUE CHAINMultiple PRODUCTSMultiple DEVELOPMENT CYCLESHigh IMPLEMENTATION COSTSHigh SUPPORT COSTSDedicated HARDWAREDedicated IT RESOURCES
Data Warehouse
Report
ETL
Datamart Datamart
Cube Cube Cube
Dashboard XLS
The old way…
©2013 GoodData Corporation. All rights reserved.
Our Discussion
Agenda points
OUR VISION IS TO CHANGE THE WAY THE WORLD EXPERIENCES BUSINESS INTELLIGENCE.
©2013 GoodData Corporation. All rights reserved.
OPEN CLOUD BI PLATFORM
© 2013 GoodData Corporation. All rights reserved
©2013 GoodData Corporation. All rights reserved.
WHY GOODDATA
73,000 Satisfied Users
99.5% Uptime SLA
84.7%Adoption
20B Rows Under Management
50+PoweredBy Partners
1,000,000 data integrations per week
28kUsers at one customer
Security Certified
20,000Data Warehouses Under Management
1Delightful Interface
©2013 GoodData Corporation. All rights reserved.
OUR CUSTOMERS
UNLOCK DATAUNITE DATA MONETIZE DATA
©2013 GoodData Corporation. All rights reserved.
Traditional Enterprise Software vs. Software as a Service
● hosted by SaaS provider
● shared Infrastructure● economies of scale
● hosted by customer● HW & Infrastructure
costs borne by customer
©2013 GoodData Corporation. All rights reserved. © 2013 GoodData Corporation. All rights reserved
Traditional Enterprise Software vs. Software as a Service
● integrated solution delivered over the Internet
● multiple HW/SW vendors
● SW integrators
©2013 GoodData Corporation. All rights reserved.
Traditional Enterprise Software vs. Software as a Service
● integrated solution delivered over the Internet
● single codebase for everybody
● functional & business consulting
● multiple HW/SW vendors
● SW integrators● frequent code
customizations● armies of technical
consultants
© 2013 GoodData Corporation. All rights reserved
©2013 GoodData Corporation. All rights reserved.
Traditional Enterprise Software vs. Software as a Service
● integrated solution delivered over the Internet
● single codebase for everybody
● functional & business consulting
● customer configuration changes possible
● multiple HW/SW vendors
● SW integrators● frequent code
customizations● armies of technical
consultants● blurred line between
code and configuration changes
© 2013 GoodData Corporation. All rights reserved
©2013 GoodData Corporation. All rights reserved.
SAAS - FOCUS ON CUSTOMER VALUE
● simplified and consolidated infrastructure allows to focus on customer features instead of technicalities
● easier to accumulate expertise and best practices in a particular domain or industry vertical
● enabling customers to benefit from collective knowledge
© 2013 GoodData Corporation. All rights reserved
©2013 GoodData Corporation. All rights reserved.
SAAS - FASTER INNOVATION CYCLE
● traditional enterprise SW:○ annual or semi-annual cycle
● SalesForce.com pioneer of Enterprise SaaS:○ seasonal releases
● GoodData: major release every month○ minor updates 2 x week
● Next Stop: Continuous Delivery
Cloud Computing
"Cloud computing relies on sharing of resources to achieve coherence and economies of scale similar to a utility (like the electricity grid) over a network. At the foundation of cloud computing is the broader concept of converged infrastructure and shared services."
(source: Wikipedia)
Cloud Computing
= Democratization of
SaaS
Cloud Computing
● public computing clouds further lower the capital needed to starta SaaS company
● elasticity of clouds lets companies scale quickly and just-in-time with little capital expenditure up-front
● cloud computing has become the catalyst expediting the transition from traditional behind-the-firewall software to SaaS
©2013 GoodData Corporation. All rights reserved.
3 Questions
Our Discussion
Agenda points
WHAT ISTHE IMPACT ONSOFTWARE ENGINEERING?● the game has changed a lot...
● … if you happen to be in SaaS
©2013 GoodData Corporation. All rights reserved.
● dynamics of change has increased significantly from months to weeks
● vast scale of SaaS deployments means hitting HW / SW limits all the time
● SaaS requires tightly IntegratedR&D + Operations + Customer Service
(note the second uppercase ‘S’ in SaaS)
WHAT HAS CHANGED?
© 2013 GoodData Corporation. All rights reserved
©2013 GoodData Corporation. All rights reserved.
● increased dynamics of change too many fast changing variables
● hitting HW / SW limits all the time hard to model and predict the next hot spot layered approach does not work anymore
● Ops / Customer Experience / Service software engineers need to broaden their skill set
WHAT DOES IT MEAN?
© 2013 GoodData Corporation. All rights reserved
©2013 GoodData Corporation. All rights reserved.
DEVELOPING SAAS PRODUCT
© 2013 GoodData Corporation. All rights reserved
think about operational aspects:● security
IDS systems, audit logging regular penetration testing
● performance collect statistics at runtime identify hot-spots and remove on the fly
©2013 GoodData Corporation. All rights reserved.
DEVELOPING SAAS PRODUCT
© 2013 GoodData Corporation. All rights reserved
● deployment automation operating hundreds of servers virtual servers become equivalent to processes in the traditional model
● monitoring and logging alerts, troubleshooting and debugging huge volume log files - grep no longer helps
Beware: The code you write can wake you up in the middle of the night! (Literally speaking.)
©2013 GoodData Corporation. All rights reserved.
DEVELOPING SAAS PRODUCT
© 2013 GoodData Corporation. All rights reserved
● It is not only about developing software, it is also about running it on behalf of customers:
monitoring, error reporting & alerting ongoing performance optimizations & fine tuning incremental feature rollouts (risk mitigation)
● All the above influences the way you should architect and develop your software and technologies you use.
©2013 GoodData Corporation. All rights reserved.
Our Discussion
Agenda points
KEYS TO SUCCESSIN SAAS● BE AGILE
YOU CAN’T PREVENT STUFF HAPPENING YOU SAVE THE GAME IF YOU CAN FIX FAST
● BE FLEXIBLE EMBRACE CHANGE ONLY CHANGE IS GUARANTEED TO HAPPEN
● BE VERSATILE END USER EXPERIENCE IS CRUCIAL IN SAAS OWN IT - NO HANDOVERS
©2013 GoodData Corporation. All rights reserved.
THANK YOU!
Questions?