You ask, what is HLA? The High Level Architecture is a software architecture for creating computer simulations out of component simulations, providing structure for developers to describe their simulation applications. The key concepts of HLA? Reusability and Interoperability, which should sound familiar to any OOP developer, as well as anyone involved with learning objects.
[There’s a wealth of information here](http://www.ecst.csuchico.edu/~hla/courses.html) to get to know HLA, but I suggest [reading the notes](http://www.ecst.csuchico.edu/~hla/LectureNotes/HLA_1516_M1_P1.pdf) instead of the presentations to get started.