Tuesday, 19 January 2016
Application lifecycle management: moving from traditional to agile
Organisations are under an ever-increasing pressure to restructure their teams and processes to match accelerating market dynamics and release faster applications and services; faster release cycles require developers, testers and performance engineers to work in parallel. In addition, they struggle to have visibility and insight across different projects and into the work of distributed teams.
Deploying code and data with manual processes throughout the application development lifecycle are error-prone, expensive and time consuming. Moving code through development environments to Quality Assurance, then pre-production before going live, usually makes up 50% of the delivery effort. Managing of heterogeneous infrastructure of virtual, physical and cloud environment is a tedious and laborious job.
Bringing Application Lifecycle Management (ALM) and Agile together and using the right tools, will lead to an efficient way of designing and developing software. By using an Agile ALM approach, organisations will benefit from improved productivity that will in turn, help reduce the costs and time to market, and improve return on investment (ROI). All stakeholders have instant access anywhere at any time to the information they need. They have real-time visibility and participation in the process lifecycle, meaning that the technical infrastructure is aligned with business and business value.
It also means that, through interactions between business and technical personnel, teams will be aligned and collaborating closely together. Through the ‘continuous delivery’ approach that Agile ALM introduces, software assets are protected, and teams benefit from improved reuse, better requirements traceability, cleaner code, and improved test results.
Agile ALM frees companies from the heavyweight processes and tools that prevent them from creating useful and better software. Through better software, they discover new ways to engage and increase customer satisfaction, while they are able to continuously adapt in line with customer feedback, shifts in the market, and changes in business strategy.
Clients can streamline releases, speed up deployment and allow more to be delivered for the same cost.
There are three things that can go wrong when deploying software: defects, environment issues and incorrect deployment. Establishing which one it is can have a significant delay on the QA process.
Taking into consideration the Agile manifesto that states, ‘individuals and interactions over processes and tools’, organisations that are looking to establish Agile ALM will need first to get their teams familiar with the Agile methods, and then research for the right tool.
The process of selecting the right tool should be aligned with an organisation’s requirements and objectives. With effective and efficient tooling, it’s much easier to determine which requirements are already implemented in which artefacts and which defects can be traced down to specific artefacts. Therefore, the right ALM tool should natively support all Agile practices and should aim for accessibility and collaboration across teams, and not centralisation.
With the right Agile ALM tool you should be able to get cross-channel coverage and have the complete lifecycle integrated from requirements, testing, defects, planning and resources to development and deployment into a ‘single version of the truth’ to support any QA and DevOps initiatives.
Clients must have end-to-end visibility and transparency into project costs and variances for improved cost management and project profitability and also the strategic metrics for organizations to make better decisions based on a complete picture of their project activities. This would allow for project managers to spend less time copying and pasting data from one system to another and more time managing their projects, and enables them to report accurately to senior stakeholders whether they are getting value for money from their major investment.
Armed with the right tool an organisation can incorporate ALM into its Agile process and start reaping the benefits of Agile ALM. It can be used with all kinds of process models and methodologies, including traditional ones, such as waterfall or spiral models.
Agile ALM powers innovation and by transforming their processes, organisations gain competitive advantage, minimising costs and improving operational efficiency. It provides means for establishing coherent, repeatable processes, as well as managing consistent and accurate information across the application lifecycle.
By Vaios Vaitsis, Founder & CEO of Validata Group