我所在的团队是以二次开发和维护一套大型件产品为主。不谈项目与产品的区别,只说目前的开发流程。看看大家对这种开发方式有什么建议。
1.产品有多个版本,以不同的分支并行开发。处于开发阶段的一般都是最高版本。每当发布小版本,则该小版本所有的defect item 都需要在高版本中拷贝一份(譬如clearquest clone),以便高版本中也进行修改。这样使得修正过后的代码与高版本branch同步,同时意味着高版本也修正了这些defect. 当然需要重新在高版本中再进行测试和验证。
2.因为产品有很多用户,所以很多时候需要考虑的是向后兼容性,而不是发现个defect则不管三七二十一修正了是。如果改动的影响较大,则考虑将该defect推迟至最高版本修复。至于目前,尽量让客户接受以变通方式来绕过这个defect.
3.针对每一个记录在bug tracking系统的defect,在提交变更代码之前需要在team内部做一次review。仿照PSP
(Personal Software Process)的方式,建立了review checklist.譬如有一项就是,该defect 是否真的需要在当前版本 fix.
4.每一次的版本发布,需要整理所有已修复的defect,然后基于time line挑选出最紧急和必要的项。QA也只会去测试包含在该发行版的defect, 唔,回归测试也是必需的。
5.在产品发布后,记录信息以供将来参考和回顾。如defect rate, productivity, good practice.
很明显客户与管理层非常重视产品质量,所以为了提高团队的开发质量,团队做了很多的努力,譬如建立代码团队审查制度,尽量做到no review no checkin,还有开发人员必须做unit test。
问题还是有的,很重要的一个就是生产率的降低。很多的时间都耗在了review,unit test - 其实并不是严格意义上的单元测试,因为这是一个遗留的大型平台软件系统,很多模块没法用mock。典型的就是GUI的bug
. 因为有这样的手动"单元测试"要求,导致测试很繁琐,开发人员是非常的反感。
题外话,目前的工作基本不涉及严格意义上的需求和设计,有的只是理解defect,安全的解决defect,可别inject一个新的defect. Oops, 这是我们的核心KPI.
分享到:
相关推荐
这些自动化的流程可以帮助开发人员更好地管理项目和团队,减少手动干预流程的错误和时间。此外,Maven还可以帮助开发人员管理项目依赖关系,自动下载和安装所需的依赖项,从而使项目构建更加高效和可靠。Maven还提供...
简化目前酒店入住繁琐的酒店登记退房过程。用户自助入住,一键退房,营业额统计,权限管理,团队入住,门锁和制卡功能,通过app或者前台页面预定酒店。搭配一个酒店管理系统进行系统交互,搭载在微信公众号平台,...
软件过程有多种,不同方法学有不同的工作流程,目前著名的软件过程模式有三种,即RUP统一软件过程、AGILE敏捷软件过程、MSF微软软件过程计划驱动、基于过程控制、迭代演进是该过程的主要特征。对于有稳定架构的软件...
SVN可以为团队开发提供代码备份、协同修改、冲突显示、增量式版本控制、权限控制、分支操作等功能。 本教程是在上一版基础上的升级,改进点包括:在Linux系统部署SVN服务器程序、更丰富的命令行操作、Eclipse特定...
, 不管你目前已经是敏捷团队的一部分,还是只对敏捷开发感兴趣,本书都为你提供了开始实践敏捷开发所需的实用技巧。随着你的经验的增长,内容也随之深入。本书教你首先理解敏捷开发的规则,然后打破这些规则,最后当...
目前,我们正在开发。 该平台将是一个分享有关 Web 开发想法的地方,非营利组织可以通过分享他们的项目和需求以及与志愿者初级 Web 开发人员建立联系来为他们的网站获得一些帮助。 这是事情会在那么远。 如果您是...
BAMS的业务构建是基于流程引擎Activiti+代码生成器来共同完成流程业务和非流程业务的快速开发。感谢咖啡兔、临远对activiti的深入研究 希望BAMS能够对那些正在或即将开发自己团队的J2EE应用快速开发平台的个人或...
BPI June,2003 confidential 益华时代 目录 第一部分:流程优化管理简介和流程图设计 第二部分:流程障碍的识别、特性分析和排除管理方法 第三部分:流程管理绩效的衡量指标管理成果内容 第四部分:跨职能团队管理 ...
公司背景:通讯公司,团队最初不了解Scrum,开发团队有最初的几个人发展到几十个人。由一个Scrum团队发展到多个Scrum团队,有专门的PO团队。。。 目前文档完成的内容包括: 团队建设、评估会议、Sprint 计划会议1...
Scrum是敏捷开发的一种,是一种以人为本,迭代式增量软件开发的过程,以英式橄榄球争球队形(Scrum)为名,因此可以想象,整个团队是高效而富有激情的。以人为本,即Scrum开发特别强调沟通,要求团队所有人员都坐着...
我结合个人的阅读、思考以及前辈们的建议,把自己目前认为不错的我的学习路线图拿出来跟大家探讨探讨,无论是从软件开发的整体还是部分来考虑,我认为这些“关键过程”很具有指导意义,希望帮助到小伙伴们。...
简单中的不简单,iPhone应用开发实践总结:社区类iPhone应用开发的技术实践 | 麻麻帮 陈剑飞 主题简介:很多iPhone应用产品的开发,并没有...目前团队获得来自创新工场的天使投资,重点关注移动终端的亲子育儿社区。
即开发人员可以把代码放到任何一个地方,且变量的使用也是无度的、无规律的,这对目前讲究团队开发的流程管理来讲,简直就是一种灾难,本软件将彻底解决您的后顾之忧,通过本软件的自动生成功能,生成的ASP.NET代码...
目前用phpmyadmin软件进行在线管理,而SQL Server(mssql)也需要类似这样一款在线管理工具,就这样由BBSGOOD团队开发的针对mssql管理的SSOM系统诞生了. 该系统可以在线管理已创建的SQL Server(mssql)数据库,目前主要...
通过关注AppFuse,我们可以看到目前国外的主流开发都使用了哪些技术,开发方式是什么样的,可能达到什么样的结果,而在以前,是很少能够看到这样完整的例子的。 AppFuse的另一个启示是:我们可以依靠开源软件的...
包括:大数据需求分析、平台选择、技术架构设计、应用设计和开发、应用测试和部署等大数据实施全流程的跟踪,并在实施过程中带领技术团队,为设计和开发大规模集群的数据处理系统提供技术和管理。 技术研发类 大数据...
本文在对团队的定义和特征进行阐述基础上,分析了绩效管理...OrTeamworking)在目前的企业界成为人们所热衷讨论的话题,它和经营过程重构(BPR)一样是自九十年代以来企业界和理论界的一个热点。企业的研究和开发(R&D)是企
我结合个人的阅读、思考以及前辈们的建议,把自己目前认为不错的我的学习路线图拿出来跟大家探讨探讨,无论是从软件开发的整体还是部分来考虑,我认为这些“关键过程”很具有指导意义,希望帮助到小伙伴们。
A: SkinBeauty是软件研发行业,提供给企业研发团队/个人在项目开发过程中使用的界面图形处理开发库。 负责实现产品界面的美化功能。 --缩短开发周期,节约开销成本,让界面更专业 在软件...