Professional Documents
Culture Documents
Today if you look at most of the tool vendors, ALM has one set of vendors
vendors,, tools and teams. But for
operations there are different tools, different teams, different disciplines. While DevOps is now trying
to connect development and operations, for ALM tools and techniques we need to have a closer
connection and integration into
o the operations world. This is one of the biggest gaps, particularly when
we speak about ALM in today’s world, with increasing pace of change and complexity, and so
increasing the risk of failure for the current ALM practice.
There is a lot of information available on agile development practices and tools, however the
question remains, how do you handle the entire lifecycle in agile conditions and how do you integrate
your process when you start to work in an agile approach? It is not just development that does agile, it
is also the operations side. Operations for an agile world is significantly less explored. There is less
information about it, less tools, less practices, less experience which creates a conflict.
The pace of change is one thing that definitely impacts ALM. Look what processes you have in
operations. You still have the same ITIL and COBIT that don’t speak about agile. The development
side of ALM knows how to go agile, but operations does not. So ALM still gets stuck in the operations
side.
Complexity of Environments
The complexity of today’s environments also plays a major role. The code is not the same software
code we were developing 10 years ago. It’s not just C++. Now there’s Ruby on Rails, Java, PHP and
so on relying on a lot of components that you need to have when building such systems, making for
very complex software infrastructure. Typically the ALM process focuses on the software piece, while
now dependency on the infrastructure is much higher. You depend on the database, depend on the
operations system, depend on the messaging platform and so on. So without understanding all the
components and embedding them into the build process, you can’t actually deliver a high quality
environment.
Disruptive Technologies
Virtualization and cloud now impacts ALM as well. For example, you can leverage these technologies
for your testing, like increasing the diversity and flexibility of your testing lab, while enhancing the
independence of the developers so they can actually manage their own servers and not wait until a
required server is provisioned. In terms of the way you package your deliverable, virtualization and
cloud have a significant impact, as well as in terms of design and architecture of the applications.
At the same time virtualization and cloud introduce a number of challenges impacting effectiveness of
ALM. Challenges to successfully managing the process in virtual servers come from limited visibility
into virtual machine content, the dynamic resource allocation constantly changes physical topology,
and the proliferation of virtual images and virtual machine sprawl.
On top of these virtualization issues, cloud adds a self-service automation layer. This layer
exacerbates the management challenges because you need to address:
The introduction of the cloud will separate the development and operations teams even further. Self
provisioning based on rollout of virtual images hides development activities from the Operations team
because Operations provides just an infrastructure used then by the Development tea m, allowing them
to set up application environments. While, the Development team has limited visibility into Operation’s
services, which are provided as a catalog.
This adds another gap between the two sides, exacerbating the management challenges from not
sharing a consistent view of the environment.
Transitioning through environments and managing environments is part of the ALM process, and is
even more important when dealing with virtualization and cloud.
To reach this level of control of the change in this complex system consisting of heterogeneous and
dynamic environments, there are certain requirements to expect from the tools. The requirements are
for tools to instigate the control while maintaining the agility. For this, the tools need to be able to deal
with all the changes, meaning there should be software changes but also the environment, software
infrastructure changes and so on. Tools should deal with all process changes – formal and informal.
The changes that are automated and changes that are done manually. Changes that are authorized
and changes that are not authorized, not planned. Tools should cover the entire environment, from
software through all layers of the underlying infrastructure stack.
I think that the degrees of evolution that have happened in software engineering in technology
organizations in IT have lead to a new way of working, requiring changes to ALM processes,
technologies and tools. What I believe is that a new generation of tools is required to cope with the
new trends. The existing tools are great, but they are designed based on an old approach, with old
concepts in mind – when there was a well defined process, a structured organization, a well planned
roadmap and so on.
So the new set of tools that will be supporting agility and providing flexible control and be able to
deliver information, in spite of complexity, the right amount of information to the user that needs it,
those are the tools we will see coming into the market in the years to come
Ability to manage multiple clients/ business lines and multiple business priorities
Excellent client management skills- Ability to interact with senior leadership onshore and
manage expectations effectively.
Ability to interact and work with a cross functional geographically dispersed team
(onshore and offshore).
Ability to handle change - Effectively manages ad hoc situations within required
timeframes/queries and quality standards
Strong project management skills- ability to handle multiple projects having unstructured
scoping
Excellent analytical skills: Review and provide direction on projects/ programs (Data
driven approach).
Ability to deliver training on Quality methodology is desirable (Six Sigma and Lean)
Updates and maintains own expertise, shares this with colleagues and provides guidance
to the team
Role would require the incumbent to be the point of contact for the client(s) managing the
end to end project/ program assigned offshore or onshore
He or she would be responsible to deliver on the project/ program goals while closely
working with the clients.
The role holder also needs to handle large unstructured projects spanning across business
areas and handle changing client needs by liasoning with key sponsors.
He/she needs to work closely with senior leadership in identifying key strategic initiatives
to achieve business objectives and is able to identify and drive continuous process
improvement