IBM ILOG Scheduler User's Manual > Getting Started with Scheduler > Scheduler Building Blocks > Scheduler Modeling and Solving

The activities, resources, temporal constraints, and resource constraints that define a scheduling problem are C++ classes and functions of Scheduler. Scheduler is a modeling-based language; that is, you build a model of the scheduling or resource allocation problem. The model that you build (an instance of the class IloModel), and each Scheduler class instance pertaining to that model (each activity, resource, and so forth), belong to an environment, an instance of the class IloEnv. IBM ILOG Concert Technology manages the model and the environment. An environment may contain one or more models, and each model can use the various activities and resources available in that environment. (For example, you can use multiple models to simulate distributed scheduling.) After the model is complete, it is extracted to a solver engine, such as IBM ILOG Solver. Building a successful model depends on correctly implementing Scheduler object classes.