Development of holonic manufacturing execution systems

Rapid changes of market demands and pressures of competition require manufacturers to maintain highly flexible manufacturing systems to cope with a complex manufacturing environment. To meet these requirements, this work adopts the concepts of holon and holarchy to design manufacturing systems. Holon and holarchy are derived from the studies of social organizations and living organisms and possess the properties of intelligence, autonomy, cooperation, reconfigurability, and extensibility. Moreover, advanced manufacturing systems also require the properties of security certification and failure recovery. Based on the requirements of these properties, a systematic approach is proposed to develop a holonic manufacturing execution system (HMES) for the semiconductor industry. This systematic approach starts with a system analysis by collecting domain requirements and analyzing domain knowledge. The HMES Holarchy is designed by the procedure of constructing an abstract object model based on domain knowledge, partitioning application domain into functional holons, identifying generic parts among functional holons, developing the Generic Holon, defining holarchy messages and the holarchy framework of HMES, and finally designing functional holons based on the Generic Holon. It is believed that this proposed systematic approach provides a novel and efficient way to design HMES.

engineering effort used the OMT methodology models (Rumbaugh et al., 1991) to express the MMST Framework. Following the MMST CIM System Framework, SEMATECH developed the CIM Framework Specification version 2.0 (SEMATECH, 1998), which is an abstract model for typical semiconductor manufacturing systems.
Several approaches to distributed manufacturing architectures were surveyed by Kadar et al. (1998), and their fundamental features were highlighted. Moreover, an object-oriented simulation framework for development and evaluation of multi-agent manufacturing architectures was introduced by Kadar et al. (1998). Further, Cheng, et al. (1999) applied the distributed object-oriented technologies to develop the MES Framework. This framework has the characteristics of openness, modularization, distribution, reconfigurability, interoperability, and easy maintenance. Common automatic manufacturing systems have fragility and security problems that also need to be seriously taken into consideration, however these two issues are not considered in the MES frameworks mentioned above. This paper applies the concepts of holon and holarchy to redesign a Holonic Manufacturing Execution System (HMES) Holarchy that not only possesses the characteristics of the MES Framework  but also has the properties of failure recovery and security certification.
The concepts of holon and holarchy are originated from mechanisms of social organizations and biological organisms (Valckenaers et al., 1994;Tonshoff et al., 1994;HMS;Van Leeuwen & Norrie, 1997). They have the characteristics of intelligence, autonomy, coordination, reconfigurability and extensibility. Based on these characteristics, the major weakness in the automatic manufacturing systems, fragility, is removed so that the failure recovery feature is attained. Security certification also can be considered. A typical deployment diagram for HMES in the semiconductor packaging plant is displayed in Fig. 1. HMES includes Shop-Floor Holon, Scheduling Holon, WIP Holon, Data Warehouse, Material Handling, Equipment Holon, Equipment, AGV, AS/RS and so on. The HMES Holarchy will be developed by a systematic approach in this paper. For demonstration purpose, one of the functional holons -WIP Holon -will be designed and implemented. Most of the studies concerning holonic manufacturing systems (Markus et al., 1996;Ramos, 1996;Hino & Moriwaki, 1999) focus on factory architecture and/or how to assign a production task to each manufacturing holon. The purpose of this paper is to propose a systematic approach for developing a workable Holonic Manufacturing Execution System (HMES) by applying up-to-date software and information technologies. The systematic approach is started with system analysis by collecting domain requirements and analyzing domain knowledge. The HMES Holarchy is designed by the procedure of constructing an abstract object model based on domain knowledge, partitioning the application domain into components, identifying generic parts among components to form the Generic Holon, developing the Generic Holon, defining holarchy messages and the holarchy framework of HMES, and finally designing functional holons based on the Generic Holon. The technologies (Chen & Chen, 1994;Gamma et al., 1995;Mowbray, 1995;Orfali et al., 1996;Sparks et al., 1996) of distributed object-oriented approach, design pattern, framework, N-tier client/server architecture, and component software are applied to develop the entire HMES and its functional holons.
This paper is organized as follows: Section 2 introduces the characteristics of holon and holarchy. Section 3 describes the development procedure of HMES. This development procedure includes four stages: system analysis, holarchy design, application construction, and system integration and testing. Among those stages, holarchy design needs most elaboration and it is explained in de-tail in Section 4. Section 5 demonstrates WIP holon design. Section 6 describes application construction and system integration. Section 7 makes comparisons among Legacy MES, Framework MES, and Holonic MES. Finally, this paper ends with summary and conclusions.

Characteristics of Holon and Holarchy
Twenty-six years ago, the Hungarian author and philosopher Arthur oestler proposed the word holon to describe a basic unit of organization in biological and social systems. A holon, as Koestler devised the term, is an identifiable part of a system that has a unique identity, yet is made up of sub-ordinate parts and in turn is a part of a larger whole. The strength of holonic organization, or holarchy, is that it enables the construction of very complex systems that are nonetheless efficient in the use of resources, highly resilient to disturbances (both internal and external), and adaptable to changes in the environment in which they exist. All these characteristics can be observed in biological and social systems. The stability of holons and holarchies stems from holons being self-reliant units, which have a degree of independence and handle circumstances and problems on their particular level of existence without asking higher level holons for assistance. Holons can also receive instruction from and, to a certain extent, be controlled by higher-level holons. The self-reliant characteristic ensures that holons are stable and able to survive disturbances. The subordination to higher-level holons ensures the effective operation of the larger whole. The task of the Holonic Manufacturing System (HMS) consortium is to translate the concepts that Koestler developed for social organizations and living organisms into a set of appropriate concepts for manufacturing industries. The goal of this work is to attain in manufacturing the benefits that holonic organization provides to living organisms and societies, e.g., stability in the face of disturbances, adaptability, and flexibility in the face of change, and efficient use of available resources.
As an initial step, the HMS consortium developed the following list of definitions (among others) to help understand and guide the translation of holonic concepts into a manufacturing setting (Van Leeuwen & Norrie, 1997;Ulieru, 1997): a) Holon: An autonomous and cooperative building block of a manufacturing system for transforming, transporting, storing and/or validating in-formation and physical objects. The holon consists of an information processing part and often a physical processing part. A holon can be part of another holon.
b) Autonomy: The capability of an entity to create and control the execution of its own plans and/or strategies. c) Cooperation: A process whereby a set of entities develops mutually acceptable plans and executes these plans. d) Holarchy: A system of holons that can cooperate to achieve a goal or objective. The holarchy defines the basic rules for cooperation of the holons and thereby limits their autonomy. e) Holonic Manufacturing System (HMS): A holarchy that integrates the entire range of manufacturing activities from order booking through design, production, and marketing to realize the agile manufacturing enterprise. f) Holonic Attributes: The attributes of an entity that make it a holon. The minimum set is autonomy and cooperatives.
Based on the above definitions, it is clear that holonic manufacturing systems can be regarded as a unified way to approach the hierarchical control of any manufacturing unit from the production process to the whole enterprise level. In this work, the concepts of holon and holarchy are adopted to develop the HMES Holarchy so that the functional holons of the HMES can possess the properties of intelligence, autonomy, cooperation, reconfigurability, and extensibility. In addition, the functional holons of the HMES Holarchy can have the capabilities of failure recovery and security certification.

Development Procedure of Holonic Manufacturing Execution Systems
As depicted in Fig. 2, the development procedure of HMES includes four stages: (a) system analysis, (b) holarchy design, (c) application construction and (d) system integration and testing. Note that the final step of holarchy design stage is functional holon design and implementation. The first stage, system analysis, concentrates on collecting domain requirements and analyzing domain knowledge. The second stage, the most important stage, is holarchy design, which is further divided into seven steps as shown in Fig The system's object model is constructed according to the domain knowledge and requirements. The application domain is partitioned into components that will eventually become various functional holons. Within these components, their generic functions are further identified and extracted. Based on these generic functions, the so-called Generic Holon is developed. Holarchy messages among functional holons are defined and holarchy framework of HMES (also denoted HMES Holarchy) is developed. Finally, various functional holons can be designed by inheriting the Generic Holon and implementing the holarchy messages. The third stage of HMES development is application construction. Finally, the development procedure ends with system integration and testing.

Holarchy Design
Seven steps are included in the holarchy design stage. They are explained below.

Constructing an Abstract Object Model
A typical deployment diagram for HMES is shown in Fig. 1. It is well known that MES is composed of several functional modules that handle specifics, e.g. material, equipment, labor, and planning (MacDonald, 1993). The abstract object model is constructed as in Fig. 3(a) . The four key elements of a factory are labor, material, equipment, and workin-process (WIP). Each element is managed by its specific managing holon. All four of these managing holons are controlled by the Shop-Floor Holon. The Shop-Floor Holon also dispatches orders to the Scheduling Holon. The Scheduling Holon dispatches jobs to the Labor Holon, Material Holon, Equipment Holon, and WIP Holon.

Partitioning Application Domain into Components
To design a distributed and integratable MES, its application domain is partitioned systematically as depicted in Fig. 3(b). In addition to the data warehouse, the system is divided into six components.   As mentioned previously, each management component needs a specific functional holon to serve as the manager of that component.

Identifying Generic Functions among Components
The purpose of this paper is to apply the concepts of holon and holarchy to design the HMES Holarchy and functional holons that not only possesses the properties of the MES Framework  but also has the properties of failure recovery and security certification. Therefore, based on the prin-ciple of software reuse (Chen and Chen, 1994;Cheng et al., 1999), the Generic Holon which handles the generic functions of functional holons shall first be devised. After judicious consideration, the authors conclude that in addition to the communication infrastructure, the Generic Holon shall possess security mechanisms, search mechanisms, and intelligence mechanisms to deal with the generic functions that emphasize failure recovery and security certification.

Developing Generic Holon
The requirements for developing the Generic Holon are: a) It can construct the communication infrastructure for communication, collaboration, and extensibility purposes. b) It provides the intelligence mechanism for exception diagnosis. c) It provides the search mechanism for collaboration and reconfigurability. d) It provides the security mechanism for security check and encryption / decryption. e) It provides the ability to establish database services for information storage / retrieval.
According to these requirements and following the development procedure for object-oriented systems (Eriksson and Penker, 1998;Huang et al., 1999;Cheng et al., 2002), the Generic Holon's class diagram and internal architecture is obtained as shown in Fig. 4. For further illustration, please refer to (Lin, 2000;Chang, 2000) for the detailed designs of the Generic Holon. Observing Fig. 4(a), the basic structure of the class diagram is HolonKernel manages/uses HolonConfiguration that consists of CORBAInterface, Securi-tyMechanism, LocalDatabase, and KnowledgeBase. By inheriting HolonKernel, a functional holon can possess all the characteristics of the Generic Holon. CORBAInterface is designed for constructing a communication infrastructure and achieves the collaboration platform. In order to establish secure communication, the SecurityMechanism is created for handling all the operations of security. KnowledgeBase constructs a search engine for searching desired services and a reasoning mechanism for exception diagnosis. The LocalDatabase sets the connection of database for SecurityMechanism and KnowledgeBase to access the database. On the other hand, the internal architecture of the Generic Holon is depicted in Fig. 4(b).  Observing Fig. 4(b), the Generic Holon owns HolonKernel to communicate with other holons by CORBAInterface. Using LocalDatabase, the Generic Holon can maintain autonomous properties and necessary information. Securi-tyMechanism can retrieve the related information through LocalDatabase and then check user's authorization for security certification. The intelligence mechanism for exception diagnosis purposes of the Generic Holon is mainly considered in knowledgeBase that also needs the support of LocalDatabase.
After completing the design of the Generic Holon, any functional holon can be designed by inheriting Generic Holon to obtain generic properties of holon and then adding the specific functions of that functional holon.

Defining Holarchy Messages
After partitioning the application domain into components, we need to define holarchy messages among all the functional holons so that interoperability and collaboration among all the functional holons are enabled. According to Fig. 1 and Fig. 3(b), the holarchy messages of HMES are defined as in Fig. 5.  The Shop-Floor Holon receives a place an order message from an external user and the Shop-Floor Holon will reply report order done when the order is done. Based on the received order, the Shop-Floor Holon will send dispatch order to the Scheduling Holon and the Scheduling Holon will reply order done if the order is finished. The Shop-Floor Holon sends save order information to the Data Warehouse to save all the order information. Similarly, the interfacing holarchy messages of Scheduling Holon, WIP Holon, Equipment Holon, Data Warehouse, and Material Handling (which includes AS/RS, AGV, and robot) can be defined as shown in Fig. 5.

Defining Holarchy Framework of Holonic Manufacturing Execution Systems
After the development of the Generic Holon and holarchy messages, we are ready to define the holarchy framework of HMES (or HMES Holarchy in short).

Figure 6. Holarchy Framework of Holonic Manufacturing Execution Systems
The HMES Holarchy is illustrated in Fig. 6 which utilizes CORBA infrastructure (Orfali et al., 1996;OMG, 1998) as the system's communication backbone. Every functional holon shall inherit the Generic Holon so as to possess the properties of a holon as well as the capabilities of failure recovery and security certification. Then, specific functions of each functional holon can be added individually to become a specific functional holon. The holarchy messages of each functional holon can be specified by CORBA IDL (Interface Definition Language) (Orfali et al., 1996;OMG, 1998). Therefore, each functional holon can be integrated into the HMES Holarchy in a plug-and-play fashion.
This HMES Holarchy is expandable. As illustrated on the left side of Fig. 6, other functional holon may also be integrated into the HMES Holarchy if this functional holon inherits the Generic Holon and defines the functional holon's CORBA IDL by the expanded holarchy messages. Finally, applications of the HMES can be easily constructed by invoking the related functional holons as depicted on top of Fig. 6.

Designing Functional Holons
The final step of holarchy design is to design various functional holons based on the Generic Holon. As mentioned in the previous sub-section, with the HMES Holarchy architecture, it becomes straightforward to design a functional holon by simply inheriting the Generic Holon, adding the functional holon's specific function, and defining its IDL based on the system's holarchy messages. In the following section, the WIP holon is selected as the example to elaborate the design procedure of a functional holon.

WIP Holon Design
The functional requirements for WIP holons are: a) It manages the life cycle of WIP objects. b) It performs track-in and track-out operations and updates the corresponding WIP information in real-time. c) It provides WIP information to users and other holons. d) Its interfaces are in compliance with the HMES Holarchy. e) It possesses the capabilities of exception recovery and security certification.
Requirements (a) to (c) are the specific functions of WIP holons while Requirements (d) and (e) are the common requirements for the components of HMES Holarchy. It is natural to develop the WIP Holon by inheriting the Generic Holon first to take care of Requirements (d) and (e) and then considering the specific requirements (a) to (c). Based on the above design principle and following the development procedure for object-oriented systems (Eriksson and Penker, 1998;Huang et al., 1999), the class diagram of the WIP Holon is designed and shown in Fig. 7.
The upper portion of Fig. 7 is the Generic Holon that has been designed and illustrated in Fig. 4(a). WIPManager, which is the primary role of the entire WIP Holon, inherits the Generic Holon to accomplish Requirements (d) and (e). WIPManager uses RecoveryManager to perform specific recovery operations. WIPManager also manages the life cycle of WIP objects and is in charge of track-in and track-out operations of all the WIP. A new WIP object is created when a new lot arrives. The WIP object contains its own specific attributes such as LotID, BOM, and ItemMaster, etc. A WIP object also performs its own Trackin() Trackout() operations and invokes NewVariables() methods of BOM and ItemMaster to obtain the associated production information. UserInterface provides the necessary operations for external users to interface with the WIP Holon.
Observing Fig. 7, the + sign before an operation means the operation is public, and the -sign stands for private. In the WIPManager, public operations stand for the IDL of the system; while in the UserInterface, public operations indicate the available functions for external users.
State diagrams show all possible states and transactions of a system. A change of state caused by an event is called a transition. Figure 8(a) illustrates the states and transitions of the WIP Holon. Please refer to Fig. 7 and Fig. 8 when reading the following explanation.
A user initiates the WIP Holon by invoking the Login() operation of UserInteface. If he passes the security certification, the WIP Holon will activate CORBA services by calling SetInitialService()of HolonKernel. Then, the system is ready to receive WIP object's creating commands.
In fact, the major functions of the WIP holon are how to trace and manage WIP. We define WIP to be temporal objects, as such they have life cycles. When WIPManager gets the message CreateNewWIP() from the Scheduling Holon, a new WIP object is generated based on the data transferred from the Scheduling Holon. WIP object uses NewVariables() operation in BOM to get the contents of BOM. WIP object uses the same approach to obtain ItemMaster information. Then, WIP object gets order status and saves it. Up to this point, initialization of WIP object is completed and it enters Wait for request state.
At Wait for request state, the WIP object can take commands, such as track-in, track-out, and query. The query request will bring the WIP object to the Provide WIP status state and the WIP status is then sent to the requester. Trackout and track-in commands will update the WIP status and store it to database. During track-in operation, the WIP object will check if this current process sequence is the last one or not. If it is not, just jumps back to Wait for request state. If it is the last process, this WIP object will be deleted and the memory will be released. It thus completes the life cycle of a WIP object.
Note that, the initial Generic Holon architecture shown in Fig. 4 only specifies the generic skeleton of the intelligence mechanism that consists of Know-ledgeBase and LocalDatabase. After inheriting the Generic Holon to become a part of the WIP Holon, its KnowledgeBase and LocalDatabase shall be trained to contain the specific knowledge, information, and rules for WIP holon's exception-diagnosis usage only. Now, observing Fig. 8(a), if an exception is occurred and detected during the WIP management process, the system will enter the Diagnosing state that invokes SetExceptionTest() of HolonKernel to diagnose the exception.
If the cause is identified by the intelligence mechanism of the Generic Holon, the system will enter the Recovery state that invokes the associated recovery operation implemented in RecoveryManager. If the recovery operation is successful, the system will jump back to the last operational state where the exception was occurred, otherwise the system will raise an alarm and then stop.
After demonstrating how to design functional holons, the holarchy design stage is completed. The following section will explain the application construction and system integration stages. [

Application Construction and System Integration
As depicted in Fig. 2, the last two stages are application construction and system integration. Observing the top of Fig. 6, with the advantage of HMES Holarchy, it is obvious that applications can be constructed by invoking operations of associated holons. These holons will cooperate with one another by following the holarchy messages defined in Fig. 5. This meets the characteristics of holon and holarchy. In fact, the deployment diagram, holarchy messages, and a holarchy framework as shown in Figs

Architecture
Concerning architecture, Legacy MES is a centralized system. All the computations and operations are executed in one large-scale mainframe computer. Framework MES belongs to distributed object-oriented systems that divide all the functions into individual various models. The computations and operations are also distributed into each model. In this way, Framework MES lowers the loading of each mainframe and increases the reliability of the system. Also, Framework MES avoids the malfunction of the entire system due to the breakdown of a single module. Holonic MES is designed with the concepts of holon and holarchy. It has the advantages of distributed object-oriented systems, and also the characteristics of intelligence, autonomy, coordination, and collaboration. Thus, Holonic MES's adaptability can meet the requirements and trends of future manufacturing systems.

Open Interfaces
When considering interfaces, Legacy MES is a closed system while Framework MES and Holonic MES are open systems. Systems with open interfaces have the advantage of being easy to cooperate and link with other related modules or systems.

Modularization
Modular design is very important to system software development. With component software, users can apply proper modules based on needs. This is beneficial both for design and maintenance. Both Framework MES and Holonic MES utilize modular design but Legacy MES does not.

Interoperability
A distributed object-oriented system usually has many functional modules that they need to interoperate with one another. Framework MES and Holonic MES are distributed object-oriented systems, therefore their interoperability with distributed modules is both essential and profuse.

Configurability
Configurability is important for a manufacturing system to deal with a dynamic, varying and rapidly changing environment. Framework MES and Holonic MES are easier to reconfigure than Legacy MES.

Maintainability
For Legacy MES, it is not easy to repair and maintain since it is a large-scale and centralized system. For Framework MES and Holonic MES, their maintenance is easier because they are distributed systems and each component of the systems can operate alone and be maintained separately. 7.7. Security Certification The problem of security is becoming more and more serious. In Holonic MES, the ability of security certification is embedded in the design of the Generic Holon so that it is natural for all the functional holons to possess the capability of security certification.

Failure Recovery
Reliability is always the most important issue for automatic manufacturing systems. Once there is an exceptional condition that causes the entire production line to shutdown, the loss is beyond evaluation. As a result, a good set of MES needs a failure recovery mechanism so as to minimize the loss caused by occurrences of exceptional conditions. Among those three MES types, only Holonic MES incorporates the capability of failure recovery into the design.

Summary and Conclusions
Based on the characteristics of holon and holarchy and by applying distributed object-oriented techniques, this paper proposes a systematic approach for developing Holonic Manufacturing Execution Systems (HMES) with securitycertification and failure-recovery considerations. The basic foundations required for developing HMES possessing characteristics of holon and holarchy are summarized. The HMES development procedure that consists of system analysis, holarchy design, application construction, and system integration and testing stages are proposed. Among these stages, holarchy design is the most important and consists of seven steps: (a) constructing an abstract object model, (b) partitioning the application domain into components, (c) identifying generic functions among the components, (d) developing the Generic Holon, (e) defining holarchy messages, (f) defining the holarchy framework, and (g) designing functional holons. WIP Holon, as an example of a functional holon, is developed for demonstration purposes. Comparisons between Legacy MES, Framework MES, and Holonic MES are made. It reveals that this systematic approach provides a new concept for developing next generation manufacturing execution systems.