Indidual Homework Assignment
一.Pair work的得与失
合作编程在以前的学习过程中也进行过,基本也就是各人负责一部分最后再将之拼凑起来,而这次作业要求的双人合作,要求的并不是这样,而是两人应该在一起进行工作,这样的要求理想情况下能在代码编写时提供更高的设计质量和代码质量,也能让结对人员之间做到相互学习,经验共享,促进交流,但是在实际情况中,因为结对对象并不是自选,我们之间的共同的空闲时间(因为课程,生活习惯等)不能得到保障,而在另一方面,合作对象之间的相互熟悉也花去了不少的相同的空闲时间,整体效率上也并不见得比分开工作效率高。
而在我理解起来,pair work要想要高效率的运作起来,结对对象的选择是一个很重要的部分,相比与还需要相互熟悉的之前较少交流的同学,或许室友什么的沟通起来更为方便,空闲时间也更为统一,而至于老师在课上所说的“pair work中两人相互督促”,不是在一个寝室的同学的督促无论是次数还是效果肯定是比不上同寝室的室友的。
疑问:pairwork中工作分量不平衡难道不会影响工作配合么,虽说我们pairwork只合作一次,但是在实际中未必不会出问题么?
二. 怎样通过一个有效的办法确定一个Bug的重要程度?我们知道,修改一个Bug时别的Bug处有可能会产生相应的改变,修改了某个Bug可能有的Bug的出错原因就发生了改变,也就是说,如果出现了一些Bug,应该先修改那些Bug会比较
有效率?怎样调整他们的优先级?
我自己尝试给出了问题1的答案:尽量缩短需求分析的时间,尽量完成基本核心功能,然后尽量拉长软件测试的战线,多测试,少加功能。这样可以赢得一些比较看重核心用处的高粘性用户,只要有一些忠诚的用户,做出来的产品就挺成功的。
三.PM不熟悉现阶段项目用到的技术,无法准确控制开发的时间和进度,Dev Leader懂技术懂代码但是队员的水平参差不齐,有些事情只有Leader能解决,这时候该怎么办?
我认为这时候解决问题的最好方法是Leader在对项目工程进行一些问题修复的时候让全队旁观,相当于每次的工作都是一次教学,毕竟大家的磨合才能使团队进步。如果水平的不足是既定的事实了,那么只好寻找方法去弥补。
四.测试与用户测试
书上也并为给出特殊的测试方法,不过其中一点——单元测试需要也必须由程序开发人员来进行。一方面是有些问题在部分代码完成时测试很容易发现,但是在整个工程完成之后却难以寻找,会极大的降低测试人员的工作效率与工作热情;另一方面则是态度上的问题——并不是说代码写好了,编译不出错就算工作完成了,自己的模块要能正确运行才算是完工。比起让他人来研究开发人员的代码,要适应不同的编程风格,弄清楚代码的意思所需要的时间暂且不谈,这也难免让开发人员产生“反正有人来测试”的不负责任的心理。
而用户测试则要求更高,各种神奇/奇葩的情况下都需要考虑到,而且最重要的一点是这些还未必会在用户需求中出现,“如果用户这样这样,会出现什么情况”,如果“用户输入那个,又会怎样”,这固然是要求开发人员在写代码的时候就将情况考虑周全,但另一方面来说人本身就难免出现纰漏,因此就有了后续测试的必要。而后续测试中要如何做到周全?就算是做到100%代码覆盖,也不能保证100%的正确性,所以才会有各种补丁的不断出现,所以才会有各种版本的更新…
总而言之,写代码和做其他事也没有什么区别,负责和担当总是需要的。
五.团队开发的若干
规则是死的,人是活的。当然MSF的那一套流程确实是成功经验的总结,但是在实际中能做到什么程度又是另一个未知数了。
在按标准流程走不下去的情况下,我们需要考虑哪些呢?团队项目的最困难的地方就是按时完成任务与队员间的沟通,其实那一套流程为的也就是保障这两点,也还好teamwork中各成员也都比较熟悉,估计相互督促沟通也不会太过于困难。
疑问:这只是针对我们学生的team而言,我们并不是专业开发团队,我们是否可只借鉴MSF中若干部分/按我们自己觉得方便的方式来开展我们的活动?
Indidual Homework Assignment的更多相关文章
- MSDS 596 Homework
MSDS 596 Homework 10 Due November 28 2017Notes. The lowest grade among all eleven homework will be d ...
- MSDS596 Homework 9
MSDS596 Homework 9 (Due in class on Nov 14) Fall 2017Notes. The lowest grade among all twelve homewo ...
- xv6的作业翻译——作业1 - shell和系统调用
Xv6的lecture LEC 1 Operating systems L1: O/S overview L1:O/S概述 * 6.828 goals 6.828的目标 Understan ...
- IsPostBack and DropdownList.
Encounted the issue accident when helping my classmate dealing with his homework assignment,it turns ...
- sicily9162. RAZLIKA
9162. RAZLIKA 限制条件 时间限制: 2 秒, 内存限制: 256 兆 题目描述 Mirko's newest math homework assignment is a very dif ...
- C语言cgi(1)
1Columbia Universitycs3157 – Advanced ProgrammingSummer 2014, Lab #2, 60ish pointsJune 9, 2014Follow ...
- [SinGuLaRiTy] COCI 2011~2012 #2
[SinGuLaRiTy-1008] Copyright (c) SinGuLaRiTy 2017. All Rights Reserved. 测试题目 对于所有的题目:Time Limit:1s ...
- The Lisp Curse /Lisp魔咒
The Lisp Curse /Lisp魔咒 http://winestockwebdesign.com/Essays/Lisp_Curse.html 英文出处 http://www.soimort. ...
- 谈lisp
The Lisp Curse /Lisp魔咒 http://winestockwebdesign.com/Essays/Lisp_Curse.html 英文出处 http://www.soimort. ...
随机推荐
- C# 生成强命名程序集并添加到GAC
针对一些类库项目或用户控件项目(一般来说,这类项目最后编译生成的是一个或多个dll文件),在程序开发完成后,有时需要将开发的程序集(dll文件)安装部署到GAC(全局程序集缓存)中,以便其他的程序也可 ...
- 在VUE应用中配置ESLint(代码检查)
eslint配置方式 注释配置:使用js注释来直接嵌入ESLint配置信息到一个文件里 配置文件:使用一个js文件,JSON或者YAML文件来给整个目录和它的子目录指定配置信息.这些配置可以写在一个文 ...
- 迷宫问题 dfs bfs 搜索
定义一个二维数组: int maze[5][5] = { 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, ...
- [笔记]后缀数组SA
参考资料这次是真抄的: 1.后缀数组详解 2.后缀数组-学习笔记 3.后缀数组--处理字符串的有力工具 定义 \(SA\)排名为\(i\)的后缀的位置 \(rk\)位置为\(i\)的后缀的排名 \(t ...
- 转://对于11gR2的集群relink
对于11gR2的集群relink参考MOS:Do I need to relink the Oracle Clusterware / Grid Infrastructure home after an ...
- php使用curl模拟多线程发送请求
每个PHP文件的执行是单线程的,但是php本身也可以用一些别的技术实现多线程并发比如用php-fpm进程,这里用curl模拟多线程发送请求.php的curl多线程是通过不断调用curl_multi_e ...
- IDEA(jetbrain通用)优雅级使用教程(转)
文章转自 http://www.jianshu.com/p/3160ff832a9b 前面写过一篇IDEA的入门级文章,但是只学会了那些配置啊什么的并不能提高我们的开发效率.事实上,如果你IDEA用 ...
- csvwrite
https://ww2.mathworks.cn/help/matlab/ref/csvwrite.html
- JAVA 第八周学习总结
20175308 2018-2019-2 <Java程序设计>第八周学习总结 教材学习内容总结 泛型 泛型的主要目的是可以建立具有类型安全的集合框架(如链表.散列映射等数据结构) 通过cl ...
- Android 解决在初次打开Activity加载布局文件时,ScrollView滚动条不在顶部的问题
出现这种问题的情况列举:ScrollView中嵌套有(包括自定义)的ListView,GridView时,会出现这种情况 解决办法: 1.在布局加载时让ScrollView上面的那个控件聚焦,具体做法 ...