Welcome!

@ThingsExpo Authors: Elizabeth White, Yeshim Deniz, Kevin Benedict, Pat Romanski, Dana Gardner

Related Topics: @ThingsExpo, Mobile IoT, Agile Computing, @CloudExpo, @BigDataExpo

@ThingsExpo: Article

IoT Software Releases | @ThingsExpo #IoT #M2M #BigData #InternetOfThings

Developing software for the Internet of Things (IoT) comes with its own set of challenges

Developing software for the Internet of Things (IoT) comes with its own set of challenges.  Security, privacy, and unified standards are a few key issues.  In addition, each IoT product is comprised of at least three separate application components: the software embedded in the device, the backend big-data service, and the mobile application for the end user's controls. Each component is developed by a different team, using different technologies and practices, and deployed to a different stack/target - this makes the integration of these separate pipelines and the coordination of software updates for IoT more problematic.  How do you coordinate the diverse moving parts that must come together when your IoT product is updated?

Getting IoT to Flow
Electric Cloud helps our customers solve software delivery problems at a very large scale. Our integrated, end-to-end, DevOps platform - ElectricFlow - has proven to be a natural fit for orchestrating the complex pipelines that are common with IoT.

Pipelines
ElectricFlow 6.0 introduces Pipelines to allow you to automate end-to-end software development and delivery processes, enabling Application Release Automation (ARA) and Continuous Delivery (CD).  You can easily manage the software delivery of one or more applications using pipelines.

electricflow pipeline1

A pipeline is a series of high-level re-usable steps that run automated processes. Pipelines consist of one or more stages. Each stage has a stage plan with one or moretasks, an entry gate, and an exit gate.

Tasks are used to run automated build, test, and deployment processes.  The tasks within a stage plan are run in sequential order.

An entry gate and an exit gate exist for each stage. A gate may consist of one or more automatic or manual approvals.  When the tasks for a stage are completed and an exit gate requires approval before going to the next stage, the approvers are notified by email.

Pipelines provide several benefits:

  • Orchestration - determine who (or what) is working on the release process, what part they are doing, what is the status of that part, and what is the next step.
  • Visibility - determine how the software is performing, whether it is ready for beta or production, where there are performance issues, and what versions are available within the release process.
  • Control - determine whether the software is ready for integration, beta, preproduction, or production and whether the software passes the quality criteria at stage gates and has been approved by the appropriate users or groups.

Pipelines in Action
Let's walk through a real use case to see how ElectricFlow is used to coordinate an IoT release.

The Pieces
In our example, there are three teams that work on the major components of a car-based IoT product:

  • The embedded team develops the software deployed to electric cars. This software collects vehicle-specific information (battery charge, MPGe, etc.) and uploads it to the data center.
  • The backend data team develops the software deployed to the data center. This software collects, analyzes, and provides visualization for the data uploaded by the vehicles.
  • The mobile team develops the app deployed to the app store. This mobile app shows car owners real-time information about their vehicle, such as battery utilization.

For the demo, we assembled the following pieces running "v1" of the product:

iot-dem-vehicle-sw

The vehicle - the embedded software in the vehicle is simulated by a Raspberry Pi with a Blink(1) light indicating the battery charge and pushing information to the DB

iot-demo-backend-sw

The data backend- simulated by a database running in AWS EC2, and a Dashing dashboard to visualize the data

iot-demo-mobile-app-sw-1

The mobile app - an iOS application running on an iPhone and showing real-time data from the DB in EC2

Working in Isolation
Each team uses the appropriate automation mechanism to build, test, and deploy their software in isolation from the other teams.

The vehicle and backend data teams:

These teams use ElectricFlow to:

  1. Model their applications' tiers and components
  2. Define their processes used to build, test, and deploy their applications
  3. Define and run pipelines to execute these processes across the various stages of development.

application-model-iot

The backend data application model

deployment-process-iot

The vehicle deployment process

backend-app-pipeline

The backend data pipeline

The mobile application team:
Using Ship.IO, the mobile team builds, tests, and deploys their solution to various test devices as well as to the App Stores.

mobile-app-builds-ship1

The mobile app jobs - build triggered automatically with each commit to Git.

mobile-app-ship2

The mobile app build/test/deploy process

Bringing it all together
While lower environment development and testing is done using isolated pipelines, all three applications must converge, and be tested, before the final push to production. ElectricFlow manages this Release Pipeline.

release-pipeline

The Release Pipeline stages and gates in ElectricFlow

For the purpose of the demonstration, we update each one of the three components comprising the IoT service to form a "v2" of our product. Once all three updates have passed their pipelines, we are ready to stage our coordinated release.  To do that, we run the Release Pipeline.

run-pipeline

A run-time instance of the Release Pipeline

The applications use snapshots to deploy the exact same bits and processes in each stage of both the individual team pipelines and the coordinated Release Pipeline.  The exact same applications are deployed and tested from Development through to Production.  This ensures repeatability and consistency, and greatly reduces the risk of failures when deploying to Production.  When the applications converge, a successful deployment to the Staging environment is followed by a successful deployment to Production.

pipeline-success

A successful Release pipeline

The ElectricFlow environment inventory shows the version of each component that is currently deployed.  This visibility is powerful both when debugging failures and providing data for audit reports.

release-inventory

The inventory for a Staging environment

Automate everything
This example represents the moving parts that are typical of an IoT service.  Coordinating the software delivery for these moving parts poses a challenge, particularly when cross-teams integration is required, and especially at scale.  While manual coordination is typically used to address this, manual tasks are slow and extremely error-prone.  Automation is the key to high-quality software being delivered at a rapid pace.

automate-the-internet-of-things

In the above demonstration, we see how ElectricFlow models an entire end-to-end IoT delivery lifecycle.  Pipelines orchestrate the development and subsequent convergence of multiple applications - from commit through test and deployment to production.  The simple and intuitive UI, along with the scalable automation of CI and deployment processes, makes ElectricFlow a natural solution for IoT software delivery challenges.

More Stories By Anders Wallgren

Anders Wallgren is Chief Technology Officer of Electric Cloud. Anders brings with him over 25 years of in-depth experience designing and building commercial software. Prior to joining Electric Cloud, Anders held executive positions at Aceva, Archistra, and Impresse. Anders also held management positions at Macromedia (MACR), Common Ground Software and Verity (VRTY), where he played critical technical leadership roles in delivering award winning technologies such as Macromedia’s Director 7 and various Shockwave products.

@ThingsExpo Stories
What sort of WebRTC based applications can we expect to see over the next year and beyond? One way to predict development trends is to see what sorts of applications startups are building. In his session at @ThingsExpo, Arin Sime, founder of WebRTC.ventures, will discuss the current and likely future trends in WebRTC application development based on real requests for custom applications from real customers, as well as other public sources of information,
SYS-CON Events announced today that SoftLayer, an IBM Company, has been named “Gold Sponsor” of SYS-CON's 18th Cloud Expo, which will take place on June 7-9, 2016, at the Javits Center in New York, New York. SoftLayer, an IBM Company, provides cloud infrastructure as a service from a growing number of data centers and network points of presence around the world. SoftLayer’s customers range from Web startups to global enterprises.
SYS-CON Events announced today that Ocean9will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Ocean9 provides cloud services for Backup, Disaster Recovery (DRaaS) and instant Innovation, and redefines enterprise infrastructure with its cloud native subscription offerings for mission critical SAP workloads.
In his session at @ThingsExpo, Eric Lachapelle, CEO of the Professional Evaluation and Certification Board (PECB), will provide an overview of various initiatives to certifiy the security of connected devices and future trends in ensuring public trust of IoT. Eric Lachapelle is the Chief Executive Officer of the Professional Evaluation and Certification Board (PECB), an international certification body. His role is to help companies and individuals to achieve professional, accredited and worldw...
SYS-CON Events announced today that Interoute, owner-operator of one of Europe's largest networks and a global cloud services platform, has been named “Bronze Sponsor” of SYS-CON's 20th Cloud Expo, which will take place on June 6-8, 2017 at the Javits Center in New York, New York. Interoute is the owner-operator of one of Europe's largest networks and a global cloud services platform which encompasses 12 data centers, 14 virtual data centers and 31 colocation centers, with connections to 195 add...
SYS-CON Events announced today that Linux Academy, the foremost online Linux and cloud training platform and community, will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Linux Academy was founded on the belief that providing high-quality, in-depth training should be available at an affordable price. Industry leaders in quality training, provided services, and student certification passes, its goal is to c...
SYS-CON Events announced today that Telecom Reseller has been named “Media Sponsor” of SYS-CON's 20th International Cloud Expo, which will take place on June 6–8, 2017, at the Javits Center in New York City, NY. Telecom Reseller reports on Unified Communications, UCaaS, BPaaS for enterprise and SMBs. They report extensively on both customer premises based solutions such as IP-PBX as well as cloud based and hosted platforms.
Keeping pace with advancements in software delivery processes and tooling is taxing even for the most proficient organizations. Point tools, platforms, open source and the increasing adoption of private and public cloud services requires strong engineering rigor - all in the face of developer demands to use the tools of choice. As Agile has settled in as a mainstream practice, now DevOps has emerged as the next wave to improve software delivery speed and output. To make DevOps work, organization...
SYS-CON Events announced today that Loom Systems will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Founded in 2015, Loom Systems delivers an advanced AI solution to predict and prevent problems in the digital business. Loom stands alone in the industry as an AI analysis platform requiring no prior math knowledge from operators, leveraging the existing staff to succeed in the digital era. With offices in S...
SYS-CON Events announced today that T-Mobile will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. As America's Un-carrier, T-Mobile US, Inc., is redefining the way consumers and businesses buy wireless services through leading product and service innovation. The Company's advanced nationwide 4G LTE network delivers outstanding wireless experiences to 67.4 million customers who are unwilling to compromise on ...
SYS-CON Events announced today that Cloudistics, an on-premises cloud computing company, has been named “Bronze Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Cloudistics delivers a complete public cloud experience with composable on-premises infrastructures to medium and large enterprises. Its software-defined technology natively converges network, storage, compute, virtualization, and management into a ...
SYS-CON Events announced today that CA Technologies has been named “Platinum Sponsor” of SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY, and the 21st International Cloud Expo®, which will take place October 31-November 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. CA Technologies helps customers succeed in a future where every business – from apparel to energy – is being rewritten by software. From ...
SYS-CON Events announced today that Infranics will exhibit at SYS-CON's 20th International Cloud Expo®, which will take place on June 6-8, 2017, at the Javits Center in New York City, NY. Since 2000, Infranics has developed SysMaster Suite, which is required for the stable and efficient management of ICT infrastructure. The ICT management solution developed and provided by Infranics continues to add intelligence to the ICT infrastructure through the IMC (Infra Management Cycle) based on mathemat...
Now that the world has connected “things,” we need to build these devices as truly intelligent in order to create instantaneous and precise results. This means you have to do as much of the processing at the point of entry as you can: at the edge. The killer use cases for IoT are becoming manifest through AI engines on edge devices. An autonomous car has this dual edge/cloud analytics model, producing precise, real-time results. In his session at @ThingsExpo, John Crupi, Vice President and Eng...
In the enterprise today, connected IoT devices are everywhere – both inside and outside corporate environments. The need to identify, manage, control and secure a quickly growing web of connections and outside devices is making the already challenging task of security even more important, and onerous. In his session at @ThingsExpo, Rich Boyer, CISO and Chief Architect for Security at NTT i3, will discuss new ways of thinking and the approaches needed to address the emerging challenges of securit...
The taxi industry never saw Uber coming. Startups are a threat to incumbents like never before, and a major enabler for startups is that they are instantly “cloud ready.” If innovation moves at the pace of IT, then your company is in trouble. Why? Because your data center will not keep up with frenetic pace AWS, Microsoft and Google are rolling out new capabilities In his session at 20th Cloud Expo, Don Browning, VP of Cloud Architecture at Turner, will posit that disruption is inevitable for c...
There are 66 million network cameras capturing terabytes of data. How did factories in Japan improve physical security at the facilities and improve employee productivity? Edge Computing reduces possible kilobytes of data collected per second to only a few kilobytes of data transmitted to the public cloud every day. Data is aggregated and analyzed close to sensors so only intelligent results need to be transmitted to the cloud. Non-essential data is recycled to optimize storage.
As businesses adopt functionalities in cloud computing, it’s imperative that IT operations consistently ensure cloud systems work correctly – all of the time, and to their best capabilities. In his session at @BigDataExpo, Bernd Harzog, CEO and founder of OpsDataStore, will present an industry answer to the common question, “Are you running IT operations as efficiently and as cost effectively as you need to?” He will expound on the industry issues he frequently came up against as an analyst, and...
In his General Session at 16th Cloud Expo, David Shacochis, host of The Hybrid IT Files podcast and Vice President at CenturyLink, investigated three key trends of the “gigabit economy" though the story of a Fortune 500 communications company in transformation. Narrating how multi-modal hybrid IT, service automation, and agile delivery all intersect, he will cover the role of storytelling and empathy in achieving strategic alignment between the enterprise and its information technology.
"I think that everyone recognizes that for IoT to really realize its full potential and value that it is about creating ecosystems and marketplaces and that no single vendor is able to support what is required," explained Esmeralda Swartz, VP, Marketing Enterprise and Cloud at Ericsson, in this SYS-CON.tv interview at @ThingsExpo, held June 7-9, 2016, at the Javits Center in New York City, NY.