读书笔记 2018-3-13

  

Week 2 《构建之法》读书笔记

关于敏捷开发的二三感想。

本周因课程原因,并未急于对书目进行大量的阅读。而集中精读了该书敏捷过程一章,先将该章主要内容和个人感悟总结如下。

首先的问题就是,什么是敏捷流程?就我个人粗浅的理解,该敏捷的说法是相对于传统开发模式的“笨重”而言的。众所周知,对于一个软件开发项目,需要在开发前有详尽的调研,再和客户要求反复商讨后得出详尽的计划书,后续所有的开发都需要严格的按照计划书来执行。虽说整个流程显得很严谨,但确实显得有那么一点点笨重。相反,敏捷流程则采取了与之完全相反的一条道路,简单来说有如下两条:

1. 尽早并且持续地交付软件。并非传统流程中的那样在详尽计划中的一步到位,而是有点类似于得过且过的想法?先尽可能早的拿出一个有一定功能的软件来,就像一个概念原型机一样,也许会在后续的使用中出现一些问题,但至少还是能一定程度上去使用他了。接下来,最重要的就是持续的发布可用的软件,简单来说就是查缺补漏。对于出现的问题,步步跟进,并去解决它。

2.
与客户的合作交流和新需求。传统的开发中,客户的需求在软件开始开发前便被确定下来了,就在那一份可能来来回回扯皮了不知道多少个版本的计划书中定好了。后期的一切工作都以计划书为准。而敏捷开发则不同,它的开发十分欢迎新需求的提出。这往往能够给开发人员带来新的灵感,同时一个新的Backlog也是一个新的开始,对于充满热情的开发人员来说,这不仅不会让他们恼怒,反而带来新的挑战和动力。

当详细到具体的敏捷开发流程上来时,书中以Scrum方法论为例来讲述。简单来说,这样一个流程就提出一个打得目标(Product Backlog),然后将其进一步细化,也就是拆分成更为详细的任务(Sprint Backlog),最后就是去完成这些拆分好的小任务。为了确保完成人物的效率,书中又提出了每日例会(Scrum Meeting)和燃尽图(Burn Down Chart),成员间每日去报告自己完成了什么,将要去完成什么,所剩的工作量也被标注在了燃尽图上。

看似来说很简单也很美好,但文中对其的几个至关重要的问题提出了疑虑。个人认为最为重要的,就是如何去生成一份合理的Backlog。对于客户需求来说,仅仅是一些简单的自然化语言描述。如何将其转化为一个合理的技术要求,再对其做出恰当合适的时间评估,这是个人认为在实际的敏捷开发中面临的重大问题。在我们自己的团队项目中,也暂定采取了敏捷开发流程,如何能够将调研所得到的结果一步步剖析,最终拿出一份令人满意的Burn Down Chart来,在我看来是小组所需面对的第一个难题,甚至对于没有开发经验的我们来说,要比后续的一些技术层面的问题还要难以去解决。

原文地址:https://www.cnblogs.com/DeltaFish/p/8570639.html

时间: 2024-11-09 14:54:36

读书笔记 2018-3-13的相关文章

EC读书笔记系列之13:条款25 考虑写出一个不抛异常的swap函数

记住: ★当std::swap对你的类型效率不高时,提供一个swap成员函数,并确定其不抛出异常 ★若你提供一个member swap,也该提供一个non-member swap来调用前者.对于classes(而非templates),也请特化std::swap ★调用swap时应针对std::swap使用using声明式,然后调用swap并且不带任何“命名空间资格修饰” ★为“用户定义类型”进行std templates全特化是好的,但千万不要尝试在std内加入某些对std而言全新的东西 --

《软件调试》读书笔记:第13章 硬错误和蓝屏

会话管理器进程SMSS.exe是系统启动后的第一个用户态进程,负责启动和监护windows子系统进程:CSRSS.exe和登陆管理进程:WinLogon SMSS.exe从注册表中查询子系统exe文件的位置,并且启动它 CSRSS是windows子系统进程,自NT4以后窗口管理和GDI的主体实现被移出了CSRSS放到了win32k.sys中. CSRSS监管着所有windows线程和进程,每个进程在创建后都要到这里登记才能运行,退出时也要报告注销. CSRSS具有桌面管理.终端登录.控制台管理.

读书笔记2014第13本:《富爸爸,穷爸爸》

早就收藏了<富爸爸,穷爸爸>这本书,一直没看,最近仔细翻看一遍,发现自己智商一般,情商不行,原来财商更差,连书里的穷爸爸也比不上.这本书在这个时代再看,已经跟不上形势的发展了,而且与中国行情也不相符了,就算是补点财商基础知识吧. 一开始,书中给出了大多数穷爸爸的生活轨迹:出生.上学.毕业或继续深造.找个安全稳定的工作.挣钱.信用卡购物.交友.恋爱.结婚.买房.买车.度假.生孩子.缺钱.更努力地工作.升迁加薪.交税.供孩子上学,实际上这是我们大多数人的情况.我们陷入了“老鼠赛跑”的陷阱,我们在不

《Linux/Unix系统编程手册》读书笔记8 (文件I/O缓冲)

<Linux/Unix系统编程手册>读书笔记 目录 第13章 这章主要将了关于文件I/O的缓冲. 系统I/O调用(即内核)和C语言标准库I/O函数(即stdio函数)在对磁盘进行操作的时候都会发生缓冲.通过缓冲可以在一定程度上将用户空间与实际的物理设备分离,还可以减少内核访问磁盘的次数. 先来看看关于内核缓冲区高速缓冲:read和write调用在对磁盘文件进行操作的时候不会直接访问磁盘,如下图所示. 例如:write(fd, "abc", 3) write调用会将"

读书笔记: 博弈论导论 - 14 - 不完整信息的静态博弈 机制设计

读书笔记: 博弈论导论 - 14 - 不完整信息的静态博弈 机制设计 机制设计(Mechanism Design) 本文是Game Theory An Introduction (by Steven Tadelis) 的学习笔记. 机制设计的概念 机制设计的目标是设计一个可以达到期望收益的博弈. 由于这是根据博弈结果来推导博弈的形式,也被称为反向博弈论(reverse game theory). 这个理论明显在经济和政治方面有很多用途. 我们假象这样一个例子: 某个政府需要设计一个关于化工厂的环

读书笔记: 博弈论导论 - 17 - 不完整信息的动态博弈 建立信誉

读书笔记: 博弈论导论 - 17 - 不完整信息的动态博弈 建立信誉 建立信誉(Building a Reputation) 本文是Game Theory An Introduction (by Steven Tadelis) 的学习笔记. 为什么我们要建立良好的信誉?为什么我们更愿意和有信誉的人交往? 本章从囚徒困境这个问题,证明了即使在2阶段的囚徒困境中,如果一方有可能选择合作(也就是沉默),另一个方在第一阶段也有可能选择合作. 让我们回忆一下囚徒困境. 囚徒困境的均衡是双方都告密. 在有限

《算法导论》读书笔记(五)

摘要: 本章介绍了二叉查找树的概念及操作.主要内容包括二叉查找树的性质,如何在二叉查找树中查找最大值.最小值和给定的值,如何找出某一个元素的前驱和后继,如何在二叉查找树中进行插入和删除操作.在二叉查找树上执行这些基本操作的时间与树的高度成正比,一棵随机构造的二叉查找树的期望高度为O(lgn),从而基本动态集合的操作平均时间为θ(lgn). 1.二叉查找树 二叉查找树是按照二叉树结构来组织的,因此可以用二叉链表结构表示.二叉查找树中的关键字的存储方式满足的特征是:设x为二叉查找树中的一个结点.如果

算法导论读书笔记(13)

算法导论读书笔记(13) 目录 红黑树 旋转 插入 情况1 : z 的叔父结点 y 是红色的 情况2 : z 的叔父结点 y 是黑色的,而且 z 是右孩子 情况3 : z 的叔父结点 y 是黑色的,而且 z 是左孩子 删除 情况1 : x 的兄弟 w 是红色的 情况2 : x 的兄弟 w 是黑色的,且 w 的两个孩子都是黑色的 情况3 : x 的兄弟 w 是黑色的, w 的左孩子是红色的,右孩子是黑色的 情况4 : x 的兄弟 w 是黑色的,且 w 的右孩子是红色的 红黑树 红黑树 是一种二叉查

《Effective C++》读书笔记汇总

我之前边读<Effective C++>边写下每个条款的读书笔记,这一版是C++11之前的版本.这里我将每个条款令我印象深刻的点小结一下. 1.C++包括:Plain C(面向过程).OOP(面向对象).模板(泛型和模板元编程).STL(C++标准库). 2.用inline.enum.const代替#define.#define定义的宏,一旦复杂起来,高手都很难掌控.不要带入C的习惯. 3.灵活使用const前缀.不需要进行改变的数据加上const前缀.指针的const前缀有两种形式,cons

《30天自制操作系统》读书笔记(2)hello, world

让系统跑起来 要写一个操作系统,我们首先要有一个储存系统的介质,原版书似乎是06年出版的,可惜那时候没有电脑,没想到作者用的还是软盘,现在的电脑谁有软驱?不得已我使用一张128M的SD卡来代替,而事实上你用的是U盘还是软盘对我们的操作系统没有影响,缺点是你的U盘刷入系统后容量只能是1440 MB,即当年流行的3.5英寸软盘的大小,当然不用担心,再格式化一次(用DiskGeniu),就可以恢复. 我做事情的话,总是怕自己的努力的结果白费了,害怕辛辛苦苦看完这本书但是发现做出来的东西现在根本没法用,