2010年8月13日星期五

2010年7月4日星期日

对于Redmine系统功能的一些感受(不足)

最近,在工作中频繁使用Redmine系统来管理实际的项目。在使用中发现,Redmine真的是非常强大的项目管理系统。部署方便,功能齐全,理念也比较先进。
然而,美中不足的有两点:
1. 现在的项目管理系统,都非常强调协作于沟通在项目管理中的重要作用。因此,系统中都有针对于某一条任务,大家共同来贡献内容的功能。实际工作当中,关于这一条任务的一些当前的工作进度、任务中的一些困难及其解决情况、关于该任务的一些设计细节、关于遇到问题的大家的讨论等等,这些都会记录在该任务中。这个功能在Redmine中有实现,但是在UI设计上显得过于古板了――任务的一些基本属性充斥了整个主要版面。而关于该任务的讨论在页面在最下端,经常需要向下滚屏才能看到,而且还与该任务的一些修改日志混杂在了一起。这样,对于任务的协作与沟通这个主题显得非常的不突出。
2. 实际工作中发现:我经常需要将某一个任务再次进行拆分,拆分成许多更微小的条目。然后针对这些条目在标记完成的状态。在这一点上redmine没有对应。只能在任务的详细信息中进行维护,又基于上一点原因的考虑,redmine对于这一点的对应非常不好。(据说redmine 1.0版本中会开始支持sub-issue,估计这样会好一些。)

针对以上两点,ActiveCollab, Streber, Zoho Project实现的非常好!值得借鉴。

2010年2月21日星期日

项目管理系统对于实际管理需求的对应

刚刚和软件部门的部门经理进行了一会儿的讨论。
部门经理提出了他在今年的管理思路,然后想询问目前的项目管理系统如何对应。
管理思路如下:
  • 整个部门会分为若干个项目团队,每个团队有唯一的负责人。
  • 每个团队会同时负责多个系统/项目,每个项目的有唯一的负责人。(我建议项目的负责人就由团队负责人兼任)
  • 各个系统/项目的需求来源会是多渠道的,有可能是不定期的。
  • 部门经理日常既需要按照项目团队来管理人力资源,有需要按照系统/项目来进行业务管理。
  • 部门经理需要看到针对团队和项目的不同层次的规划。
鉴于目前公司使用的REDMINE系统,我提出的对应方案如下:
  • 针对每一个项目团队,在系统中建立单独的项目。团队负责人即是项目经理。
  • 针对每个团队同时负责的多个项目,在系统中以issue catalog进行区分。
  • 由项目经理负责将各个渠道的需求条目进行汇总,进行管理,并协调确认优先级。然后即可以采用SCRUM方式进行项目流转。
  • 项目经理在规划时:
    • 季度级别的规划以子项目的形式体现。(这个稍微有点别扭)
    • 迭代周期级别的规划以version的形式体现。
    • 迭代周期内部,使用issue进行任务分配。
  • 这样,按照系统中的项目看来,项目组成员的工作量是饱满的。然后可以按照issue catalog进行过滤,观察某一个系统/项目的情况。
鉴于redmine非常强大的issue自定义过滤功能,因此可以很好的满足软件部门经理的管理需要。
而zoho project和activecollab该如何对应呢,正在考虑中……
activecollab:
  • 只有单层的milestone功能,而没有子项目管理能力。因此对于多层次的规划需要对应比较困难。
  • ticket有category功能,但是其过滤查询功能显然没有redmine强大。
zoho project / 百会项目:
  • 里程碑分为两个层次,多种类型,完美对应规划需求。这点,比redmine强。
  • 对于任务没有分类功能。
  • 没有子项目功能。
  • 任务查询功能不强。

2010年2月4日星期四

activeCollab的功能特色

虽然我对如何使用REDMINE已经非常熟悉了。REDMINE已经非常强大了,但是,基于以下的一些原因,我准备在新公司继续使用activeCollab来进行项目管理,而不是Redmine。
  • activeCollab提供功能,可以将单个项目的所有内容导出到一份静态文件包。
  • activeCollab的文件管理功能,可以管理版本。同时,各个ticket中上传的附件,可以在统一的文件管理中全面查看。
  • activeCollab的人力资源管理功能,可以对人员所在的公司进行管理。
  • 对于一个任务来讲,可以同时分配给多个人。
  • milestone->ticket->task三级管理,强于redmine的version->issue的两级管理。
  • 有全局的DOCS管理功能。
下面是相对于redmine来讲activeCollab的弱项:
  • 没有subproject设计,但是可以使用ticket中的category勉强对应。
  • page功能没有wiki功能强大,勉强够用。
  • 没有甘特图功能。
  • 报表功能和筛选功能不如REDMINE强大。
  • 没有插件机制,因此缺少了很多定制的功能,例如:燃尽图等。
  • 缺乏流程定义功能。
  • 缺乏自定义字段功能,所以一些信息的维护不够复杂,例如关于项目的一些信息等等。
  • 没有单独的新闻模块。
  • 不能继承版本控制系统。
不过上面这些暂时都可以忍了。另外最重要的:activeCollab不再免费了!

2010年1月31日星期日

影响人生的八句话 - winter606的转帖 - 使用 Google 工具栏发送

影响人生的八句话 - winter606的转帖


第一句话:优秀是一种习惯 (这是古希腊哲学家亚里士多德说的)


第二句话:生命是一个过程 (事情的结束尽管重要,但是做事情的过程更加重要)


第三句话:两点之间最短的距离并不一定是直线 (两点之间最短的距离一定是直线,这仅仅是几何学上的定义。现实生活中并不如此,在人与人的关系以及做事情的过程中,我们很难直接了当就把事情做好。


第四句话:换位思考是一种原则 (生活中人与人之间总会有些合作的事情,此时,你不要仅仅考虑自己的利益,要充分考虑对方的利益。)


第五句话:不要跨越那条看不见的线 (生活中健康的人际关系是既要保持合适的距离,又要避免无谓的人际冲突。)


第六句话:缺陷是一种恩惠 (做人最大的乐趣在于通过奋斗去获得我们想要的东西,所以有缺点意味着我们可以进一步完美,有匮乏之处意味着我们可以进一步努力。)


第七句话:要学会感激磨难(朋友们要学会感激哦,感激伤害你的人,因为他磨练你的心态;感激绊倒你的人,因为他强化你的双腿;感激欺骗你的人,因为他增进你的智慧;感激蔑视你的人,因为他觉醒你的自尊;感激遗弃你的人,因为他教会你独立。学会感激,感激一切使你成长的人。)


第八句话:放弃是一种智慧 (人一定要学会用你的东西去换取对你来说更加重要和更加丰富的东西。所以说,放弃是一种智慧。)

2010年1月27日星期三

敏捷开发过程的选择

敏捷开发过程有很多:XP, SCURM, CRYSTAL, ASD, FDD……
近两年以来,越来越发现,这些过程没有好与不好,之后是否适合。
第一个层面是是否适合中国的大环境;
第二个层面是是否适合你所处的组织;
第三个层面是是否适合你手头的项目类型和客户。

有的时候可能不能过度的追求某一个过程,为了过程而过程。例如:
XP显然对客户的要求非常高。实施的结果往往是我们某种程度的敏捷了,但是并不是XP。
SCRUM的作者自己也说:SCRUM不太适合固定价格的合同。而在国内,工程项目开发领域,有多大比例的合同不是固定价格的呢?所以SCRUM更适合国内的产品开发。
CRYSTAL的要求非常松散,作者自称也适合固定价格合同。其实因为严格讲CRYSTAL不是一个过程,而是和ASD一样,是一个过程的生成器。
FDD, ICONIX貌似更加适合国内的现状。而且我以往的经历中有很多ICONIX成功案例。
所以准备最近在好好研究一下FDD。
UP应该也可以,但是一是UP的裁剪对使用者要求太高了,二是UP对团队能力要求也比较高。

2010年1月17日星期日

百会项目与redmine的对比

百会项目是一个SaaS的在线项目管理应用。价格便宜,功能强大。在此对比一下百会项目与redmine。

百会项目与redmine都有的特色功能:
  • 多项目管理
  • 人员管理
  • 里程碑(版本)管理
  • 任务管理(在任务上可以进行很多注释和回复)
  • 甘特图
  • 工时登记
  • 日历
  • 文档上传
  • 报表
  • 论坛
  • WIKI 
  • Email集成

百会项目有的功能而redmine没有的功能:
  • 会议安排
  • 任务可以关联到某一个文档或者WIKI页面
  • 文档统一管理,而不是分散在各个任务中
  • 时间表
  • 及时聊天
  • 集成百会办公套件

redmine有而百会项目没有的功能:
  • 非常灵活的任务列表的过滤
  • 自定义报表条件和内容
  • 文档自定义分类,同时上传文件可以指定到版本
  • 自定义工作流
  • 自定义项目、任务等等条目的新加字段
  • 插件机制
  • 自定义个人首页
  • 与版本控制系统集成
  • 项目信息更加详细
  • 新闻功能

二者都没有的功能:
  • 以个人为线索观察项目和工作量分配
  • 单个项目所有信息导出成静态文件
  • 风险管理(redmine可以使用插件实现)
  • SCRUM风格需求管理(redmine可以使用插件实现)
  • SCRUM风格图表(redmine可以使用插件实现)
  • 任务分层
  • 测试用例管理

其它说明:
百会是商业软件,需要付费,但是非常便宜。
redmine部署到本地,而百会项目是基于Saas的。
正在仔细观察activeCollab,商业软件,价格可以接受,无中文版,但是有一些有意思的功能设计,如:
  • 任务可以分层
  • 多公司(机构)管理
  • 回收站功能
  • 单个项目导出到静态文档
  • 自动备份

2010年1月14日星期四

买了新车,无外乎是铺地胶、座套、贴太阳膜、方向盘套等!我国的一大特色!

先说车窗贴膜
汽车玻璃采用了隔热玻璃,能有效阻挡汽车外部阳光,并能提供给驾驶员一个良好的视线!(据我所知,捷达都是隔热玻璃的,呵呵)
贴膜以后阻挡视线不说,坐在车内还有压抑感,并不能没有阻碍的欣赏窗外美丽的景色了!
贴膜是中国一大特色,好像赤道国家比咱国家热,可是就没有贴膜的!
欧洲国家在车内浪漫的也不少,隐私也极多,也没看见贴膜的!
美国也没有贴膜的,但是后窗有深色玻璃,但是那肯定是社会名流或者是黑社会的人员为了避免曝光所坐的!
普通的公民的车也没有贴膜的!
中国就是怪,满大街的车,黑呼呼一片!你说奇怪不奇怪!
曾经有一位朋友去开着贴膜金杯车去机场接客人,国外的朋友看到车后连说:NO,NO,NO,这样的车我不坐,坐也可以,把膜揭掉,要么换车,如果司机愿意揭掉汽车玻璃的膜,我可以补偿汽车司机200美元,可以么?我不想坐黑社会的车!翻译和司机乐的合不拢嘴!


再说地胶
还有地胶,好好的地毯不用,非要弄个廉价的胶皮铺在车内地板上,尘土始终在地胶表面,脏点还别开空调,一开空调,把地胶上的浮土吹的满车都是!
新地胶还好点,万一磨破了,水气进去了,天一热,湿气在地胶与地板之间散发不出来,就那味,肯定认为开车的是汗脚丫子!
地胶廉价,质量不过关,各种有毒物质超标,造成车内空气污染!
哎,又是中国一大特色!


再说汽车坐套
汽车厂家煞费苦心的来选择布料,做到能防静电,耐磨、透气、阻燃、防火等等,耐脏的布座椅面料,汽车座椅面料在整车所占成本的百分之一左右,却被一个几十元到几百元不等的廉价坐套所替代!
真皮座椅加坐套的大师也大有人在!
其他的国家也没有!
又是一个中国特色!


还有方向盘套
汽车在设计之初,考虑到了方向盘的大小,材料、以及手掌在方向盘的舒适感,考虑到了人体工程学,以及方向盘材质的透气性,耐磨性、排汗性等,但是这些做法是徒劳的,现在有很多车主装上了价值几元到十几元不等的方向把套,有的是用低价的塑料,有的是用毛毛的材料制作!说是冬天方向盘太凉?难道手攥着粗粗的方向盘不难受?
瑞典在北极附近,那里的车也没有这么先进的毛绒绒的把套!
其他的汽车发达的国家也没有,难道我们国家的汽车发展水平这么有超前性?


再说车内小饰物
在车前风挡玻璃处的内后视镜,有好多人在上面挂着小饰物,
有中国结、菩萨、观音、前几年还流行过一段领导人的像片,其实有这些东西悬挂起来不错,但是挂的不是地方。
您在驾驶时,这些小饰物会随着车辆的行驶而摇晃,提倡安全驾驶,您想想你在专心开车的时候,有个东西在你眼睛的余光内游动,能舒服吗?还有刮小铃当的,晃悠加带响的,又眼晕,又耳鸣,还影响车内人员的谈话与休息。
最重要的是会影响驾驶员的视线,在车辆直行时还不觉得,在转弯时你就会觉得碍事了!小饰物的摆动,会影响你对车辆右侧的突发事件的判断能力,如果您不相信,您可以把小饰物拿掉几天,试试看,如果我说得不对,您再挂上!呵呵!
也是中国的特色


汽车封釉
新车买来了,车主为了呵护爱车的漆面,要进行所谓的汽车封釉,说是可以永保漆面的光泽度。
车漆是经过特殊的工艺喷涂到汽车表面上的,车漆内含有金属成分,耐褪色,抗老化等性能,在汽车行业内规定,生产厂商要保证汽车漆面在10-15年内不发生质量上面的衰退。十年以后,您的车已经老了,您还在乎他的漆面么?何况您的车已经成为二手车、三手车……
现在买车以后,更换新车的频率根本不会超过十年,为什么要增加自己的额外的经济支出哪?所谓的封釉只不过是一种拐着弯的从你的兜里掏出你没有必要花的钱!


底盘封塑和减噪改装
轿车底盘封锁,底盘封塑可以减低汽车内的噪音与底盘的刮蹭保护作用。
汽车的噪音不单单是从底盘传来的,汽车噪音是包括轮胎噪音、发动机噪音,行驶中风噪音、排气系统等,单一的底盘封塑根本降低不了噪音,要做系统的整治,换玻璃、密封条、换低噪音发动机、换好的轮胎等等,造价肯定不菲,还不如买一辆更高级的车哪!也有做了降噪改装后加排气尾喉的(说是增大马力,增加发动机的声音来提高驾驶乐趣的),真不知道是为了啥?
封塑以后可以当底盘装甲使用,现在的路是越修越好了,现在的轿车离地间隙都很低,说做了封塑以后可以提高通过性,难道您要开车轿车去越野吗?路不平的话,再好的底盘装甲也是无法通过的,我想,真是在行驶中遇到了大的障碍物(例如大石块),车辆底盘肯定会承受不了撞击而损坏的,底盘都坏了,装甲也就完了!其实合理的判断路况,与驾驶技术切切相关。车辆一般都是在城市内行驶,一年之内很少有时间出去遇到坏路,底盘装甲封塑要给车增加几公斤到十几公斤不等的份量,每天承载这增加的份量,燃油消耗量经过日积月累也是一个可观的数目吧!

2010年1月11日星期一

面对的是企业的软件工程文化

近几年以来,我求职的两个主要的方向都是:BA(业务分析)和项目管理改进。也是我的兴趣所在。
所以目前我的工作是做我所在的公司的项目管理办公室主任,负责项目管理体系的建立。
不过,工作以来,曾经在3家公司干过。在第一家公司做到了开发部门的部门经理也PMO经理。在第二家公司做行业经理和项目经理。到了第三家公司在PMO主任。在这三个位置上,工作内容不尽相同,但是几乎或多或少都会有这样的感觉:项目管理改进的工作很难。虽然职位不相同,所以其工作方式和权限也不相同,但是感受总是非常的相似。眼中看到企业中软件开发的过程存在很多的问题,但是人们做出变化非常难。
直到最近,我才悟出其中的道理。我所面对的不仅仅是软件过程改进这么简单的事情。需要概念的是一个企业或者组织的''软件工程文化''!
这种文化是在该组织的老板在组件团队之初就已经形成的,与老板的认知与经历所匹配,然后随着组织的成长而渗透到整个团队的意识中。
因此,想凭借着某个个体的力量而改变整个组织的软件工程文化,非常难。尤其是如果老板对该文化仍然自我欣赏或陶醉的状态下,几乎是不可能完成的任务。
在这样的状态下如果想要生存的话,我所做的事情必须是实际上在对该文化进行加固的工作,而不论该文化是否是合适的。

有了上面这样的认识,就应该调整一下自己的心态:
  • 不要妄图使企业的软件工程文化符合自己的要求,除非自己是老板。
  • 想要生存的话,应该是自己适应所在企业的软件工程文化,然后是整个工作文化。只允许在文化框架内部进行微调。
  • 如果做不到的话,以后还是寻找只需要管好自己的职业位置,例如业务分析人员。