`
kx29126390
  • 浏览: 40143 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

我带的第一个项目

    博客分类:
  • JAVA
阅读更多

做了大大小小的项目一堆,大到五彩石级别的,统一底层的项目,小到便民中心,现在在线代充,在线发卡的那个电话卡和游戏点卡的东西就是去年做的,虽然做了很多项目,但是感觉还是不过瘾,呵呵,这不,终于可以带个项目“玩玩”。

eSample项目

目标:为以后的精准营销打下了坚实基础

项目设计多个部门之间的配合,我们开发部门,搜索部门,测试,DBA,SA,SCM

根据项目管理四要素:成本,范围,质量,时间来说说本次项目管理我学到的经验吧,当然还有很多其他的东西,如风险...

成本:在我们公司,基本上是人力资源成本,在项目开始前,我就圈人了,哈哈,基本上证明,圈的人还是刚好的,不多不少。

范围:PRD评审的时候,和产品经理进行了激烈的pk,哈哈,终于我被说服了,搞了一大堆的功能,当然也被我砍掉了一些鸡肋,明确了项目的范围:筛选派发对象,导出数量级30w级的CSV文件(经过评估,30w级数据是92M大小,经过压缩后还有23M),在超过1000w级别的索引文件中搜索出这30w级别,全部返回,压力很大啊,呵呵

质量:稳定是王道,实现功能是必须得,30w级别的文件,1000w级别的索引文件只是最少的情况,我评估过,现在我们协议库中是30w数据,加上1000w级别的交易信息,这个是项目发布时候的量,以后我们的数据量会超过60G的索引文件,也就是要支持300w数据,1亿以上的索引信息,这个量会非常大,当然非常事非常做,量大的时候,我们会采用分布式搜索的,平行增加搜索机器(8核,16G内存)的机器,然后把索引文件分放到这些机器中,最后通过merge机器对搜索结果进行合并,现在30w级别的数据,我们还是撑得住的,不需要搞这么繁琐,项目发布以后基本稳定

时间:我们项目我评估的时间是1个半月完成,也就是在7月21号完成项目,事实证明,这个时间点是非常准确的,小小的得意一把,哈哈

项目管理工具:

project 2007

微软的工具就是强大到变态啊,上次项目经理培训的时候,我都不知道怎么操作,这次还是在老大的帮助下用的,管理项目进度,安排项目任务,评估风险等等,我都靠它的

项目团队成长

项目里带了个新人开发,呵呵,我徒弟,在项目中还是成长比较快的,掌握了公司的基础框架,熟悉了公司的一些技术,项目中严格遵守SQA的规定的流程

项目中我们和搜索部门联系紧密,在项目需求分析阶段,我提供了项目所需的搜索合作的配合文档,包括dump的表结构,规则,索引字段,返回字段,排序字段,呵呵,也在搜素部门的建议下,去掉了两张超过亿级别的表,英雄啊,终于可以调高dump和build效率到可控范围内了

测试MM还是比较热心的,问了一堆问题,呵呵,虽然很多我都不想回答了,因为回答过很多次了。。。。。。。

项目结果:

项目满足立项约定时候的功能和性能

项目风险:

项目功能要求,需要有保存总结果,清楚已有结果等中间状态的情况,数量级有大多在10w级别以上,数据库每次如果update或者insert等等,会导致超时

风险控制:

方法有很多:

1、调大apache中的超时参数

2、减少数据库访问

3、用其他方案代替数据库操作:最后我采用了这种方案,用文件追加、删除、merge来代替数据库操作,只有到生效后才执行一次数据库操作,事实证明,这个方案比较可行且效果很好

项目创新:

由于搜索结果集超大,需要全数返回,以前没有这种情况,这个项目就是特殊的情况了,一次性返回显然不行,所以我采用了ajax分页取去数据,每页400个,这个到搜索的定位会越到后面越慢,没办法,调大apache参数,让搜索人员评估,看能否加缓存,最后我们讨论用了减少搜索范围了提高效率

 

 

最后分享下本次项目管理中获得的经验:(以下是pm培训的时候的东西,我结合实际,来分享一下)

 进度管理:

       任务定义
       任务排序
       任务资源安排
       任务持续时间估算
       进度计划分析
       进度控制

1、任务定义:

      关键词:完整性、渐进式、粒度
      项目计划模板:project拷贝的,哈哈
      任务粒度逐渐细化
      项目启动后,系统分析阶段的任务粒度尽量保持在一天以内,不超过两天。后面阶段的任务粒度到里程碑即可
      详细计划评审后,所有任务粒度尽量保持在一天以内,不超过两天

     项目管理过程中,我严格遵守了这个任务定义,呵呵,除了搜索工作量无法准确评估外

2、任务排序

      关键词:逻辑关系、优先级
      在project上设置任务的依赖关系:查看甘特图,尽量减少了关键路径
      独立的任务根据优先级安排次序:对项目分配,我进行了依赖关系的排序,把影响后面工作的需求排在前面,独立的在后面

3、任务资源安排

     关键词:资源要求
     明确任务的技能要求,匹配合适的资源
     整体任务和局部任务
     核心任务和非核心任务
     不仅仅是开发任务,其他任务一样重要

4、任务持续时间估算
     关键词:充分沟通
     专家判断,和搜索人员沟通,和开发人员自己沟通,算出具体的开发时间,测试人员自己评估安排测试时间
     经验:任务粒度越细则估算越准确
5、进度计划分析
      基本上如果不出现需求变更和人员变更,不会出现太大的风险,当然前提是技术方案没有问题

6、进度控制

       进度报告:约定项目成员每天定时通过project反馈任务执行的真实情况。
       跟踪:project进度跟踪
       每日工作核实,每天要求提交project任务更新
       每天进度偏差分析,这个我没有做好,呵呵,基本上是按照进度在推进,所以没有分析偏差
       和计划比较基准进行对比

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics