1. Internet Of Things - Overview
Eric Cattoir
IBM Rational Client Technical Professional
Member of the IBM Benelux Technical Expert Council
@CattoirEric
Businesses who can establish software delivery as their core competency will be able to exploit the emerging technology trends
Unprecedented demands from cloud, mobile and social, and big data and analytics, instrumented products etc. are causing significant changes in how companies deliver software, requiring new levels of collaboration and innovation.
Business as usual in IT is not going to survive. Traditional software delivery methods evolved over the years across many IT industries now pose a bigger risk tan ever, resulting in loss of competitive advantage where business survival can be at stake.
TRANSITION: And majority are still taking the traditional approach when it comes to software delivery
Next slide….
Now, from a technology standpoint, one of the problems with the IoT today is that many, many discussions are confined to a limited aspect of the IoT. Based on our long experience with IoT projects, we’ve created a logical reference model to ensure that the we have an overall context for the detailed discussion.
At the bottom, we have the connectivity to the devices – very important, and we could spend hours talking about the challenges there, but the collection, normalization, and storage of sensor / device data is just the first step. [Note, we distinguish between sensors and devices since most devices have multiple sensors]
To unlock the true value of IoT, this data needs to be analyzed and optimized. We have a later chart that will go into more detail on analytics. [Need to put more here]
When we think about the IoT Lifecycle, we can think of three processes that operate continuously over time. [The analogy here is to the former “Build, Run, Manage” division we have used for IBM Software in the past]
Design and Engineer – the Continuous Engineering done by both Inventors of Things and Operators of Things
Operate – the core function of the devices to provide value. These people have job titles like Manufacturing or Operations. IBM is NOT trying to replace these functions, but rather to use some of the data generated by them to provide value in the IoT.
Manage – using data to do predictive analytics and maintenance
Of course all of this is worthless unless it is secure. Security is both a vertical thought (how do we authenticate the device that is providing data? How do we know that the data has not been spoofed during transmission?) and a horizontal thought (why is it that all other devices in this class are sending data to one place, but this particular device is sending data somewhere else? Why has it sent data here for the last month, but suddenly started sending data to a different place?). [Need to add the general Security framework to the backup section in a future version]
Finally, while this is a fine logical architecture, and we think it accomplishes its goal of ensuring that conversations cover all the key areas, IoT is not a technology in itself – it needs to be put in an industry context and language. However, too often we dive into a particular use case in a particular industry and lose sight of the importance of the horizontal data relationships and the advantage of leveraging technology across use cases. In our experience, we have not yet met a customer with only one use case.
Connect – Easily Register and connect “things” through a UI or APIs
Collect – Collect and manage a time series view of data from “things”
Assemble – Visually assemble events from things into logic flows
Manage – Manage “thing” connections and subscriptions
Build – Create applications that directly interact with connected “things”
Streams does not work in a vacuum. It is part of a next generation architecture for delivering information and insights.
KEY POINTS: It’s not sufficient to have separate collaborative environments for requirements, design and test. They need to be connected for traceability and workflow, supported with planning and task management and integrated into a change management process.
Narrative:
Simply stated, the discipline of Systems Engineering is translating a project’s requirements into a proven, working design. But it is never really that simple.
[CLICK] First, the requirements need to completely and accurately addressed. This includes things like customer needs, product specifications, industry regulations and standards, pricing objectives, legal considerations, and much more. The product will fail if it does not meet the consumers’ expectations, or falls short in any way. This means that the requirements must be organized and traced throughout the project.
[CLICK] Then, the requirements need to be translated into a working design. And the requirements will grow and change during the design phase, so a direct connection needs to be maintained to keep the requirements current.
[CLICK] To ensure project success, each element of the requirements and design needs to be proven as they are created. This speeds development by ensuring that each project element is being built with tested and proven components. Rational helps its clients achieve the goal of “design-in quality”, as opposed to the less desirable “test-in quality”, by helping them adhere to strict validation and verification at each step of development.
But it’s not sufficient for requirements, design and test to operate in isolation. They must be part of a consistent and iterative workflow to create the visibility, collaboration and traceability you need for successful systems engineering [CLICK]. Throughout the project, the development team should have full access to engineering data for analysis and reuse, task management, and to plan and track progress. And with the inevitability of changes to the project, you’ll need a change management capability that supports a review and approval process integrated fully into the workflow. [NEXT SLIDE]
Growing into a devops solution requires you to improve in various domains. At IBM we have developed a devops maturity model based on 4 large capability groups. This can be used to measure where you stand today and then use this to grow.