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

       团队模式

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

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

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

但是现在的问题是,我们目前的状况更像是前面提到的“一窝蜂模式”,由于我们团队是在安卓平台上开发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. 安卓开发——ListView控件(初始化ListView、列表刷新、长按添加menu)

    前言: ListView——列表,它作为一个非常重要的显示方式,不管是在Web中还是移动平台中,都是一个非常好的.不开或缺的展示信息的工具.在Android中,ListView控件接管了这一重担,在大 ...

  2. h5 端图片上传

    1.upload.js (function($) { $.extend($.fn, { images : new Array(), initImages:function (images) { $.e ...

  3. 解决waveInOpen录音编译x64程序出错的问题

    1.之前也碰到过x86程序升级为x64程序,关键点是类型大小的使用. 之前同事碰到过一个用int表示指针的程序,程序改为x64会出错,找原因找了半天. 2.今天我也碰到了,使用aveInOpen录音, ...

  4. PHP 修改目录下所有与文件夹重名的前缀文件为index.后缀

    <?phpset_time_limit(0); function traverse($path = '.' , $dir_name='') { $current_dir = opendir($p ...

  5. 【jQuery源码】DOM Ready

    一直以来,各种JS最佳实践都会告诉我们,将JS放在HTML的最后,即</body>之前,理由就是:JS会阻塞下载,而且,在JS中很有可能有对DOM的操作,放在HTML的最后,可以尽可能的保 ...

  6. Pyltp使用

    1.先使用pip安装pyltp-0.2.1-cp36-cp36m-win_amd64.whl 2.再参考API文档进行具体的使用:http://pyltp.readthedocs.io/zh_CN/d ...

  7. 全局描述符表(GDT)——《x86汇编语言:从实模式到保护模式》读书笔记09

    在进入保护模式之前,我们先要学习一些基础知识.今天我们看一下全局描述符表(Global Descriptor Table, 简称GDT). 同实模式一样,在保护模式下,对内存的访问仍然使用段地址加偏移 ...

  8. 面试题42:计算逆波兰表达式(RPN)

    这是一个比较简单的题目,借助栈可以轻松实现逆波兰表达式. 题目描述: Evaluate the value of an arithmetic expression in Reverse Polish ...

  9. EF Core 实现多租户

    目录 SAAS 和多租户 多租户数据隔离方案 使用 EF Core 简单实现多租户 单数据库实现 多数据库实现 源代码 参考 SAAS 和多租户 SaaS(软件及服务)区别于其他应用程序的主要特征就是 ...

  10. Ruby中Time的常用函数

      Time的常用函数 时间对象. Time.now返回当前时间. 1.Time.at Time.at(time[, usec]) 返回time所指时间的Time对象. time可以是Time对象,也 ...