Pricing4SaaS - Supplementary Material
Creators: name: García-Fernández, Alejandro
name: Parejo, José Antonio
name: Ruiz-Cortés, Antonio
Publisher: name: Zenodo
Year: 2023
Subjects: Cloud-based IS engineering
Pricing
Software as a Service

description: Pricing4SaaS
Context
The SaaS (Software as a Service) model is a software distribution and licensing model where software is provided as a service on a subscription basis. Instead of purchasing and installing software locally on premises, users access the software and its features through a web browser over the cloud. When an IS is provided as SaaS, it is also a service, and as such ``is a means of delivering value to customers by facilitating outcomes customers want to achieve, without the ownership of specific costs and risks''.
When a customer subscribes to a SaaS, they accept the conditions set out in their Cutomer Agreement (CA), which, in addition to the general terms of use, include, among others, pricing and SLA. The meaning and scope of the term ``pricing'' differs slightly between what is found in the literature and on SaaS websites. On the one hand, the related literature it is most common to focus on different models and strategies for setting a price to the use of the service, ignoring or paying little attention to any other information. On the other hand, based on our review of real-world pricings, we can state that the shown on SaaS websites are structures that, besides expressing the price and payment model, relates them to the capacities available within the SaaS, the level of support and quality of service. This concept is close to the one proposed in which, as far as we know, is the first time that contextualises the notion of pricing as part of the CA that regulates the provision of cloud services.
Capacities collected in a pricing are referred as features, and we define them as "distinctive characteristics whose presence/absence may guide a user's decision towards a particular subscription". This notion of feature has a bigger scope than the one given for Software Product Lines (SPLs) or feature toggling. In both cases, the concept tends to be fundamentally limited to increases in functionality, leaving out aspects related to capacity, support or quality of service.
With this state of the art, several advances are necessary to achieve the automatic adaptation of IS to changes in their pricings. Hence, the primary objective of this paper is to formalise pricings in order to establish a sound basis for automating the analysis and management of the variability they introduce in SaaS products.
Structure
The labpack contains five main folders:

datasets: contains the .xlsx dataset file consumed by the notebook to extract results. It is contains the analyses conducted on thirteen distinct SaaS platforms annually, spanning from 2019 to 2023.
model: which is divided into another two:

diagrams: within this folder you'll find the version history of Pricing4SaaS, including its various design iterations. To each version correspond an editable file with the corresponding PNG.
yamls: contains the serialization of pricings made with the Yaml4SaaS syntax, explained in `pricing4saas-report.pdf`
notebooks: encompasses all the essential materials for reproducing our empirical experiment. `functions.py` contains the functions used in `pricingStatistics.ipynb`, and both `figures` and `statisticsResutls` house the exported files of the figures generated by the notebook. Finally, `requirement.txt` contains the set of python packages needed to run the study locally.
scripts: contains the scripts used to analyze Yaml4SaaS serialized in search of mismatches.
webs: contains the snapshots of the webpages of the SaaS platforms analyzed in the study that could not be accessed through the Wayback Machine.
As the main component of the lab pack, pricing4saas-report.pdf serves as an expanded version of the experiment. Within this document, a comprehensive breakdown of all the extracted data for the analyzed pricings, categorized by year, is provided. Additionally, the file includes specifications for the Yaml4SaaS syntax.
Structure Schema
Pricing4SaaS/
├─ datasets/
│ ├─ pricingData.xlsx
├─ model/
│ ├─ diagrams/
│ ├─ yamls/
│ │ ├─ saas-included-in-dataset/
│ │ ├─ saas-not-included-in-dataset/
├─ notebooks/
│ ├─ figures/
│ ├─ statisticsResults/
│ ├─ requirements.txt
│ ├─ functions.py
│ ├─ pricingStatistics.ipynb
├─ scripts/
├─ webs/
├─ pricing4saas-report.pdf
Repository
https://github.com/isa-group/Pricing4SaaS.git