作者回复: 赞,你这个感悟很深刻,不只是项目中,都已经应用到日常生活中了👍
作者回复: 是呀,这个真的非常实用的,软件项目中很多现象都可以从它身上找到解释,很多问题都可以通过它找到合适的方案。
作者回复: 💯
我也认同4,7不存在
作者回复: 时间可以算作成本,但是三要素不代表就必须要将成本和时间合并。
对于一个软件项目来说,时间和成本都是很重要的纬度,有无限的钱和最牛的人,不代表就可以用很短的时间做出来产品。
对于项目各种因素的约束,本身就存在各种不同的解读,我不认为一定就只有一种正确答案,你选择自己认为正确的就好。
作者回复: 谢谢补充🤝
作者回复: 💯
对,重点不是怼,而是协商
作者回复: 首先,软件项目的成本,主要是人力成本、采购的软硬件成本以及其他办公运营等成本。
其中人力成本的估算其实就是:人员工资x时间
无论是瀑布模型还是敏捷开发,要估算人力成本,就是要算出来要多少人月
在原始需求出来后,要对需求进行分解,越细致越好,然后对于分解后的细项再凭经验估算。
基于细分的需求:
瀑布模型的话,要把阶段分出来,各个阶段预计的时间和人员投入估算出来。然后就能大致算出成本。
敏捷开发的话,要估算需要多少个Sprint,多少人参与这个项目。也能大致算出成本。
你说的“软件工程书籍中介绍的估算模型如COCOMO或其他算法模型”我不知道你指的哪本书,我也确实不太清楚这部分知识,也不知道是不是过时了。
> CMM或CMMI中对开发过程中的很多方面进行量化度量的做法在当今时代的软件开发中还实用吗?
还是看项目场景吧,如果是应用CMMI模型的软件项目,肯定是适用的。我觉得现在软件开发整体上还是在往“敏捷”上发展的。
作者回复: 谢谢补充👍
非常有价值的分享!
作者回复: 7的话可能还是有点争议,整体总结的非常好👍
作者回复: 抄袭我觉得就相当于节约了需求分析的时间和成本
作者回复: 只要是为了“质量”,就没什么好虚的👍
另外沟通的时候,还是以协商为主,毕竟大家目标是一样的,是为了保障质量的前提一起协商做一些调整,并不是要PK个输赢 :)
作者回复: 金三角反应的更多是各个因素之间的关系和约束,并不是严格的比例限定,否则2个孕妇能5个月生孩子了
作者回复: 大家目标都是为了项目质量,至于如何平衡还是要多沟通多协商,互相妥协 :)
作者回复: 敏捷的Sprint严格来说不是一个微型瀑布,迭代模型才是。
请参考“05|敏捷开发到底想要解决什么样的问题”,里面有对这个进行对比和解释。
作者回复: 敏捷开发的Sprint,如果按照需求来划分,而不是按照固定时间,那么最终发布的时间就很难确定,这个Sprint就会变回小瀑布的,就很难敏捷起来。
增量模型是按功能划分的。
作者回复: 加班就是加时间🤦♂️
作者回复: 👍赞,能把学的东西用上,是最开心的了!
作者回复: 总结的非常棒👍
迭代模型和MVP是非常好的组合,因为迭代的时候,会优先选取最重要的功能,慢慢的那些不重要的功能甚至永远不会被加入迭代中,就因为不需要浪费时间在上面了
作者回复: 是的,金三角是帮助你提供理论支持的,还需要根据环境灵活运用。
作者回复: 不要想着说服老板,而是给他更多选择😂