We believe it is high time to re-think how we build industrial applications, such as SCADA systems:
- Most solutions today are old-fashioned, inflexible and carry sky-high license costs.
- Most solutions do not support business needs in a fast-changing environment.
- And because of technical constraints, it is cumbersome and expensive to change anything.
And the design somehow never made it out of the 1990s. While there is nothing wrong with the 1990s, gave us for example the great movie “Forest Gump,” but even Tom Hanks gets older, and it is time to move on.
The false dilemma
Here is an idea about industrial applications that is both widespread and wrong: Either you get a solution that is, on the one hand, stable and reliable, but on the other hand, less flexible and agile. Or you get a solution that is on the one side flexible, agile and modern, but on the other hand less stable and reliable. Hey, if this dilemma were right, we would all opt for the first option. Of course, you want your solution to be stable and reliable. The good news is that this dilemma or dichotomy is false: You don’t have to choose, today – far away from the 1990s – you can both have the stability, the reliability and the flexibility.
An observation from our daily work with industrial clients
The people in charge of day-to-day operations have plenty of bright ideas on potential improvements, and they also know how to. But “The System” – the “supporting” industrial application or SCADA system does not facilitate the suggested ideas. And in the rare case, where the system can be twisted to support, the effort and related cost do not justify doing anything. Thus, the good news: People have bucket loads of ideas on improving things. The bad news: Technical and practical limitations in the supporting industrial applications hamper these ideas. The solution?
Replace old-fashioned industrial applications with a modern and flexible platform and implement solutions using agile principles.
Add a more flexible application next to your existing industrial application to obtain the needed flexibility.
In Enuda, we have chosen Ignition as our Go-to-Tool for all the industrial applications we create. Ignition is an integrated development environment with unlimited possibilities. Therefore we can build for virtually any kind of industrial use – both desktop and mobile solutions. And on top, our approach to building industrial applications is a bit different from many in this domain.
Yes, we are different, and it is by design
Business needs and processes are changing all the time, and with them the requirements to the supporting industrial applications as well. Long gone are the days when you could develop detailed specifications, implement the solution and celebrate a “job well done.” This new situation has been described by the verb “becoming,” meaning that any critical IT system is always in some form of development. It is continuously “becoming”; adapting to new business requirements. As a result, this is how the world looks from the client’s perspective:
- Specifications for solutions are both more complex and more ambiguous. In a fast-changing business environment, it is practically impossible for clients, to define in details what is needed. Instead, we often get some vague, over-arching or general description of problems.
- Results are needed now, not in 3 months or longer, but now to support urgent business needs.
Therefore, our approach is adapted to meet this rather new situation. Thus, yes, we are different from what is usual in this industry, and it is not to appear smart or pretentious. Instead, it is by design. And the sole purpose is to create max value to our clients – now and in the future. We have chosen to differentiate ourselves in 5 distinct ways, all intended to create value to the client:
- Exclusive focus on the Ignition platform
- Versatile and robust coding skills
- Agile values and principles
- Focus on user experience and design
- Share our knowledge when possible
We focus exclusively on the Ignition platform
Enuda is the first company in the EU, to focus entirely on the non-proprietary platform Ignition. That’s all we do; therefore, we are pretty good at it. Everything boils down to the aforementioned new requirements from clients. We develop solutions in close cooperation with the people using the output, which is essential when the specifications or concrete business needs are vague or ambiguous. For this approach to work, we need to be good, really good at all the intricacies of the Ignition platform. What is possible, how is it possible, what are the long-term consequences of this decision? Such and many similar questions are on the table every day, and our laser-beam focus on the Ignition platform gives us the necessary insight to help the client decide.
We have versatile and robust coding skills
The Enuda team is a bunch of coding people. Unlike what is usual in the industrial application space, we are not electrical engineers with some understanding of code. Again, this composition of the team is by design, and there are at least two good reasons behind this logic. Firstly, it opens a plethora of options on the Ignition platform. You can build several smart things, just “out-of-the-box” without extensive coding experience. But adding strong coding skills in SQL and Python brings solutions to a whole new level.
The core DNA in Ignition is “unlimited” – the number of tags, users and devices connected to the platform. The same philosophy applies to customised solutions. Clients do not want to be locked in by what is possible on this or that tool. Their business requirements make sense, and the solution must support that. Adding coding brings precisely that. You end up with a customised solution adapted to the specific needs and created in a way, where the platform and coding languages are standard and maintained.
Secondly, due to open standards, the Ignition platform is a fantastic tool for integrating different IT systems. Almost always integration with some database solution to handle data in massive amounts. And potentially integration with other data sources, such as meteorological data, market data or maybe price data on power and gas. The role of Ignition can be many things: Polling data from devices or systems and storing in databases or used as a front-end on mobile devices to present data from multiple systems.
All such use cases require interaction with different data systems, and therefore coding skills are necessary to make this work.
We work following agile values and principles
Our entire Modus Operandi is rooted in agile principles, which among other things mean:
- Strong focus on building working software instead of long specification processes
- Prototyping and adjusting as a work method
- Responding to continuous change over following a strict plan
As described above, even industrial applications that used to be more or less sat in stone, are moving in the direction of “Becoming.” In many cases leading to a situation where the process becomes more important than the product. The application or solution will never become done in the traditional sense. Instead, it will morph in different directions, all depending on the actual business needs. Alas, the process is the product!
In a situation where specifications for solutions are both more complex and more ambiguous, it is both less risky and more efficient to use prototyping as a working method. Create a simple yet convincing prototype fast and allow the end-user to see how it could work. Everybody understands and acknowledges the limitations of a prototype – that it is not the full functionality, and in our experience users appreciate this interaction as early as possible.
We split our work into short sprints. The duration is usually not more than two weeks, and we keep a strong focus on delivering output from each sprint.
We focus a lot on User Experience and design in general
A lot of the existing industrial applications and thus also SCADA design are just plain ugly. As one of our clients stated: “It is so 1990’s – why not lift it into 2020?” Do not leave the design to the engineers; they wouldn’t know it when they see it! With the launch of Ignition 8 in April 2019, we got access to a top-notch mobile-first application for industrial use. The new Perspective module on the Ignition platform offers the much-needed rendering of data on mobile devices.
Traditionally SCADA solutions have been created by engineers, and almost all layouts created like P&ID – Piping and Instrumentation Diagram, which is a schematic illustration of a functional relationship between piping, instrumentation, and system components. Such a layout made sense because it mimics the real world – “this pipe connects to that pump,” etcetera. When mobile devices started taking over the world, their limitations in screen size demanded a different approach to design. And this again required different skills and knowledge about how best to convey information on such devices. As a result, we learned two new expressions: UI and UX.
- UI: User Interface – graphical layout and look of an application. It consists of the buttons, text images, sliders, text entry fields, and all other items with which the user interacts
- UX: User Experience – how is the experience of using the design? Is it smooth and easy or confusing and irritating? How well does the navigation support the user?
Due to the limited screen size of mobile devices and the demand for responsiveness, these two aspects become essential in designing mobile solutions. A result is a different approach to the overall layout, and suddenly, the well-known P&IDs no longer appears to be the logical solution.
We share our knowledge when possible
The Enuda team is one big learning machine. We challenge ourselves and the people around us daily, to come up with even smarter solutions. The team brings both adequate university degrees and the necessary Ignition certification. On top, the team is active in the global Ignition community, and we participate in the annual Ignition Community Conference in California. All of which we happily pass on to our client’s organisation when wanted. Nothing beats on-the-job training done by bringing client staff into well-defined sprints and participating alongside the Enuda team. This way, knowledge transfer happens on an active basis; people learn to code together and create solutions in cooperation.
The Ignition platform is based on open standards, and we do not want our clients to be locked into neither the platform nor our organisation. Ignition is a non-proprietary platform, and we want our contribution to be in the same spirit. Therefore, knowledge sharing, transparency and cooperation are all at the core of how we think.
In the same spirit we share our experiences and lessons learned to a broader audience via our website.