ALM Workflow, from requirements to release, has a number of moving parts and challenges that teams need to develop and refine in order to achieve the level of software development and delivery maturity they desire.
Let me first explain what I mean by an ALM Workflow. I am referring to the flow of information, work, and data from one system to another or from one development team to another. This allows teams and companies to adjust, adopt and innovate with full reporting and transparency.
Yes, the software world just got a little smaller and more integrated.
Teams and individuals can easily be encumbered by lack of integration, from tools, different development languages, and environment challenges. When there are roadblocks and uphill challenges or when working to get a feature out, it is easy to just give up and keep doing the same broken practices by just dealing with the manual build, deployments and environment miss-matches.
What I have experienced as a consultant, is that most companies do not have an infrastructure that is flexible, updated or integrated to support the different development teams, builds and deployment processes to adjust to markets or customers’ needs.
To help companies fix the ongoing turmoil and provide a roadmap towards a less frustrating ALM Workflow, Azure and Visual Studio Online (VSO) offers a dynamic platform that encompasses a wide range of languages, frameworks, and tools to build and support the ALM Workflow.
Using Visual Studio Online, teams that are geographically dispersed (or even local) can work with common practices and toolsets to produce the latest set of features from a common backlog.
With the integration of Git as a code repository, developers that are remote or are contractors can work on a local Git repository and publish to VSO to keep the code base and development progress current without having to do VPN, FTP or Email (yes, I have seen code updates via email).
With the integration of MyGet with VSO, build servers in Azure or on-premise can publish a NuGet build package that can be accessed globally without having to setup or support a complex infrastructure.
Image from Announcing Visual Studio Online integration
When it comes time to build, deploy, and test an environment. Azure’s toolsets are integrated to complete the ALM Workflow.
Image from Microsoft Azure
Spinning up a VM for deployment in Azure is a straightforward tasks. It is not a 6-page request to your IT department that takes 2 weeks and still doesn’t get you everything you need.
The Windows PowerShell Workflow (PSWF) gives teams the ability to automate the creation, deployment, monitoring and maintenance within the Azure environments.
Image from Windows PowerShell Blog
Azure’s ability to scale up when needed (without having the IT department give you that “Ya right, like that is going to happen” look) gives you the ability to setup real work performance testing of your application. Even being able to test an application from outside of the corporate network could be a huge win for some QA departments.
During the entire cycle of the ALM Workflow there are processes that keep the ALM engine running. Storage, backup and recovery features are not always available for testing or development environments.
With Azure Analytics, management and teams can review logs that provide metrics data for storage account usage by trend. With Azure Predictive Analytics companies can crunch Big Data without the big cost of building and supporting the infrastructure.
As you can see, Microsoft Azure and Visual Studio Online have a lot to offer when it comes to improving an ALM Workflow. The wide toolset, cross-platform integration and flexibly to scale to your needs are not always found in most companies infrastructures. Requirement to release should not be an uphill and frustrating experience. Requirement to release should be a creative and fun journey that is always evolving.
Do not let all the moving parts in the ALM Workflow break your team down on that journey. Convincing management to allocate funds and resources is hard because it is a major expense up front. Convincing an overworked IT staff to prioritize internal assets, with the knowledge that they will then be required to support them is sometimes a losing battle. Leveraging Azure takes IT out of the equation and dramatically reduces cost. It’s kind of a no-brainer.