这周一直在做二柱子的问题,关于小学生四则运算的软件的编写,上周一直在说结对开发。在上一周中,我们也遇到了很多关于结对开发中的典型的问题。就比如说,应该用谁的思想来进行迭代开发?我们遇到一个输出问题后,是采用你说的字符输出还是我说的数组输出?最后我们在可行性判断一下,中和了我们的结果。由于看过邹欣老师的构建之法的第四章。有很多问题迎刃而解。比如,在两人的小团队中,也有谁做什么的摩擦,但是我们都对行为层来进行批判。不会伤害到人之间的感情,也比较容易能接受。这周我不光编程,还抽出时间阅读了《构建之法》第五章的内容。
第五章主要讲的是团队开发和流程,那什么才能叫得上是一个团队呢?首先,团队有一致的集体目标,团队要一起完成这目标。一个团队的成员不一定同时工作。然后,团队成员要有各自的分工,互相依赖合作,一个人的失误都会对整个团队有着特别大的影响。一个软件开发的团队也是一个纪律严明的团队,在书中主要写出了这几种模式。例如,1.主治医师模式,有一个首席程序员负责整个程序的方方面面,其他程序员配合他的工作。而在学校这种模式往往变成一个人干活,其他人偷懒的模式。2.明星模式就是主治医师模式的极致化。3.社区模式由很多志愿者参与,每个人参与自己感兴趣的部分,无偿贡献力量。4.业余剧团模式,不同的人经常更换不同的角色。5.秘密团队,没有外界的干扰,团队成员极大的投入。6.特工团队,由一些特殊技能的专业人士组成,解决一些棘手而又紧迫的问题。7.交响乐团模式,有明确分工合作,都听指挥的指示行动,大多公司都采用这种模式。8.爵士乐团队,都是即兴演奏,不靠谱。9.功能团队,具备不同能力的同事们平等协作,共同完成一个功能,最后软件公司都会演变成这种模式。10.官僚模式,很难运用。
开发流程就是把软件工程在开发,运营,维护的过程变成一个统一的整体。而软件开发也有很多种模式。1.写了再改模式。2.瀑布模型(系统需求-软件需求-分析-程序设计-编码-测试-运行)瀑布模式还能变型为各种相似模式。3.老板驱动模型,就是从第十个团队模式演变而来的,老板说什么就做什么,有好处也有不好的地方。好处就是老板更懂得市场和竞争,可是对于技术细节却是外行。下达命定就是行政命令不一定能管好创造性的团队。4.渐进交付的流程。我在读这一章节的基础上,才能对即将开始的团队开发有一定的了解。