6 天时间修改 1 行代码:现实中的软件开发流程
前言
企业中,产品研发是一项综合性的工作,需要多个部门参与。但往往会出现各种各样的问题,如部门协作困难、全局监控难等,这困扰着大多数的企业。
真实案例
菲利普(主 席):我们工厂中有10%的员工没有充分利用,要么我们开始处理更多的积压工作,要么进行裁员。我宁愿每个人都很忙。我们该如何做?
李(业务部经理):公司政策规定,我们要处理3个月内的积压工作,如果改成4个月,我们将有大量的工作。
菲利普:好。现在,我们该如何实现?
李:我不是很确定。我认为,我们需要更改传统的软件设置。
大卫(IT总监):没问题。可能只需要更改核心程序中的一行代码。(填写一个清单,提交给IT部门)。
朱迪(IT管理员):我正分派这个单号为#129281的需求。但是这需要目前的商务项目做完,并由主任签字。
大卫:这是菲利普交代的,我们不立刻做的话,就必须裁员。
朱迪:OK,我会马上填写,并标记为紧急任务。
2 天后
大卫:#129281目前状态是什么?
朱迪:它是开发人员任务队列中的紧急任务,前面还有14个紧急的Bug报告需要处理。
大卫:忘记任务队列。将它标记为紧急,立即发给艾德(程序员)。
1 小时后
艾德(程序员):在模块 ORP572 的第 1252 行中,我将写死的变量MonthsOfBacklog(积压月份)值从“3”改成了“4”。然后,运行了2批测试用例,成功进行单元测试。业务工作量增加了10%,这是预期数据。我正准备提交代码审查,并交给Homer进行用户验收测试。
雪莉(代码审查):这违反了公司的政策,你必须在参数文件中做个记录。此外,还有2个旧的调试命令,1个无指定的变量警告消息和1个写死的Employee ID,必须在这个模块移交到产品之前进行修复。
艾德:!~@#$%^&*(脏话)。
雪莉:这些bug很可能是真的。一旦你被指派ORP572模块,你就需要对已经存在的、违反新公司政策的错误进行修复。我不能提交。
2 小时后
艾德:OK,完成。我正要重新提交代码审查。
朱莉(IT测试):Homer不能进行用户验收测试,因为Fred正在运行一个本月底财务要用的约束测试。使用Marge代替。关注公众号 逆锋起笔,回复 pdf,下载你需要的各种学习资料。
艾德:我没有访问Marge的权限。
朱莉:联系IT安全部门的乔,他会给你开权限的。
2 小时后
乔(IT安全):没有大卫的签名,我不能给你开Marge权限。他出差了,得等到周一。
艾德:我不这么认为。菲利普希望马上实施,让他来授予权限。
雪莉:你的新的参数记录“MonthsOfDemand”需要起一个更好的名字。离岸程序员(位于其他国家的开发部门)不明白这意味着什么。此外,它应该有一个变化核查轨迹。
艾德:命名有什么规定?
雪莉:忘了写在什么地方了。离岸团队是3月中下旬更新的wiki,能肯定的是,所有新的参数记录必须满足新的命名要求,并保持核查轨迹。
1 天后
艾德:我将参数记录中的“MonthsOfDemand”重命名为“SelectedMonthsOfBacklogDemand”,并添加模块PAR634以保持纪录和核查轨迹。我已经提交到代码审查。
托尼(IT测试):我看到Marge中有#129281任务,但我没有收到测试计划。
艾德:按照老方式运行就行,注意WorkOrdersHours报告中总量的增加。
托尼:这就是你的测试计划?这会影响到企业的其他方面,我必须有用户选择的测试用例、预期结果、测试运行记录以及用户签收。
2 天后
菲利普:大卫,告诉托尼将艾德的程序立即提交到产品部门。
大卫:是的,先生。
本次任务总结
总时间:6天
关键任务代码更改行数:1行
关键任务代码更改字节数:1字节
关注我,获资源干货
?关注 程序员干货分享
赞+在看,小编感恩大家❤️