研发经验分享
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Quick&Dirty
定规矩
• • • •
Code Style Log(Level,现象:原因) 系统限制
没有规矩不成方方圆
单测覆盖率(函数覆盖率、分支支覆盖率)
Team Work
• •
5人人以内小小团队 众人人讨论,一一人人决策
Coding
• • • • • •
KISS Invariants(assert) Code review(交叉review,leader review) Daily build 每周功能联调 每周出单测覆盖率报告
Testing
•
单测覆盖率
• •
分支支覆盖率>=80% 单测代码行行=被测代码行行*1.5
•
测试周期
•
一一般等于开发周期
•
测试回归
•
可回归且定期回归(利用用夜间)
•
压力力测试
• •
高高并发混合操作打压 高高频触发线上不经常执行行到的功能
工工具
•
项⺫目目管理:Jira
• • •
•
性能调优
• •
分配任务 Bug追踪 问题跟进
•
发现根本需求
• •
分解、抽象、降维 定义PrimiBiblioteka Baiduives和组合规则
•
了解需求随时间的变化
设计
• • •
测算->模拟->实现 分解vs迭代 设计模式 Back-of-Envelope Calculation Simulation
开发
3.0
• •
规划可达路径 定期产出
2.0 1.0
Good
Mediocre
研发经验分享
研发流程
需求分析 设计调研 总体设计 详细设计 项⺫目目排期 编写代码 单元测试 代码 Review 联调 模块测试 系统测试 性能测试 压力力测试 旁路小小流量 旁路全流量 下线老老系统
需求
•
Tradeoff
• •
无无法满足足所有需求 无无须同等对待所有需求
对不合理需求Say NO! 但给他end-to-end解决方方案
端起茶杯看日日志滚动吧! 谢谢!
•
cpu profiler heap profiler
问题定位
•
•
单元测试
•
gtest、gmock、ccover
•
测试管理
•
linux基本命令:top、 free、mpstat、iostat、 netstat、sar,etc awk&sed/perl
hudson
•
上线
• •
A/B testing 旁路小小流量->旁路全流量->旁路变主路