Sage, a major business software solution provider, decided to create an add-on to its on-premises enterprise resource planning (ERP) product, Sage 300 Construction and Real Estate (formerly Sage Timberline Office). It decided to use Windows Azure
to take advantage of its elastic capability. Since creating the Sage Construction Anywhere add-on in Windows Azure and implementing autoscaling, Sage has increased reliability, expanded access to data, and pared costs in half.
Sage has built an international reputation for agility and innovation in the field of business management software and services. With headquarters in England, Sage offers business management solutions in 23 countries around the world.
The company had previously launched an on-premises enterprise resource planning (ERP) solution, Sage 300 Construction and Real Estate. It decided to create another product, Sage Construction Anywhere, as an add-on to Sage 300. Sage planned to build the new
add-on to run in a cloud services environment. In addition to controlling costs and gaining cloud experience, the company wanted to provide its customers with increased data mobility, reduced costs, and expanded access to data.
“Customers today, especially on construction sites, are looking for ways to access the data that’s locked in their back office,” says Chad Busche, Principal Software Architect at Sage.
Employees at construction sites who needed information from Sage 300 would typically call their head office and ask for a report. Then, the person there generated the report from Sage 300 and sent it to the employee by email. This manual process was inefficient
and subject to error.
To handle spikes in demand, the team at Sage had an employee monitor the application during business hours to add more web role instances reactively and then remove those instances when traffic fell back to normal levels. This approach was tedious, inefficient,
To meet the need for an ongoing, reliable service, Sage wanted to implement a more advanced solution.
||Using autoscaling in Windows Azure means that we save money by only provisioning the resources that we actually need. It was very easy to add to our application—we didn’t need to make any significant changes.
| Chad Busche
Principal Software Architect, Sage
Sage decided to create the add-on for Sage 300 by using the autoscaling capability in Windows Azure, the Microsoft cloud services development, hosting, and management environment. Windows Azure provides on-demand compute, storage, networking, and content
delivery capabilities through Microsoft data centers around the world.
The team at Sage first created an application, called Sage Construction Anywhere, to run in Windows Azure and then integrated the autoscaling feature. Sage used the Autoscaling Application Block (part of Microsoft Enterprise Library) to proactively manage
the number of role instances used by the Sage Construction Anywhere application. Development work was done using the Microsoft Visual Studio 2010 Professional development system.
The Autoscaling Application Block dynamically controls the number of running role instances based on constraint and reactive rules. To test the way that autoscaling responded to spikes in demand, the team at Sage used Visual Studio Load Test to simulate
different loads on the application. They used this information to create the initial set of reactive rules. Engineers designed the application to be stateless, which means that each user request can be handled by any one of the web role instances.
“Integrating autoscaling and getting it up and running took a couple of hours. Creating our first rule set was straightforward and only took about 20 or 30 minutes,” says Busche.
Employees at construction sites can now use Sage Construction Anywhere to enjoy a streamlined workflow. They can specify the information that they need on a website hosted in Windows Azure and can access the reports from mobile phones, tablets, and laptops.
Sage designed the initial set of rules to accommodate the number of its early adopters of the application. In the future, as Sage adds more features to Sage Construction Anywhere, it expects application usage patterns to change. This will require updates
to the constraint rules and their associated timetables.
By using autoscaling in Windows Azure, Sage has gained valuable cloud experience, improved the performance of its solution, and significantly reduced costs, compared with using a traditional on-premises infrastructure.
Sage compared operating costs for Sage Construction Anywhere before and after adding autoscaling in Windows Azure. It found that using autoscaling resulted in reducing the cost of role instances up to 50 percent, while meeting its service level agreement.
It is confident that the system will scale up automatically to handle any unexpected spikes in usage and then scale down as soon as the spike is over.
“Using autoscaling in Windows Azure means that we save money by only provisioning the resources that we actually need. It was very easy to add to our application—we didn’t need to make any significant changes,” says Busche.
Gained Cloud Experience
During implementation, the Sage team learned several valuable lessons. The team found that it was important to monitor traffic and identify usage patterns, fine-tune the rules regularly, and use load tests. The team also discovered that it was best
to use a combination of constraint and reactive rules. These pointers will be useful as the company expands the functionality of its cloud-hosted applications.
Improved Product Performance
By integrating autoscaling, Sage now has a solution that can automatically scale as needed, based on both anticipated levels of demand and on variations in current levels of traffic. This has resulted in increased reliability and expanded access to
data for its customers.
By using the Autoscaling Application Block in Windows Azure, Sage ensures that there is adequate capacity to meet varying levels of demand for its application around the clock. With autoscaling, it successfully manages the trade-off between the need for
capacity to handle spikes in demand and the need to reduce the running costs of the application.
For more technical information, please visit:
For more information about other Microsoft customer successes, please visit: