SlideShare a Scribd company logo
Customisation &
Total Cost of Ownership
For Multi-tenant systems
What is a multi-tenant system?
“The term "software multitenancy" refers to a software architecture in which a
single instance of software runs on a server and serves multiple tenants.
A tenant is a group of users who share a common access with specific
privileges to the software instance.”
-- Wikipedia
What is software Total Cost of Ownership?
Software ownership adds many liabilities over the entire lifecycle:
▪ Costs for enhancements and fixes required to support changing
business environment
▪ Costs for testing and deploying these changes
▪ First-line support costs: documentation, compliance, training of new
staff, handling user errors, access roster management
▪ Second-line support costs: Ongoing support and management of
production and pre-production environments
Comparison to multi-instance systems
Multi-Tenant Multi-Instance
Why multi-tenancy
▪ Reduced cost at scale: costs scale with number of active users,
not number of tenants
▪ Reduced maintenance costs: one set of hardware to manage,
maintain and update
▪ Reduced ongoing development costs: one codebase to test
Why multi-instance
▪ More straightforward security model: one set of equipment per
tenant
▪ Facilitates customisation per-tenant: separate codebases can be
used if needed
▪ Lower initial development cost: significant upfront cost of multi-
tenancy infrastructure
Customisation & Configuration
Configuration: enabling different software parameters on a per-tenant
basis to deliver a different experience or feature set to the users.
Customisation: developing bespoke features for individual tenants.
Approaches to customisation
1. Develop entirely new branch of software, deploy to entirely new
hardware → separate custom deployment
2. Develop generic new features with appropriate feature flags and
configuration parameters → generic feature development
3. Develop custom code just for a single tenant and hide it behind a
feature flag → point customisation
Separate custom deployment
▪ Allows any form of customisation that is technically possible
▪ Create entirely new code branch and entirely new set of environments
▪ Exponential increase to TCO:
▫ More hardware
▫ Changes need to be merged to both branches
▫ Doubles testing requirements
▫ Doubles deployment costs
▫ Doubles support costs
▫ Changing shared data and content can get very painful
Generic feature development
▪ Developing generically useful feature is more expensive and takes
longer (could be e.g. 2x as long)
▪ Requires thought and design and may not be possible if feature
truly is tenant-specific
▪ However features now available to all tenants if they want them, so
increases software value
▪ Slower increase to TCO:
▫ Increases testing costs in line with normal feature development
▫ Increases future enhancement costs in line with normal feature
development
Point customisation
▪ Hide custom code behind a feature flag
▪ Moderate increase to TCO:
▫ Increases ongoing change costs
▫ Increases ongoing testing costs - sets of tests now need to be
retested for each new customisation, and combinations of them
▫ Does not require entirely new set of hardware environments
▫ Still only one deployment per change
▫ Future changes do not need to be merged twice
Charging models
Separate
Custom
deployment
Point
customisation
Generic feature
development
TCO
# of features
Projection of TCO changes using different approaches
Charging for separate custom deployment
▪ Take existing projections for ongoing maintenance and change
costs for all tenants
▪ Double it. At least.
▪ Add your margin
Charging for generic feature development
▪ Design the generic feature
▪ Confirm with customer that it satisfies their needs
▪ Develop a fixed-price style charge. This means:
▫ Detailed design
▫ Detailed estimation
▫ 50% cost overrun buffer
▪ Recommend ignore TCO change in costing: should be
accomodated by ongoing support model
Charging for point customisation
▪ Develop a fixed-price style charge. This means:
▫ Detailed design
▫ Detailed estimation
▫ 50% cost overrun buffer
▪ Add TCO charge. Suggest 3 year horizon for “total”. Ask QA team
for an estimate of increased regression test cost. Multiply by 36, for
one regression per month. So if it adds one day to a regression,
then charge the additional 36 days. Could add substantially more.
Summary
Conversion to multi-instance: avoid at all costs. Maintain coherent
single platform with defined mission. If necessary spin off new services
to deal with truly unique new features.
Conversion to configuration: use wherever possible. Apply thought and
design to how new requirements can be applied to existing and future
customers. Maintain coherent mission.
Point customisation: Only use where necessary. Charge realistically.
We help companies of all sizes with their most challenging
business change, product development and public cloud needs.
https://www.isotoma.com
hello@isotoma.com

More Related Content

Viewers also liked

Webinar: Select the Right Web CMS in 2016
Webinar: Select the Right Web CMS in 2016Webinar: Select the Right Web CMS in 2016
Webinar: Select the Right Web CMS in 2016
Real Story Group
 
Content Management System Selection Guide at Notre Dame
Content Management System Selection Guide at Notre DameContent Management System Selection Guide at Notre Dame
Content Management System Selection Guide at Notre DameDon Schindler
 
When Worlds Collide: Why Marketing & Technology Should be Involved in the CMS...
When Worlds Collide: Why Marketing & Technology Should be Involved in the CMS...When Worlds Collide: Why Marketing & Technology Should be Involved in the CMS...
When Worlds Collide: Why Marketing & Technology Should be Involved in the CMS...
Hileman Group
 
Martech
MartechMartech
Martech
Colin Lewis
 
Experiences of CMS Selection
Experiences of CMS SelectionExperiences of CMS Selection
Experiences of CMS Selection
cborkowski
 
The art and science of selecting the right CMS
The art and science of selecting the right CMSThe art and science of selecting the right CMS
The art and science of selecting the right CMS
Janus Boye
 
The Executive's Guide to Content Management Systems
The Executive's Guide to Content Management SystemsThe Executive's Guide to Content Management Systems
The Executive's Guide to Content Management Systems
Greenfield/Belser Ltd.
 
CMS Selection: The "C" is for Content! - Confab Central 2015
CMS Selection: The "C" is for Content! - Confab Central 2015CMS Selection: The "C" is for Content! - Confab Central 2015
CMS Selection: The "C" is for Content! - Confab Central 2015
Anne Casson
 
Content Management System (CMS) Selection Best Practices
Content Management System (CMS) Selection Best PracticesContent Management System (CMS) Selection Best Practices
Content Management System (CMS) Selection Best Practices
edynamic
 
Local Government Web Network conference 2010
Local Government Web Network conference 2010Local Government Web Network conference 2010
Local Government Web Network conference 2010
theneemies
 
From Vision to Use Cases for CMS selection
From Vision to Use Cases for CMS selectionFrom Vision to Use Cases for CMS selection
From Vision to Use Cases for CMS selection
David Hobbs Consulting
 
How to choose and improve your content management system
How to choose and improve your content management systemHow to choose and improve your content management system
How to choose and improve your content management system
Andrew Duck
 
Choosing the "right" CMS
Choosing the "right" CMSChoosing the "right" CMS
Choosing the "right" CMS
Sally Lait
 
Content Management System Selection Best Practices
Content Management System Selection Best PracticesContent Management System Selection Best Practices
Content Management System Selection Best Practices
edynamic
 
Remate Y Bloqueo
Remate Y BloqueoRemate Y Bloqueo
Remate Y Bloqueomiguel
 
Optimizing Total Cost of Ownership for the AWS Cloud
Optimizing Total Cost of Ownership for the AWS CloudOptimizing Total Cost of Ownership for the AWS Cloud
Optimizing Total Cost of Ownership for the AWS Cloud
Amazon Web Services
 
CMS selection: The process, pitfalls and best practices
CMS selection: The process, pitfalls and best practicesCMS selection: The process, pitfalls and best practices
CMS selection: The process, pitfalls and best practices
Peter Sejersen
 
CMS ( Content Management System ) Digital Marketing
CMS ( Content Management System ) Digital MarketingCMS ( Content Management System ) Digital Marketing
CMS ( Content Management System ) Digital Marketing
IMM Graduate School
 

Viewers also liked (20)

Webinar: Select the Right Web CMS in 2016
Webinar: Select the Right Web CMS in 2016Webinar: Select the Right Web CMS in 2016
Webinar: Select the Right Web CMS in 2016
 
Content Management System Selection Guide at Notre Dame
Content Management System Selection Guide at Notre DameContent Management System Selection Guide at Notre Dame
Content Management System Selection Guide at Notre Dame
 
When Worlds Collide: Why Marketing & Technology Should be Involved in the CMS...
When Worlds Collide: Why Marketing & Technology Should be Involved in the CMS...When Worlds Collide: Why Marketing & Technology Should be Involved in the CMS...
When Worlds Collide: Why Marketing & Technology Should be Involved in the CMS...
 
Martech
MartechMartech
Martech
 
Deep Digital Strategy
Deep Digital StrategyDeep Digital Strategy
Deep Digital Strategy
 
Experiences of CMS Selection
Experiences of CMS SelectionExperiences of CMS Selection
Experiences of CMS Selection
 
The art and science of selecting the right CMS
The art and science of selecting the right CMSThe art and science of selecting the right CMS
The art and science of selecting the right CMS
 
The Executive's Guide to Content Management Systems
The Executive's Guide to Content Management SystemsThe Executive's Guide to Content Management Systems
The Executive's Guide to Content Management Systems
 
CMS Selection: The "C" is for Content! - Confab Central 2015
CMS Selection: The "C" is for Content! - Confab Central 2015CMS Selection: The "C" is for Content! - Confab Central 2015
CMS Selection: The "C" is for Content! - Confab Central 2015
 
Content Management System (CMS) Selection Best Practices
Content Management System (CMS) Selection Best PracticesContent Management System (CMS) Selection Best Practices
Content Management System (CMS) Selection Best Practices
 
Local Government Web Network conference 2010
Local Government Web Network conference 2010Local Government Web Network conference 2010
Local Government Web Network conference 2010
 
From Vision to Use Cases for CMS selection
From Vision to Use Cases for CMS selectionFrom Vision to Use Cases for CMS selection
From Vision to Use Cases for CMS selection
 
How to choose and improve your content management system
How to choose and improve your content management systemHow to choose and improve your content management system
How to choose and improve your content management system
 
Choosing the "right" CMS
Choosing the "right" CMSChoosing the "right" CMS
Choosing the "right" CMS
 
Content Management System Selection Best Practices
Content Management System Selection Best PracticesContent Management System Selection Best Practices
Content Management System Selection Best Practices
 
Remate Y Bloqueo
Remate Y BloqueoRemate Y Bloqueo
Remate Y Bloqueo
 
AWS TCO Compute
AWS TCO Compute AWS TCO Compute
AWS TCO Compute
 
Optimizing Total Cost of Ownership for the AWS Cloud
Optimizing Total Cost of Ownership for the AWS CloudOptimizing Total Cost of Ownership for the AWS Cloud
Optimizing Total Cost of Ownership for the AWS Cloud
 
CMS selection: The process, pitfalls and best practices
CMS selection: The process, pitfalls and best practicesCMS selection: The process, pitfalls and best practices
CMS selection: The process, pitfalls and best practices
 
CMS ( Content Management System ) Digital Marketing
CMS ( Content Management System ) Digital MarketingCMS ( Content Management System ) Digital Marketing
CMS ( Content Management System ) Digital Marketing
 

Similar to Customisation & Total Cost of Ownership for Multi-Tenant Systems

A Year of “Testing” the Cloud for Development and Test
A Year of “Testing” the Cloud for Development and TestA Year of “Testing” the Cloud for Development and Test
A Year of “Testing” the Cloud for Development and Test
TechWell
 
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
DevOps.com
 
Single vs. multi tenant cost comparison
Single vs. multi tenant cost comparisonSingle vs. multi tenant cost comparison
Single vs. multi tenant cost comparison
kanimozhin
 
Single vs. Multi Tenant Cost Comparison
Single vs. Multi Tenant Cost ComparisonSingle vs. Multi Tenant Cost Comparison
Single vs. Multi Tenant Cost Comparison
Techcello
 
A Framework to Measure and Maximize Cloud ROI
A Framework to Measure and Maximize Cloud ROIA Framework to Measure and Maximize Cloud ROI
A Framework to Measure and Maximize Cloud ROI
RightScale
 
POV - Practical Containerization
POV - Practical ContainerizationPOV - Practical Containerization
POV - Practical Containerization
Robert Greiner
 
Cloud Computing Courses Online.pptx Join Now
Cloud Computing Courses Online.pptx Join NowCloud Computing Courses Online.pptx Join Now
Cloud Computing Courses Online.pptx Join Now
asmeerana605
 
A Year of Testing in the Cloud: Lessons Learned
A Year of Testing in the Cloud: Lessons LearnedA Year of Testing in the Cloud: Lessons Learned
A Year of Testing in the Cloud: Lessons Learned
TechWell
 
Taming Cloud Sprawl - XConf Europe 2023 - Kief.pdf
Taming Cloud Sprawl - XConf Europe 2023 - Kief.pdfTaming Cloud Sprawl - XConf Europe 2023 - Kief.pdf
Taming Cloud Sprawl - XConf Europe 2023 - Kief.pdf
Kief Morris
 
Improving DevOps through Cloud Automation and Management - Real-World Rocket ...
Improving DevOps through Cloud Automation and Management - Real-World Rocket ...Improving DevOps through Cloud Automation and Management - Real-World Rocket ...
Improving DevOps through Cloud Automation and Management - Real-World Rocket ...
Ostrato
 
Adopting the Cloud
Adopting the CloudAdopting the Cloud
Adopting the Cloud
Tapio Rautonen
 
Improving Software Delivery with DevOps & Software Defined Environments | The...
Improving Software Delivery with DevOps & Software Defined Environments | The...Improving Software Delivery with DevOps & Software Defined Environments | The...
Improving Software Delivery with DevOps & Software Defined Environments | The...
IBM UrbanCode Products
 
Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402Rosalind Radcliffe
 
Automating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native MeetupAutomating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native Meetup
Matt Ray
 
The Rocky Cloud Road
The Rocky Cloud RoadThe Rocky Cloud Road
The Rocky Cloud Road
Gert Drapers
 
Cloud Economics - Crayon Optimization Services
Cloud Economics - Crayon Optimization ServicesCloud Economics - Crayon Optimization Services
Cloud Economics - Crayon Optimization Services
Anfernee Bonds
 
Demystifying Cloud Economics - How to Build an Investment Case for Scale Migr...
Demystifying Cloud Economics - How to Build an Investment Case for Scale Migr...Demystifying Cloud Economics - How to Build an Investment Case for Scale Migr...
Demystifying Cloud Economics - How to Build an Investment Case for Scale Migr...
Amazon Web Services
 
Optimizing your cloud
Optimizing your cloudOptimizing your cloud
Optimizing your cloud
2nd Watch
 
Techcello at a glance
Techcello at a glanceTechcello at a glance
Techcello at a glance
kanimozhin
 
Lecture 15.ppt
Lecture 15.pptLecture 15.ppt
Lecture 15.ppt
YesuRaju8
 

Similar to Customisation & Total Cost of Ownership for Multi-Tenant Systems (20)

A Year of “Testing” the Cloud for Development and Test
A Year of “Testing” the Cloud for Development and TestA Year of “Testing” the Cloud for Development and Test
A Year of “Testing” the Cloud for Development and Test
 
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
Microservices at Scale: How to Reduce Overhead and Increase Developer Product...
 
Single vs. multi tenant cost comparison
Single vs. multi tenant cost comparisonSingle vs. multi tenant cost comparison
Single vs. multi tenant cost comparison
 
Single vs. Multi Tenant Cost Comparison
Single vs. Multi Tenant Cost ComparisonSingle vs. Multi Tenant Cost Comparison
Single vs. Multi Tenant Cost Comparison
 
A Framework to Measure and Maximize Cloud ROI
A Framework to Measure and Maximize Cloud ROIA Framework to Measure and Maximize Cloud ROI
A Framework to Measure and Maximize Cloud ROI
 
POV - Practical Containerization
POV - Practical ContainerizationPOV - Practical Containerization
POV - Practical Containerization
 
Cloud Computing Courses Online.pptx Join Now
Cloud Computing Courses Online.pptx Join NowCloud Computing Courses Online.pptx Join Now
Cloud Computing Courses Online.pptx Join Now
 
A Year of Testing in the Cloud: Lessons Learned
A Year of Testing in the Cloud: Lessons LearnedA Year of Testing in the Cloud: Lessons Learned
A Year of Testing in the Cloud: Lessons Learned
 
Taming Cloud Sprawl - XConf Europe 2023 - Kief.pdf
Taming Cloud Sprawl - XConf Europe 2023 - Kief.pdfTaming Cloud Sprawl - XConf Europe 2023 - Kief.pdf
Taming Cloud Sprawl - XConf Europe 2023 - Kief.pdf
 
Improving DevOps through Cloud Automation and Management - Real-World Rocket ...
Improving DevOps through Cloud Automation and Management - Real-World Rocket ...Improving DevOps through Cloud Automation and Management - Real-World Rocket ...
Improving DevOps through Cloud Automation and Management - Real-World Rocket ...
 
Adopting the Cloud
Adopting the CloudAdopting the Cloud
Adopting the Cloud
 
Improving Software Delivery with DevOps & Software Defined Environments | The...
Improving Software Delivery with DevOps & Software Defined Environments | The...Improving Software Delivery with DevOps & Software Defined Environments | The...
Improving Software Delivery with DevOps & Software Defined Environments | The...
 
Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402Dev ops for mainframe innovate session 2402
Dev ops for mainframe innovate session 2402
 
Automating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native MeetupAutomating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native Meetup
 
The Rocky Cloud Road
The Rocky Cloud RoadThe Rocky Cloud Road
The Rocky Cloud Road
 
Cloud Economics - Crayon Optimization Services
Cloud Economics - Crayon Optimization ServicesCloud Economics - Crayon Optimization Services
Cloud Economics - Crayon Optimization Services
 
Demystifying Cloud Economics - How to Build an Investment Case for Scale Migr...
Demystifying Cloud Economics - How to Build an Investment Case for Scale Migr...Demystifying Cloud Economics - How to Build an Investment Case for Scale Migr...
Demystifying Cloud Economics - How to Build an Investment Case for Scale Migr...
 
Optimizing your cloud
Optimizing your cloudOptimizing your cloud
Optimizing your cloud
 
Techcello at a glance
Techcello at a glanceTechcello at a glance
Techcello at a glance
 
Lecture 15.ppt
Lecture 15.pptLecture 15.ppt
Lecture 15.ppt
 

Recently uploaded

A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
Philip Schwarz
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
TheSMSPoint
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
lorraineandreiamcidl
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
Google
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
timtebeek1
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
Deuglo Infosystem Pvt Ltd
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
Octavian Nadolu
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
Rakesh Kumar R
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
Aftab Hussain
 

Recently uploaded (20)

A Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of PassageA Sighting of filterA in Typelevel Rite of Passage
A Sighting of filterA in Typelevel Rite of Passage
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
Transform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR SolutionsTransform Your Communication with Cloud-Based IVR Solutions
Transform Your Communication with Cloud-Based IVR Solutions
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOMLORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
LORRAINE ANDREI_LEQUIGAN_HOW TO USE ZOOM
 
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing SuiteAI Pilot Review: The World’s First Virtual Assistant Marketing Suite
AI Pilot Review: The World’s First Virtual Assistant Marketing Suite
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdfAutomated software refactoring with OpenRewrite and Generative AI.pptx.pdf
Automated software refactoring with OpenRewrite and Generative AI.pptx.pdf
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
Empowering Growth with Best Software Development Company in Noida - Deuglo
Empowering Growth with Best Software  Development Company in Noida - DeugloEmpowering Growth with Best Software  Development Company in Noida - Deuglo
Empowering Growth with Best Software Development Company in Noida - Deuglo
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Artificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension FunctionsArtificia Intellicence and XPath Extension Functions
Artificia Intellicence and XPath Extension Functions
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
Fundamentals of Programming and Language Processors
Fundamentals of Programming and Language ProcessorsFundamentals of Programming and Language Processors
Fundamentals of Programming and Language Processors
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Graspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code AnalysisGraspan: A Big Data System for Big Code Analysis
Graspan: A Big Data System for Big Code Analysis
 

Customisation & Total Cost of Ownership for Multi-Tenant Systems

  • 1. Customisation & Total Cost of Ownership For Multi-tenant systems
  • 2. What is a multi-tenant system? “The term "software multitenancy" refers to a software architecture in which a single instance of software runs on a server and serves multiple tenants. A tenant is a group of users who share a common access with specific privileges to the software instance.” -- Wikipedia
  • 3. What is software Total Cost of Ownership? Software ownership adds many liabilities over the entire lifecycle: ▪ Costs for enhancements and fixes required to support changing business environment ▪ Costs for testing and deploying these changes ▪ First-line support costs: documentation, compliance, training of new staff, handling user errors, access roster management ▪ Second-line support costs: Ongoing support and management of production and pre-production environments
  • 4. Comparison to multi-instance systems Multi-Tenant Multi-Instance
  • 5. Why multi-tenancy ▪ Reduced cost at scale: costs scale with number of active users, not number of tenants ▪ Reduced maintenance costs: one set of hardware to manage, maintain and update ▪ Reduced ongoing development costs: one codebase to test
  • 6. Why multi-instance ▪ More straightforward security model: one set of equipment per tenant ▪ Facilitates customisation per-tenant: separate codebases can be used if needed ▪ Lower initial development cost: significant upfront cost of multi- tenancy infrastructure
  • 7. Customisation & Configuration Configuration: enabling different software parameters on a per-tenant basis to deliver a different experience or feature set to the users. Customisation: developing bespoke features for individual tenants.
  • 8. Approaches to customisation 1. Develop entirely new branch of software, deploy to entirely new hardware → separate custom deployment 2. Develop generic new features with appropriate feature flags and configuration parameters → generic feature development 3. Develop custom code just for a single tenant and hide it behind a feature flag → point customisation
  • 9. Separate custom deployment ▪ Allows any form of customisation that is technically possible ▪ Create entirely new code branch and entirely new set of environments ▪ Exponential increase to TCO: ▫ More hardware ▫ Changes need to be merged to both branches ▫ Doubles testing requirements ▫ Doubles deployment costs ▫ Doubles support costs ▫ Changing shared data and content can get very painful
  • 10. Generic feature development ▪ Developing generically useful feature is more expensive and takes longer (could be e.g. 2x as long) ▪ Requires thought and design and may not be possible if feature truly is tenant-specific ▪ However features now available to all tenants if they want them, so increases software value ▪ Slower increase to TCO: ▫ Increases testing costs in line with normal feature development ▫ Increases future enhancement costs in line with normal feature development
  • 11. Point customisation ▪ Hide custom code behind a feature flag ▪ Moderate increase to TCO: ▫ Increases ongoing change costs ▫ Increases ongoing testing costs - sets of tests now need to be retested for each new customisation, and combinations of them ▫ Does not require entirely new set of hardware environments ▫ Still only one deployment per change ▫ Future changes do not need to be merged twice
  • 13. Separate Custom deployment Point customisation Generic feature development TCO # of features Projection of TCO changes using different approaches
  • 14. Charging for separate custom deployment ▪ Take existing projections for ongoing maintenance and change costs for all tenants ▪ Double it. At least. ▪ Add your margin
  • 15. Charging for generic feature development ▪ Design the generic feature ▪ Confirm with customer that it satisfies their needs ▪ Develop a fixed-price style charge. This means: ▫ Detailed design ▫ Detailed estimation ▫ 50% cost overrun buffer ▪ Recommend ignore TCO change in costing: should be accomodated by ongoing support model
  • 16. Charging for point customisation ▪ Develop a fixed-price style charge. This means: ▫ Detailed design ▫ Detailed estimation ▫ 50% cost overrun buffer ▪ Add TCO charge. Suggest 3 year horizon for “total”. Ask QA team for an estimate of increased regression test cost. Multiply by 36, for one regression per month. So if it adds one day to a regression, then charge the additional 36 days. Could add substantially more.
  • 17. Summary Conversion to multi-instance: avoid at all costs. Maintain coherent single platform with defined mission. If necessary spin off new services to deal with truly unique new features. Conversion to configuration: use wherever possible. Apply thought and design to how new requirements can be applied to existing and future customers. Maintain coherent mission. Point customisation: Only use where necessary. Charge realistically.
  • 18. We help companies of all sizes with their most challenging business change, product development and public cloud needs. https://www.isotoma.com hello@isotoma.com