Software Re-Engineering – Needs Assessment

Need Assessment

Gaining an understanding of existing systems can occur at different levels of granularity and specificity. LinksMultiple analyses and assesses each layer of the existing legacy system separately using the appropriate level of detail necessary for the project

 

The initial activity in this phase is focused on establishing the scope and direction of the re-engineering effort. The next activity in this stage is to establish the initial system requirements to reflect the required improvements. The remaining activities include performing an inventory and analysis of the legacy system, formulating re-engineering strategies and alternatives, and performing a cost/benefit analysis and risk assessment. The objective of the inventory and analysis phase is to quickly obtain an appropriate level of understanding of the system's architecture, design, operational characteristics and functionality.

 

Successfully completing the Need Assessment phase is essential to establishing the following:

·         The scope and extent of the re-engineering effort

·         Quantitative and qualitative data describing the legacy system

·         Feasibility and practicality of re-engineering of the legacy system

·         Re-engineering strategies, technical approaches and alternative solutions

·         Estimating cost, resources, schedule, and risk parameters for re-engineering of the system

·         Forecasting the expected benefits of re-engineering of the system

·         Prototyping of a small subsystem (if feasible)

 

Solution Development

The next phase of the framework is the solution development phase, which constitutes the core element of the re-engineering effort. The initial activity of this phase is to formally elicit and validate the detailed system requirements for the reengineered system. A reverse engineering activity would be performed which would focus on analysing the existing system to obtain an in-depth understanding of the software system, usually with the help of automated software tools. Reusable components would be recovered from the existing system and adapted for use in the reengineered system.

 

The remaining activities encompass the system design and development activity and culminate in system integration and testing.

 

Successfully completing the solution development phase is essential in meeting the following:

·         A reengineered system that complies with the specified requirements

·         A tested and demonstrable system

·         Delivery of a reengineered system within the cost, schedule, and risk parameters.

 

Testing

Testing is the most critical phase is any re-engineering project. Typically a system- regression-testing model is followed in which the same data is fed to the old system and the reengineered system. The outputs are compared and any discrepancy is analysed in conjunction with end users. Test plan and procedures are prepared as per LinksMultiple standards and testing results are documented for future reference. The end user community plays a very important role during the entire testing phase since they typically “own” much of the business knowledge, from the usage perspective, for the system being reengineered.

 

System Transition

The next phase in the re-engineering framework is the system transition phase, which focuses on deploying the reengineered system into its operational environment. An important aspect of the transition phase is allowing for a trial deployment to ensure that all the "glitches" in the system have been attended to. Ensuring proper user training for the reengineered system is also a very important activity of this phase. The re-engineering project is complete only when the system has been fully transitioned and is capable of replacing or superseding the legacy system in its operational environment.

 

Successfully completing the transition phase is essential to meeting the following

·         A system that is compatible with the totality of its operational environment

·         Performance monitoring to merit client acceptance

·         A properly trained user base and trained support personnel

Maintenance and continuous process improvements

The final phase in the re-engineering process framework is Maintenance and continuous process improvement. It is here that planning for future versions of the newly reengineered system takes place. A logical link exists between the end of the current project and the next project's beginning.

 

It is in this way that re-engineering is used as an enabling technology for evolutionary systems. It should be noted that the sequence of the components in the framework is not intended to imply that all the transition activities can wait until the re-engineering is complete.

 

On the contrary, the re-engineering plan must not only specify the actual tasks to carry out the transition activities, but must also account for their proper scheduling. Consequently, even though the bulk of the transition activities are carried out in the latter phases of the re-engineering project, many preparatory tasks (e.g., implementing provisions to ensure the readiness of the organizational infrastructure) may need to be accomplished during the time frame when re-engineering is taking place.

 

The bottom line for a successful re-engineering project is effectively using the quality improvements (afforded by the reengineered system) in the production or operational environment to the benefit and advantage of the client and user. Such benefits may include reducing costs, increasing productivity, or gaining a competitive advantage by improving the quality of the products and services that are produced by the reengineered system.

 

Method

 

 

 

 

Back to the LinksMultiple eBay Auction | eBay Shopping home page

Copyright 2005 LinksMultiple - all rights reserved. No part of this information may be copied or reproduced without prior written permission.