May 8, 2009

Automated Lifecycle Management

Application Lifecycle Management

Automated lifecycle management has been used a lot in recent years. But there are a lot of different people and vendors who use the term. And it means something different to each of them. 

What Is Automated Lifecycle Management?

It Started With ERPs...

Enterprise resource planning (ERP) kicked off a binge of systems integrations projects in the past decade or so. Each of these comes with grand goals of integrating information systems across the entire breadth of the manufacturing process.

The result of these systems integrations projects (the successful ones, anyway) was to provide a more common view from different perspectives. The hope is that people with different roles could share the same key data, but with different views depending on their role.

For example, if people in the purchasing department have access to warehouse inventories, they can better decide when and how much to order. You can get optimal efficiency with just-in-time (JIT) manufacturing and supply chain management.

Automation in the Software Development Lifecycle...

With the software development lifecycle (SDLC), the same general idea of ERP applies. In this case we're talking about integrating information systems related to the software development process rather than manufacturing processes. 

Just as with manufacturing information systems, many software companies evolve their information systems organically and independently. 

Business analysts define business requirements, which get translated into technical requirements and lead to software changes. 

Developers modify software based on those requirements. 

QA tests the software (usually focusing on the changes to direct test efforts), and tracks their lists of defects. 

Customer support reports defects that got past developers and QA.

Each of these roles contributes to a common system (in reality, a system of systems). Bugs and new requirements are both drivers for change — and can be tracked the same way. 

An Example of Automated Lifecycle Management

A new engineer may be confused about a software change, and can easily trace it to the technical requirement that caused the change to be made. And from there to the business requirement from which the technical requirement was generated. And from there (in the extreme example) back to the "idea incubator" of wiki discussions from when the idea for the requirement was originally discussed. 

With such a high degree of transparency in the process afforded by integrated systems, the engineer can see a flaw in the original thinking — or any of the translations along the way — and "do the right thing" to fix it. 

Once that right thing is done, it should be clear what downstream customers (internal and external) may need a patch.  

How to Do Automated Lifecycle Management

Application lifecycle management solutions help you add automation — and give team members the transparency they need to work effectively.