The generalized spallation model (GSM) is a general spallation physics event generator with aphysics-rich history dating back to the early 1970s during the development of the CEM [1]. GSM es-timates the outcome of high-energy hadron-nucleus and nucleus-nucleus collisions, where collisionenergies often exceed hundreds of MeV. Such a collision may include a neutron incident on carbon,for example. The thesis presented here outlines the continued development and modernizationof GSM, whereby it was migrated from a legacy Fortran code to utilize an advanced and modernFortran architecture. Verification and validation of GSM also took place throughout the continueddevelopment of GSM.The results of this work have transformed GSM into a highly modern and powerful eventgenerator, where numerous benefits have been fostered and precipitated, including but not limitedto portability, modularization, flexibility, robustness, and scalability. GSM is a robust and welldeveloped software library that clients and end-users may confidently use, within the scope outlinedhere, as a result of this work.Keywords: Event Generator, GSM, Monte Carlo, Spallation |