我在和一个联合开发人员聊天。
他有一个客户想要确保他按时交货。客户希望对错过的最后期限产生影响。
虽然我不从事自由职业,但我无法给出答案。
所以,我的问题是:
如果您错过交付期限(除了被解雇),您(自由职业者)会与您的客户达成什么协议?
我在和一个联合开发人员聊天。
他有一个客户想要确保他按时交货。客户希望对错过的最后期限产生影响。
虽然我不从事自由职业,但我无法给出答案。
所以,我的问题是:
如果您错过交付期限(除了被解雇),您(自由职业者)会与您的客户达成什么协议?
Answers:
最有效的方法之一:按天延迟付款。对于大型项目也是如此,有时每天的罚款为数千美元。
如果确切的截止日期很重要(例如,如果为奥运会开发了一款可处理2014年赛事转播的网络应用,则截止日期将是2014年奥运会的开始),那么有效的措施可能是:如果项目迟到,公司根本就没有得到报酬,也应该支付罚款。
如果这样的严厉措施不合适,那么只要项目迟到,高薪客户就会离开的唯一事实就可以解决问题。
给客户的提示:
许多延误是客户自己的错。原因可能有多种:
没有SRS,而是两段描述了客户所想象的需求(当然,由于这一步骤浪费了时间,客户不想为收集需求付费)。
在最后期限之前的两周到来,并说该项目直到现在才用Java完成并使用Oracle都没有关系:必须用Python重写该项目并使用MySQL,因为客户昨天已经读了一本杂志告诉那些技术是未来。
在每次会议上提出一组新的要求。奖励点是,这些要求与到目前为止几乎所有给定的要求相抵触。
良好的沟通对于一个好的项目至关重要。
其他许多延迟是由于缺乏沟通造成的。客户几个月来一直与公司没有任何沟通并且希望仅在产品完成和抛光后才与客户联系的做法会带来灾难。
你得到你所付出的。
有一些特定的程序可以帮助保持项目的组织性,实际上,大型项目的编程只需要10%到15%的时间,而中型项目的编程只需要15%到20%的时间。这些项目也应该由知道自己在做什么的人来完成。
在实践中,客户不愿意为分析架构和软件设计的分析师支付800美元/天的费用,并且他们也不想为其他步骤付费。一个新手阿尔巴尼亚程序员很高兴以每天50美元的价格工作,这似乎更具优势。
当您只准备为灾难性项目付费时,请不要抱怨该项目是一场灾难。
不要协商完成工作所需的时间。
我经常遇到这样的讨论:
开发人员:鉴于需求,我可以在四个月内交付。
顾客:不可能。该项目应在两个月内完成。
开发人员:好吧,除非您取消了某些功能...
客户:我不会!所有功能都是必需的。你为什么不能在两个月内完成这项工作?我联系了一位印度编程人员,他是我的一个朋友,他可以在一个半月内交付,只索要一半的价格!
谈判时间是灾难的根源。
了解您的优先事项。
考虑90%完成规则。当项目管理不当时,通常会看到开发人员告诉他们在启动项目后一个月就完成了90%的项目。然后,一个月后,仍然是90%。一个月后。
这可能有两个原因:
当项目未正确完成时,即100%的时间专用于编程,这将0%留给了需求收集,体系结构,设计和测试,这是程序员不知道要做的事情,他们发现项目整个生命周期中的新任务。准备项目将有助于对应该完成的所有任务有更多的了解。
当客户急忙时,对于一些公司来说,快速提供一些废话,然后花费大量的时间来解决bug并不罕见。一些公司只是这样工作,这有助于他们保持竞争力,并说他们在三周内完成了给定的项目,即使后来,他们花了三年时间解决了问题。
通过优先考虑优先事项并要求正确完成项目,有助于从候选人名单中淘汰那些公司。