Keywords

1 Introduction

Recent research in the consumer market has shown that a large and growing population of consumers desire customized product that not only with higher quality but also meet their exactly need. To fulfill the requirements desired by the customers, and thus be competitive in the marketplace, companies strive to differentiate their product and believe that a product family with larger variety is more likely to dominate the market than the others [1]. However, customization (individually, precisely) contradicts mass production (quickly and inexpensively) when they are implemented in traditional factory. As a consequence of fulfilling mass customization, the conceptual model of smart factory is developed, which joins the idea of Industry 4.0 and the recent technological achievements of intelligent and automated production systems, with an aim to improve the efficiency and reduce the cost [2].

The realization of Industry 4.0 is through the technological evolution from embedded systems to cyber-physical systems [3]. While this process requires the most advanced technologies of automated production, big data processing and modeling, the integration of different activities of the whole market and effective communication between requirements specification and smart factory are also the necessity that prepares the arrival of Industry 4.0. After years of effort on the discussion and the development of smart manufacturing and Internet of Things, which are the major components of Industry 4.0, several models and frameworks have been proposed to solve problems, nonetheless, only focusing on either side of the two sides [4]. Although a few techniques have been developed to try to build the connectivity between two sides, their domain is constrained to specific industry and not feasibly extended to the scope of all industries [4, 5].

As a consequence of implementing the collaboration platform for both sides, demand engineering is developed to assist smart factory to precisely perceive and classify individual requirements. Since demand engineering can avoid mismatching problem at the beginning, it secures correct inputs of the product configuration and manufacturing process in a factory. Furthermore, the subsequent matching and optimization process have been carefully engineered to significantly reduce the waste of manufacturing resources and maximize the satisfaction of the market, and therefore common issues in the factory caused by mismatching, such as excess capability, high inventory level, and over-competition, can be alleviated or completely solved as the technology of demand engineering matures.

Our members in the Center for Sustainable Development and Global Competitiveness (CSDGC) reach a consensus that the proposed framework must be flexible and efficient enough to fit the context of all industries and correspondingly fulfill the variants of requirements rather than one that is strictly determined and extremely narrowed. Additionally, it must be capable of not only understanding the customers’ expectation for existing product but also predicting demand of future product.

2 Related Work

Przemysław Zawadzki and Krzysztof Żywicki [2] present concept of smart design and production control, which could potentially improve the efficiency of smart factory and thus the competitiveness of an enterprise. Most attention is drawn on the techniques for rapid design and production, as well as the cost reduction of mass customization. The authors fully understand the risk of investing on advanced technologies such as dynamic scheduling on production control and CAx,VR, and RP on product design, whose improper implementation or failure will result into serious loss of manufacturing resources. Hence, a company-level knowledge-based systems is highlighted as the backbone to support the implementation of advanced technologies. Despite the knowledge-based system is likely to avert failure in the smart factory with the support of previous experience, it cannot correct the error if the initial inputs such as customers’ expectation for the product is misunderstood by the supplier and thus mismatching problem occurs. One thing worth noting is that the authors assume their systems must be capable of processing large amount of data and synchronizing material flows during the production, which are the same assumptions that we made for our framework [2].

Requirements engineering is a set of systematic approaches that help software engineer to identify and communicate the requirements (purpose) of a human-centered dynamic system that collaborates and integrates hardware and software (software-intensive system) and the contexts in which it will be used. That is, requirements engineering, similar to demand engineering, performs as platform connecting real-world needs of users, customers, and other constituencies affected by a software system and the capabilities and opportunities afforded by software-intensive technologies. While requirements engineering build a basic structure that specifically but narrowly focuses on clarification of requirements with user involvement in the domain of software-intensive system, its requirements refinement driven by viewpoints of different stakeholders inspired us to carefully engineer the inputs obtained from requirements analysis into the process of design and production in smart factory [4].

Following the basic structure of requirements engineering, a process framework for requirements analysis and specification is proposed by Enrique García Alcázar and Antonio Monzón [5]. It can be used as a reference for driving concrete requirements engineering process. Realizing the flow path of requirements engineering activities is not a linear but cyclic and iterative process in a loop of requirements elicitation, specification, and validation, building a problem domain and fitting the user demand in that context become the foundation of the process framework. Typically, static object-oriented models are used to capture the information that build a common understanding of the problem domain, and facet model, which are borrowed from the field of domain analysis, is performed to graphically represent the structure of problem domain. A great contribution to information capturing and problem representation has been made by the proposal of the process framework, whereas it is still constrained to the field of software engineering. Furthermore, it is not vigilant and flexible to evolution of requirements even in a single domain because the static representation cannot keep tract of the change of context information. Suppose new information with different structure or context feeds into the system, the information capturer which only fits the older model is more likely to misinterpret the structure or context of the requirements. Hence, there is no chance for such method to predict the requirements of future product, which are subject to change dynamically.

The previous studies are biased to either prospective of smart factory such as mass customization or the other side, for instance, requirements engineering in a single industry such that mismatching issues inevitably and consecutively occur during the implementation of Industry 4.0 in practice. The induced problems by such discrepancy will be settled by applying the process framework in the next section.

3 Methodology (Framework)

In order to support demand engineering regarding to mass customization of products, we thus propose a process framework. The framework was inspired by requirements specification by software engineering projects [5]. This framework, however, is not only limited to the analysis of software product but, more importantly, also acted on physical product, in which software serve as one of the components. Moreover, the framework analyzes the requirements through the entire life cycle of mass customization [6]. In manufacturing area, products, which need to be customized to maximize the fulfillment from different stakeholders, have the large dispersion in the objectives and styles. Thus, this demand engineering framework aims to systematically describe the requirement as well as demand from different stakeholders and provides solutions to find customizable product design with appropriate, feasible technologies to serve these requirements and optimize the products. The development of demand engineering is not a one-shot process. Instead, it is developed iteratively in a spiral model with a sequence of waterfall increments. Thus, in this work, we present this framework, which is divided into four processes for product development, ranging from the demand identification of current market, matching current available techniques with different demands, product design optimization based on currently available resources, and the validation of the products design. With each process, we suggest the techniques that we have found most useful to obtain good results, as well as the way to apply them in practice. Obviously, there also exists other methods could be used. However, the key point is to illustrate the objective of each process instead of the detail of each technique (Fig. 1).

Fig. 1
figure 1

Structure of the process framework of Demand Engineering

3.1 Demand Identification

In general, for demand engineering activities, there are two possible scenarios:

  1. (a)

    For an existing product, customers require modification on different parts and expect improvements on several aspects. Engineers need to find reviews, comments, and trends to understand customers’ expectations.

  2. (b)

    For a potential, non-existing product, engineers need to understand pain points of customers and provide feasible solutions based on current available technologies and resources.

Both cases could apply our proposed framework, with slight modifications. Thus, the demand identification could explicitly recognize demands from a diversity of the sources of demands, cluster these demands, and organize the demand information in a formed way, which provides great benefits for further demand management. For instance, the contribution from each stakeholder could be identified; conflicts between stakeholders could be easily found.

Viewpoints

The idea of viewpoint-oriented approaches, originated in software engineering, is a way of organizing the requirement from different viewpoints [7]. These approaches try to tackle requirement analysis from different perspectives and provide a more comprehensive understanding of people’s need. By analyzing the ideas, perspectives, and relationships at various levels of detail, the viewpoint-oriented approaches support manufacturers/designers explicitly recognize the requirement from different perspectives, which provides possibilities to management and organize the diverse information.

There are typically two types of viewpoints [8]:

  1. (a)

    Direct viewpoints that represent customers or other systems that interact directly from the system and send information, such as reviews and other data back to the system.

  2. (b)

    Indirect viewpoints that represent stakeholders who do not interact directly with the system but would have influence in some or all of the services to be delivered by the system.

Each indirectly viewpoints may have a relation with the system based on its needs and interactions with the system. Based on our understanding, we identify several contingent perspectives in both direct and indirect viewpoints. In the industry, these perspectives include (1) direct customers, (2) the manufacturing companies, (3) designers, (4) social culture environment, (5) policymakers from politic as well as financial side, etc.

Identity Product Demand from Heterogeneous Data Sources

In this step, we gather information regarding the proposed and existing systems from different viewpoints.

The direct viewpoints could be obtained from the critiques, verified customer’s review, and feedback on previous products or similar products. However, in manufacturing area, depending on the industry, this information might be hard to widely obtain. Also, potential or target customers’ expectation is concealed and focuses on different aspects of a product. However, as the development of technology, microblogging and social networking services, which has become popular recently, provides an alternative to gather information. In the USA, more than 160 million users around the world are using Twitter to remain socially connected to people [9]. In PRC, it is estimated that more than 130 million users are active on Weibo everyday [10]. These tools enable rapid news information publishing and propagation, especially for the news information. Various works have been done toward trending topic analysis that could understand hot topics related with specific products, as well as technologies to understand and predict the demand of a products. One of the most important works is latent Dirichlet allocation (LDA) that is widely applied for topic modeling [11]. The original LDA is independent with time. Thus, several topic models with temporal information are proposed. Blei and Lafferty [12] further proposed discrete-time dynamic topic models (DDTM) by using variational approximations based on Kalman filters and nonparametric wavelet regression to perform approximate inference on topics. By using this model, they successfully analyze the trend of research in several important journals. Compared with DDTM, continuous time dynamic topic model further applied the Brownian motion to model the latent topics through the sequentially collected documents [13]. Wang and McCallum [14] presented a “topics over time method” (TOM) based on LDA that considers the mixture distribution over topics along with time. Grant [15] further proposed an online inference model depending on the time frame of tweets for topic modeling on Twitter that could be used for real-time Twitter trend analysis. By using existing topics, Lu and Yang [16] applied moving average of convergence-divergence as an indicator to predict the trend of topics. These methods thus generate a pool of demand for products. To be mentioned, there already exist various works that use customer’s review only to improve their service and product design.

Apart from the stakeholders, there are many sources for indirect viewpoints. Here, we list a few: the company’s operational report, political factors, financial support, domain standard, as well as competitor’s strategies. Depending on the complexity and difficulties, various methods could be applied to retrieve these types of information. The information should not limit to text, but other formats, such as graphs and references, should be captured as well.

Demand Classification and Organization

The demand documents are collected from different sources and various stakeholders with focuses on diverse aspects. Thus, before we start to provide a solution for the product. One of the key steps is to clarify the problem by distilling the information relevant to the product, cluster information and organize them into an understandable representation. Also, in some cases, stakeholders always express requirements in their own terms [4]. It is thus important to clarify the common understanding of expectations, problems, concepts, characteristics, as well as relationships. Also, unifying the vocabulary and definition with regard to these objects is important as well. There are several language processing tools to aid information classification. For instance, Word2Vec is proposed by Mikolov [17] to learn distributed vector representations that could capture syntactic and sematic word representations. After that, word embedding is used as an enhancement for those nature language alogirthms dervied from ditrbuted vectors to better represent sentence/phrase correlation [18]. By using the representation learned from these methods, the demands could be further classified. This step helps to group related or similar demand and organize them into coherent clusters. The classified demands then are organized and put into an object-oriented model [19], which provides great convenience for management.

3.2 Product Function/Matching

The demand list provides the description of what the product needs to be fulfilled, and its specifications. Not all demands on the demand list, in most circumstances, could be accomplished. In practice, demands from different stakeholders may conflict with others, which provide both opportunity and challenges. Decisions have to be made under these circumstances, such as tradeoff across selection of specifications. Also, some demands are not realistic and can hardly be fulfilled due to the restriction of technology, cost, production limit, etc. Thus, under the matching step, demands from various perspectives are prioritized and would be transited into required functions to be fulfilled based on currently available technologies. This matching process between the demand and functions needs to be defined explicitly since the demand usually has multiple perspective of view which can be reflected on the number of dimensions of required functions.

With viewpoints captured from a large variety of direct and indirect data sources, the volume of product variants in a demand list can never be underestimated. It is not hard to imagine the total number of product variants increases exponentially with each added class of variants. For instance, 30 classes of variants of an arbitrary mode of Ford in a demand list, which is tiny compared to the number of most common features of a car, would result into one trillion possible variants with the assumption of only two variants of each class. This number is obviously much larger than any mode of Ford sales. While higher variety of products would potentially increase sales, manufacturing process prefer fewer classes of variants. In machine learning area, class of variants is known as dimension. A dimension-reducing technique is entailed on the mapping process from demand list to the domain of required functions. To further remove the less important classes, prioritization process could be done either before or after the mapping process. It is worth noting that the representation of variants in demand list is a mix of words and numbers so that regularization needs to be performed beforehand. Since importance ranking is associated with supervised learning, a supervisory signal or response is needed to indicate the contribution of each class of variants. We suggest to use the latest sales data of existing product which can fulfill the variants of demand. By using matured unsupervised learning method such as principal component analysis (PCA) in mapping process, a subset of correlated variants can be obtained instead of a full demand list of variants. However, we must interpret the derived subset via recovering the meaning from the original demand list. Ideally, the elements in the domain of required function are the subset of PCA mapping from the demand list. But they are hardly matched in reality. Therefore, representation of the elements in subsequent domain or mapping function should be carefully engineered. Considering the technical feasibility that reflects back on the domain of required function, the mapping of some variants that are more preferred than expected but not realistic is likely to fail. Without removal of such redundant variants, erroneous information would propagate through the process of subsequent demanding engineering framework. To secure a valid information propagation, the mapping result must be fed back into the original demand list to eliminate the unexpected variants that are not acceptable to the system. Iteratively conducting such corrective action can significantly reduce the error in following operation.

3.3 Design, Process, and Logistic Optimization

In previous step, the matching process generates solutions in the form of specification of functions that meets the most important stakeholders’ expectation. Based on the specified functionality, the main focus of this step is to find technical feasible design parameters that could fulfill these functions. This is also called as platform-based product family design. This step involves typical decisions regarding product family design and configuration.

Along with decision with regard to the design parameters of the product, the processing variables and logistic variables could also be considered as part of the design phase since the demand from production and logistic stakeholders also need to be considered. The mapping from design parameters to processing variables deals with the process design task, which could facilitate the analysis of the influence of current production on the manufacturing and production planning within existing process capabilities and utilize repetitions in tooling, setup, and equipment [1]. The mapping from design parameters and processing variables to logistic variables handles the supply chain management, which could address the supply chain-related issues of product production fulfillment, such as supply chain configuration, resource allocation, supplier management, and supply contracting [6].

3.4 Verification

The design phase helps to connect each stakeholder’s demand to design parameters that could technically fulfill the demand, processing variables that enable the product being processed successfully as well as logistic variables to ensure the supplies as well as deliveries. In order to confirm that most required demands and their related functions have been adequately taken into account in previous processes, verification needs to be performed after the design to allow retrospect of decisions [5].

During the demand engineering process and system development, the demands from some stakeholders might change. Also, during demand identification process, information is inevitably incomplete and inconsistent, new demand might emerge during the process as business needs. Thus, the demand engineering process is not a linear but a spiral process. After each time, all activities’ process needs to be performed iteratively.

4 Scope of Use

The goal of demand engineering is to improve the efficiency of mass customization for all industries and fulfill their customers’ need, whereas not every industry has a strong desire to mass customize. This is because, for certain markets, the requirements of product never change or change periodically or geographically which are very predictable. Industry in such locally and temporarily stable markets generally has no desire to develop strong supply chain since factory is built close to local market. For instance, the product of cement industry is the necessity for modern urbanization, specifically building construction. Although requirements for cement change passively with the living environment, such as local precipitation, temperature, inland, or coastal which set different standards for cement, they are stable and determined in a geological time within which the living environment is not likely to change. Hence, implementation of demand engineering has little benefit in cement industry. Conversely, furniture industry, which is associated with cement industry to make real estate, has high demand for mass customization. People evaluate the value of furniture from different perspectives, for instance, functionality, esthetics, material adoption, or even the fame of designer. These requirements are unstable with different groups of population. Even for a single person, his/her taste of furniture is unpredictable for various periods. Those various and dynamic factors contribute to the high demand of mass customization in furniture industry and therefore induce an effective use of demand engineering.

We present the customization needs of several industries on a graph regarding their proportion of overall GDP of China in 2016 and level of the technical development in a 3D plot in Fig. 2. For convenience, the axis of “proportion of GDP” is simply divided into three quadrates highlighted with color black, blue, and red, respectively. Note that the GDPs of industries in the same quadrate are not exactly the same rather they are closer to each other compared to other quadrates. “Technical development” is not strictly defined or quantified, primarily taking new technology adoption rate and R&D investment ratio to revenue. “Customization need” is measured with number of demand variants from the perspective of customer. At current stage of this research, we are meant to show the relative importance and overall trend of industries rather than quantitative analysis. Interestingly, customization needs are not related to either one of the factors, while we discovered that industries such as mining, petroleum, machine, and tobacco have lower level than the others. Similar to furniture industry, the requirements of product in such industries are relatively stable, whereas industries like retail, tourism, and media have higher level due to the unstable preference of customers. However, this plot cannot portrait the MC potential in a foreseen timespan. For instance, demand of environmental industry is imposed by government agency, which not only raises the bar for existing pollutant but also keeps adding new pollutant into its demand list every year. The number of yearly added regulated pollutant is especially large in developing countries like China due to the increasing concern about environment protection. In addition, environmental concern is expected to be a driven force of increasing customized needs across all industries. That is, the pattern learned in environmental industry can be transferred into other industry and plays an important role in the future.

Fig. 2
figure 2

Customization needs in terms of proportion of overall GDP and technical development of China in 2016

5 Conclusion and Discussion

This paper proposes the concept of demand engineering and provides its flexible and effective process framework as a key element in a smart factory to support the realization of precise and efficient MC production by primarily using data-driven approach. Without correctly using it on each transition step between two conceptual domains derived from product family design, a high risk of unexpected waste of manufacturing resources and customer loss could be taken and hence severely harms the competitiveness and hinders the transformation into Industry 4.0 of an enterprise. While demand engineering framework is aimed to prepare a tool box of modified data-driven approaches to solve the real problems occurred on the entire value chain of MC, integration of temporal widely used rule-based approaches such as modular product architecture is still beneficial and essential at current immature stage.

Regarding the techniques of data-driven approaches, further research could be conducted in developing a general standard of performance measurement that fits the domain knowledge of MC rather than the conventional statistic test used in machine learning. Leveraging the cost of iterative adjustment within each step and the framework itself, which, as a whole, is a cyclic system, is essentially concerned. Furthermore, the cost must be carefully defined and quantified in terms of not only computational loss but also opportunity cost through the entire value chain of MC. Scalability of the framework is another concern that is not possible to be determined in short time period. With stable performance during a reasonable period of operation on a single smart factory, the framework is then believed to be reliable to deal with multi-factory scenarios in which aggravated discrepancy of the market would significantly affect its performance. Last but not least, a great effort has been made on building pilot research platform with our collaborated partners in different industries so that we can collect real data in the future that is helpful to analyze the performance of the current framework. Only then will it be fully possible to refine the framework according to the result of performance analysis in real situation.