惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
V2EX
C
Check Point Blog
博客园_首页
B
Blog
D
Docker
U
Unit 42
量子位
I
InfoQ
有赞技术团队
有赞技术团队
Martin Fowler
Martin Fowler
GbyAI
GbyAI
L
LangChain Blog
云风的 BLOG
云风的 BLOG
博客园 - Franky
美团技术团队
T
The Blog of Author Tim Ferriss
阮一峰的网络日志
阮一峰的网络日志
月光博客
月光博客
Vercel News
Vercel News
Recent Announcements
Recent Announcements
雷峰网
雷峰网
大猫的无限游戏
大猫的无限游戏
小众软件
小众软件
Google DeepMind News
Google DeepMind News

博客园 - Adam.Zhao

简单示例理解神闭包 ejs 模板使用方法 我使用的开源组件汇总,以备学习使用 了不起的Node.js--之五 TCP连接 Windows7下Java运行时环境搭建 了不起的Node.js--之四 了不起的Node.js--之三 了不起的Node.js--之二 了不起的Node.js--之一 请大家有需要购物的到我的网站上吧。 AngularJS应用骨架 最近在研究google的angularjs 好久没有来写博客了 c#二进制文件数据转换base64字符串文本代码 ActionFilterAttribute做切面编程的Url的格式化例子 学习content-type 网站性能优化之服务端(一) 艺龙旅行网招聘了 HP CQ35 Windows7声卡驱动安装不上问题
关于项目管理的几点建议
Adam.Zhao · 2010-06-07 · via 博客园 - Adam.Zhao

写给未来的自己看,文档逐步更新中。。。

当前国内企业都面临的相同的问题,项目周期短、需求变化多,为了占领市场都要求项目能够短、平、快,这样给项目

管理带来了很大的挑战,从我经历的几个项目来看就是遇到了这些问题,也在这些问题上了很大的亏,今日得闲将之前

的经验教训进行一次总结。

一、正常,按照项目计划上线的项目

1. 确定需求范围(Scope),详细理解需求并给出需求分析文档

  业务提出的需求,往往是只关注本次的需求点,他们并不关心程序系统中,因为这个需求所涉及到的开发的部分,

例如:本次需求需要增加一个属性(如:用户备注)到订单中,业务人员只会关心备注在什么预订环节加入,格式是什么

但确容易忽略其他地方的影响,如果我的账户中订单管理是否需要进行修改,及下订单后对后续自动确认流程的影响等。

这些影响点都是需要了解系统和了解需求的项目管理者来进行评估,一旦这个地方没有想到就会对后面评估工时,开发程序

造成很大影响,也许在都会影响到测试阶段,这时候回头在对遗漏的问题进行补充开发,是已经很郁闷的事情,而且往往因为

比较紧急开发质量就会下降。

2. 通过需求分析文档,充分估计好工时,测试工时测试相关人员给出

  业务需求一定要进行详细的分析,并形成详细的文档说明,此文档即可以以此来评估详细的工时情况,也为设计开发做依据,

还可以为测试人员的测试用例等提供详细的依据,一般在国内的一些公司,大的项目才有详细的分析文档,我的建议项目无论

大小都还是需要一个详细的分析文档的,因为往往业务的需求文档只是业务人员在以业务运营为中心,或者已项目赢利为中心

编写出来的文档,并不是真正能拿过来给设计、开发人员开发代码使用的,需求分析文档要从系统的角度将业务的需求转化为

设计开发使用的文档。

  充分估计工时是否非常重要的,而且估计工时切忌一点就是工时估计不足,导致给后面的开发带来很大的压力,从我的几个

下项目来看我自己的工时估计就是偏紧,有几次都是把工时给估计不足,导致后面的开发加班、测试阶段也要加班,到最后质量

也不是很高,也给项目上线带来了很大风险,当然我也知道别不估底了,可是为什么还会估计不足呢,我总结了一下,主要还是

没有一个详细的文档分析,没有把每一项开发内容都一一列举出来再估计工时,这就会导致一旦以一个大目标来估计工时,一般

来说都是偏低的,因为没有详细分析一定会有遗漏的地方,这个是我的工作经验告诉我。开发工时能正确评估出来后,测试要给

出合理的测试工时。 

3. 制定好项目的详细开发测试计划

  制定好详细的开发测试计划,详细的开发计划在项目管理中是否非常重要的一个环节,这是一个项目的控制的主线,详细的

开发计划给项目以很好的指导作用,那如何才能制定一个详细的开发计划呢,我一般从各个环节详细的开始,第一需求分析、

第二概要设计、第三详细设计、第四开发阶段、第五测试阶段、第六部署阶段。

我们重点说说开发阶段的控制:

   (1)分配组内成员的开发内容,在小型的系统中,或者未分层的系统中,我们都是按照一个功能点由一个人从前端到后端统一

进行开发,这个好处是功能和工作划分比较明确,但是不好的地方也是挺多的,首先层次划分会出现问题,导致分层和层次功能

不明确,有些逻辑层的逻辑可能就会到了前端展示层去了,这就破坏了层次结构,另外因为是一个从前端到后端都要做开发,这样

要求的开发人员的技术也是比较高,从当前的IT发展来看,术业有专攻,能将层次分开,使用不同长处的人才才是比较好的开发团队

本次我们采用MVC的架构,实现了前后台开发分开。

      (2)开发过程进行CodeReview工作,CodeReview是一个贯穿一个整个开发过程中的一个非常重要的环节,他能保证代码的规范

性和质量高低,CodeReview工作可以由负责人进行,也可以由组内成员相互进行CodeReview检查,这样也可以提高组内成员的水平,

CodeReview并不仅仅是找各个开发人员的开发问题,主要的还是培养开发团队的专业水平,CodeReview也要抓住重点,如果在时间比较

紧张的情况下一定要对项目中重要和关键环节进行详细的CodeReview工作,比如在系统的性能方面就要加大CodeReview的力度,保证

性能的质量,我们都知道实现一个功能没有不能完成的,但是完成的质量如何是有高有低的。所以是很需要进行CodeReview进行检查的。

  (3)单元测试不能缺少。 

 详细内容后续。。。

4. 制定好项目的上线计划

二、非正常,按照上线时间已定倒推上线计划的项目