DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations
Building Scalable Real-Time Apps with AstraDB and Vaadin
Register Now

Trending

  • Never Use Credentials in a CI/CD Pipeline Again
  • What Is mTLS? How To Implement It With Istio
  • Web Development Checklist
  • Auto-Scaling Kinesis Data Streams Applications on Kubernetes

Trending

  • Never Use Credentials in a CI/CD Pipeline Again
  • What Is mTLS? How To Implement It With Istio
  • Web Development Checklist
  • Auto-Scaling Kinesis Data Streams Applications on Kubernetes
  1. DZone
  2. Data Engineering
  3. Big Data
  4. 5 Tips for Developing IoT Apps

5 Tips for Developing IoT Apps

With IoT, you need to know what you're dealing with. Get a look at the architecture and the other concerns, like scalability and security, you need to know about.

Juan Jose Bello user avatar by
Juan Jose Bello
·
Jan. 10, 17 · Opinion
Like (7)
Save
Tweet
Share
7.29K Views

Join the DZone community and get the full member experience.

Join For Free

If you’ve read any tech blog over the past few years, you’re probably well aware of the hype behind the ‘Internet of Things.’ As the technology behind it becomes more affordable, from sensors to networking chips, it makes sense that there’s a corresponding need for IoT apps. The basic idea behind the IoT is that it will enable a new network of ‘things,’ including light bulbs, appliances, and even public transport networks, to transmit data. Imagine a refrigerator that sends you an alert when your milk is about to expire, or a train that lets you know exactly which seats are free before it even arrives in the station. Apps are needed to work in tandem with the IoT to provide these functions.

Tip 1: Understand the Levels of Internet of Things Apps

The first order of business for those who want to develop IoT apps is to understand how they must work as a system. To begin with, you need to think about the devices themselves, which form the first level of this system.

The next layer of the system is the ingestion tier, which includes the infrastructure and software to receive or organize data. This level also involves the management of the data.

Next comes the analytics area, which processes the data once it’s already been organized. And finally, there’s the top level that the end-user actually sees. This is the app itself. For designers, you’ll most likely only really need to concern yourselves with the end-user and analytics components of the system.

Tip 2: Consider Using a Readymade Platform

Because developers only work with these two top levels, they most choose to build their apps using an existing ‘Internet of Things’ platform. These usually already come equipped with the ingestion and analytics tiers, so that the designer can work on the end product. A wide range of companies has already risen up to offer platforms like these, including Ubidots, Xively, and others. Google and Apple are already on the case as well, along with Microsoft’s Azure IoT. It’s difficult to build an IoT app completely from scratch, so those just starting out should consider these platforms to interact with 

Tip 3: Make Apps Scalable

Another thing to think about is making your new app scalable. We’re already seeing some forms of the Internet of Things technology, but because it’s still in its infancy this will most likely grow exponentially over the next decade. If you want your app to succeed in the long-term, it needs to be able to scale up rapidly when this happens.

Tip 4: Look at the Big Picture, Not the Niche

A major difference between IoT apps and the usual mobile apps we use today is the type of service they provide. Typically, app developers focus on a niche market, providing a highly specific function. However, the very nature of the Internet of Things means that it requires communication between various industries or ecologies. A fully automated home would need to be able to interact with security and utility companies, for example, to monitor efficiency and reduce peak load. The end goal is a completely connected city, so new apps should reflect this broader focus.

Tip 5: Include Built-in Security Features.

Finally, security is going to be an even bigger issue with the IoT than it is now. It’s vital for new apps to address this right from the start – with encryption and authentication features built into each IoT device. Security features should be clear and easy to use for apps like this which could have a wide reach in the end user’s life.

IoT mobile app

Published at DZone with permission of Juan Jose Bello, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Trending

  • Never Use Credentials in a CI/CD Pipeline Again
  • What Is mTLS? How To Implement It With Istio
  • Web Development Checklist
  • Auto-Scaling Kinesis Data Streams Applications on Kubernetes

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com

Let's be friends: