A Review of the Application of Component-Based Software Development in Open CNC Systems
Lisi Liu,Yingxue Yao,Jianguang Li
DOI: https://doi.org/10.1007/s00170-020-05258-1
IF: 3.563
2020-01-01
The International Journal of Advanced Manufacturing Technology
Abstract:The development of open CNC systems is a popular topic in the past three decades. From the perspective of software engineering, most open CNC prototypes are developed based on the component-based software development (CBSD) approach. That is, they are constructed by composing functional or logical components. This paper retrospects the development of CBSD-based open CNC systems. These systems are analyzed from three aspects. For the component granularity aspect, CNC domain analysis and component reusability are discussed. For the component model aspect, component models used in open CNC systems are summarized, illustrated, and discussed. Likewise, for the software architecture aspect, architecture styles are summarized, described, and analyzed. But due to the diversity and platform dependency of component models, there is no widely accepted platform that can collect and execute heterogeneous CNC components. Service is an evolution of components. It makes a traditional component to be platform-independent and supports communication via message. Thus, a service-oriented architecture (SOA)-based universal open CNC platform is an attractive development trend of diverse CBSD-based open CNC systems. And its development is similar to the development of the CBSD-based system, but more complicated because it contains more domain logic. Therefore, this paper provides a technical foundation for developing SOA-based open CNC platform which is a part of novel automation patterns, such as cloud manufacturing and cyber-physical production system.