Monday, June 18, 2012
How is data understood through reverse engineering?
Posted by
Sunflower
at
6/18/2012 11:52:00 PM
0
comments
Labels: Application, Code, Data Restructuring, Document, Errors, Faults, Functionality, Inventory Analysis, Quality, Re-engineering, Resources, Reverse Engineering, Scenario, Software Re-engineering, Software System, Steps
|
| Subscribe by Email |
|
What is meant by Software Reengineering Process Model?
What is Software Re-engineering?
Steps in Software re-engineering process model
Posted by
Sunflower
at
6/18/2012 03:51:00 PM
0
comments
Labels: Application, Code, Data Restructuring, Document, Errors, Faults, Functionality, Inventory Analysis, Quality, Re-engineering, Resources, Reverse Engineering, Scenario, Software Re-engineering, Software System, Steps
|
| Subscribe by Email |
|
Sunday, June 17, 2012
Forward Engineering - An activity involved in software re-engineering process model
- Inventory analysis
- Documentation reconstruction
- Reverse engineering
- Code re- structuring
- Data re- structuring
- Forward engineering
About Forward Engineering
- Renovation or
- Reclamation
Stages in Forward Engineering
- Identification of the system specifications.
- Designing and implementation of the specifications.
- Creation of a new software system or application.
Characteristics of Forward Engineering Client or Server
- The client computer accepts the migrated application
functionality.
- At the client sites the new GUI interfaces are
implemented.
- The data base functions are allocated to the servers.
- In some cases the specialized functionality may preside
at the site of the server itself.
- There are certain requirements like communications,
archiving, control and security requirements that are established at both
the server as well as the client side.
Forward Engineering in OOA
Difference between Forward Engineering & Software Re-engineering
- Extent of data conversion required
- Tool support available
- Quality of the software system to be re- engineering
Posted by
Sunflower
at
6/17/2012 11:00:00 PM
0
comments
Labels: Application, Characteristics, Client, Code, Data, Design, Forward Engineering, Information, OOA, Performance, Quality, Reclamation, Renovation, Server, Software Re-engineering, Software System, Steps, User Interface
|
| Subscribe by Email |
|
Data Restructuring - An activity involved in software re-engineering process model
- Inventory analysis
- Documentation reconstruction
- Reverse engineering
- Code re- structuring
- Data re- structuring
- Forward engineering
Without a working code or an active flow of data a software system or application cannot be considered to be working. Therefore for the software systems and applications which have become outdated should be again brought up to the current acceptable software standards and data re- structuring is the one of the processes that can help in this regard.
- This step of software re- engineering process model takes into consideration the restructuring of the data without making changes to the functionality of the software system or application.
- With the re- structuring of data, the maintenance of the whole software system or application becomes so very easy.
- The need to re- structure data arises when the data bases become too obsolete to be handled directly.
- When the changes made to the data are confined only to the sub system, the data of the sub system needs to be re- structured.
- The data re- structuring becomes even easier when the data re- structuring tools are easily available.
- This step is carried out after the completion of the code re- structuring.
- Unlike the previous re- structuring step, this step calls for a full cycle of reverse engineering.
- The current structure of the data is dissected while defining the data models and the existing data models are run through a quality check or review test.
- So many of the legacy systems tend to make use of the global data structures and shared tables in order to save the memory space.
- Such shared data structures need to be converted in to objects like ADTs for restructuring.
Benefits of Data Re-structuring
- One of the benefits of restructuring the data is that it certainly improves the quality of the software program or application.
- Furthermore, it becomes easier to test and debug the software system or application along with a reduction in the efforts in the maintenance of the software and also the frustration of the developer is reduced.
- As a bonus point, the productivity is also improved.
Steps in Data Re-structuring
The re- structuring of the data involves the following steps:
- Analysis of the source code of the application.
- Redesigning of the data
- Standardization of the data record.
- Rationalization of the data name.
- Translation of the file or data base.
Drawbacks of Data Restructuring
In spite of having so much plus points, the re- structuring does have some minus points which have been listed below:
- Re- structuring does not improve the understandability
of the data driven programs.
- Re- structuring demands for heavy computations.
- Re- structuring can lead to a loss of source code
comments.
- Restructuring does not helps with the problems with poor
modularization i.e., the programs in which the components are wide spread
through out the program.
- Restructuring can lead to the loss of documentation.
Data re- structuring forms an integral part of the software re- engineering process model and therefore the above mentioned disadvantages of the data re- structuring are ignored. It is necessary that the data re- structuring is carried out after the code re- structuring since during the execution of the program, the code only handles the flow of the data. Therefore if the code itself has not been re- structured before re- structuring the data then the whole process does not makes any sense.
Posted by
Sunflower
at
6/17/2012 11:41:00 AM
0
comments
Labels: Advantages, Application, Benefits, Code, Code restructuring, Data, Data Restructuring, Drawbacks, Information, Re-engineering, re-structuring, Reverse Engineering, Software Re-engineering, Software Systems, Steps
|
| Subscribe by Email |
|
Saturday, June 16, 2012
Code Restructuring - An activity involved in software re-engineering process model
- Inventory analysis
- Documentation reconstruction
- Reverse engineering
- Code re- structuring
- Data re- structuring
- Forward Engineering
What is meant by Code Reconstruction?
- The code restructuring process involves analyzation of the source code.
- The violations of the programming practices are noted down and later repaired.
- The revised code is then reviewed and subjected to extensive testing.
-Firstly, in this stage the program files that are executable are identified with the consultation of the person in the company who is intimate enough with the knowledge of the files and can grant some logic to their existence.
- Next step, in this stage is the verification of the identified and setting up of the baseline.
- This step requires a lot of investigative work since the executable might have been affected by a lot of factors.
- The code is verified using the sample input data or test files.
- The baseline for the executable is formed by documented data files and source code files.
- Now the developer who holds the responsibility to re- engineer the code, needs to familiarize himself with the existing code and figure how is going to re- engineer it.
- He then carries out several walk-throughs and code reviews under many different conditions with its users.
- At this stage, the developer is free to introduce comments in to the code as per its re- structuring needs.
- Other requirements can be stated in the project log.
- It is very common for the developer to encounter bugs at this stage.
- The developer needs to discuss with the client and figure out a way of dealing with the bugs.
- Next follows the identification of the requirements of the process like:
- Commenting the code.
- Modularity of the code.
- Documentation of the code.
- Enhancement of the code.
- Removal of the unused or unnecessary code.
- Removal of the duplicate code.
- Removal of duplicate parameters.
- Porting of the code to another platform.
- Enhancement of the user interface.
- Defining the language standard of the code.
- Conversion of the code in to an alternative development
language.
- Improvement and maintenance of the performance.
- Optimization of the code.
- Improvising the internal error handling capacity of the
code.
- Inclusion of additional functionality.
- Fixing the existing bugs.
- Implementing alternate third party products.
More about Code Restructuring
- The code is restructured in identifiable phases i.e., the original code is re- engineered in the phases that have been identified.
- The software tools here may be helpful in the investigation of the code coverage, unused variables, hot spots, coding standards and so on.
- Apart from these, manual inspections can also help a big deal in identification and removal of the duplicated and false code, collate parameter definitions and optimize the array storage.
- On an overall basis, restructuring of the code greatly improves its performance.
- Even the simplest of the “not so obvious” issue can significantly affect the performance of the code like accessing of the data.
- Different languages have their own way of storing arrays.
- Therefore, the way that is used to access this data can hamper the performance to a great extent without coming to the knowledge of the developer.
- Lastly, the code is tested after the completion of the restructuring.
Posted by
Sunflower
at
6/16/2012 11:46:00 PM
0
comments
Labels: Activity, Analyze, Bugs, Code, Code restructuring, Data, Developers, Factors, Functionality, Information, Input, Interface, Platforms, Requirements, Software Re-engineering, Source, Steps, Testing
|
| Subscribe by Email |
|
Reverse Engineering - an activity involved in software re-engineering process model.
- Inventory analysis
- Documentation reconstruction
- Reverse engineering
- Code re- structuring
- Data re- structuring
- Forward Engineering
What is Reverse Engineering?
- Browsers
- Cross reference generators and so on.
Levels in Reverse Engineering
Stages in Reverse Engineering Process
Activities in Reverse Engineering Process
When is Reverse Engineering Preferred?
Posted by
Sunflower
at
6/16/2012 02:48:00 PM
0
comments
Labels: activities, Activity, Analyze, Applications, Code, Design, Information, Interactive, Levels, Re-engineering, Requirements, Reverse Engineering, Software Re-engineering, Software Systems, Specifications, Stages
|
| Subscribe by Email |
|