O documento discute como o uso de ambientes de desenvolvimento e teste na nuvem do Microsoft Azure e VSTS pode trazer eficiência e independência para equipes de desenvolvimento sem perder o controle. Ele aborda desafios como escalabilidade, estabilidade e economia e mostra como a nuvem pode ajudar a lidar com esses desafios, permitindo ligar e desligar recursos conforme necessário e se adaptando rapidamente a mudanças. O documento também fornece exemplos de economia de custos e inclui uma demonstração.
5. Economia
Sua Aplicação
S M T W T F S
Capacity needed (max+20%)
Economia
20-30%
J F M A M J J A S O N D
Capacity needed (max+20%)
Economia
60-80%
Aplicação individual
Dev/test na nuvem
Application portfolio
Todo ambiente de dev/test e produção na nuvem
On and off (30%) Growing fast (15%) Unpredictable bursting (25%) Pred. bursting (20%) 24x7 steady
Implementing and maintaining a dev and test infrastructure—the four building blocks—in physical, on-premises hardware is inherently costly and can suffer from delays due to long procurement cycles and increased set-up and management effort required.
Additionally, according to industry reports, development and test infrastructure typically runs at a low utilization rate of approximately 20 percent, which leads to over-provisioning of costly resources when buying hardware exclusively for dev and test purposes.
Ultimately, the lack of a scalable, agile dev and test infrastructure prevents businesses from validating and executing on promising ideas and limits innovation.
Just like many other workloads, dev and test infrastructure building blocks can be moved to the cloud.
Cloud computing offers two main benefits—irrespective of workload—that make it so compelling: the ability to scale up and down at any time without delay to adjust to actual need; and economic factors unique to the cloud that will generate enormous cost savings compared to on-premises infrastructure resources.
Applications and environments do not always need to be up and running for 24 hours, seven days a week.
Different workloads typically exhibit different usage patterns and it would be ideal if the underlying infrastructure could adjust automatically to conform to actual requirements.
According to industry reports, development and test infrastructure typically runs at a low utilization rate of approximately 20 percent, which leads to over-provisioning of costly resources when buying hardware exclusively for dev and test purposes.
In a nutshell: if you do not need the compute and storage resources all the time, you should not be forced to pay for them.
That is the beauty of cloud computing: cloud resources can scale based on actual demand. If resources are not needed they are simply switched off and de-commissioned. If they are needed again, then they are brought back, without delay.
Cloud economics ensure that you only pay for resources when they are actually used.
The inherent scalability of a cloud infrastructure means that you can scale up and down at any time without limits, depending on your needs.
You will never over-provision for infrastructure again and this in itself will save you money.
Combined with other cloud economic factors—for example, the generally lower resource costs due to the massive scale of cloud datacenters—you will realize approximately 30 percent total cost of ownership savings just by moving one individual dev and test environment to the cloud.
Moving one application environment to the cloud is a good starting point, but if you really want to maximize cost savings, it makes sense to look at your entire application portfolio holistically.
If you move multiple workloads to the cloud—also taking into account production environments—you can realize up to 80 percent TCO savings!
Every development team building applications needs a software development infrastructure in place to design, develop, test, release and deliver custom software. This infrastructure consists of four building blocks. If any one of these building blocks is missing, the team simply cannot work.
Each team member—whether in a developer role or any other role—needs a workstation with role-specific tools installed in order to be productive.
A developer never works alone. The team collaboration environment provides important centralized functions like source control, build management, project management and more so that the team can jointly perform the different functions of the ALM process.
At some point during the development phase, dev and test environments come into play. Working environments are provisioned and the application is installed so that developers, testers and stakeholders can validate functionality, fix bugs and issues, and verify that everything works as expected.
Finally, the application is released to production.