智能家居App自主研发项目 - 需求分析与规划文档

​ **—— 2026-03-08 **

项目背景: 公司拥有智能家居硬件,第三期希望自建团队进行App开发和维护

一、历史背景

第一期:涂鸦模组方案

  • 购买涂鸦的WiFi模组
  • 外包给涂鸦定制App
  • 使用涂鸦公版产品,稍作定制后打包

第二期:外包定制方案

  • 自己购买芯片制作模组
  • 外包给其他公司开发App
  • 实现了对App的控制权,但代码和技术栈仍在外包方

第三期:自建团队(当前阶段)

第一期涂鸦的处理不及时性。

第二期外包的处理质量问题。

所以,打算进行第三期:自建团队。在维护现有外包app的基础上,打算重做一个新的app。

二、战略思考

1、为什么自己做一个app?

一般自建App的情况如下:

  • 品牌差异化 - 想建立自己的品牌认知和用户关系

  • 数据控制 - 想拥有用户数据控制权

  • 自定义体验 - 需要深度定制化的用户体验和功能

  • 长期成本 - 长期来看可能比付平台费更划算

  • 生态锁定 - 想建立自己的生态圈

1、目前公司对该app的产品和用户定位是怎么样的,是为购买了公司智能家居的用户,提供一个可控制的app。还是有其他更长远的考虑?

2、做一个自己的app是公司的战略定位,打算长期投入,还是只是一个尝试,即未来可能又不做了,换回用第三方?

2、为什么是成立自己的团队?

之前提到”外包服务不及时,且费用也高。所以打算自己组件开发团队,长期做”。

1、之前的外包投入大概是多少,人员规模如何?新团队预期的投入又是多少范围?

2、是否已衡量过”外包的短期“与”自建团队的长期“在投入上的短期回报和长远收益性,并坚持自建的值得?

3、团队的工作/存在模式是怎样的?是类似在厦门远程办公之类?

三、应用现状

1、app交接问题

1.1、问题

app经过两次不同形式的外包,分别为历史背景中的第一期和第二期。

1.2、剖析

第一期,外包涂鸦那边可交接的产物有哪些,如果只有一个编译后打包出来的app,那之前如何保证所交付的app中是安全的,不存在后门的?所以是否还有可能会有其他可交接的?

第二期,外包团队不依赖公司环境,而是全全交给外包。

1.3、步骤

1、外包涂鸦那边,确认交接产物范围

2、外包团队那边,除常规的交接外,还应包括基础设施等的交接。

1.3.1、交接清单简表
序号 类别 核心交接项
1 基础设施 服务器、域名、DNS、SSL证书、数据库
2 第三方服务 涂鸦IoT、推送、统计、短信、地图
3 部署运维 CI/CD、部署脚本、监控、日志
4 代码层面 源码、API文档、协议文档、数据库Schema
5 账号与权限 代码仓库、应用市场、邮箱、微信公众平台
6 特别注意 域名/SSL/服务器续费、涂鸦商务关系

更详细的外包团队交接表见附一

1.3.2、特别注意
  • 域名续费:确认域名何时到期,谁负责续费
  • SSL证书:证书何时到期,谁负责续期
  • 服务器续费:确认服务器续费周期和费用承担
  • 涂鸦平台:确认与涂鸦的商务关系是否还在

2、app使用问题

2.1、问题

电话沟通时候,提到有好些用户购买产品后反应在app中操作,硬件响应有问题,影响到了产品的售后。

2.2、剖析

目前有三个app,分别为涂鸦换logo的两款 BN-LINK Smart、HBN Smart和自己开发的一款BN-HUB。

目前有两种模组,分别为涂鸦模组和自己购买芯片制作的模组。

目前的智能家居有非常多款,其可能仅可能是任一模组,以及通过某一或某几款app操作。

2.3、处理步骤

2.3.1、智能家居硬件与app关联梳理

①了解有多少智能家居的硬件,其分别使用什么模组,以及其目前分别可通过哪些app控制。

②了解目前各个智能家居存在的问题,为后续对历史问题做归类以及优先级处理做好基础。

序号 硬件 主要功能 模组类别 已接入的app 存在的问题 问题等级 其他备注
重要且紧急
2.3.2、定位问题的可能方

在上述整理的基础上,通过问题描述及历史排查记录,初步定位问题根源的概率性。可能的方向有客户端、后台云端、硬件端,以及网络传输等。

例如:

①出现问题的是涂鸦的模组,还是自己购买芯片制作的模组?出现问题的模组是在哪个环节,生产、研发等?

②出现问题的是在客户端、还是服务端,还是其他路径上。

2.3.3、纵向与横向处理

在1中通过重要紧急等优先级处理了垂直度上的问题,保证了当下的需要;然后通过2中的根源从横向展开上了解其他类似问题,以此对该性质类问题做更好的维护,保证了未来的扩展和稳定性。

2.3.4、自研与迭代

在完成上述基础上,进行公司长远战略的智能家居SDK开发。沉淀核心技术,让其能够更好的符合公司的发展。


四、团队方案选型对比

方案A:快速接手型

维度 内容
团队规模 3-4人
技术策略 先接手外包代码,维持现状
交接重点 代码、文档、API协议
风险 技术债较多
适合场景 快速产出、预算有限

方案B:逐步自建型(推荐)

维度 内容
团队规模 5-7人
技术策略 接手后逐步替换核心模块
交接重点 代码交接 + 知识转移
风险 中等
适合场景 平衡控制权和效率

方案C:全新重构型

维度 内容
团队规模 8-12人
技术策略 全新技术选型重做
交接重点 需求文档交接
风险 周期长、投入大
适合场景 长期自主可控

选型结论

推荐方案B:逐步自建型

理由:

  1. 团队规模适中,5-7人可覆盖iOS/Android/后端
  2. 先从外包方完整接手现有代码,保证业务连续性
  3. 逐步用自研模块替换核心控制逻辑
  4. 最终实现对核心代码的完全掌控

五、团队配置建议

推荐配置:5-7人

角色 人数 职责
技术负责人(TL) 1人 技术决策、架构设计、团队管理
iOS开发 1-2人 iOS端开发维护
Android开发 1-2人 Android端开发维护
后端开发 1-2人 API服务、IoT平台对接
UI/UE设计 0-1人 可兼职或外包

说明:产品经理、测试工程师、运维工程师可根据后续业务发展灵活补充。


六、时间与里程碑

1、开发人员维度(个人)

阶段 时间 核心目标 交付物
交接期 第1周 代码、账号、文档、设备交接,环境搭建 可编译代码
熟悉期 第1-2周 修复简单bug 能处理简单问题
掌握期 第3周起 掌握核心逻辑 能处理复杂问题

2、团队维度

阶段 时间 核心目标 交付物
交接期 第1周 代码、账号、文档、设备交接,环境搭建 代码仓库、文档清单、账号权限
熟悉期 第1-2周 修复简单bug、理解架构 能处理简单问题
基础设施交接期 第2-4周 服务器、数据库、云服务等资产接收 服务器、数据库、域名SSL等
掌握期 第3-5周 掌握核心逻辑 能处理复杂问题
独立运维期 第5-6周 独立运维、建立CI/CD 独立运维能力
迭代期 第5周起 核心模块自研 自研模块

七、技术演进路径

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
阶段1(第1-2周): 接手维护
├── 完整接收代码和文档
├── 搭建开发环境
├── 修复简单bug
└── 理解整体架构

阶段2(第3-6周): 核心可控
├── 掌握核心逻辑
├── 基础设施交接完成
└── 独立运维

阶段3(第5周起): 自主研发
├── 核心模块自研替换
├── 搭建自己的IoT接入层
├── 脱离外包依赖
└── 迭代

八、预期收益

1、响应速度

  • 需求响应从”周”缩短到”天”
  • 线上bug可第一时间处理

2、成本可控

  • 避免类似问题,外包重复付费
  • 长期来看比付平台费更划算

3、数据掌控

  • 用户数据完全自主
  • 可进行数据分析和运营

4、产品体验

  • 深度定制用户体验
  • 建立自有品牌形象

5、技术积累

  • 沉淀核心技术能力
  • 具备持续迭代能力

九、关键风险与应对

风险 应对措施
外包代码质量差 投入1-2周做代码审计,识别技术债
协议文档不完整 从代码中提取通信协议逻辑
人员流动 要求外包方提供1-3个月答疑期
涂鸦平台锁定 规划自研IoT接入层,逐步解耦
技术栈不明 联系外包方确认技术栈

附一:外包团队交接表

1.1、基础设施(核心重点)
序号 交接项 优先级 说明
1 服务器/云服务器 必须 阿里云/腾讯云/AWS等账号、服务器IP、SSH密钥
2 域名及DNS解析 必须 域名账号、DNS配置、SSL证书
3 云数据库 必须 MySQL/PostgreSQL/MongoDB 等账号、连接信息
4 Redis/MQ等缓存 账号、连接信息
5 对象存储 OSS/MinIO等,账号和bucket配置
1.2、第三方服务
序号 交接项 说明
1 涂鸦IoT平台账号 AppID、API Key、Project ID、设备ID等
2 推送服务 极光/Firebase等推送账号
3 统计/埋点 Firebase/友盟等账号
4 短信/验证码 阿里云短信等账号
5 地图服务 高德/Google Maps API Key
1.3、部署运维
序号 交接项 说明
1 CI/CD配置 Jenkins/GitLab CI/GitHub Actions 等配置文件
2 部署脚本 部署脚本、启动停止脚本
3 监控告警 监控平台账号(如果有)
4 日志系统 日志收集配置(ELK等)
5 防火墙/安全组 端口开放配置
1.4、代码层面
序号 交接项 优先级
1 完整源代码 必须
2 API文档 必须
3 设备通信协议 必须
4 数据库Schema
5 架构设计文档
1.5、账号与权限
序号 交接项
1 代码仓库地址及权限(GitLab/GitHub)
2 应用市场开发者账号(App Store/华为/小米)
3 所有相关邮箱账号
4 微信小程序/公众平台账号(如有)

End

本文档仅作为初步分析,具体实施方案需根据实际情况进一步细化。
如有疑问,欢迎随时沟通。
感谢您的阅读。