这段时间我阅读了《构建之法》的大部分章节,包括个人技能、软件测试、用户体验和需求分析等相关内容。之前的个人作业和结对作业结束后,我们的工作重心终于转向了团队项目,作为团队中前端组的组长,我和组员们每周碰面、共同商讨团队项目细节并一起实现。因此,书中与团队项目开发有关的第五章、第六章的“团队和流程”“敏捷开发”两部分内容最令我印象深刻、受益匪浅,本次读书笔记主要记录阅读这两章的心得体会。

  1、团队模式和开发流程:

  团队项目的开发与团队工作模式(分工模式)和整体开发流程息息相关。我们的团队在决定开发模式时,考虑了各同学的能力和知识储备,结合我们团队项目“做BBS”的特点,将7人小组分为前端组(4人)、后端组(3人),并分别设定前后端组长进行小组工作的统筹安排、任务布置。书中谈到了很多种团队分工模式,如欢乐随意的目标追逐模式(一窝蜂模式)、主力担重任模式(主治医师模式、明星模式)、社区志愿模式和业余剧团模式等。在我看来,我们小组的团队模式比较像低配版的交响乐团模式,整体设计思路都是分而治之、各司其职,完成任务、相互配合,但我们作为开发实践经验基本为0的学生,知识量、技能储备等等各方面都还十分捉急,时常边学边做、边做边学,离“演奏靠谱、练习多次”的专业交响乐团模式还是有不小的差距。总而言之,我们的团队采用了一个在我看来还算比较科学合理的分工模式,能让每个人发挥才智、各自分工、互相依赖合作、共同完成任务。

  开发流程方面,书中介绍了业余的Code-and-Fix模式、较专业的瀑布模型及变种、统一流程、老板驱动和渐进开发流程。回想我们的团队项目,虽然刚刚起步,但也进行了一定程度的开发,在这些开发过程中,我们采用的模式比简单的“写了再改”要好一些,但远不如瀑布模型、迭代模型专业。我们进行了需求分析、架构设计、知识储备和框架熟悉,但详细设计没有整理成详尽的文稿,整个项目的时间轴要求也不太明确,这是因为我们经验不足、对项目的整体把控不太有信心。但我们的组员责任心和热情比较强,在得知需要完成的主要工作任务后,能积极投入、奋力实现,目前项目开发工作初步进行得还算顺利。本周组会上,我们会进一步细化项目细节需求,把每一个页面的布局设计、动画效果和功能等等细节都敲定,且定下切实可行的工作计划,尽量向专业、成体系的开发流程看齐。同时,在将来交付团队项目时,还要注意迭代开发、积极反馈和改进,任重而道远。

  2、敏捷思想和敏捷团队:

  关于敏捷开发的内容,老师在课上、班群里都已反复强调无数遍,读过的软工相关书籍里基本必备这一内容,“小步快跑、沿途下蛋、快速迭代”等字眼也司空见惯了。敏捷思想其实在我们之前的课程中已经充分体现了,单人作业中要求我们快速掌握文件夹检索、不同操作系统间兼容编程,结对作业中要求我们迅速学习UI开发、dll发布等,让我们通过实践体会到了做中学、做后改、敏捷开发。在我看来,敏捷开发其实非常考验个人的主观能动性,若程序员有热情、有兴趣、有责任心,那么敏捷开发能让他快速成长、高效编程;若程序员比较怠惰、佛系,那么敏捷开发的要求只能让他压力巨大、步履维艰。说到底,态度决定一切,敏捷开发不但是一种方法论,更是一种价值观,只有主观态度上积极主动、追求敏捷、乐于提升,才能真正实现敏捷。

  敏捷团队,只有三条要求:自主管理、自主组织、多功能型。作为学生,我们的团队在敏捷开发方面其实有一些得天独厚的优势,比如我们的空闲时间比较一致,能保持频繁、及时的面对面交流讨论,开发过程中可以预约研讨室坐在一起共同工作,学习新技术时能交流互补等等。在我看来,“自主管理”方面各团队都做得比较好,毕竟老师一开始就表明态度、当甩手掌柜,每个团队项目的选题、调研等都是我们自己完成的,也都通过较频繁的组会进行工作安排、反思,实现自我管理;“自我组织”方面主要看组员的自觉和责任感,我所在的小组里,大家的热情和责任心还是非常OK的,安排任务时都会主动接锅,出现问题也愿意主动排查,十分具有“自我组织”所需的贡献精神、主人意识;“多功能型”方面,我们虽然进行了前后端分工,但整个项目的框架设计、博客编写甚至美工等均由所有组员共同实现,每位同学都是多面手,这也是出于“人手不多、不得不做”的现实考量。当前我们团队的敏捷开发只需要三步:发现问题,找到办法,做。将来发布alpha版以后,还需增添一步“改进和迭代”。总而言之,我们会尽量构建一个高效的敏捷团队,小步快跑,快跑。

  以上阅读内容和反思,让我对团队项目的分工模式、开发流程、工作思想等有了更充分的认识和考量,在日后的团队项目开发中,我会尽量以书中提及的规范、高效流程和思想来要求自己、督促团队,力求成功。

《构建之法》CH5~6读书笔记 PB16110698 第九周(~5.15)的更多相关文章

  1. 《代码整洁之道》ch5~ch9读书笔记 PB16110698(~3.15) 第二周

    <代码整洁之道>ch5~ch9读书笔记 本周我阅读了本书的第5~9章节,进一步了解整洁代码需要注意的几个方面:格式.对象与数据结构.错误处理.边界测试.单元测试和类的规范.以下我将分别记录 ...

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

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

  3. 读书笔记第三周 人月神话 刘鼎乾 PB16070837

    读书笔记第三周:人月神话   这本书主要讲述了如何管理一个软件开发团队的问题,其中如何提高团队的效率可以说是本书的重点之一了.感觉这本书地中文版翻译得比较晦涩,很多表达比较模糊,看起来有些吃力,因此下 ...

  4. 《人月神话》读书笔记 PB16110698 第七周(~4.19)

    每逢读书笔记上交作业时刻,班级blog页面上总能看到<人月神话>相关的读书笔记,本次软工课邓老师推荐的第一篇读书笔记也是写的<人月神话>,算是对它“耳濡目染”了.本周,我终于抽 ...

  5. 《我是一只IT小小鸟》读书笔记 PB16110698 第四周(~3.29)

    <我是一只IT小小鸟>读书笔记 本周在邓老师的推荐下,我阅读了<我是一只IT小小鸟>,这本书由21位初入职场的IT人的传记组成,记录了他们成长道路上的酸甜苦辣.书中一段段鲜活生 ...

  6. 《Practices of an Agile Developer:Woring in the Real World》读书笔记 PB16110698(~3.22)第三周

    <Practices of an Agile Developer:Woring in the Real World>读书笔记  本周我阅读了<高效程序员的45个习惯:敏捷开发修炼之道 ...

  7. 《代码整洁之道》ch1~ch4读书笔记 PB16110698 (~3.8 第一周)

    <代码整洁之道>ch1~ch4读书笔记  <clean code>正如其书名所言,是一本关于整洁代码规范的“教科书”.作者在书中通过实例阐述了整洁代码带来的种种利处以及混乱代码 ...

  8. 【Todo】【读书笔记】机器学习-周志华

    书籍位置: /Users/baidu/Documents/Data/Interview/机器学习-数据挖掘/<机器学习_周志华.pdf> 一共442页.能不能这个周末先囫囵吞枣看完呢.哈哈 ...

  9. 20145230《java学习笔记》第九周学习总结

    20145230 <Java程序设计>第9周学习总结 教材学习内容 JDBC JDBC简介 JDBC是用于执行SQL的解决方案,开发人员使用JDBC的标准接口,数据库厂商则对接口进行操作, ...

随机推荐

  1. POJ 1873 UVA 811 The Fortified Forest (凸包 + 状态压缩枚举)

    题目链接:UVA 811 Description Once upon a time, in a faraway land, there lived a king. This king owned a ...

  2. 1060 Are They Equal (25 分)

    1060 Are They Equal (25 分)   If a machine can save only 3 significant digits, the float numbers 1230 ...

  3. 专题:OpenSSL

    一.常用操作 对称加密: openssl enc -e -aes256 -base64 -in goal.file -out result.file 加密,-base64 指使用 base64 編码 ...

  4. webpack 配置之入门一

    webpack 是一个现代 Javascript 应用程序的模块打包器(module bundler ),它里面的功能比较多,核心模块可分为模块打包.代码分割与按需加载.这里只简单讲解下 webpac ...

  5. ARM 汇编访问 CPSR / SPSR 寄存器 【 msr ,mrs 】

    状态寄存器访问过程:读 - 改 - 写 读 CPSR / SPSR 指令[ mrs ]    格式:<opcode><cond> Rn, cpsr/spsr 写 CPSR / ...

  6. Linux grep return code

    The exit code is 1 because nothing was matched by grep. EXIT STATUS The exit status is 0 if selected ...

  7. Mysql的Event

    Mysql的Event Event简介 Event是mysql中的一个事件,和触发器类似,触发器是在某条sql语句执行后可能会触发,而Event是每隔一段时间或某个特定的时间点执行,可以精确到秒. 准 ...

  8. zepto-touch事件

    <!doctype html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. quartz的使用(三)

    1.在数据源数据库中执行下载的quartz的sql语句(创建11张表),其中表头qrtz_可以在在配置文件中更改,对应表创建时更改org.quartz.jobStore.tablePrefix=qrt ...

  10. awk 一 文本处理工具

    简介 awk 是逐行扫描文件(从第1行到最后一行),寻找含有目标文本的行: 如果匹配成功,则会在该行上执行用户想要的操作. 反之,则不对行做任何处理. awk 命令的基本格式为: awk [选项] ' ...