The com.slamd.jobgroup package contains data structures and logic for dealing with job groups. A job group is a set of jobs and/or optimizing jobs that may be scheduled as a single entity. When adding a job to a job group, parameters for that job may be mapped to common parameters defined in the job group or they may be given fixed values. Dependencies may be defined between the jobs and/or optimizing jobs in the job group to ensure that the jobs run in a particular order (although it is also possible to have multiple jobs running concurrently).