iSubscription: Bridging the Gap Between Contracts and Runtime Access Control in SaaS
摘要
Software as a Service (SaaS) usually provides users with the ability to choose the features and usage limits they need – i.e. a configuration. Once a configuration is selected, it becomes a subscription. Despite enhancing value for customers, this model challenges providers, who must enforce that users operate within subscriptions that may change at any time – either by user choice or provider updates. This makes runtime subscription enforcement a self-adaptation challenge. A promising strategy to address this challenge is pricing-driven feature toggling, currently implemented only by Pricing4SaaS, to the best of our knowledge. This solution relies on two data sources: iPricings – machine-oriented representations of pricings; and subscription states – usage levels’ values of usage-limited features. However, Pricing4SaaS delegates subscription state management to the managed service, forcing providers to update subscription logic whenever a new usage limit is added/removed, which increases coupling and hinders scalability. This paper introduces three main contributions to address these limitations. First, we show that usage limits tend to increase as pricings evolve, reinforcing the need to simplify subscription management. Second, we introduce iSubscription, a machine-oriented model of subscription states compatible with iPricings. Third, we introduce SPACE, an independent service for pricing-driven self-adaptation that overcomes all state-of-the-art’s limitations.