《构建之法》第五章用体育运动等团队例子引出软件开发团队的形式,用更加生活化、形象化的例子让读者更能理解软件开发团队的形式。软件团队形式多样,适用于不同的人员与需求。团队可能会演变的模式有:主治医师模式、明星模式、社区模式、业余剧团模式、秘密团队、特工团队、交响乐团模式、爵士乐模式、功能团队模式、官僚模式等。开发流程模式有:瀑布模式、瀑布模型的各种变形、统一流程、老板驱动的流程、渐进交付的流程等。瀑布模式:当软件行业还在年幼的时期,它从别的成熟行业借用了不少经验和模型。在那些“硬”的行业中,产品大多遵循:分析→设计→实现(制造)→销售→维护这个流程。由于在“硬”行业中产品一旦大规模生产,要再返回去修改时就非常困难,甚至是不可能的。因此这个模型描述了单向的、不可逆的生产过程。但它在软件工程中具有局限性:1、各步骤之间是分离的,但是软件生产过程中的各个步骤不能这样严格分离出来。2、回溯修改很困难甚至不可能,但是软件生产的过程需要时时回溯。3、最终产品直到最后才出现,但是软件的客户,甚至软件工程师本人都需要尽早知道产品的原型并试用。瀑布模型适用范围:如果产品的定义非常稳定,但是产品的正确性非常重要,需要每一步的验证;产品模块之间的接口、输入和输出能很好地用形式化的方法定义和验证;使用的技术非常成熟,团队成员都很熟悉这些技术;负责各个步骤的子团队分属不同的机构,或在不同的地理位置,不可能做到频繁的交流在过去的学习生活很少有团队合作的时候,看了本章很期待后续与大家团队合作,肯定会遇到很多困难,但只有把学到的运用到实际,知识才会学得更牢靠。

看了第六章了解到敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试,具备可视、可集成和可运行使用的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。敏捷开发的原则:

1、尽早并持续地交付有价值的软件以满足顾客需求

2、敏捷流程欢迎需求的变化,并利用这种变化来提高用户的竞争优势

3、经常发布可用的软件,发布间隔可以从几周到几个月,能短则短

4、业务人员和开发人员在项目开发过程中应该每天共同工作

5、以有进取心的人为项目核心,充分支持信任他们

6、无论团队内外,面对面的交流始终是最有效的沟通方式

7、可用的软件是衡量项目进展的主要指标

8、敏捷流程应能保持可持续的发展。领导、团队和用户应该能按照目前的步骤持续合作下去

9、只有不断关注技术和设计,才能越来越敏捷

10、保持简明—尽可能简化工作量的技艺—极为重要

11、只有能自我管理的团队才能创造优秀的架构、需求和设计

12、时时总结如何提高团队效率,并付诸行动

敏捷开发的步骤:

1、找出完成产品需要做的事情—Product Backlog

2、决定当前的冲刺需要解决的事情—Sprint Backlog

3、冲刺

4、得到软件的一个增量版本,发布给用户

《构建之法》chapter5,6 读书心得的更多相关文章

  1. 《构建之法》需求分析 读书笔记 Week6

    本周选读<构建之法>第8章——需求分析.由于有团队项目初期调研阶段做调查问卷的经历,这一章节中很多知识点我都比较有体会.对我而言,这一章节最有价值的内容就是厘清了关于需求分析的两个误解和近 ...

  2. 20165314 [第二届构建之法论坛] 预培训心得(Java版)

    安装IDEA配置JDKsourcepath啥的之前已经弄好了 克隆项目 emmm这次的代码托管部分好像比之前做的要简单,之前还要git config啥的,还有就是git clone不会提示要输入账号密 ...

  3. 《构建之法》CH5~6读书笔记 PB16110698 第九周(~5.15)

    这段时间我阅读了<构建之法>的大部分章节,包括个人技能.软件测试.用户体验和需求分析等相关内容.之前的个人作业和结对作业结束后,我们的工作重心终于转向了团队项目,作为团队中前端组的组长,我 ...

  4. 软工读书笔记 week 9 ——《构建之法》

    软工读书笔记  week 9                 ——<构建之法> 最近的三周我们正式开始我们的项目.然后我也把<构建之法>中的相关章节再拿出来读了一番.以下是一些 ...

  5. 《构建之法》第四&十七章读书笔记

     <构建之法>第四&十七章读书笔记 一.         前言 再次阅读<构建之法>,愈发被其中生动有趣的举例吸引.作为一本给予软件工程学生的书籍,其不以枯燥的理论知识 ...

  6. 软工读书笔记 week 5 ——《构建之法》

    本周主要对<构建之法>中的一部分进行阅读. 一.软件与软件工程究竟是什么? 本书的概论部分就指出“软件 = 程序 + 软件工程”.而我们这门课的名字就叫“现代软件工程”.其实在上课之前,我 ...

  7. 【读书笔记】构建之法(CH4~CH6)

    从chapter4至chapter6,围绕着构建过程的合作讨论构建之法,而合作与个人工作的区别却以一个微妙的问题为开端:阅读别人的代码有多难? 两人合作:(驾驶员与领航员) 合作要注意代码风格规范与设 ...

  8. 构建之法 chapter1 心得

    阅读完了<构建之法>第一章后,觉得我们平时使用的软件并不是自己想象中的那样简单,用的时候是觉得很方便,但从来没有考虑过一个软件的背后需要一个团队多少的付出才能换来一个获得用户频频好评的软件 ...

  9. 软工读书笔记 week 7 ——《构建之法》

    总时长近两周的结对项目终于算是结束了,马上要重新开启团队项目.于是这几天决定对<构建之法>一书中与团队项目及需求分析有关的章节进行重点阅读,希望能够从中得到启发,并运用到接下来的团队项目中 ...

随机推荐

  1. python小总结2(time,os)

    一.时间模块 1.1 Time time.time():获取时间戳,结果为一个浮点数 time.gtime():获取时间的元组形式 time.localtime():获取的是当地时间 time.mkt ...

  2. 【原创】KMP算法代码(C)

    //s是模式字符串,t是匹配字符串(可以看我上一篇文章中的叙述) int KMP(const char * s , const char * t) { int slen = strlen(s) , t ...

  3. matlab 将数字矩阵转换成图像

    MATLAB中,常常使用imshow()函数来显示图像,而此时的图像矩阵可能经过了某种运算.在matlab中,为了保证精度,经过了运算的图像矩阵I其数据类型会从unit8型变成double型.如果直接 ...

  4. 第一周博客之二---OA项目环境搭建及开发包部署

    OA项目环境搭建 一个项目想要能够在开发人员打包好项目包之后进行测试,就必须进行项目测试环境的搭建,要根据开发工程师的开发环境采用不同的测试环境,以下只是浅谈下Java项目OA(办公自动化平台)的环境 ...

  5. JavaScript “函数重载”

    函数重载(function overloading)必须依赖两件事情:判断传入参数数量的能力和判断传入参数类型的能力. JavaScript的每个函数都带有一个仅在这个函数范围内作用的变量argume ...

  6. erlang二进制

    在Erlang中写处理二进制数据的代码是洋溢着幸福感的,它对于二进制强大的表现力甚至能让你忘掉了它种种不便,今天我们说说Erlang的二进制数据处理. Erlang中bit string代表无类型的内 ...

  7. union 和struct大小计算

    一.字节对齐 现代计算机的内存空间是按照字节(byte)来划分的,字节对齐的意思是在给特定变量类型分配内存空间的时候,变量的内存地址是它本身变量类型大小的整数倍.比如,给int类型的变量a分配地址空间 ...

  8. Scientific Toolworks Understand 软件教程

    系统:Ubuntu16.04 x64 安装 安装包 下载地址: part1:http://download.csdn.net/detail/p942005405/9711128 part2:http: ...

  9. 以太坊Bootstrap和Kademlia算法实现逻辑简介(基于cpp-ethereum)

  10. Java 平时作业六

    编写一个 Java 应用程序,使用 Java 的输入输出流技术将 Input.txt 的内容(Input.txt 为文本 文件)逐行读出, 每读出一行就顺序为其添加行号(从 1 开始,逐行递增),并写 ...