开发IoT设备必须考虑的四种挑战

物联网是当今科技行业的热门词汇。但它也是一个不可否认的现实。物联网已经引发第四次工业革命,不管我们喜欢还是不喜欢,它将不可避免地成为我们生活的一部分。物联网技术已经逐渐应用于越来越多的行业,而且越来越多的企业都试图在未来的物联网世界占居一席之地。

现在的问题是,很多企业只顾深入研究物联网开发,而忽视评估或了解摆在他们面前的关键挑战。许多这些公司甚至根本没有一点IT行业和软件开发的背景,并且他们中的大多数都专注于提供互联网连接设备,从而让他们面临同样的竞争。即使是那些拥有软件和硬件设计经验者,往往也把物联网轻看为和传统计算技术一样,并在其发展过程中犯下可怕的错误。

一次次的事实证明,这样的做法简直是一个灾难,只会变成为一个个弄巧成拙的目标,并将糟蹋制造商的努力,从而破坏物联网的整体性。

本文将提出所有制造商和开发人员在决定进军物联网行业时都应该慎重考虑的四大挑战。

连接性
首先要考虑的是,如何将设备连接到互联网和云计算平台。这在很大程度上要取决于装置使用的环境和提供给它们的通信基础设施的类型。

举例来说,如果你要创建一个智能家居设备(如连网的烤面包机),你可能访问Wi-Fi家庭路由器或一个ZigBee/Z-Wave物联网路由器;所以,您的设备必须能够支持一种或多种传输介质。然而,在一些环境中,如农业物联网或智能汽车——是无法访问Wi-Fi网络的,而移动网络可能是你唯一可能的连接选择。

因此,你必须权衡你的选择,并根据每一种选择所提供的可能性和投资而作出设计决策。例如,由于通过蜂窝网络传输数据到云服务可能是昂贵的,你可能会决定选择功能优先或者使用区块链(blockchain)模式,从而搭建较少依赖于云计算的物联网生态系统。

当然,您还需要考虑到物联网是一种仍处于早期阶段的技术,正在发生很大的变化和改造,存在太多的移动成份和竞争趋势。因此,许多今天正在使用的技术未来很可能成为过时。

另一方面,相对于计算机和智能手机每隔很短的年限就有可能被取代,IoT设备意味着有更长的寿命。例如,智能冰箱必须至少工作5~10年。因此,你必须制订一个计划,以确保您的设备在物联网未来初具规模时能够保持其连接性,并适应新技术取代旧技术。我在文章 https://techcrunch.com/2016/04/06/how-to-deal-with-iot-challenges-throug... 中更详细地讨论了这个问题。

安全和隐私问题
物联网安全性一直是颇具争论的一个问题。需要考虑的第一个挑战是,物联网的安全性和隐私与我们已经认识到的网络安全有着根本的不同。下面列举出一些你需要考虑的关键的安全设计要点:

物理安全:物联网设备通常处于旷野之中,无人值守且无物理保护。你必须确保它们不会被邪恶组织所恶意篡改,不能被黑客攻破,当然更不能使用平头螺丝刀来操作。你还必须保护存储在设备上的任何形式的数据。虽然在每一台物联网设备嵌入安全保护组件需要很高的代价,但是在设备上进行加密数据还是很重要的。

数据交换的安全性:因为数据要从IoT传感器和设备传输到网关,并从那里传输到云端;所以,数据保护也是很重要的。这就需要使用加密的传输协议,但是物联网安全性并非仅仅加密这一个方面,还应考虑到认证和授权等问题。

云存储的安全性:存储在云端的数据与物联网生态系统的其它部分一样脆弱。你的平台应该能够保护存储在云端的数据,这应当包括适当的加密和访问控制等。

更新:不管你如何为安全漏洞而强化您的产品代码和硬件,漏洞最终将浮出水面。在这种情况下,你首先需要有一个计划,以修复错误,并快速推出补丁(而不是让错误存在很长很长的时间)。其次,你需要能够向客户提供一种直观且安全的方式来进行错误修复。时下,以空中激活方式进行更新是一种更新连接设备的流行机制,但你必须确保它们本身不会成为一个安全漏洞。

在隐私方面,应考虑到物联网设备所收集的数据易受法律法规制约。例如,健身追踪器能够收集大量的用户信息,这在美国是受HIPAA(健康保险流通与责任法案)所保护的。这意味着,如果你在云服务器上存储这种类型的信息,你必须确保它符合法律规定。

作为一个经验法则,你最好匿名化客户数据,避免在云端存储个人身份信息。这将确保你不会在发生事故的情况下招致法律惩罚。

灵活性和兼容性问题
随着物联网格局正在不断变化,你要确保你的产品能够支持未来的技术。这需要在设计你的产品时在软件和硬件方面都要进行适当的平衡。

为您的设备创建专门的硬件会给你带来最佳的性能,但也有可能会限制你进行产品的更新。在另一方面,选择适量的存储和计算资源以及专门针对物联网定制的操作系统,如Linux,Brillo或Windows IoT,可能会导致性能下降,但却能使你更灵活地扩展设备,以应用新功能和进行补丁修复。

有些厂家尽可能提供合适的API和SDK,从而允许开发人员为他们的物联网设备增加功能。这方面的一个很好的例子是亚马逊回声器(Amazon Echo),这种物联网小工具可以通过编程来实现在一千个不同的方向加以扩展。

兼容性也是在设计IoT产品时需要关注的问题。你的物联网设备能够与用户的物联网生态系统无缝地融合在一起,而无需给已有的体验增加复杂性甚至带来挫折。这要从软件和硬件两个方面进行考虑。最理想的情况是,消费者不应该被强迫因他们在家中添置一台新智能设备而安装新的应用程序。苹果HomeKit和三星SmartThings就是这样的两个平台的例子,它们都支持开发人员能够在用户熟悉的环境中为用户提供新的物联网功能。

数据采集与处理
除了安全和隐私问题以外,你还必须规划好如何处理所有收集到的数据。首先,你必须对制作和收集的数据量进行评估,以便控制您的云存储的规模,从而满足你的平台需求。

但是,比这更重要的是你如何处理收集的数据。物联网的数据贵如黄金;但如果它静躺在你的服务器中,则根本不是这么回事。因此,你必须预测出能够把你的数据很好地利用所需的技能和工具;这包括聘用数据科学家以及采用恰当的分析和机器学习工具对收集的数据进一步提炼出可操作的洞察性信息等。

物联网的数据可以完成多种实用功能,具体包括以下一些方面:

补充现有数据:大多数企业在他们迁移到物联网业务之前已经具备了关于他们客户的海量的数据。把该数据与物联网设备收集的内容结合到一起就可以带来新的业务洞察力并提高收入机会。

分析和细分用户:从物联网设备收集的数据还可以告诉你很多关于客户的喜好和特点。分析和分类物联网数据可以帮助企业更好地了解客户的需求和喜好,进而以一种更聪明的方式解决这些问题。

找到提升产品的机会:对物联网数据的正确分析可以有助于理解产品中不应加入哪些功能,以及需要纠正哪些功能来提高利用产品效率和易用性,还助于知晓现有产品缺乏什么功能,从而了解应该把它们加入到未来的产品中并进行软件更新。

小结
总之,在参与制定物联网的产品中存在很多的挑战;本文中已经列出一些最为突出的方面。不考虑这些挑战犹如进入一个黑暗的隧道而不携带手电一样;在这种情况下,你不得不用手摸索着前进并提心吊胆地希望自己千万不要踏入陷阱中。事实上,物联网开发所面临的一系列挑战有可能更加复杂并具有综合性。如果你觉得还有其他方面需要纳入物联网开发挑战列表中,希望您能够与我们分享。

来源:51cto