What is Re-engineering?

Re-engineering, also known as software re-engineering, is the process of analyzing, designing, and modifying existing software systems to improve their quality, performance, and maintainability.

  1. This can include updating the software to work with new hardware or software platforms, adding new features, or improving the software’s overall design and architecture.
  2. Software re-engineering, also known as software restructuring or software renovation, refers to the process of improving or upgrading existing software systems to improve their quality, maintainability, or functionality.
  3. It involves reusing the existing software artifacts, such as code, design, and documentation, and transforming them to meet new or updated requirements.

Re-engineering – Software Engineering

Software Re-engineering is a process of software development that is done to improve the maintainability of a software system. Re-engineering is the examination and alteration of a system to reconstitute it in a new form. This process encompasses a combination of sub-processes like reverse engineering, forward engineering, reconstructing, etc. 

Table of Content

  • What is Re-engineering?
  • Objective of Re-engineering
  • Process of Software Re-engineering
  • Why Perform Re-engineering?
  • Steps involved in Re-engineering
  • Re-engineering Cost Factors
  • Factors Affecting Cost of Re-engineering
  • Advantages of Re-engineering
  • Disadvantages of Re-engineering
  • Conclusion
  • Frequently Asked Questions (FAQs) on Re-engineering

Similar Reads

What is Re-engineering?

Re-engineering, also known as software re-engineering, is the process of analyzing, designing, and modifying existing software systems to improve their quality, performance, and maintainability....

Objective of Re-engineering

The primary goal of software re-engineering is to improve the quality and maintainability of the software system while minimizing the risks and costs associated with the redevelopment of the system from scratch. Software re-engineering can be initiated for various reasons, such as:...

Process of Software Re-engineering

The process of software re-engineering involves the following steps:...

Why Perform Re-engineering?

Re-engineering can be done for a variety of reasons, such as:...

Steps involved in Re-engineering

Inventory Analysis  Document Reconstruction  Reverse Engineering  Code Reconstruction  Data Reconstruction  Forward Engineering...

Re-engineering Cost Factors

The quality of the software to be re-engineered. The tool support available for re-engineering. The extent of the required data conversion. The availability of expert staff for re-engineering....

Factors Affecting Cost of Re-engineering

Re-engineering can be a costly process, and there are several factors that can affect the cost of re-engineering a software system:...

Advantages of Re-engineering

Reduced Risk: As the software is already existing, the risk is less as compared to new software development. Development problems, staffing problems and specification problems are the lots of problems that may arise in new software development.  Reduced Cost:  The cost of re-engineering is less than the costs of developing new software. Revelation of Business Rules:  As a system is re-engineered , business rules that are embedded in the system are rediscovered. Better use of Existing Staff: Existing staff expertise can be maintained and extended accommodate new skills during re-engineering. Improved efficiency: By analyzing and redesigning processes, re-engineering can lead to significant improvements in productivity, speed, and cost-effectiveness. Increased flexibility: Re-engineering can make systems more adaptable to changing business needs and market conditions. Better customer service: By redesigning processes to focus on customer needs, re-engineering can lead to improved customer satisfaction and loyalty. Increased competitiveness: Re-engineering can help organizations become more competitive by improving efficiency, flexibility, and customer service. Improved quality: Re-engineering can lead to better quality products and services by identifying and eliminating defects and inefficiencies in processes. Increased innovation: Re-engineering can lead to new and innovative ways of doing things, helping organizations to stay ahead of their competitors. Improved compliance: Re-engineering can help organizations to comply with industry standards and regulations by identifying and addressing areas of non-compliance....

Disadvantages of Re-engineering

Major architectural changes or radical reorganizing of the systems data management has to be done manually. Re-engineered system is not likely to be as maintainable as a new system developed using modern software Re-engineering methods....

Conclusion

Software re-engineering is a systematic process aimed at improving existing software systems. It involves analyzing, restructuring, and sometimes rebuilding software to enhance its functionality, adapt it to new requirements, or migrate it to a new platform. By employing techniques such as reverse engineering and forward engineering, reengineering helps ensure that software remains relevant, maintainable, and efficient....

Frequently Asked Questions (FAQs) on Re-engineering

1. What is the difference between software reengineering and reverse engineering?...