Flask与敏捷开发

FAB与IoT Web通用建模

2018-01-11  本文已影响43人  小鱼儿他老汉

建模角度的物联网系统

从计算机科学的角度,任何物联网应用都可以建模来定义系统。互联网已经非常成熟了。那么物联网和互联网的差异呢?互联网在1.0主要是网站编辑时代,主要是内容数据、用户;而互联网2.0依然是内容和数据,但是用户也是数据来源,贡献了社交数据、视频、音频和各类数据。

Web 1.0: html = f(user, data)
Web 2.0: 
html = f(user, data)
data = f2(user)

而物联网则增加了设备和设备数据,而且设备与用户之间的关系与业务流程有密切关联。这就增加了系统的复杂度。

IoT + Mobile Web
html5 = f(user, data1, data2)
data1 = f2(user)
data2 = f3(device)

IoT建模与FAB的RBAC

devices <-- accesses
users <--accesses
users <-- messages
webapis <-- devices
devices <-- events
devices <-- streams
devices <-- commands
firmware <-- devices

以上表格的箭头是外键的指向。

设备与用户之间存在多对多关系,需要中间关联表通过外键建模。而每个设备对应于自己的WebAPI的ID/Key抽象化。

每个设备有自己的事件、控制、下发命令。

每批设备有自己的固件。

各种资源都可以通过单个/批量CURD将API暴露给移动APP和Web前端。这样都构成了一个通用的物联网应用建模。我们对比许多成熟应用,来适配一下:

所有这些,设备端都是以API形式提供,而复杂的往往却还是业务流程和权限管理。而FAB恰恰是继承了RBAC和企业级安全在内的,除了基础设计,还支持LDAP等企业常见的认证和授权管理。

上一篇 下一篇

猜你喜欢

热点阅读