Telelogic has recently introduced its lifecycle change management solution addressing the challenges faced by today's organisations. Here, Dominic Tavassoli of Telelogic looks at change management, team collaboration and project visibility across the development lifecycle.

Lifecycle change management solutions can help solve some of the most critical challenges organisations have today, by enabling complete impact assessment of a change, providing the project team with 'a single version of the truth', and enhancing visibility and predictability for project management.

Challenges that organisations are up against include:

  • the increasing criticality of software, both safety-critical and business-critical;
  • the increasing complexity of software and systems, technologically and organisationally;
  • the increasing objectives and pressure (cost, schedule, quality, content, regulations).

Meeting these challenges is driving the need for automated lifecycle management (ALM) solutions, following the near-Darwinian evolution of competitive business survival.

These high-level challenges lead to many individual issues:

  • We're customer-focused but it's hard to keep track of customer feedback and relate it to our activities!
  • How can we be agile when it's so hard to manage change across the organisation - so many stakeholders, so much paperwork?
  • Changes to our requirements are critical - how do we view the impact? Has development already started working on this?
  • How can I ensure my requirements are clearly transmitted to the development team?
  • Our managers either can't see what's going on or are drowning in details!

Capturing customer requests

Leading IT market research and advisory firm IDC confirmed that while change request tracking is an important issue, managing changing requirements and specifications is critical for organisations (IDC 2004 Executive Brief: Improving Collaboration and Visibility in the Software Development Process).

'Integrated ALM solutions that combine strong process and change management capabilities with the visibility and collaboration afforded by dashboards are the foundation for organizations seeking tangible development process improvement.

Companies that successfully implement these solutions will benefit from fewer surprises, improved team collaboration, shorter time-to-market and higher-quality products,' wrote Melissa Webster, research director, application lifecycle management at IDC. Lifecycle change management is the integrated solution addressing these issues.

Capturing 'the voice of the customer'

Lifecycle change management allows organisations to capture 'the voice of the customer', requests that are too often lost, badly processed or untraceable. It provides a highly accessible, consistent, repeatable process for preliminary requirement capture and analysis by all relevant stakeholders.

Requests are easily captured through personalised web forms. The review process identifies requirements that are traceable back to the initial customer enhancement requests, while change requests are processed accordingly.

This captures the original 'voice' of the customer as well as the 'spark of innovation' from internal teams. As teams follow the standard approved process to ensure efficient analysis, organisations avoid lost requests or communication breakdowns.

This first component of lifecycle change management builds the traceability that finally makes 'customer focus' a reality.

Managing change across the lifecycle

All projects are subject to change, a frequent source of errors and rework. Teams need to record and manage change impacting all project artifacts (beyond just source code), involving an increasing number of contributors or stakeholders.

Lifecycle change management enables a central, consistent, repeatable change process across systems and software projects, encompassing all areas of engineering.

As above, organisations that follow a web-enabled standard approved process ensure efficient analysis, avoiding lost requests or communication breakdowns.

This consistent and integrated approach is crucial when change impacts the agreed baseline of requirements and specifications (the foundation of the project), implying a scalable and flexible change process.

Requirement change control must be user-friendly, provide easy cross-domain visibility to the change control board and enable immediate communication of change decisions.

Lifecycle change management brings change management to the analysts who are in charge of requirements and specifications, and provides a flexible, consistent and repeatable process for managing changes of the requirements base.

The preferred approach is to allow analysts to simply indicate what requirement change request they are working on, so all changes submitted are automatically tracked, packaged and linked to it.

The review and approval team can then be notified of the proposed change, participate from across the organisation via the web and view the status of specifications and changes.

Managing change and its impact to requirements

Efficient implementation

Another critical issue is that development activities are too often poorly related to the original requirements, let alone change management decisions. Developers might not be working on the latest version of the specifications and often have poor visibility of context and business value. This may lead to unnecessary, unfocused development and costly rework.

Lifecycle change management enables control of the implementation of changes, with an efficient requirements-driven development process, tracing each development task and impacted object to an original customer need or change request. An analyst can create implementation requests from requirements or specification elements.

The implementation tasks appear in the development teams' to-do list, displaying key attributes (priority, deadline etc) and business data.

Automatic establishment and real-time visibility of the relationships between requirements and related development activities helps project managers streamline development and monitor project progress, making sure they're 'doing the right thing' (cf. DO178B requirement to code traceability).

When combined with configuration management they can view the actual business features delivered by each release or baseline.

Clearly defined and communicated requirements improve the focus of software developers, thereby reducing rework and improving productivity.

Lifecycle change management helps organisations align development activities with customer needs and business objectives (cf. Sarbanes-Oxley), around 'a single version of the truth'.

Developer to-do list

Improving visibility and predictability

Project progress is hard to control without an overview. Lifecycle change management solutions should include dashboards, which automatically collect and analyse lifecycle data and produce reporting on metrics and trends.

Web-based display and navigation facilitate management decisions, helping project managers be more efficient, produce accurate estimates and make faster and better informed management decisions.

Lifecycle dashboards are a new, intuitive approach to improve management visibility and predictability.

Dashboard

Bringing it all together

Lifecycle change management brings together all these processes in a ready-to-use, integrated, efficient solution. This enables unique impact analysis capabilities; analysts can check if development is already underway before taking any change or implementation decisions.

They can also check to see how important the impacted feature is for the customer. Reporting the potential effects of change is a key initiative of Sarbanes-Oxley compliance.

Bringing the processes together

Before starting work on a change, a developer is aware of the importance of a request and can see the big picture and is notified of any pending change. As the process records discussions and decisions it automatically builds an organisation knowledgebase that is invaluable for future reference.

Lifecycle change management facilitates controlled response to change - rapidly, efficiently and with reduced risk.

Complete traceability of a change, from the customer request to requirement impacts and actual implementation

The competitive edge

Some of the major benefits of the lifecycle management are:

  • increased customer satisfaction, by capturing all enhancement requests and issues, and ensuring they are acted upon;
  • improved predictability, by providing an integrated view of project phases and activities involved, and early impact analysis;
  • reduced development costs, minimised delays and improved quality, by consistently managing change across all project artefacts, ensuring implementation
  • is continuously aligned with the latest requirements and accelerating issue identification;
  • providing the means to reach higher levels of process maturity (CMMI, SPICE, ISO 9000) and meet corporate governance regulations (Sarbanes-Oxley), by providing automated visibility, support and repeatable procedures in key process areas and introducing lifecycle change assessment, control and reporting.

These benefits provide organisations with a clear competitive edge and equip them with a process framework that can help them address tomorrow's challenges.