23

IoT Poland 2016 - Over the air deployment bringing business closer to agile

Embed Size (px)

Citation preview

IoT

Collection of software and hardware technologies, often provided by multiple vendors, allowing physical devices to connect to the cloud, be remotely accessible to perform actions and share the data they provide.

IoT

So IoT consist of “the things” part and “the internet” part.The second one is where Monterail mostly steps in, but not only… :)

We’re also building some early Hardware prototypes and PoCs.

IoT

monterail.com/blog

Product Development

In the past an usual approach used to build software products was so called “waterfall method”.

- Precise planning- Gantt Charts- Time consuming processes

and heavy administration

Classic Approach

Business got faster than software development

- February 2001- Seventeen independent-minded software practitioners- While the participants didn't agree about much, they found

consensus around four main values.

Agile Manifesto

* Individuals and interactions over processes and tools ** Working software over comprehensive documentation *

* Customer collaboration over contract negotiation* * Responding to change over following a plan *

That is, while there is value in the items on the right, we value the items on the left more.

Agile

Iterative Development

- Responsive to change

- Adjusts the product to what user needs

- Allows business to redefine their ideas at any point

- Ensures constant feedback

- Requires tools and processes for continuous delivery

Iterative Development

Continuous Delivery

It’s not that easy with hardware though...

- Usually involves physically connecting to the device

- Difficult to keep track of versions running on different devices

- Risk of “bricking”

Traditional Firmware Update

- Usually involves physically connecting to the device

- Difficult to keep track of versions running on different devices

- Risk of “bricking”

Traditional Firmware Update

- No need for physical access to the device

- Firmware updates are distributed over the network

- The device can operate normally while being updated

Over-The-Air (OTA)Firmware Update

The Process

Developers

The Process

GitHub

Developers

The Process

GitHub

Developers

CircleCI PlatformIO

+

The Process

GitHub

Developers OTA Server

CircleCI PlatformIO

+

The Process

GitHub

Developers OTA Server

CircleCI

ESP8266

PlatformIO

+

MQTT

Demo time!

Thank you