全部
敏捷助力数字化转型成功
可以毫不夸张地说,在2019-2020年这一阶段,疫情的爆发迫使大多数企业在无论是在时间上还是在规模上都加快了自己的数字化转型计划。一些企业开始了远程分布式办公,也开始从产品开发到客户服务和交付等业务流程中进行大规模的转型。当我们计划进行数字化转型的时候,会首先选择那些自己熟悉的工作方式,比如瀑布式管理,通过设定目标、指定计划、执行任务以及最后的交付,完成一些大型项目。我们不可否认的是,这种方式有其优势,但在数字化转型中,我们更需要通过不断地试验、持续改进,通过各种方式来达成数字化转型的目标。因此,尝试与原有瀑布式项目管理的工作方式不同的方法,比如敏捷项目管理,也许是一种能够有效提高效率的途径...
2022-12-08
结对编程很可怕?掌握这几个技巧,让你的结对编程更易成功
结对编程是极限编程(XP)中的工程实践之一。但大家对结对编程的态度,褒贬不一,有人很喜欢,觉得它有利于团队的知识共享,打破成员间的知识孤岛,还利于促进团队的协作,提高效率等等好处;而有的人则很讨厌,觉得结对编程会降低效率,是在增加成本,尤其是两个开发人员经验差距较大时,而且这种发生会让开发这无法集中注意力,每个人的工作方式都不同,在同一台电脑上工作,挑战性很大。
一、为什么要结对编程?
我们需要明白的一点是,结对编程是一把双刃剑,有优势也有劣势。虽然它不能解决所有问题,但对比其他方法,它也是降低工作难度的一个行之有效的方法。
对于管理者来说要明白,结对编程虽然在项目开始时会增加成本...
2022-12-07
Scrum框架的自组织团队
飞行在天空中的鸟群一会排成一个“一”字,一会排成一个“人”字,它们自由飞翔,又根据不同的风向排列不同的队形减少阻力,达到最高的飞行效率。人类社会中也如此,没有一种不需要调整的通用方法可以适用于所有的工作场景,且经久不衰。当面对多人协作的工作任务时,我们有必要找到一种有条理的、相互协调的方法来实现人力、任务的协同工作,不然就会陷入无尽的混乱。这种方法和组织可能会很复杂,而为了降低复杂性,我们可以将它的架构和流程都标准化,再依据实际情况进行调整。这个标准化过程就可以通过最佳实践或者延续企业文化发展来实现。
这种最佳实践是在特定的情境中发展的,以达到特定的目标,这样它就可能不适合给定的组织。...
2022-12-06
敏捷激流中的测试
敏捷开发浩浩荡荡流行了20多年,彻底改变了软件研发行业。如果说敏捷开发对产品、开发和测试这三种类型的工作哪一个影响最大,我会选择测试。因为敏捷开发模式下迭代周期缩短,很多问题会更集中地暴露出来,比如用户故事拆分往往不够细致精确、开发和测试无法并行展开、开发人员的测试意识薄弱等。诸多问题都会累积到测试环节集中爆发,所以从这个角度来讲,敏捷开发对测试的影响会更大。可能您已经注意到,我说的是测试环节,并没有说测试人员。原因在于,敏捷开发模式下质量保证应当由整个团队来负责,而不应该单单是测试团队的职责。国庆节的时候我到杭州出差,和原来阿里妈妈的同事聚会,聊到了阿里在推动去测试化,由研发团队自己来做测试...
2022-11-30
DevOps那些事儿——DevOps相关概念一览
CI / CD是任何DevOps操作的两大基石,这是一种开发软件的方式,随时以可持续的方式发布更新,以生产快速而强大的软件。这篇文章带你理清持续集成、持续交付和DevOps的相关信息!
持续集成
Continuous Integration,缩写为CI。Martin Fowler这样定义持续集成:持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。
也就是说开发人员一天一次或多次提交代码到主干,测试不通过不能集成到主干分支。许...
2022-11-24
从DevOps发展历史来理解DevOps
DevOps是一个合成词,源于“Development(开发)”和“Operations(运维)”两个词,它涉及以特定的方式实践应用程序开发的任务,是软件开发、测试和运维结合的过程、方法及系统,可以简单理解为“开发运维一体化”。搜索DevOps时,总会出现敏捷、Scrum等容易混淆的概念,本文从DevOps发展历史来看,理清这些相关概念。
1948 - 丰田生产方式
丰田副社长大野耐一为挽救丰田濒临崩溃的生产过程,决定创建一个“ 消除浪费、持续改善”的精益生产方式。
在福特生产模式的基础上,大野耐一提出了“准时生产(JIT)”, 决定控制库存,力求达到“零库存”。准时制的基本思想是“只...
2022-11-18
项目管理中,我们要了解哪些辅助图表?
在项目管理中,我们想要整体把控某一具体的时间盒内任务的状态及进展,还是要借助一些图表工具来直观地展现。我们常用的图表包括燃尽图、甘特图还有各类统计报表,在本文中我们会说一下常见的两种图表:燃尽图与甘特图。
一、燃尽图
燃尽图是用来展示随着时间减少,工作量剩余情况的图表,可以非常直观地把握项目的进度。燃尽图由4个重要组成元素,一般来说,纵轴表示剩余工作量,横轴表示时间,计划曲线代表理想情况下的任务进展曲线,实际曲线代表任务的实际进展曲线。
项目团队的成员除了每天的编码工作外,还需要在工具里更新自己所负责任务的状态以及预计剩余时间,项目管理工具会将项目中所有任务预计剩余时间累加起...
2022-11-16
为什么你的敏捷总是不成功?
这几年,很多公司都在使用敏捷开发,所以现在再去聊“是否敏捷”已经不合适了,更多的是要关注到敏捷的细节讨论、工具化、组织团队、多团队扩展,及其企业级敏捷、数字化转型等更深入的层面。不过近几年,我经常在知乎上看到很多人在说为什么敏捷总是不成功,敏捷很难,敏捷不好,甚至敏捷不适合我,与我无关。这些问题看似简单,实则是一些常见的误区。
1、敏捷与我无关
敏捷与我无关。出现这个想法的人,说明你还无法真正理解敏捷。生活工作中处处有敏捷,比如你即将参加一场重要演讲,在这之前你可能已经演练过几遍了。几次的演练就是让你总结出不好的地方,下一次可以改进。这不就是工作中敏捷的例子吗?
生活中的敏捷,...
2022-11-15
测试自动化中遵循的最佳实践
现在的企业从以往一年、一个月、一周交付,逐渐转变为开始关注两到三天甚至一天内交付。软件自动化测试的出现及其与手动测试的结合使得这种时长的交付成为可能。及时的软件测试会发现问题,在功能到达用户之前对其进行纠正。软件测试是最活跃的讨论之一,而软件旨在为其用户提供便利,并且是软件开发的一个组成部分。但是需要遵循某些实践以最大限度地使用自动化测试。本文将讨论测试自动化中要遵循的一些实践。
了解自动化测试的障碍
想要建立测试团队,第一步就要了解是什么组织了这个团队转向自动化测试。很多情况下,需要学习一门新的编程语言是一大阻碍。一个团队可以学习一门新的编程语言并实施一个成功的测试自动化项目吗?这些都...
2022-11-14
组建敏捷团队,你将遇到哪些困难?
敏捷团队不同于传统的项目团队,在组建团队的实践过程中,可能会遇到以下困难:
1.不是跨职能团队
一些公司会按照不同的职能来划分团队,比如分析师、设计师、测试人员、软件工程师等,这也意味着,各角色的汇报线也各不相同。不过,这可是敏捷转型的重大障碍!因为敏捷基本原则之一是要求不同职能组成的跨职能团队齐心协力构建最佳软件。而敏捷的有效运作,是需要每个人都被赋能,可以在项目中扮演多个角色,以此消除不同职能之间交接时产生的延迟和等待等问题。
虽然跨职能团队是一个团队,但只是一个虚拟的团队,不同职能角色之间并没有什么产生真正的团队链接,在这种情况下,不同角色的相处和信任就是一个问题了。可以通...
2022-11-11