IoT Demands These 10 New Development Requirements

The coming Internet of things (IoT), which we have been covering extensively here at eWEEK, is more than an expansion of the Internet. It's a new-generation brand of IT in which day-to-day objects connect with intelligent networks on their own to improve how we live. Key to this change is the extent to which previously disconnected objects rely on software to deliver enhanced functionality and connectivity. Thus, a new level of cross-fertilization is now required among development teams and product experts. While more products will become smart devices, a number of adjustments will need to be made in software development best practices in order for the IoT to succeed. New applications will have to be architected to support aggressive product-development cycles in highly regulated industries and in the dynamic, consumer-driven world of appliances and wearable devices. For these new effects to be positive, the right software will be crucial. This eWEEK slide show, using our reporting and industry perspective from John Wiliston, developer evangelist at Perforce Software, offers insight into these new development requirements.

1 of

IoT Demands These 10 New Development Requirements

by Chris Preimesberger

Design With the Consumer in Mind

Although the IoT will have numerous business-to-business applications, it will be most notable for the exponential growth in connected consumer devices and appliances. Consequently, IoT software must be designed with an eye toward simple, intuitive interfaces that can be used by the general population.

Know Your Network

The IoT assumes connectivity, and although the acronym suggests open Internet access, many things will access proprietary networks. For optimal and secure connectivity, software must be developed with an eye toward protocols, standards and load requirements, particularly with wireless access.

Model for Hardware

In the IoT, a lot of device functionality will come from firmware that has to work within unique hardware specifications. Modeling with the hardware in mind is a must to ensure that applications properly support devices.

Know Your Industry

The IoT will bring regulatory issues into areas never seen before. The requirements phase will have to address auditability and traceability. Spiraling back with product specialists within the business area, as well as peer reviews, can help ensure compliance and success.

Plan for Security

Security concerns are not new to software developers; however, the IoT brings an explosion of endpoints. Understanding how to contain functionality and to design in the context of secure networks is a must.

Think Application Programming Interfaces (APIs)

The IoT prefers small APIs that do one thing well, exposing limited features. Given that the IoT will be populated with tens of billions of connected devices, it is critical that software be developed with API evolution in mind.

Keep Wireless Interoperability in Mind

The IoT is thought by some to be a many-to-one phenomenon, with the Internet viewed as a place of singular connectivity. However, machine-to-machine connectivity is also part of the IoT, so new-gen software will have to address wireless interoperability.

Test for the Use Case

In the IoT, software testing must account for unique hardware and networking requirements, as well as use-case scenarios that are device-specific. Examples include mobile or sensor-based technologies that function in highly regulated or extreme weather environments and appliances with fluctuating temperatures.

Anticipate Continuous Development

In the IoT, software functionality helps define the competitive value of "things." Many IoT coding projects are small scale, with faster product turnaround. Defect tracking systems can build more mature code and improve fix rates, while efficient versioning and documentation help support ramped-up product cycles.

Measure the Process

Whether you use the Capability Maturity Model (CMM) or another methodology, the rapid growth in the IoT demands that development processes scale and repeat in a manner never seen before.