Monday, April 13, 2020

Conclusion

Conclusion


The software engineering field evolves to subsequent generation software
reengineering. The software reengineering is predicated on the concept of reduced cost.
Without changing the functionality of the legacy system helps the people to feel the
software with new trend and technology. Reengineering concepts like reverse
engineering, forward engineering are described. Reengineering Process are often
transformed in to a replacement arena, refractor a present of reengineering, redesign and recode also reduce the event time and also the value . The merits and demerits are
always applicable to the any field. it's not exception to software reengineering too. But concluding the advantages shadow over the problems by a large margin. Thus in this ever changing world, the software needs to be enginnered again and again to fit the preset world we live in. 


Authors

Tanay Soni
Fagun Shadi
Tanish Kogta

Tejas Shantaram

Advantages and Disadvantages

Benefits of Software Reengineering Process:

At a particular stage, the organization is faced with the selection of making a replacement system from scratch or upgrading an existing one. In most cases, it's software reengineering process which will be the proper choice, because it provides variety of serious advantages:

1) productivity increase. By optimizing the code and database the speed of labor is increased;

2) risk reduction. Development from scratch is usually a more risky exercise, as against a phased upgrade of the prevailing system;

3) time saving. rather than starting development from scratch, the prevailing solution is just transferred to a replacement platform, saving all business-logic;

4) optimization potential. you'll refine the system functionality and increase its flexibility, ensuring better compliance with the enterprise’s current objectives;

5) processes continuity. The old product are often used while testing the new system until all work is completed.

6) improvement opportunity. you'll not only refine the prevailing product, but also expand its capabilities by adding new features;

Thus, we've an optimal solution since we've to transfer the software to a replacement platform/technology, while ensuring the continual operation of processes of the enterprise.

Disadvantages of software reengineering:

1) Expensive initial system is need to be produced.

2) It is difficult to customize.

3) The user is needs to be accurately defined.


Citation

  • Reverse engineering and design recovery: a taxonomy
    (Volume: 7 , Issue 1 , Jan. 1990 pg 13-17)

Authors

Tanay Soni
Fagun Shadi
Tanish Kogta
Tejas Shantaram

Sunday, April 12, 2020

Process of Software Re-Engineering

Steps to Re-Engineering


Fig : The above figure shows the relation between the three Software development life cycle stages
and key terms. It shows that forward engineering follows the normal direction of requirements then design and then Implementation whereas Reverse engineering follows the inverse direction.


  • Document Restructuring : software requirement specification document either describes how the software operate or the way to use software. Documentation must be restructured and modified

  • Reverse Engineering : Reverse engineering is additionally called as backward engineering. Reverse engineering is often described as reverse SDLC model. it's the method of understanding and analyzing and extracting the planning and specification information from the prevailing system. Reverse engineering also discovers the components of the system and interrelationship between them.Software reverse engineering concerns the source code by reversing a program’s machine that was written within the specific programing language . during this process, we obtain higher level abstraction by inspecting the lower level abstraction.

  • Code Restructuring : The source code is inspected employing a restructuring tool. The code is restructured during this phase to see and confirm that there's no anomalies are present within the code, the ultimate restructured code is evaluated.

  • Data Restructuring :  Data restructuring starts with the reverse engineering process. data architecture and data models are defined within the data reconstruction. Data restructuring is the process to research and define the info object, attributes and arrangement in a system so that the system is going to be more understandable and efficient. this is often time consuming process.

  • Forward Engineering : Forward Engineering is additionally referred to as renovation process. This process recovers design and specification information from the prevailing system. This information is employed to switch the prevailing software to extend the general performance and quality. Forward engineering is completed to realize the specified software from the specification information.
Software Re-engineeringForward & Reverse Engineering

Citation

  • Reverse engineering and design recovery: a taxonomy
    (Volume: 7 , Issue 1 , Jan. 1990 pg 13-17)
  • prepinsta


Authors

Tanay Soni
Fagun Shadi
Tanish Kogta
Tejas Shantaram

Software Re-Engineering Introduction

What is Software Re-Engineering 

The concept of software re-engineering was introduced by Elliot Chikofsky and James Cross in their 1990 paper, Reverse Engineering and design Recovery. Software re-engineering is the process to improving the standard of the software products. within the software development life cycle, to extend the software maintainability, when hardware or software support becomes outdated, this process is employed .

Why is Software Re-Engineering needed

  1. This process is used to improving the quality of the software products

  2. Software re-engineering is a cost-effective method for software development. This method minimizes the cost.

  3. Software re-engineering allows to reusability of the software products by adding new features, on existing software, that the customer needs.

  4. is process improves the software maintainability.

  5. This approach is required when the programming language or platform is no longer supported.

Authors

Tanay Soni
Fagun Shadi
Tanish Kogta
Tejas Shantaram

Back Propagation in ML

Back-Propagation What is Backpropagation? Back-propagation is the essence of neural net training. It is the method of fine-tuning the weight...