软件工程 结对编程 设计结对 单元测试结对 评审结对 是什么
关于结对编程
说到结对,不仅有编程结对,其实在XP中,这个概念可以更宽泛一些,还可以是设计结对、评审结对、单元测试结对。
设计结对
设计结对是在对某个模块开始编码之前,两人共同完成该模块的设计,这种设计通常不会花费很长时间,不会产生设计文档,更多的是讨论交流,主要考虑是否符合总体架构,是否足够灵活,易于重构等。
单元测试结对
单元测试结对通常是说一个人编写测试代码,另外一个人编写代码来满足测试。这样,任何一个人对设计理解有误,代码都无法通过单元测试,从而避免由同一个人编写单元测试代码和程序代码带来的黑洞,往往可以发现更多的问题或缺陷。
评审结对
评审结对是在编码活动完成、通过单元测试后进行的。一般采用一个人讲述代码组织和编程思路,一个人倾听、提问的形式。这种评审模式更多地强调了相互交流,这会比一个人单独评审,独立撰写总结评审意见的模式效率要高得多,文档、邮件也减少了。
其实,如果两人编程结对了,编程的过程其实也就是复审的过程,完全可以省略评审。
设计结对、评审结对、单元测试结对这三种方式是对结对编程实践的有效补充,操作简单,收益却很大。
- 编程结对,在任一时刻都只是一个程序员在编程,效率到底有多高呢? 1+1>1是肯定了,但是否1+1>2呢?
结对编程不能始终保证开发质量和效率始终高于单人编程。
只有两个经验相等的人结对才有可能真正提高编码效率。
结对编程始终是两个人的合作行为,其效果会受到多种因素影响。譬如,两个人的性格、个人关系、沟通能力、技术是否互补等都会影响最终的结果。
至少两个极端情形下,结对毫无益处:
第一, 需要静心思考的问题。这时完全可以分头行动,等各自有了理解或解决方案再来讨论;
第二,琐碎毫无技术含量的工作,不得不手工完成的。这种工作考验的只是耐心,不妨分头行动,效率肯定比结对要高。
结对编程的要点
- 结对编程是一种质量保证的方式
- 就像Scrum一样,并不是所有的团队都有能力实行XP,也不是所有的团队都适合实行XP,视实际情况而定。
https://support.huaweicloud.com/reference-devcloud/devcloud_reference_0017.html#section5
软件工程 结对编程 设计结对 单元测试结对 评审结对 是什么相关推荐
- 结对编程的合作情况,以及结对编程的优缺点
我们合作的过程照 结对编程的优缺点: (1)首先应该是结对编程的高效率了,结对编程的时候,两个人可以分开做不同的unit,也可以同时做相同的unit.在项目的一些简单的unit,一个人能够很简单的un ...
- 2019软工实践_作业3_1(结对编程设计博客)
结对项目:征战十三道 结对队友:庄锡荣 分工:锡荣主要负责原型的设计与美化,我负责博客的编写和原型挑刺. 项目完成时限:1个月(大概时间分配1:3,1为原型设计,即本文所述:3为代码实现,即下一篇相关 ...
- 北航2022软件工程第三次作业——结对编程(最长英语单词链)
软件工程第三次结对编程作业 项目 内容 这个作业属于哪个课程 北京航空航天大学2022春季软件工程(罗杰 任健) 这个作业的要求在哪里 结对编程项目-最长英语单词链 我在这个课程的目标是 学习软件工程 ...
- 软件工程课程-结对编程项目
结对编程项目 评分标准 结对编程项目总共8个周时,总分数55分 作业期限每一周算一周时 未按时完成作业,但在作业截止后的3天时间内提交作业的,得作业得分x0.6 作业截止3天后未完成作业,扣该作业总分 ...
- 结对编程作业——四则运算
Github项目地址 PSP PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 10 10 · Estimat ...
- Code Review 与 结对编程
这篇文章的起因是在<"敏捷中国史"交流群>里的一个争论,我希望能够通过这篇文章说明自己的一个观点:相对于结对编程,Code Review是一种更加合理与普适性的研发实践 ...
- 【华为大咖分享】3.如何做Code Review 与 结对编程?
文:华为云DevCloud 庄表伟 这篇文章的起因是在<"敏捷中国史"交流群>里的一个争论,我希望能够通过这篇文章说明自己的一个观点:相对于结对编程,Code Rev ...
- 罗杰软工第三次作业——结对编程
BUAA-2023软件工程结对编程博客作业 项目 这个作业属于哪个课程 2023北航敏捷软件工程 这个作业的要求在哪里 结对项目-最长英语单词链 我在这个课程的目标是 学习并实践软件工程开发的方法论. ...
- 软工第三次作业——结对编程之最长单词链
项目 内容 这个作业属于哪个课程 2023北航敏捷软工 这个作业的要求在哪里 结对项目-最长单词链 我在这个课程的目标是 学习软件工程理论,在实践中体会并运用软件工程理论,收获团队开发和软件工程实践经 ...
- 结对编程其实可以变变?
想必大家对敏捷开发中的结对编程都有所了解,可在公司试用推广时却很容易遭到大多数同事的反对,反对理由如下: 1.长期的习惯导致在有个人在旁边监督你编写代码时很别扭: 2.敏捷的结对编程要求两个程序员最好 ...
最新文章
- 链表问题10——两个单链表生成相加链表(方法二)
- 在IDEA 中用maven创建web项目
- Go学习笔记07-结构体与方法
- socket自定义框架
- python字符串转字典并获取多层嵌套字典元素
- VMware Workstation虚拟机窗口小,无法显示内部系统全部桌面
- 常见排序算法的python实现
- 1113 Integer Set Partition(25 分)
- Python3控制安卓手机快手极速版持续金币收益
- python 高等数学_Python在高等数学中的应用
- 《MATLAB智能算法30个案例》:第11章 基于多层编码遗传算法的车间调度算法
- 利用域环境,处理瑞星网络版杀毒软件的问题
- python虚拟变量回归_Python中使用虚拟变量的OLS最佳解决方案?
- [培训-无线通信基础-8]:分集技术(微分集、宏分集、信号合并、分集增益)
- 睡眠麻痹 CSP HSP
- Rockchip官方开发板的Android固件下载地址汇总
- linux 网卡队列深度,linux 磁盘队列深度nr_requests 和 queue_depth
- chatgpt智能提效职场办公-ppt怎么转pdf文件
- 我是如何把python爬虫获取到的数据写入Excel的?
- iOS开源库–最全的整理