Proceedings of the 10th International Conference on Computer Supported Education (CSEDU 2018)
Since the Y2K crisis, reverse engineering has become a major area of work in industrial software application development, but lacks emphasis in US academia. This issue is exemplified by the high demand for software systems in new and expanding software application areas, which has resulted in systems being implemented before the requirements and design phases have been completed. Towards the maintenance of such systems, it is necessary to conducted reverse engineering for the derivation of software documentation for requirements and high-level and low-level design. When this scenario exists in the domain of safety-critical system, particularly in the aviation industry, reverse engineering takes on greater value because such software systems have to undergo development regulations and certification restrictions. This work reports on the pedagogical revelations gained from conducting reverse engineering on a software system that was developed and deployed for use in managing the assignment of commercial aircrafts to airport terminal gates. The software system incorporated genetic algorithms solutions and was implemented on a high-speed multi-processor system. The reverse engineering methodology applied was based on the RTCA DO-178C Software Considerations in Airborne Systems and Equipment Certification specification for onboard avionic software systems.
First published in Proceedings of the 10th International Conference on Computer Supported Education (CSEDU 2018).
Grant, Emanuel S. and Ajjimaporn, Pann, "An Exercise in Reverse Engineering for Safety-Critical Systems: An Experience for the Classroom" (2018). Computer Science Faculty Publications. 23.