THE EMBEDDED ANTHOLOGY PART XIII – Bring Agility to the development of your HMIs
Cirus Coliai
Bringing your devices to life with world-class software ?? #Embedded #IoT #Device2Cloud @Witekio
You have a product you want to bring to market, you know how you want it to look and work, but you’re not sure exactly how to get there.
What tools and tricks do you need, not only to develop the product you want, but on time and in budget.
That’s why in this chapter of the Embedded Anthology, we’ll focus on Human-Machine Interaction and Agility in the Process of Developing Usable HMIs.
In other words, what agile methodology delivers when developing an HMI on an embedded target.
Why do you need to think about methodology?
The challenge for most OEMs / ODMs is the increased complexity that the digital transition has brought about. They have to look beyond the GUI and ensure the right people and organizational methodology are used.
This means more agility in HMI development since it is not only about UI, but also language, connectivity, security and backend stuff.
Obviously, you want the product to look good, but if you solely focus on how your GUI will look and work, you will overlook or underestimate the more important backend aspects. Hence the need to look beyond the GUI.
Without the bottom of the iceberg – your product will sink.?So, ensure you dedicate enough resources to the core of your GUI development and functionality – not just the UI (User Interface).
Basically, if you’re trying to ensure agile methods for the front, you’ll need to do the same for the backend as it is far less defined at the start of the project and will incur more changes all-round.
Witekio project experience finds that two-thirds of the project development time should be spent on the backend. So put away that glitter, you’re not fooling anyone when it comes to actually using the end product.
The different approaches to development
For quite a while, Witekio has been helping OEMs in developing modern HMIs in an agile way, which means Iteration + Constant Prioritization
Before going any further, a distinction between the two major approaches (Waterfall vs Agile) to development is necessary. It is of great importance to remember that both Agile and Waterfall, technically, are not a project management methodology but rather a mindset to approaching projects. While Agile provides flexibility, Waterfall offers a pre-defined framework to follow that is sequential in nature.
The waterfall model is a breakdown of project activities into linear sequential phases, meaning they are passed down onto each other, where each phase depends on the deliverables of the previous one and corresponds to a specialization of tasks. The approach is typical for certain areas of engineering design.
领英推荐
The Agile approach on the other hand has its own virtues since it makes it possible to manage budget & deadlines. At every iteration, priorities and scope are reviewed, allowing more flexibility on features while keeping control over cost & delays.
These advantages of the Agile approach is also illustrated in the figure below where its success rate is well above that of the Waterfall approach.
It is however to be noted that agility in itself has multiple versions such as Scrum, Kanban, etc.?
Whatever methodology you choose for your project, use it as a guide only, as the process should be tweaked depending on your project and outcome needs.
If you inflexibly stick to all the approved steps, you might as well be using the waterfall approach. At Witekio we are increasingly using mixed agile methodologies to maximize project efficiency and achieve the best results. This means also an increased usage of “frameworks” which can help accelerate the time-to-market in industrialization projects.
What about UI design?
Typically, a designer oversees the way your UI screens should look and interact. These UI/UX specifications then need to be reproduced (converted into code) by the developer.?However, often due to miscommunication, device limitations or technical issues, a loop of iterations between design team and development then begins – slowing down your time to market.?This is due to the fact that each of the above-mentioned teams use their own proper tools. Hence, Photoshop and python code do not mix well (or at all)!?
To avoid this miscommunication at Witekio we tend to use tools such as the Qt Design Studio which enables both teams to collaborate easily. How does it do it, by simply using QML, which is a descriptive language for UI (understandable by both designer & developer) and allowing re-using the QML coming from the designer to do the development.
We are entering a new era of HMIs which brings with it a lot of opportunities. If you want to learn more on our approach to UX/UI, check this webinar out!
Embeddedly yours,
Cirus Coliai (BDM at Witekio for France, UK & Northern Europe)
??
CEO | Entrepreneur | Investor in B2B tech ventures ??????????
1 年Good overview of the key success factors for HMI dev :-) well done Cirus Coliai