硝烟中的Scrum和XP

初次接触Scrum和XP(更加准确的说是“看到”),心里不免有些疑问,软件开发为什么会有如此多的方式,难道软件开发、软件工程不就是写写代码的事儿吗?直到后来,才明白,一个庞大的软件工程,不会只是一个人的事儿,倘若我们现在(学生时代)还是只有着一种写代码是自己的事儿的态度来看待软件工程这样的“工程”,是低端的,是不全面的。

作为一名软件工程的学生,编写代码的能力是一方面,理解计算机对于代码编辑、编译、链接、运行过程是一方面,理解算法、数据结构有事另一方面。这些当然是我们软件工程学生应该有的素质,但同时,我们还应该明白,一个只有几个人能胜任的软件工程的小组毕竟只是少数,少数中的少数,更多的则是庞大的集合体,我们(对于一般的程序员、工程师)只这个庞大的集合体中的一两个小小的元素。所以,我们应当有团队意识。

说了一大堆空白话,让我们回到《硝烟中的Scrum和XP》来。

何为Scrum?这里我不想复制某度百科一堆,我只想说说我的理解(拙见),在我看来,Scrum更加给人一种具有技术的高效开发团队组织的感觉,这个组织拥有对于时间掌控的能力,能够充分利用时间的分割来进行项目的开发、管理,从这一点来看,Scrum更加注重管理,注重一种形式,一种规则。XP则是在另一番景象,XP所做到的是注重了编程的实践,注重强有力的工程实践,是实际的,具有技术的。为什么二者能够和谐的处在一起,因为它们都是在处理软件工程领域不同的部分,而不同的部分,则是软件工程如今所面临的重要之处,同时,它们都强调了个人与组织的关系,强调了个人应当与组织形成一种高效的交流。本书序章中看到了一句话“实际上,Scrum和XP都关注如何把事情做好”。的确如此,所以才造就了如今的敏捷开发与极限编程所拥有的魅力。

Scrum与XP的共同点:实践与交流。正如书中所说“但在纷乱芜杂的信息中,我感到最有价值的就是那些真枪实弹的故事。它们把‘原则与实践’变成了‘如何真正动手去做’”。理论知识就是动动嘴皮子,在此我并非贬低理论的形成过程,是的,理论也是需要动用你的大脑去真正的考虑设置一种想法的“实现”,这种“实现”并不是简单想想就能搞定的。但是,现实是残酷的,时间是不等人的,在如今的软将工程这个领域里,你永远不知道“下一个巧克力是什么味道的”。甜的,恭喜你“侥幸”度过了软件工程实践里的难处;哭的,很遗憾,你的项目,你的工程将很有可能面临淘汰。(胡乱扯了一通,拙见)

在书中我还看到了一个很有意思或者说确实也出现在我身上的事例。就是在backlog这一部分,书中所讲的就是“需求,或故事,或特性等组成的列表”,理解一下就是贴了一些便条的梗概,这些都是业务层次上的(产品负责人来负责),不需要你添加一些技术性的问题在其中(技术人员的事儿)。然而(比如我)在写这个backlog的时候,常常就会添加一些技术性的比如这里用某某算法、这里用某某结构体等来描述,这实际上已经突破了业务的层次,这在实际过程中应当避免。

本书中还提到了Scrum Master:负责监督整个Scrum进程。是的,Scrum确实需要这样的Master存在,Scrum Master并非团队的领导,而是一个负责屏蔽外界对开发团队干扰的角色。Scrum Master是规则的执行者,他是Scrum团队中的服务型领导。不难看出,SM的需要非常熟悉敏捷开发模式,同时还需要很强的能力。

我在看这本书的时候,其实并没有太关注Scrum与XP的过程,而是在思考Scrum与XP的思想,这样的思想是如何体现的。其实作为一名程序员,我们不能仅仅关注于技术,而是应当在做技术的同时,思考一些理念,一些想法,一些蕴藏在软件开发之中的文化(当然实在已经有较好的技术的前提下,否则就是理想主义者了)。

硝烟中的Scrum和XP的更多相关文章

  1. 《硝烟中的Scrum和XP》:作者主导Scrum过程的实战经验,四星推荐

    本书作者是开发团队Leader,本书记录了他带领团队实施Scurm过程中的经验教训.全书短小精悍,言简意赅. 以下是书中一些观点信息的摘抄: 1:Nokia总结出的迭代开发的基本要求:1.1:迭代要有 ...

  2. 硝烟中的scrum和xp学习笔记 - 怎样编写产品backlog

    产品backlog是scrum的核心,也是一切的起源. 从根本上说,它就是一个需求/故事/特性组成的列表,按照重要性的级别排序. 我们叫它story, 或者backlog(条目). Backlog I ...

  3. 硝烟中的Scrum和XP-我们如何实施Scrum 12)发布计划 13)组合XP

    12 怎样制定发布计划, 处理固定价格的合同 一次只计划一个sprint的事情会显得提前量不足, 提前做计划是个好习惯; 尤其是签了固定价格的合同之后, 不得不预先计划好, 防止无法按期交付的危险情况 ...

  4. 硝烟中的Scrum和XP-我们如何实施Scrum 15)多团队 Part 2/2 16)地理分散 17)检查列表 18)其他

    引入"团队领导"角色 假设有3个团队开发同一个产品 红色的P是PO, 黑色的S是SM, 蓝色是其他团队成员; 如何决定哪些人属于哪个团队? 怎么分配成员? 有人觉得让PO来做人员分 ...

  5. 硝烟中的Scrum和XP-我们如何实施Scrum 4 (Part 1/2)

    4 制定Sprint计划 计划是Scrum中重要的一环; 是为了让团队获得足够信息, 不受打扰地工作, 增加团队的信心; Planning的成果: 1) Sprint目标 2) 团队成员名单(时间百分 ...

  6. 硝烟中的scrum学习笔记 - 怎样制定Sprint计划(Plan Meeting)

    1. 如何估算我们这个sprint能做多少个故事点 1) 本能反应 2) 生产率计算  估算生产率/实际生产率  看看团队的历史,看看他们在过去几个sprint里的生产率是多少  然后假定在下一个sp ...

  7. SCRUM与XP的区别和联系

    相同点:SCRUM和XP都是敏捷开发的方法论,都体现了快速反馈,强调交流,强调人的主观能动性等基本原则,而且多数“最佳实践活动”都互相适用. 不同点:Scrum非常突出Self-Orgnization ...

  8. 敏捷开发中的Scrum流程和术语【转】

    任何人力流程都离不开人来执行,所以在讲解Scrum流程之前,有必要先把Scrum中的角色讲一下. 一天,一头猪和一只鸡在路上散步,鸡看了一下猪说,“嗨,我们合伙开一家餐馆怎么样?”,猪回头看了一下鸡说 ...

  9. erl_0019《硝烟中的erlang》 读书笔记005 “进程信息"

    对一个运行中的Erlang系统来说,进程绝对是重要的组成部分.正因为进程是所有运行实体的基础,因此会想去了解它们的更多信息.幸运的是,VM提供了大量的可用信息,其中有些可以安全使用,有些在生产环境中使 ...

随机推荐

  1. IPython中也要保持优雅(DRY原则)

    What is IPython? IPython provides a rich architecture for interactive computing with: A powerful int ...

  2. git《一》

    org.eclipse.jgit.api.errors.TransportException: https://gitee.com/wbweb/springboot_vue.git: Authenti ...

  3. 高德地图——控件的添加&删除

    控件属性 visible //bool 默认true ov=new AMap.OverView(); ov.hide(); //ov.show(); 显示/隐藏---表示控件的添加与删除 <!D ...

  4. Oracle环境配置之山路十八弯

    Oracle数据库的安装 背景: 因为疫情原因,只能在家上网课,学习Oracle的时候需要安装数据库,但是!! 安装的时候出现了报错: 无法检查指定的位置是否位于 CFS 上. 出来这个基本无解,这个 ...

  5. skynet 开启 https 配置

    修改 Makefile Mac 下: # https : turn on TLS_MODULE to add https support TLS_MODULE=ltls TLS_LIB="$ ...

  6. vue 点击复制当前网址

    template 部分 <div  class="NewNoticeDetails-ctrlButton" @click="copy()">     ...

  7. Python之pytesseract模块-实现OCR

    在给PC端应用做自动化测试时,某些情况下无法定位界面上的控件,但我们又想获得界面上的文字,则可以通过截图后从图片上去获取该文字信息.那么,Python中有没有对应的工具来实现OCR呢?答案是有的,它叫 ...

  8. CentOS管理firewalld防火墙

    1.查看防火墙某个端口是否开放 firewall-cmd --query-port=80/tcp 2.开放防火墙端口80 firewall-cmd --zone=public --add-port=8 ...

  9. 源码解析.Net中Host主机的构建过程

    前言 本篇文章着重讲一下在.Net中Host主机的构建过程,依旧延续之前文章的思路,着重讲解其源码,如果有不知道有哪些用法的同学可以点击这里,废话不多说,咱们直接进入正题 Host构建过程 下图是我自 ...

  10. Robot Framework(8)- Collections 测试库常用的关键字列表

    如果你还想从头学起Robot Framework,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1770899.html 前言 所有关键字 ...