X hits on this document

369 views

0 shares

0 downloads

0 comments

12 / 120

Software

Source

Engineer

exists?

Yes

Edit, Compile, and Test

Software Module Enhancement Request

Design Recovery

No

Deploy

Encapsulate Binary and Test

Patch Binary and Test

Deploy

Legacy System

Mainframe

Figure 2.1. Development process for maintaining legacy software.

understanding, [3] advises that “practice with reverse engineering techniques improves

ability to understand a given system quickly and efficiently.”

Even though several tools already exist to aid software engineers with the

program understanding process, the tools focus on transferring information about a

software system’s design into the mind of the developer [1]. The expectation is that the

developer has enough skill to efficiently integrate the information into their own mental

model of the system’s architecture. It’s not likely that even the most sophisticated tools

can replace experience with building mental models of existing software; [4] states

“commercial reverse engineering tools produce various kinds of output, but software

engineers usually don’t how to interpret and use these pictures and reports.” The lack of

reverse engineering skills in most programmers is a serious risk to the long-term viability

of any organization that employs information technology. The problem of software

maintenance cannot be dispelled with some clever technique, [7] argues “re-engineering

4

Document info
Document views369
Page views370
Page last viewedThu Dec 08 18:13:58 UTC 2016
Pages120
Paragraphs2913
Words25794

Comments