V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
guoyuchuan
V2EX  ›  程序员

向各位大佬请教关于个人负责一个项目所需要的时间该怎么去估计

  •  1
     
  •   guoyuchuan · 2018-07-09 21:11:17 +08:00 · 2402 次点击
    这是一个创建于 2111 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我是做 java 的,我是做 java 的,我是做 java 的

    先说情况:
    1.关于项目:做一个用户出去旅游找住宿的小程序,可以找酒店,也可以找民宿;用户通过下单,商家通过抢单,然后用户决定哪一家的模式;项目分为用户端,商户端,管理端;
    2.我负责的东西:我和另外一个人一起讨论这些项目所要用到的表,就是我和另一个人建表,然后我负责用户端后台(自己从零开始负责),另一个负责商户端和管理端;
    3.我要做的大概功能:登录,注册,收藏,评论,显示商家图片,用户定位下单,推荐商家(最近的),和另一个人一起做商家抢单的功能,优惠券,当然还有其他的;
    4.我的预估:建表(一周),搭建项目(一周),功能实现加修改(一个半月),和小程序对接(半个月),测试,加上线(半个月),总共三个月(估计太多了,实际我也不知道,就只能大开口了);
    5.我担心的:
    ( 1 ):第二次负责整个项目(第一次负责的也是在这个公司,但是项目半路流产了),怕中间会出现无 法预估(解决)的问题(这是肯定会遇到的),然后做不完;
    ( 2 ):自己的设计不合理,这是肯定的;
    ( 3 ):不够安全,也是肯定的
    ( 4 ):全是新手,问题多多;
    6.关于我和另一个人(都负责 java ):我是今年毕业,大概有半年经验吧;另一个有一两年经验,但是给我的感觉和我差不多(这里不是装逼,只是说明情况,怕被喷)
    7.可能有人会觉得是初创或学不到东西或者其他原因建议辞职,我说一下为什么不得原因(怕有人说跑路)
    ( 1 ):才毕业出来,租房子欠了一屁股的债,又不想向家里要,急需要钱;
    ( 2 ):这里试用期工资我觉得很不错,中午包饭(伙食很好),不加班( 965 )
    ( 3 ):这里还是能学东西,我会的都用到了项目里,就当是增加熟练度,网上多找资料,运用到项目里面,又学到了知识,又解决的了问题,独立负责项目还是学到很多知识的,只是可能要走很多弯路,学习不够系统;
    ( 4 ):上班也比较轻松,下班后有足够时间自学;

    问题来了:
    上边今天给的任务,问我两多久能完成并且上线,我说明天给回复;心里慌得一匹,完全不知道怎么预估时间;

    说了这么多,不是装逼,不是装逼,不是装逼;只想知道各位给什么建议。
    谢谢!谢谢!谢谢!
    20 条回复    2018-07-10 16:19:49 +08:00
    VVVVVEX
        1
    VVVVVEX  
       2018-07-09 21:13:58 +08:00   ❤️ 1
    所有人估计的时间加在一起,人少乘 3,人多乘 5。
    guoyuchuan
        2
    guoyuchuan  
    OP
       2018-07-09 21:16:11 +08:00
    @VVVVVEX 啥意思啊?我们就两个人负责后台,一个前台,都是新手。
    VVVVVEX
        3
    VVVVVEX  
       2018-07-09 21:24:45 +08:00   ❤️ 1
    max(your_time, his_time) * 5
    guoyuchuan
        4
    guoyuchuan  
    OP
       2018-07-09 21:26:03 +08:00
    @VVVVVEX 这也太夸张了吧
    ebony0319
        5
    ebony0319  
       2018-07-09 21:27:16 +08:00 via Android   ❤️ 1
    (最悲观+最乐观+4*最可能时间)/6
    0044200420
        6
    0044200420  
       2018-07-09 21:29:28 +08:00   ❤️ 1
    产品和项目经理在哪
    ebony0319
        7
    ebony0319  
       2018-07-09 21:30:22 +08:00 via Android   ❤️ 1
    纯理论:自下而上评估。大意就是比如你要做饭,你需要想每一个子工作包所有时间。比如砍柴,生火,煮饭,炒每一道菜时间。
    guoyuchuan
        8
    guoyuchuan  
    OP
       2018-07-09 21:31:47 +08:00
    @ebony0319 感觉晾凉了
    guoyuchuan
        9
    guoyuchuan  
    OP
       2018-07-09 21:33:30 +08:00
    @0044200420 对不起,都没有,只有一个项目助理(画原型图的,还画得不好的那种)
    wwek
        10
    wwek  
       2018-07-09 22:31:01 +08:00   ❤️ 1
    把你需要做的事 分解出来。 用甘特图排出来。 然后再加点冗余时间
    xpresslink
        11
    xpresslink  
       2018-07-09 22:36:14 +08:00   ❤️ 1
    理论上说时间是无法估计的。
    因为你没有做过同类型的项目,也没有非常好的实践基础,所以时间是完全不可控制的。
    guoyuchuan
        12
    guoyuchuan  
    OP
       2018-07-09 22:39:53 +08:00
    @wwek 谢谢!
    @xpresslink 谢谢!
    mcfog
        13
    mcfog  
       2018-07-10 07:28:18 +08:00   ❤️ 1
    想到哪写到哪儿

    1. “时间预估” 对于外包和公司自有项目的意义和含义是不一样的。前者是真的雷打不动的 deadline,而且基本不能以客户需求变更或其他意外为借口来打破,但后者相反,有合理的问题发生 delay 是正常的,但代价是绝对不能用乘法(至少我认为这属于不负责任) 个人没做过外包所以对外包的描述是瞎猜的,下面所有的看法都是基于公司自有项目

    2. 时间预估之所以叫预估就是因为不准。实际上每个任务的完成时间都不是一个数字,而是一个概率模型( 30% 半天做完 40% 一天做完 25%两天做完 5% 需要更长时间)而你给出的那个实际的数字,一般应当是 80%左右能做完,10%左右稍微超一些时间 or 加班 能做完的一个预期时间

    3. 一份好的时间预估中,任何一天以上的任务都是不被接受,需要进一步拆分的

    4. 以月为单位的项目当中,用几天的时间来做技术文档,并最终给出详细的时间预估是合理且必要的,这样的项目中表结构都没有定,技术文档都没有,你就给我时间预估我是不信的

    5. 如果你有技术 leader,可以和他直接沟通你的困难,包括技术的选型和时间预估的困难,另外你的时间预估必须和你的搭档核对,并且写清楚你们所有的配合的时间点,什么时候定公共的数据结构、你们内部的接口形式和字段,什么时候你们两部分可以联调等

    6. 题外话,要不是看到下面的数字列表还算整齐,我看到第一行其实就有关窗口的冲动。重复 3 遍想表达什么?你用什么语言和项目时间预估也关系不大。 包括你后面 7 里面写的一堆,你以为会呛你一句风凉话让你离职的人会仔细看你写的那么多东西?或者是看了以后他们就会认真给建议了? 论坛里面的一些信息噪音当作没看到就好( V2EX 甚至有 block 功能),不要和他们战斗,更不要这样因为他们影响其他人的阅读体验,要不是有数字列表方便我扫一眼就跳过,我可能就跑了
    RoyGo
        14
    RoyGo  
       2018-07-10 08:40:38 +08:00
    @mcfog "3. 一份好的时间预估中,任何一天以上的任务都是不被接受,需要进一步拆分的 ".拆分成几个小时吗?
    947211232
        15
    947211232  
       2018-07-10 08:54:47 +08:00
    这种事情当然是预留充足时间(时间不够你要么加班并且上级对你能力怀疑),前期不停的赶,先把主体弄出来再细化。
    xiaoshan5733
        16
    xiaoshan5733  
       2018-07-10 09:18:21 +08:00
    所以是,两个做 java 的把整个项目都包了~ 现在做 java 的都这么牛逼了吗
    micean
        17
    micean  
       2018-07-10 09:45:07 +08:00
    没有详细设计就没办法估计
    guoyuchuan
        18
    guoyuchuan  
    OP
       2018-07-10 10:12:41 +08:00
    @mcfog 谢谢!
    @RoyGo 谢谢!
    @947211232 谢谢!
    @xiaoshan5733 谢谢!
    @micean 谢谢!
    mcfog
        19
    mcfog  
       2018-07-10 10:34:12 +08:00
    @RoyGo "以上"
    dacoco
        20
    dacoco  
       2018-07-10 16:19:49 +08:00
    @RoyGo 其实他是想说将 1 天的工作量继续细分下, 比如今天做这个模块, 哪些接口,
    直接对每个接口安排工作量, 这样小的任务可以安排到 0.5 天, 给看的人更清晰
    上述前提是对项目有个清晰的认知..(#^.^#)
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2690 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 04:11 · PVG 12:11 · LAX 21:11 · JFK 00:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.