Reengineering and Reverse Engineering
- 342 Downloads
Reverse engineering is about uncovering the secrets behind the product so that you may change it according to your needs. Reengineering is the process of amending the product to some new form. This chapter unifies reengineering and reverse engineering maintenance techniques into a case study and presents a flow that can be applied in practice. The aim is to illuminate how to properly proceed in extensive restructuring work.
Unable to display preview. Download preview PDF.
- 1.Eilam E (2005) Reversing: secrets of reverse engineering. Wiley, Hoboken, NJ. This book is the primer for various reverse engineering techniques, covering a broad range of domains and platforms. It has a separate section about security related reverse engineering. It also covers the topic of cracking different protection mechanismsGoogle Scholar
- 2.Fowler M, Beck K, Brant J, Opdyke W, Roberts D (1999) Refactoring: improving the design of existing code. Addison-Wesley, Upper Saddle River, NJ. This is a reference book about refactoring. Most modern IDEs already implement many techniques from this book. Refactoring is an important technique to learn, as it helps you make controllable incremental improvements to the code base to boost its maintainabilityGoogle Scholar
- 3.Kerievsky J (2005) Refactoring to patterns, 1st edn. Addison-Wesley, Boston, MA. This is another excellent book about refactoring. It shows you real code samples and a series of refactoring steps to make them adhere to known design patterns. In this manner, a code becomes intuitive, readable and more structuredGoogle Scholar
Regular Bibliographic References
- 4.Đuković M, Varga E (2015) Load profile-based efficiency metrics for code obfuscators. Acta Polytech Hung 12(5):191–212. Issn:1785-8860Google Scholar
- 7.Pérez-Castillo R, Piattini M (2014) Analyzing the harmful effect of god class refactoring on power consumption. IEEE Softw 31:48–54Google Scholar
- 8.JXUnit Home Page. qare.sourceforge.net/web/2001-12/products/jxunit/index.html. Accessed 17 Sept 2017
- 10.Varga E (1990) Zbirka Rešenih Zadataka iz Programiranja u Programskom Jeziku TURBO PASCAL 5.5. Savremena Administracija, BelgradeGoogle Scholar
- 11.Andrews RG (2000) Foundations of multithreaded, parallel, and distributed programming. Addison-Wesley, Reading, MAGoogle Scholar
- 12.Ponge J (2011) Fork and join: Java can excel at painless parallel programming too! www.oracle.com/technetwork/articles/java/fork-join-422606.html. Accessed 20 Sept 2017