新产品开发之C流程 (C-flow)
关于新产品开发的C流程(C-flow),是世界上大公司采用的标准开发流程,十分基本也十分重要,但是网上关于C流程介绍相关的资料很少,所以花点时间整理一下相关的资料。
下面以软件BSP开发为例,来说明C流程是如何运用到实际的产品开发过程中。
首先用一张图高度概括说明C流程分为哪些阶段和主要的工作。
下面,对C流程里的具体开发工作比较详细的介绍,
C0&C1阶段(Proposal & Planning)
BSP软件团队的主要任务包括,
a. 研究客人的需求;
b. 与客人讨论需求的细节;
c. 提议可选的SoC平台;
d. 研究可供选用的外设component,如sensor, camera等(有些客人会指定component);
e. 和客人的软件部门进行 角色&职责 划分,明确各自的 角色和职责(如某些项目,ODM只负责kernel/driver的定制和移植,framework和application则有客人或者3rd party负责);
f. 挑选component供货厂商,并且获得厂商的联系方式,以便后续的技术支持;
g. 软件架构设计;
h. 收集或者开发相关的工具,如一些benchmark工具;
C2阶段(R&D Design Phase)
a. 与PM/EE讨论项目进度;
b. 与工厂讨论测试流程;
c. 与其他自动化部门(如RF/Camera/Acoustic)讨论测试的细节,并为之预留相关的软件接口;
d. 从EE获取component Spec, GPIO table, power plan;
e. 与工厂/客人讨论image更新的方式;
f. 组建BSP开发团队,并获得其他相关部门PIC的联系方式;
C3阶段(EVT – Engineering Validation Test)工程验证测试阶段
此阶段会打出第一版PCBA板,主要用于调试分析。
EVT 的重点是,所有可能的设计问题都必须被提出来一一修正, 所以重点在考虑设计的可行性,并检查是否有任何规格被遗漏了。
此时,BSP团队的主要任务有,
a. 各个模块的基本function可以工作;
b. Power On/Off & Suspend/Resume完成压力测试;
c. 准备好工厂的测试软件;
d. 完成系统性能和电源管理的优化;
e. 进行CTS测试;
f. 进行软件兼容性测试;
C4阶段(DVT – Design Validation Test)设计验证测试阶段
这个阶段要验证整机的功能,重点是把设计及制造的问题找出来,以确保所有的设计都符合规格,而且可以生产。
此时,BSP团队的主要任务有,
a. OS整合,包括客人和3rd party的解决方案;
b. 继续进行系统性能和电源管理的优化;
d. 完成CTS测试;
C5阶段(PVT – Production Validation Test)生产验证测试阶段
这个阶段的产品设计应该已经全部完成了,所有设计的验证也必须告一段落。这个阶段试产的目的是要做大量生产前的制造流程测试,所以必须要生产一定数量的产品,而且所有的生产程序都要符合制造厂的标准程序。
另外还要计算所有的治工具、测试治具及生产设备数量是否可以符合大量产后的产能(capacity)。
理想情况下,此时已经没有多少任务需要BSP团队来做,一般是协助工厂为最后的生产做准备。
C6阶段(MP - Mass Production)量产
当经过以上所有测试阶段,工厂便可将该设计进行大量生产,理论上要进入量产阶段,所有设计及生产问应该没有任何遗漏及错误,成为正式面市产品。
此时,BSP团队的主要任务有,
a. 对软件通过ECR(Engineering Change Request)和ECN(Engineering Change Notice)进行管控;
b. 通过Board ID(一般是H/W GPIO设置)来区分不同阶段的PCBA,然后驱动进行不同的硬件配置;
新产品开发之C流程 (C-flow)相关推荐
- 初始附着的流程(Call Flow of Initial Attach)
文章目录 Abbreviations 1.Introduction 2. Initial Attach Procedure 2.1 IMSI Acquisition 2.2 Authenticatio ...
- Git基础概念与Flow流程介绍
文章目录 Git相关 基本概念 常见客户端 TortoiseGit Sourcetree Intellij Idea 命令行 常用命令 存储区域 命令之 add & commit &p ...
- Git Flow—Git团队协作最佳实践
一.规范的Git使用 Git是一个很好的版本管理工具,不过相比于传统的版本管理工具,学习成本比较高. 实际开发中,如果团队成员比较多,开发迭代频繁,对Git的应用比较混乱,会产生很多不必要的冲突或者代 ...
- GitHub for windows使用教程(三) 团队协作流程
团队协作流程 认识Flow GitHub Flow是一个轻量级的,基于分支的工作流程,支持团队和部署在那里的定期做项目. 为团队成员写入权限 在我们的队友添加一个写的权限,这样我们的队友才能很好的修改 ...
- 测试环境搭建流程_前端构建 DevOps 搭建 DevOps 基础平台(中)
前言 搭建基础平台搭建上篇的时候的时候,已经介绍过了项目流程设计.数据库搭建.jwt 登录等模块. 此篇我们介绍分支管理设计及其他的基础模块. 后端模块 DevOps - Gitlab Api使用(已 ...
- 数据库逻辑删除的sql语句_通过数据库的眼睛查询sql的逻辑流程
数据库逻辑删除的sql语句 Structured Query Language (SQL) is famously known as the romance language of data. Eve ...
- Flow vs Jenkins 实操对比,如何将Java应用快速发布至ECS
简介:Jenkins 由于其开源特性以及丰富插件能力,长久以来都是中小企业搭建 CICD 流程的首选.不过 Jenkins 存在维护成本高.配置复杂等缺点,云效 Flow 较好地解决了这些问题. 本文 ...
- 设计自己的基于Selenium 的自动化测试框架-Java版(2) - 定义自己的工作流程
设计自己的基于Selenium的自动化测试框架-Java版(2) -定义自己的工作流程 Work flow chart 上图是整个工作流程,红色虚线上面的需要手动来完成,红色虚线下面的实现自动化. 我 ...
- 怎样建立产品体系?(六)- 主流产品开发流程
随着产品开发往前推进累积成本大幅增加,产品开发者面对的挑战是,如何确保随着成本增加,产品失败(不确定风险)的风险降低. 产品开发是一个风险与回报的过程,基于一系列来源不一的输入作出正确的决策,产品成功 ...
最新文章
- Android手机指令操作释疑
- android:theme.holo.light.,Android: Theme.Holo.Light.NoActionBar vs Theme.Light.NoTitleBar
- VC中使用Unicode的一些列问题
- 浅析神经协同过滤NCF在推荐系统的应用
- SpringMVC学习系列(11) 之 表单标签
- 企业移动办公市场格局将定 随办如何突围?
- spring转发和重定向
- pivot 与 unpivot 函数是SQL05新提供的2个函数
- 19-7/8作业:模拟实现用户密码管理
- Ziipoo(易谱)简谱编辑制作打谱软件免费版下载 WiN+MAC+安卓+Linux
- QQ安装目录下各文件用途不完全揭密(转)
- JavaScript实现按钮点击上/下一张切换图片
- Unity 导入高分辨率图片
- jqprint 分页打印_jQuery打印Html页面自动分页
- FAQ(常见问题解答)
- 用计算机怎么计算字节,计算器里面的字节、字、双字、四字
- oracle取得组内行号,行号
- win10打开红警卡死的解决方法--win10专业版
- copy ctor、copy assignment(拷贝构造函数和拷贝赋值函数)
- day 9/16 css三大特性和盒子模型
热门文章
- java基础巩固-宇宙第一AiYWM:为了维持生计,做项目经验之~SSM项目错误集锦Part3(项目蹦+pg数据库坏+100%-->线上故障排查经验【业务bug第一步一定是先看日志,写好日志】)~整起
- Docker筑基篇-上
- 超详细的log4j的配置和使用
- 01数域、数域的性质定理
- 【对讲机的那点事】如何利用写频软件预置海能达数字对讲机的加密功能
- [华为OD]测试工程师(已过)
- 【MySQL】mysql | 年月日时分秒 | 日期格式化
- 天天基金数据接口及参考
- can接口卡、can卡、usbcan在金龙大巴车BMS上的作用
- (胡闹) RISC CSDN