As IIoT for Predictive Maintenance becomes increasingly important for the senior executives of industrial plants, decisions must be made about the optimal way to procure the technology. This article provides a decision-making framework for the Buy versus Build question and reviews the complexities of building a software solution based on dynamic Machine Learning algorithms.
In this article we will address the following:
- The Build versus Buy Considerations for IIoT PdM Software
- How O&M Professionals View the Build versus Buy Decision
- Presenso’s Framework for Developing IIoT Predictive Maintenance
1. The Build versus BuyConsiderations for IIoT Predictive Maintenance Software
At a high level, the decision to buy or build a solution is based on the following considerations:
- Financial: What is the Total Cost of Ownership (TCO) of developing a solution in-house versus purchasing it? TCO is an important measurement because it takes into consideration ongoing support and maintenance costs. The Buy costs include licensing fees, deployment costs, hardware costs, customization and software end of life. The build costs include software development costs, control and testing, training, support and maintenance, and software end of life. It should be noted that in some cases, companies pay for some of the services. For instance, even if software is purchased, support could be charged to the customer as a separate line item.
- Resources/Expertise: The development of an IIoT Predictive Maintenance solution requires the following:
- a. Expertise in Machine Learning / Deep Learning
- b. Domain expertise in the industrial process
- c. Software programming and development competencies.
With predictions that the demand for big data scientists will climb 28% by 2020, many industrial organizations are struggling to fill this skillset.
- Functionalities: The fundamental question that must be addressed is whether the requirements specified for the software can be delivered using internal organizational resources given financial and resource constraints.
Functional and Non-Functional Requirements for IIoT Predictive MaintenanceThe following Functional Requirements must be defined by internal stakeholders:
- Interoperability / Architecture
- Asset and Sensor Neutrality
- Alert Generation
- Machine Learning Methodology
- Asset Visualization
The following Non-Functional Requirements require definition:
- Response Time
For more guidance on Functional and Non-Functional Requirements, click here.
2. How O&M Professionals View the Build versus Buy Decision
In the Emory University Future of IIoT Predictive Maintenance Research Study sponsored by Presenso, Operations and Maintenance professions were asked to select the model that would most likely be used to develop IIoT Predictive Maintenance solutions. A small minority (only 14% of survey respondents) anticipated a build-only model. The majority of respondents (54%) believed that solutions would be developed internally but would employ a mix of internal and external applications. About one-third of survey respondents (32%) expected that solutions would be supplied by third-party vendors.
3. Presenso’s Framework for Developing IIoT Predictive Maintenance
The development of an IIoT Predictive Maintenance Software / Solution requires the “productization” of a Machine Learning application that is unique to the industrial arena. In the graph below, we depict both the Machine Learning Development process and the traditional Software / System Development Lifecycle (SDLC).
The development of IIoT Predictive Maintenance software is made using both processes.
Let’s start with how to develop a solution based on Machine Learning. The ML Development process contains the following four phases:
|Contextualization||Addressing the following issue: What is the nature of the Machine Learning problem that must be solved and what is the optimal methodology / ML type that should be used?|
|Model Development & Training||Selecting the ML methodology (Supervised, Unsupervised, etc.) and training of the model by providing it with data from which to learn.|
|Simulation Testing||Testing software by Machine Learning algorithm to different scenarios and conditions using sensor-generated data from industrial machinery.|
|Continuous Integration & Delivery||The continuous deployment and release of software updates and automated testing enables speedy delivery.|
SDLC is the structured framework generally used by software development organizations comprising the following phases:
|5 Phases of SDLC|
|Requirements||Business, functional and technical requirements that are documented, agreed upon and formalized.|
|Design||Specification of hardware and software requirements, systems architecture, etc.|
|Implementation||Coding by developers. This is the longest phase in SDLC.|
|Testing||Various types of testing to ensure that coding meets the original requirements and specifications.|
|Evaluation||Once deployed, system effectiveness is evaluated, and improvements and modifications are identified.|
Although the above steps are described generically, the requirements stage that is part of the SDLC and the contextualization phase that is part of a Machine Learning Development process must be aligned.
|Alignment of SDLC and ML Development: Requirements Phase and Contextualization Phase|
|Requirements Phase (SDLC)||Contextualization (ML Development)|
|How is sensor data accessed from the industrial plant?||What type of machinery sensor data will be analyzed by the data (valves, pumps, generators, etc.)?|
|How will the industrial plant technicians receive alerts about evolving degradation and asset failure?||Is access to the physical blueprints of the machinery required (for instance, for the Supervised Machine Learning scenario)?|
|What reports are generated by the system?||What is the methodology used to identify Root Cause Analysis?|
Disciplined and strict adherence to the rigid Requirements Phase from the SDLC is necessary to build a scalable solution within the planned timescale. At the same time, deep subject matter expertise is required during the Contextualization phase of the ML Development process so that the solution can deliver results consistent with the needs of the business (accurate assessments of asset health and predictions of equipment failure).
Developing a software solution is not a one-time process. Technology must be maintained, supported and updated. This requires ongoing financial and organizational commitment.
Maintaining software and updating functionalities is not simple. It includes the following:
- Software Release Management
- Configuration Management
- Performance Monitoring
- Systems Maintenance
- Enhancements Request Management
An internal group that develops a solution must sign an SLA (Service Level Agreement) with each local industrial plant. From an end-user perspective, each industrial plant should be considered a client and receive support in the following areas:
- Training and Onboarding
- Customer / Account Support
- Incidence Response and Resolution
Build or Buy, But Don’t Forget the UI
An intuitive User Interface is a critical element of IIoT Predictive Maintenance software. Machine Learning generates complex outputs that must be simplified for the end user. Developing a UI goes beyond the interface’s look and feel, consistency, attractiveness, etc.
The challenge for the factory technician is that they must absorb difficult information in a way that enables a decision-making process. Therefore, data should be visualized so that it can be analyzed meaningfully. The use of heatmaps and other visual tools will help the non-data specialist discern the threat level and root cause.
At Presenso, we recognize the importance of the User Interface and have created user-friendly dashboards for real-time monitoring and decision making.