What is reverse engineering?
Reverse engineering can be described in short as making a replica of an already existing piece of software, which is either the same or faster than the one it is being compared to. In the documentary, Triumph of the Nerd, reverse engineering was used on IBM’s PC for competitors to figure out how to become a more integrated part of the computer market at the time. A group of 15+ ‘virgin to IBM code’ men came together to take part IBM’s ROM-BIOS to create a new, but similar version, which would enable them to make a PC that could read IBM’s other software.
According to www.npd-solutions.com, reverse engineering can be described as a process of better analyzing a system by:
Identify the system's components and their interrelationships
Create representations of the system in another form or a higher level of abstraction
Create the physical representation of that system
Is reverse engineering legal?
Many ethical and legal questions come to mind when talking about reverse engineering. Plagiarism and copying is often frowned upon in our society, yet technology and advancement would not move forward if people did not question, experiment, and build upon one another’s ideas.
The IBM’s ROM-BIOS was copyrighted, which is why the men of Compact were smart in hiring individuals that were not accustomed to IBM’s code when creating their replica version. So in that sense, things were done legally ‘by-the-book.’ On the other hand, some might argue it does not seem to be quite ethical. As mentioned before, things cannot move forward unless someone examines them differently. We also live in a world of free enterprise, where competition among businesses is what we strive for and reverse engineering is a way to keep up with demand and competition.
Wednesday, September 16, 2009
Subscribe to:
Post Comments (Atom)
How has the DMCA changed what is legal/illegal in terms of R.E.?
ReplyDeleteSection 1201(f) of the DMCA states that "a person who has lawfully obtained the right to use a copy of a computer program may circumvent a technological measure that effectively controls access to a particular portion of that program for the sole purpose of identifying and analyzing those elements of the program that are necessary to achieve interoperability of an independently created computer program with other programs."
How would this affect what Compaq/Phoenix did?