Skip to content

需求

需求

本需求文档旨在定义 ThingsBoard 项目的功能需求,以便为高级产品经理和开发团队提供清晰的指导。ThingsBoard 是一个物联网平台,旨在帮助用户管理和监控连接到云的设备和资产。

1. 项目概述

ThingsBoard 是一个综合性的物联网平台,包含租户管理、设备管理、资产管理和客户管理等功能模块。

2. 模块需求

2.1 租户管理
2.1.1 租户注册
  • 用户可通过注册功能创建一个新的租户账号。
  • 注册过程应包括用户名、邮箱和密码的输入,并进行邮箱验证。
  • 注册时需提供验证码机制,确保用户是有效的用户。
2.1.2 租户登录
  • 注册成功后,用户可使用注册的用户名和密码进行登录。
  • 登录过程应包括用户名密码验证和验证码验证。
2.1.3 租户配置
  • 租户登录后,可以进行租户参数的配置,包括名称、描述、联系方式等。
  • 用户还可以配置和管理租户的权限和角色,确保安全性。
2.2 设备管理
2.2.1 设备注册
  • 租户可以注册新的设备,并为其提供基本信息,如设备名称、设备类型、所属设备组等。
  • 注册设备时需提供设备认证信息,确保只有合法设备可以连接。
2.2.2 设备状态监控
  • 提供实时设备状态监控功能,租户可以查看设备的在线状态和连接状态。
  • 设备状态异常时,提供警告和通知功能,以便及时采取措施。
2.2.3 设备组管理
  • 提供设备组的创建、编辑和删除功能,方便租户对设备进行分类和管理。
  • 租户可以将设备分配到不同的设备组中。
2.3 资产管理
2.3.1 资产登记
  • 提供资产登记功能,租户可以注册新的资产,并为其提供基本信息,如资产名称、描述、所属设备等。
  • 资产登记时可以关联设备,以便管理和监控资产的状态。
2.3.2 资产状态监控
  • 提供实时资产状态监控功能,租户可以查看资产的在线状态和连接状态。
  • 资产状态异常时,提供警告和通知功能,以便及时采取措施。
2.3.3 资产分析
  • 提供资产数据的分析功能,包括历史数据查询、统计分析、趋势分析等。
  • 用户可以根据需求选择不同的分析方式,并生成相应的报表和图表。
2.4 客户管理
2.4.1 客户注册
  • 提供客户注册功能,允许新的客户注册并创建自己的账号。
  • 注册过程应包括用户名、邮箱和密码的输入,并进行邮箱验证。
  • 注册时需提供验证码机制,确保用户是有效的人类用户。
2.4.2 客户登录
  • 客户可以使用注册的用户名和密码进行登录。
  • 登录过程应包括用户名密码验证和验证码验证。
2.4.3 客户资料管理
  • 客户登录后,可以进行个人资料的管理,包括用户名、密码、联系方式等。
  • 客户还可以配置和管理自己的权限和角色,确保安全性。

3. 流程图

3.1 租户管理流程图
@startuml

start
:用户注册;
:邮箱验证;
if (验证通过?) then (是)
  :创建租户;
  if (创建成功?) then (是)
    :创建成功提示;
    :自动登录;
    fork
      :设置租户参数;
      :配置租户权限;
      :分配用户角色;
    fork again
      :创建默认设备组;
      :配置默认设备参数;
    endfork
    :保存设置;
    if (保存成功?) then (是)
      :保存成功提示;
    else (否)
      :保存失败提示;
    endif
  else (否)
    :创建失败提示;
  endif
else (否)
  :验证失败提示;
endif
:显示租户主页;

@enduml
4.2 设备管理流程图
@startuml

start
:设备注册;
if (设备注册成功?) then (是)
  :注册成功提示;
  :设置设备基本信息;
  fork
    :设置设备认证信息;
    :配置设备参数;
    :指定设备组;
  fork again
    :设备连接到云;
    :设备状态监控;
  endfork
  :保存设置;
  if (保存成功?) then (是)
    :保存成功提示;
  else (否)
    :保存失败提示;
  endif
else (否)
  :注册失败提示;
endif
:显示设备列表;

@enduml
4.3 资产管理流程图
@startuml

start
:资产登记;
if (资产登记成功?) then (是)
  :登记成功提示;
  :设置资产基本信息;
  fork
    :关联设备;
    :配置资产参数;
  fork again
    :资产连接到云;
    :资产状态监控;
  endfork
  :保存设置;
  if (保存成功?) then (是)
    :保存成功提示;
  else (否)
    :保存失败提示;
  endif
else (否)
  :登记失败提示;
endif
:显示资产列表;

@enduml
4.4 客户管理流程图
@startuml

start
:客户注册;
:邮箱验证;
if (验证通过?) then (是)
  :创建客户;
  if (创建成功?) then (是)
    :创建成功提示;
    :自动登录;
    :设置客户参数;
    :配置客户权限;
    :分配用户角色;
    :保存设置;
    if (保存成功?) then (是)
      :保存成功提示;
    else (否)
      :保存失败提示;
    endif
  else (否)
    :创建失败提示;
  endif
else (否)
  :验证失败提示;
endif
:显示客户主页;

@enduml