SaaS portal for managing Azure subscriptions
Itransition delivered a load-resistant SaaS web application translating extensive spreadsheets of data on the Azure services usage into comprehensive visualized dashboards and graphs, thus giving valuable insights into Azure-related expenditures.
Problem
Our Customer is one of the largest Microsoft services provider worldwide with core competencies in designing, developing, customizing, extending and supporting full-service Microsoft solutions. Specialized expertise and a cohesive set of products on hands enable them to transform businesses by providing tailored Microsoft user adoption services to business users and IT professionals across the USA.Â
One of the key products the company deals with is Microsoft Azure encompassing 60+ solutions for hosting, development, configuration and maintenance of powerful cloud applications. According to the transparent payment model, Azure users pay for amount of resources consumed, so the bills for services may unpredictably vary every month. Addressing users’ needs for better control over their Azure-related expenses, our Customer decided to launch a comprehensive SaaS portal in support of Azure implementation – a one-stop center measuring resource usage and calculating the price for services.Â
Relying on our extended expertise of web portals development and a solid Microsoft Azure track record, the Customer approached Itransition to bring their idea to life.Â
Solution
Itransition delivered a comprehensive SaaS web portal translating complex data from users’ Azure subscriptions into an easily decipherable dashboard:Â
Backend
To ensure the system monitors the usage of Azure virtual machines and molds the aggregated data into useful information, Itransition team implemented the following Windows Service Applications running in their own Windows sessions:
- Application 1: user data extraction, transformation and storing. Based on the pre-defined schedule, the service mines the billing and usage data from personal or enterprise Azure accounts, then proceeding to systemization and expenditure calculation. The service does not interfere with the user working on the same computer and can be automatically started either every night, or upon the registration of a new account, or on the request.
- Application 2: user notification. This app is responsible for pushing notifications in case the Azure services get overused. End users are enabled to define notification delivery settings, including specific thresholds and in case the trigger is activated (e.g. 20% expenditure increase as compared with the former period or the weekly peak usage has been exceeded), the system pushes email notifications
Frontend
The client part of the solution is developed in the form of personal user space, where the logged in users access immense interactive dashboard capabilities:
Enterprise Azure subscriptions management
For geographically dispersed and/or structurally intricate companies there is an option of assigning the Azure resources to logical entities: affiliate companies, departments, projects. Categorization of this kind empowers managers not only manage all the company subscriptions using one interface, but also control where money is being spent across projects and departments.
Report generation by type of service or instance
The solution provides advanced visualization functionality for end users to generate attractive graphic reports on the cost, trends and charts for usage during the definite period, both for the entire company and specific logical entities. Additionally, the system supports exporting reports in PDF.
Configuration of notification triggers, mail distribution and access rights
Addressing the needs of heterogeneous users, our team implemented flexible configuration features. At a click of a mouse, users can define notification triggers and schedule automated reports mailing. Besides, for enterprise accounts the portal provides for comprehensive distribution of role-base privileges across subscriptions.
In order to enter personal spaces, users are free to choose one of the following authentication techniques:
- Single sign on implemented with Active Directory Federation Services for members of Azure Enterprise Agreement (EA);
- Microsoft Live ID;
- User-defined password.
Comprehensive Access Distribution
For the sake of clean responsibilities segregation, the portal distributes access privileges across the following types of users:
User |
view statistics on Azure services usage |
Account Admin |
view statistics, adds/deletes users, departments and projects associates with the account |
Company Owner |
views company statistics, manages company users, sets up alerts/p> |
EA Owner |
views company statistics, manages company users, and configures enrollment in EA |
Sales |
gets access to any of the corporate accounts and views company statistics |
Super Admin |
configures system settings |
Favorable Public Feedback
In less than a year, Itransition delivered a fully-fledged solution that grants unprecedented reporting functionality to Azure subscribers, be they individuals or Azure Enterprise Agreement members. Providing a simple solution to the complicated problem of the Azure billing financial analysis, the application is gaining steam, facing 1000 users increase every month. The Customer was pleased to obtain a powerful application answering the market demands and drawing positive response from the target group.
Process
Technology Overview
Itransition implemented Windows Service Applications using .NET technology, while for the client part we selected PHP along with the open source Symphony 2 foundation. Applying solid frontend development expertise and relying on the UX design best practices, we created user-friendly interface, arranging information by recurrent logical instances for clear navigation. To ensure splendid data visualization, we employed Bootstrap, Backbone.js and Kendo UI libraries:
Seeking to ensure the system’s load resistance, scalability and continuous availability – the crucial attributes of a SaaS web application – we used Azure SQL as a cloud-based database management system for the solution. For connecting the web service apps, we leveraged Azure Service Bus – a reliable generic, cloud-based messaging system.
Custom-Tailored Agile Development
After thorough research of the subject area and the Customer’s business context, we selected the Kanban iterative development model answering the project needs for flexible planning. As long as the Customer managed the project works, Itransition executed tasks on an ongoing basis. We focused on the work in progress solely, on completion plucking the next work item off the top of the backlog, so the Customer was free to re-prioritize work in the backlog without disrupting the team. For comprehensive organization of the development process, our team tracked the workflows state on the Kanban board and synchronized progress on daily standup meetings.
Services
SaaS consulting & development services
We provide comprehensive SaaS application development services to deliver scalable and secure SaaS solutions tailored to your industry and business needs.
Insights
A starter’s guide to running a healthcare SaaS startup
Itransition's consultants share insider tips on setting up and running a successful healthcare SaaS startup.
Case study
Cloud business intelligence system for vehicle manufacturers
Find out how Itransition migrated a BI suite to the cloud and delivered brand-new cloud business intelligence tools for the automotive industry.
Case study
Cloud-based risk management software for a nuclear power plant
Explore how Itransition designed a cloud-based risk management software for a nuclear power plant to automate their risk management workflows.