Development of real-time resource management system often entails utilizing similar software engineering solutions as other resource managers. However, the developers of these resource managers may reengineer solutions, not knowing that a solution already exists. First time developers of this type of software may not even know what types of problems they will encounter. Each of these situations slows the development process. This thesis examines the challenges in determining what software is needed to build a real-time resource management system. After working with several different types of resource management systems, real-time and otherwise, it is clear that many of these systems use similar approaches in managing their resources. Research in the field of real-time systems unveils that some such approaches are documented as patterns, but many of the existing patterns focus on in depth details about real-time system management, requiring that the reader already have an abundance of knowledge on the topic. The aim of this thesis is to step back and examine the higher-level components of these systems and the interaction of these components and document them as patterns. These patterns allow newcomers to real-time systems to understand the problems incidental the topic. Furthermore, these patterns may aid the expert by presenting the information in a different way. The common components of the systems researched that are found in a number of distributed and real-time systems are essential pieces in building such systems, due to the sheer number of systems in which they are found. Here, they are presented in pattern format.