参与者
本项目由本人个人提出,不带有导师的色彩,因而采取
自愿参加的原则(当然最后完成了,我会bg庆功宴)。对参与人员有如下要求:
1)
能保证
2006
年
9
月
4
日
到
2006-9-25
日共三周有充足的时间。
2)
确实是自愿参加的。
现在已确定的参与者包括:
1)
孙镇涛
(Robinvane Suen)
2)
姚淑钦
(snail)
3)
黄苗苗(cat)
4)
陈雪琳
(Kelly)
以上是相对固定的项目参与者。另外还包括:
彭秋生(qshpeng)
暂时加入到本项目组,如魏师兄那边需要,彭秋生可能参加到他的项目组中。
任务指派
自动测试子系统
1) 姚淑钦(子系统主要负责人)
2) 陈雪琳
文档生成子系统
1) 孙镇涛(全项目以及子系统主要负责人)
2) 黄苗苗
项目管理原则与策略
一再提到项目是自愿参加的,所以
最重要的是大家对这件事情感兴趣,乐于帮助后来者。考虑到大家都是研究生,应该具有较高的自觉性,所以项目管理采取乐观管理方式,以营造一个和谐的气氛。
管理原则
Happy Developing
本人觉得这应该还算是一个比较有趣的项目,而且大家接触同类型的项目的机会应该不多。另外,由于项目的开发时间较短(见下节),不容易导致大家身心疲累。所以希望所有参与者保持以下心态:
1)
这是一个学习新知识的机会
2)
这是一个锻炼需求分析、软件设计的机会。
3)
这是一个锻炼沟通、合作的机会
第一点不用多说,按今天讨论的结果,大家至少需要学习ruby、python两种编程语言。另外文档生成子系统的组成成员还需要学习gnuplot和LaTeX,这两个世界闻名的工具。
关于第二点主要是因为看了一下大家暑假编写的代码提出的。我并不清楚大家软件设计的实际能力如何,但从暑假时候大家编写的代码至少可以看到一个问题:
单个函数的代码量都太大了。无论是使用C还是C++,过长的函数或方法常常容易导致代码阅读者的阅读疲劳。短小的函数一来可以“自说明”,也就是说看到函数调用,不用看函数体,都可以猜出这个函数的功能。另外,短小的函数还有利于剔除无关数据对代码阅读者的影响。跟C相比,C++通过面向对象方法,提供更有趣的、抽象的建模能力。虽然面向对象不是万能,对软件设计方法论的积极影响是不容质疑的。
我更希望大家能够通过一个小型的项目,学习与交流软件设计的方法,特别是面向对象的方法。大四以来,我觉得我这方面的知识有了一点长进,可以与大家交流交流。
对于第三点,相信大家都有很多与其他人合作的经历。但是这是实验室内部人员的第一次真正意义上的合作,希望大家享受这个过程。
Best Effort
Best Effort
不只是说的。Best Effort源自TCP/IP协议,原意是指只有当路由器发生阻塞的时候才会丢弃IP数据包。套用到本项目中,
Best Effort
不代表你可以在工作时间与好友通过即时通讯工具
(QQ
、
MSN)
倾谈无用的事情;不代表你可以在工作时间花大量时间做自己的私人事情。当然,我不完全禁止大家做这些事情,我也会做,但大家需要在
Best Effort
的前提下把握尺度。
管理策略
多交流,加快知识流通速度
保证每天6(+3)
小时、每周5.5
天的工作时间
每天
6
小时是
9:00 – 12:00
以及
15:00 - 18:00
。
+3
的意思是从第二周开始,每天晚上
(19:00 – 22:00)
需要有一人负责对当天的集成版本做集成测试,并提交测试报告。我决定我们
5
个人,轮流完成这项任务。
每天用额外的半小时到一小时写当天的工作报告,并发布在blog
上
工作报告记录你当天所完成的任务以及有什么看法和建议。由于我们施行乐观管理方式,所以
必须有一定的监督机制。工作报告是我们最重要的监督机制之一,用以监测大家是否完成了当天的任务,为什么没有完成。
时间管理
成功人士都有一套自己的时间管理方式,这对他们的成功非常重要。总体上来说,
时间管理就是在适当的时间做适当的事情。
|
重要
|
不重要
|
紧急
|
1
|
2
|
不紧急
|
3
|
4
|
表
1
四种类别的事情极其优先级
(
优先数越小,优先级越高
)
所以,为了实行有效的时间管理,我们
需要认清什么事情是属于什么类别,并按这个优先级来安排完成这些事情的时间顺序。