**2. General overview**

The spill of products requested by customers was produced in a production workshop, however due to low productivity and high production costs, production workshops are not generally suitable for high volume production [3]. There is a need for production systems capable of producing a wide variety of products which can cost as little as mass production [4].

Scheduling systems can be considered as a special case of business information systems. Planning is defined as the allocation of resources to jobs over time.

It is a decision-making process which makes it possible to optimize one or more objectives [5].

The objectives can be the minimization of the production time, the average flow time, the delay of the works, the manufacturing costs … , planning has an important role in many manufacturing and production systems.

The problems of planning seeking to optimize the time of realization of the project while respecting a certain number of constraints, are for the most part NP-difficult.

Research has mainly focused on finding optimal (or near optimal) solutions for static models with respect to various measures.

These approaches mostly have used the implicit assumption of static environments without any kind of failures. Extensive literature reviews on static deterministic scheduling can be found in [6–9].

Predictive planning has now become the planning of production systems [10, 11]. For example, machine breakdowns, arrival of urgent work, change of due date, etc. [12] addressed the nature of the gap between scheduling theory and the practice of scheduling [13], in their research on intelligent time control real in manufacturing systems, said the comparison of scheduling theory and practice showed very little correspondence between the two. Cowling and Johansson [14] found a large gap between scheduling theory and practice, and stated that scheduling models and algorithms are incapable of using real-time information. Until very recently, the problem of programming in the presence of real-time events, called dynamic programming. In this chapter, we focus on a number of issues that have arisen in recent years with dynamic planning in manufacturing systems.

We are mainly concerned with the question of knowing how to manage the occurrence of events in real time during the execution of a given schedule in the workshop?

In order to close this gap between scheduling models and procedures, and their implementation in a real manufacturing setting, the former should be translated into a system supporting scheduling decisions in a company.

Among the various activities that must be present in the development of a production planning system is the design of the system architecture. Despite the importance of the architecture of production planning systems, planning research has often overlooked this topic because the related literature is scarce and does not provide researchers with a complete view of the planning system [15].
