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

       团队模式

团队这一部分提到了软件团队的很多模式。我认为,就我们目前的团队项目而言,更合适的应该还是“交响乐团模式”和“功能团队模式”。

先说“交响乐团模式”(吐槽一下书上给交响乐团配的图真是错误百出,当然这不是重点,只是觉得应该还是要严谨一些),我自认对一个乐团还是非常了解,在一个乐团中,可能有数十种乐器,大家负责各自的部分,这也就是团队项目里的“分工”;但大家必须紧密配合,才能完成一个好的作品,这也就是所谓的“合作”;再就是大家需要严格遵守谱面上的内容,同时听从指挥的要求,指挥也要时刻注意乐团里各个声部的情况,并及时指出问题,这也就类似于一个团队项目中的“规则”以及“领导”。一个乐团演奏时,一定是遵循一定章法的,而我希望我们的团队也能够有一定的章法,只有这样,事情才能按照我们所希望的进行下去。

而“功能团队模式”更像是一个小组,当然我们这样也算是一个小组,没有管理和被管理的关系,小组内的成员平等协作、交流频繁,小组的目的就是去实现一个又一个的功能,这种方式对于我们学生的课程项目来说,应该也是适用的。

但是现在的问题是,我们目前的状况更像是前面提到的“一窝蜂模式”,由于我们团队是在安卓平台上开发app,不像网页端那样有比较明显的前端和后端界限,所以我们现在的分工就不是很明确,可能还是需要有相关开发经验的个人或团队来指导指导。

       需求分析

软件开发者要学会需求捕捉,有的需求是用户提出来的,这个肯定要考虑,但有时用户不知道自己确切的需求,这就需要软件开发者设身处地地去为用户着想。就像现在手机上很多功能,我们没用过时,并不能想象出来,但是一旦用过了,就会觉得确实好用。

书上提到获取需求的方法有很多,不过我们大多数组采取的都是其中一种——调查问卷,调查问卷可以在短时间内收到较多反馈,但有几点需要注意,一是问题的定义要明确,二是修饰的形容词副词尽可能恰当具体, 三是题目设计对用户友好一些,这些我们上次设计问卷时也都有考虑。还可以采取的比较好的像“卡片分类”、“日志研究”等方式,在做进一步需求分析时可以采用。

还有很重要一点就是对功能分类,以及功能的优先级排序。我们团队讨论时,更多是感性上的认识。书中提出了两种分类方法,一是分为“杀手功能”和“外围功能”,二是分为“必要需求”和“辅助需求”,软件的重点应该放在杀手功能和必要需求的交集上,力求做的独特、做到精。就我们的日记app而言,这一部分应该重点放在情绪的记录统计与查看上。

 开发时间

实际时间花费取决于估计时间以及做过类似开发工作的次数,这一点在之前的个人作业和结对作业中就很有体会,这些作业虽然都是采用c++编写,但是像结对作业这样的模式,还是第一次,缺乏经验,所以也花费了超出预期几倍的时间。

 分而治之

最后一点就是“分而治之”,要学会分解任务,但是子任务要做到不重叠并且全部覆盖父级功能,就是说每个子任务要是互斥的,但他们并起来应该等于我们所需要的全部功能,这个能让我们的进度更容易量化,是非常重要的。

软工读书笔记 week 7 ——《构建之法》的更多相关文章

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

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

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

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

  3. 软工读书笔记 week 8 —— 《疯狂的程序员》

    这次接着上一次的进度继续阅读,并将其中感悟较深的几点记录如下.      程序员是一个幕后工作者 书中绝影给医院写软件,而医生(用户)只是评价这个软件好不好用,而不会去评价写这个软件的程序员优不优秀. ...

  4. 软工读书笔记 week4 ——《黑客与画家》下

    因为时间有限,只对书中后半部分几个篇章进行了阅读.        一.另一条路       作者以他自己为例,在那个没人知道什么叫“软件运行在服务器时”的时代,他和朋友选择创业时,没有选择写传统的桌面 ...

  5. 软工读书笔记 week 1

    这次读书笔记主要是就<程序员修炼之道>这本书的前半部分做一些总结以及发表一些自己的看法. 本书前面的一部分主要是一些程序员应该在工作中时刻注意的事情,一些关键的信息如下: 1.处理问题的态 ...

  6. 软工个人阅读作业2 —— 构建之法与CI/CD

    项目 内容 这个作业属于哪个课程 2021春季计算机学院软件工程(罗杰 任健) 这个作业的要求在哪里 个人阅读作业#2 我在这个课程的目标是 阅读思考教材,调研软工工具 这个作业在哪个具体方面帮助我实 ...

  7. 软工读书笔记 week 6 ——《疯狂的程序员》Part 1

    这本小说以主人公绝影上大学后初次接触编程开始讲起,这周主要看的就是绝影还在大学的那段经历,虽然故事背景很多年前,但很多地方仍然会引发我的共鸣. 第一个梦想 在“第一个梦想”一节讲了作业布置做一个通讯录 ...

  8. 软工读书笔记 week3 (《黑客与画家》上)

    一.何谓黑客? 黑客,在我们大多数普通人眼里,就是入侵计算机的人,通常还与干坏事挂钩.而书中告诉我们,这 并不是它的真正含义.而要想理解这本书,就要首先理解什么是黑客. 黑客这个词最初起源时,完全是一 ...

  9. 软工读书笔记 week2

    <程序员修炼之道>这本书后面一部分则是更深入.更具体.更细致地就程序员应该注意的事项做一些讨论,书中说的很多在过去的经历中都有较深的体会,同时也给了我很多启发.以下是一些我感悟较深的点: ...

随机推荐

  1. scalac:cannot connnect to compile server(idea 编译scala)

    idea编译scala报错 解决办法: File->setting->scala compile server  (找到jdk填上 ok)

  2. ubuntu 下 重启 mongo 后 遇到蛋疼问题。

    以后,切忌 mongo 正常关闭后 ,再重启ubuntu. 否则后果这是很严重. 2014.8.6日 PM 6点. 网站莫名打不开了,全部是空白,又是老问题. 幸亏 及时发现,那就重启下. 蛋疼,重启 ...

  3. Java的Signature签名转换成.Net

    Java: Signature sig = Signature.getInstance("SHA1withRSA"); sig.initSign(rsaPrivateKey); s ...

  4. css 实现元素长宽等比缩放

    实现思路(长宽比2:1): 以父级元素为基准, 子级 width:100%; (也就是父级宽度的 100%), padding-top:50% (也就是父级宽度的 50%, 根据 css 规范, pa ...

  5. Mahout实战---评估推荐程序

    推荐程序的一般评测标准有MAE(平均绝对误差),Precision(查准率),recall(查全率) 针对Mahout实战---运行第一个推荐引擎 的推荐程序,将使用上面三个标准分别测量 MAE(平均 ...

  6. C++中对象模型

    C++面向对象语言一大难点是继承,但又是不得不掌握的.简单的继承是很容易理解的,但是当涉及到多继承,设计到虚函数的继承,特别是涉及到虚继承时,问题就会变得复杂.下面的内容来自参考资料中的三篇文章.C+ ...

  7. Cacheable redis 宕机

    使用Cacheable注解Redis方法时,如果Redis服务器挂了,就直接抛出异常了, java.net.ConnectException: Connection refused: connect ...

  8. JS的可枚举性

        在学习ES6的过程中,涉及到遍历方法时,提到过可枚举性,且多种遍历方法都与可枚举性相关.本章节,将总结这些遍历方法的可枚举性,并在必要的部分,给出对比实例. 一.设置属性的可枚举性 在上一文章 ...

  9. input属性type为file打开文件资源管理器时,如何限制多次选取或只能一次选取的行为

    1.input标签没有设置multiple属性,文件资源管理器默认一次选取 <!doctype html> <html lang="en"> <hea ...

  10. JDK动态代理[2]----JDK动态代理的底层实现之Proxy源码分析

    在上一篇里为大家简单介绍了什么是代理模式?为什么要使用代理模式?并用例子演示了一下静态代理和动态代理的实现,分析了静态代理和动态代理各自的优缺点.在这一篇中笔者打算深入源码为大家剖析JDK动态代理实现 ...