|
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 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 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. |
|
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.