I perceive and define the term as “Reverse engineering is a path of exploration from an end to start point (reverse journey of change) for developing an insightful understanding on each underlying applications of scientific and engineering principle of a product/process”. For example, we take up a chair which we are using and explore as if it was once made up of raw wood (a tree maybe!) and ores in an iron mine (that made steel parts including fixtures!). Step-by-step each aspect needs to be considered from joinery to sizing of elements and finishing and protection layers (colours!) and so on.
Many of us, during our childhood, might have fascinatingly disassembled a TV remote control/computer monitor/ bike/ tricycle using raw tools. A successful disassembling might be achieved, however, while fixing it back to a finished level, there were some difficulties in the absence of knowledge and expertise (or was it a case of missing out some sophisticated and advanced tools in hand!). Anyways, that indeed was an ambitious case of repairing something, back at home or exploring the parts out of curiosity. It is good, in any way. It is human nature and is bound to doing studies and perform explorations.
However, the Wikipedia defines the term as: “Reverse engineering, also called back engineering, is the process of where a man-made object is deconstructed to reveal its designs, architecture, or to extract knowledge from the object. This process is like scientific research, but the only difference is that scientific research is a natural phenomenon. Reverse engineering is applicable in the fields of mechanical engineering, electronic engineering, software engineering, chemical engineering, and systems biology.” However, it is perceived that in general, the term can be applied to understand the construction of any article/process.
Coursework in Design Engineering 1B is offered during semester IV across all the branches of engineering for affiliated degree engineering colleges to GTU. Reverse engineering is a crucial activity included in the curriculum of the coursework. It is aiming to generate insightful understanding among the learners to explore the technique of developing a product that is already at a finished level (say, level 1), from its point of origin (Say, level 0). Here, during the product achieves level 1 from level 0, all the stages and steps need to be explored. It shall include the use of raw material, exploration of scientific and engineering properties thereof, process and stages of assembling, mixing and constituent proportions, joining/sealing/fixing mechanisms, application of ergonomic and aesthetic aspects and of course, the involved environmental and cost considerations. It is envisaged that if a finished product/process is examined for its development/production part, it can reveal many unknown steps that come across while some new product/process is under construction. Generally, a broad idea about product refinement does not discuss insights for developing a refined product at a micro-level. Employing the reverse engineering exploration, the micro-level examination can be done, and the step-by-step process of developing a product/process can be understood. Application of principles are not generic in nature while a product is designed, customisation is required due to various aspects under consideration, and mostly these aspects are based on the user needs. Satisfaction of user-needs is of prime focus.
In some nations, legislation has considered the reverse engineering as an illegal-unethical practice. If it is infringing a developers’ intellectual property (that is protected by law). Such action must be avoided, and more straightforward products should be explored for understanding the 1 to 0 state of product development.
Below is a discussion taken up during a lecture, about fundamentals and applications of reverse engineering held with students of BE II Civil Engineering (Semester IV) with a focus on cases about civil engineering.
Application of reverse engineering in the profession is employed in the following fields:
- De-compilation;
- De-formulation;
- Forensic engineering;
- Interactive disassembling;
- Code morphing;
- Benchmarking;
- Cracking of software (unethical and illegal practice);
- Logical analysis;
- Dieses diagnosis;
- Repurposing (studies focusing a cultural evolution of human);
- Retrodiction (moving backwards in time, step-by-step, in as many stages as are considered necessary, from the present into the speculated past to establish the ultimate cause of a specific event);
- Automobile engineering;
- Engineering of machines (all kind).
The process of performing reverse engineering as an exercise by learners can be inclusive of a simulation, experimental disassembling of a product, imagination and interview-based exploration of a finished good/product. Information that is of secondary in nature shall be used for understanding the process of development while reaching to level 0 to 1.
A document here shows an initial exploration of a multistoried parking building (already constructed) examined to evaluate its vehicle parking capacity and calculations based on dead and live loads to explore its structural requirements (in a reverse way!).
Besides, here, the purpose is to develop various canvases (for students) while exploring the reverse engineering. Hence, for whatever case a team is working and studying, they should establish a separate case for empathy mapping, ideation, product development (for making the explored product yet refined) to have an improvement in the product/process under study.
Hence, a suggestive cycle of “Reverse Engineering” exercise as a set of tasks can be stepped as:
- Selection of a topic(process/product);
- Understanding various stages of development (reverse way), include calculations/algorithms/detailing to the extent possible with the help of guiding faculty member;
- Identification of users (as well as all human involved);
- Perform role-playing (individually by each team member for all humans involved);
- Create stories (happy and sad) using empathy mapping (personally by each team member for all humans involved);
- Make observations (using AEIOU framework, employ photography, videography, discussions – formal and informal with humans involved – by each individual team member);
- Prepare a summary of observations (using AEIOU Summary) and extract essential observations along with general impressions;
- Carry out ideation (identify difficulties and possible alternative remedial measures to nullify the challenges – the props/ alternative solutions);
- Develop the refinement of the product/process under study (as a case of reverse engineering) using the Product Development Canvas;
- Summarize the entire process in the form of a document (report write up!)
Prominent and extensive use of the Log-book is recommended here for performing all the tasks.
Carrying out studies that are focussing on developing ideas, need to have a backbone of detailed understanding of each and every stage of article/product construction. A thoroughly performed exercise for most relevant case based on reverse engineering can help in gaining insightful knowledge and play a crucial role at a later stage when the Learnings Need are identified.
A learner may do this exercise repeatedly to gain expertise over exploring a finished product/process in an application and develop an analytic mindset by training the brain tissues for thinking in a specific manner.
Reverse Engineering by Bhasker Vijaykumar Bhatt is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.
Based on a work at https://youtu.be/M89uWOtrKO4.
Permissions beyond the scope of this license may be available at https://www.slideshare.net/BhaskerVijaykumarBha/reverse-engineering-case-on-multi-storied-parking.