Bee gif

loading interactive paper

Right arrow Left arrow

 

Continuous engineering

3.1

Continuous engineering and systems thinking are critical in connected product development

Successful IoT development requires systems thinking — an awareness of, and engineering and development response to, the demands of creating a distributed system of systems. Depending on the criticality of the product or service, this may range from more effective collaboration between engineering teams and organizations, to more formal, rigorous systems engineering methods. All require the right degree of traceability, automation and responsiveness to change.

Continuous engineering uses proven practices for systems thinking and systems engineering, embedded software development and IoT application software development. Together with appropriate automation and traceability, continuous engineering enables efficient practices in a real product development environment.

Across different team sizes and development ecosystem structures, development disciplines and engineering activities, continuous engineering can be applied where it will deliver the maximum return.

 

dots

How critical is your IoT solution?

Defining the nature of your IoT solution and its dependencies will set you up to get the maximum return from adopting a continuous engineering methodology.

Has incorporating IoT had a significant impact on your business model or customer experience?

car parts

If your connected product or service could directly or indirectly cause harm if it malfunctions, or many users are affected by its availability, then it's important to use continuous engineering methodologies. A connected taxi-hauling service, for example, cannot function without connectivity — affecting users, drivers and the bottom line. A connected elevator that fails might have a more significant impact.

If you don't have in-house skills, software-as-a-service (SaaS) solutions can be easily downloaded and implemented to help you transform into continuous engineering for critical IoT offerings.

dots

 

Key engineering disciplines

4.1

Systems engineering for the IoT

A vital aspect of an overall continuous engineering methodology, IoT systems engineering is all about coordinating and managing the complexity and dependencies of IoT systems. Engineers need to ensure that all requirements are met, including those around users, markets and regulations. The system must be cost-effective, delivered on time, and be dependable in a dynamic deployment context.

Find out how the IBM IoT Continuous Engineering solution helps systems engineers

play

Since the early days of the American space program, systems engineering was instrumental in its success and grew to be used in many industries. Systems engineering for the IoT must be exceptionally agile, but without losing the key characteristics that make it valuable.

To be successful, a connected system must meet key qualitative, non-functional requirements goals. These include system reliability, resiliency, safety, security and maintainability, each of which calls for its own kind of engineering practices, tools and verification approaches.

 

dots

 

Systems engineering for the IoT

For example, implementing a smart thermostat system may appear simple, because it seems like the thermostat is only responsible for controlling heating and cooling for the building in which it is installed. But when connected to the IoT, it requires a comprehensive systems engineering approach to ensure occupant and building safety are not compromised by hackers, communication issues or errant software updates.

Discover the benefits continuous engineering can bring to systems engineering for the IoT

play

Systems engineering holds many of the solutions to IoT engineering challenges, as long as it is right-sized for the risk associated with a particular IoT application. Historically, systems engineering has been for long, careful aerospace development, and not for dynamic environments. Systems engineers must employ agile, lean techniques which bring the needed rigor without aerospace-sized overhead.

Collaboration, workflow planning and management keep all stakeholders on the same page. Requirements management and traceability and model-based systems engineering ensure that needs are captured, evaluated and used to drive the development of appropriate solutions. Change and configuration management helps support different product versions within the product family.

 

dots

 

Embedded software design for the IoT

Physical devices that make up the components of an IoT system can range from small-scale sensors to complex physical products such as airplanes and medical equipment. Embedded software is increasingly responsible for the value and differentiation of such products; the IoT context intensifies many of the development challenges.

How the IBM IoT Continuous Engineering solution helps software engineers

play

Managing dependencies, coping with the dynamic nature of development, and supporting agile approaches require a mixture of continuous engineering capabilities according to the needs of the particular project.

In regulated (for example, safety-critical) environments, traceability must exist within development processes. It is also vital to be able to use it to extract development artifacts to demonstrate compliance with standards, minimize errors and contain the cost of compliance.

 

dots

 

Embedded software design for the IoT

Typically, IoT components have more dependencies than other domains of software development. The operating environment of embedded software is closely coupled to the device hardware and user experience is critically dependent on embedded software.

Discover the benefits continuous engineering can bring to embedded software development for the IoT

play

In an IoT context, embedded development becomes more dynamic.

Embedded software updating becomes an in-service or even real-time activity. Operational and user data can be fed back in near real-time into software development to inform product improvement. Functionality can be distributed in new ways between embedded software and software running on an edge device or cloud server.

 

dots

 

IoT application software development

Software that coordinates the components of an IoT system to deliver the overall system functionality is typically a combination of local, cloud-based and mobile components.

Discover the benefits continuous engineering can bring to IoT application software development

play

IoT application software development integrates many technologies, including data acquisition and storage, analytics, user and access management and security, business process automation and more.

IoT applications go beyond conventional business applications and product software and are central to the business model for an IoT-based product or service. For this reason, application dependability and the team’s rapid response to changing demands are critical to success.

 

dots

 

IoT application software development

An IoT solution may include complex systems of systems, but it is still expected to respond in real time. IoT software development is distinguished from software-only development by several needs. These include early architecture development, a focus on critical architectural mechanisms, physical and virtual deployment considerations, functional integration with embedded software in endpoints, and incorporation of development analytics into the development process.

man using computer

IoT teams tend to be interdependent, distributed, cross-organizational and long-lasting. An IoT development project is more than the sum of lots of smaller software projects. The permutations of integrations between elements of the deployed system cause a geometric increase in complexity. The sheer number of variables such as device platforms, micro-services, languages, and libraries adds multipliers to the already complex software development process. As a result, navigating across artifacts, tools and schedules requires more intelligence and support.

Security, privacy, scalability, deployment and integration are all areas that must be considered, documented and clearly solved in an IoT system. Each must be reassessed when new elements are added to the system through product introduction, evolution or ecosystem expansion.

 

dots

 

The agile mindset

5.1

Continuous engineering and agile methods

Continuous engineering isn’t a single process; it’s a mindset that guides the application of detailed design and development processes. Therefore, continuous engineering can be implemented according to agile methods, and this combination is well-suited to development for the IoT.

coworkers designing a car

Agile methods are well-established for many areas of software development, delivering consistently high productivity, high quality, and attention to design while also enabling responsiveness to change. These characteristics are, if anything, more important for IoT software development, making agile methods attractive to companies developing for the IoT.

In recent years agile methods are recognized as applying not only to software, but increasingly to systems engineering activities.

 

dots

 

Agile methods offer a number of benefits

By prioritizing collaboration with clients, agile can help ensure that the right solution is delivered.

By dynamically managing development priorities, agile can help maintain focus on the project outcome when there is a large degree of uncertainty regarding the direction of the correct solution in a project. This is a significant possibility in IoT development.

engineer

Agile techniques can be adapted for use in IoT development, but these must be selected and applied with care. Some agile techniques were originally designed for small, independent, co-located teams working on projects that were presumed to have a limited life. These techniques can increase the risk of failure in an IoT project. But, when employed properly, agile can offer many benefits.

By avoiding technical debt and delivering only tested and working products, agile can avoid having systems integration issues getting out of hand, which could lead to project failure.

By eliminating unnecessary work, agile can help ensure projects are delivered efficiently.

 

dots

 

Digital twin adds visibility

6.1

Digital twin: Helping machines tell their story

A digital twin is a virtual representation of a physical object or system across its lifecycle, using real-time data to enable understanding, learning and reasoning. Until now, the industry lacked an integrated digital twin that provides a complete performance model across the full lifecycle of the connected product — design, build and operations.

Introduction to Digital Twin: simple, but detailed

play

By integrating data from multiple sources and models, a digital twin enables engineers, operations specialists and technicians to see exactly what’s happening within an asset, system or facility to make efficient decisions.

For example, product developers can identify the best procedures to improve quality and enhance the customer experience. And since the twin is still available after the product leaves the manufacturing facility, it offers an opportunity to reinvent your business around digital operations.

 

dots

 

Any asset can become an innovation platform with the digital twin

Connected products are changing the rules for product development in the era of IoT. A digital twin provides a powerful construct for digital ‘feedback’ to stay ahead of changing preferences and customizations to know what products and experiences customers really want.

Digital twin of a car engine

As vehicles get smarter and increasingly connected, operational data can be leveraged across the full lifecycle of the product with the help of a digital twin. Real-time analysis of engine speed, air/fuel ratio, oil pressure, coolant temperature and other critical parameters can optimize efficiency, prevent breakdowns and elevate the driver experience.

Additionally, insights gained from this data can guide the next generation of engine design and the smart manufacturing processes that build the connected engine.

 

dots

 

Gain deep engineering insights across a digital thread

A digital twin view each stakeholder needs at every stage of a product's life cycle is now possible.  A single, powerful interface for a digital twin allows for multiple views to be created for different stakeholders across the organization. Each view uses only relevant data, and adds visualizations and supplemental data sources tailored to the needs of each particular user.

The digital thread allows for continuous "re-calibration" of an aircraft engine

digital thread

The result? A "digital thread" or unified view of the product and its dependencies across the organization, which allows dynamic and continuous "re-calibration" to improve performance. The digital thread can provide real-time insights from deep within systems of systems and make it easier for engineers to find hidden interdependencies, recommend optimal steps of intervention, recalibrate and predict future outcomes.

IBM® offers an integrated digital twin that provides a new level of visibility across business and engineering.

 

dots