MySQL开发流程介绍
来源:互联网 发布:中国水平知乎 编辑:程序博客网 时间:2024/03/29 03:59
1. 功能开发(Feature Development)
功能开发过程如下:
- MySQL的一个功能是指一个worklog.
- Worklog的开发要经过规格定义,设计,架构评审,代码实现,代码评审和QA评审的过程(但是这几个过程并不是严格的按照先后顺序进行的).
- MySQL的功能首先在一个功能树(feature tree,是指代码分支树)上实现.
- 功能树是从MySQL的代码主开发树TRUNK上克隆出来的(一般是开发者自己创建),开发过程中不定期从TRUNK同步.
- 当功能实现以后,必须要经过代码的评审。
- 代码评审通过后,开发树被QA接手。
- QA对功能进行测试,如发现缺陷(bugs),开发人员要进行修复.最终在测试通过后,QA将状态设置为开发过程完成(sign off).
- 一旦QA验证完毕,功能就会被合并到TRUNK中.
通过这个过程,TRUNK上会不停的累积功能和缺陷修复的代码。额外的回归测试(Regression testing)一刻不停的在TRUNK上执行,以保证TRUNK始终能够保持候选发布版本(Release Candidate)的质量。
2. 实验室版本(Lab Releases)
实验室版本是一个或者多个功能的预览版本。预览版本中的功能通常正在开发,还没有集成到TRUNK中。当MySQL社区对某个功能非常感兴趣,想尽早对该功能进行评测时,才会创建一个实验室版本。实验室版本有相当于beta版本的品质,也许只能在特定的平台上运行,没有文档可供参考。最后,实验室版本中的功能并不一定会被集成到未来的开发里程碑(DMR)或GA版本中。实验室版本可以在labs.mysql.com找到.
3. 开发里程碑版本(Development Milestone Releases(DMR))
开发里程碑版本包含了TRUNK上所有的新代码(从前一个DMR到当前DRM产生时). 每3-6个月,会有一个开发里程碑版本(development milestone release (DMR) )从TRUNK上产生. 当一个开发里程碑版本产生时,所有新功能都已经编写到文档中(MySQL手册).开发里程碑版本拥有候选发布版本(RC)的品质,并且能够在所有被MySQL支持的平台上运行。
频繁发布开发里程碑版本,一方面为那些想尽早使用的用户提供了可靠的版本,另一方面,也是为了从用户那里收集反馈信息。这些反馈信息可以用来提高下一个里程碑版本的品质.里程碑版本可以在 MySQL Developer Zone上找到.
开发里程碑版本生产的过程如下:
- 发布经理设置开发里程碑版本的分离日期(cut-off date).分离日期前合并到TRUNK中的所有新功能都被包含在这个里程碑版本中。
- 进行代码分离前,TRUNK 会被短暂的冻结。QA会对冻结的TRUNK进行额外的测试和评估。
- QA 确认可以进行代码分离(signs off TRUNK).
- 从TRUNK克隆代码,创建开发里程碑版本树.TRUNK 被解冻,日常合并工作可以正常进行。
- QA 对开发里程碑版本树进行测试,发现的bug被修复后,QA才会批准里程碑版本发布.
- 宣布发布里程碑版本。
图 1. 开发里程碑版本发布
4. 普遍可用版本(Generally Availability (GA) Releases)
GA版本是被推荐在生产环境中使用的版本。大约每18-24个月发布一个GA版本. GA版本可以在 MySQL Developer Zone上找到.
GA版本的生产过程如下:
- GA版本是基于开发里程碑版本版本的.
- 被选择的开发里程碑版本,在经过更多的测试和缺陷修复后,产生一个候选版本(release candidate),并且公布到社区。
- 候选版本在经过客户和用户的测评后,达到了GA版本的品质后方能发布。候选版本的发布会进行多次迭代直到达到GA的品质。
- GA版本发布。
图 2. GA版本发布
本文大体上是对官方英文版的翻译,可能有一点出入(为了更容易理解),原文在这里。
原创文章,转载请注明: 文章地址MySQL开发流程介绍
- MySQL开发流程介绍
- 软件开发流程介绍
- Iphone新手开发流程介绍
- servlet的开发流程介绍
- 网页开发Myeclipse+MySQL流程
- 网站设计开发流程详细介绍
- windows mobile 的开发流程介绍
- 网站设计网站开发流程详细介绍
- IVR-交互式语音应答流程开发介绍
- BI开发流程和ETL介绍
- 基于xilinx ise开发流程介绍
- IVR-交互式语音应答流程开发介绍
- MoKee OpenSource项目介绍及开发流程
- iOS开发之直播App流程介绍
- NPAPI开发流程介绍(支持chrome)
- 1---Vivado HLS开发流程简单介绍
- 【转帖】CPLD/FPGA开发流程及其开发工具介绍
- [JNI] 开发之旅 (1)开发流程介绍
- JQuery学习(8)插件 validate验证
- 运用插值法解决静态查找问题
- 黑马韩前成java基础之关于学习java的一些建议、内容
- jbpm入门例子
- 2009-06-16 17:27 服务器:消息 823,级别 24,状态2,行1,连接中断
- MySQL开发流程介绍
- 数据库的操作
- arm板pcb画图计划
- 程序员的出路
- android 实现自动滚动的 Banner 横幅
- 25个增强iOS应用程序性能的提示和技巧(初级篇)
- Android手机号码获取问题
- 牛b人博客 : http://www.cnblogs.com/kesalin/category/352163.html
- ARM协处理器