两年多来,我一直致力于"大爆炸"重写.在应用程序取代其超级百万赚钱的旗舰网络应用程序之前,管理层一直无情地忽视并贬低我的呼吁,即为性能测量,容量规划和优化分配时间/资源.
最后,他们同意这样做(我们成功地通过提出现在正在生产的并行beta测试服务器并且将成为测试的目标来防止他们大肆宣传).我不喜欢他们等到最后优先考虑这个,但是迟到总比没有好.
每个人都有什么建议来处理将来这样的情况?教育经理/客户了解这些测试需求的最佳方法是什么?
我已经向他们展示了微软在CodePlex上的性能指南,并在开篇页面中提供了经验丰富的专业人士的严厉警告.我还给他们看过"释放它!"这本书.以及作者给出的关于"凌晨3点的电话"的指导.这最终使他们不情愿地说服了,但事实是,这应该优先考虑开发,并在最终完成系统测试之前的开发过程中进行部分测量.
许多经理和老派工程师只编写了ASP,但从未使用.NET,他们习惯于自己编写所有内容,并且不了解新.NET应用程序中缓存,调优和健康监控的所有选项.
谢谢
你没有意识到的(许多工程师没有意识到)这是一个"销售情况",而不是工程问题.无论客户是否在内部都没关系,这个过程大致相同.
销售就是要找出驱动客户的问题,然后展示您的产品如何解决他们的一个或多个问题.如果他们认为他们没有性能问题,那么他们就不会 - 就这么简单.虽然你可能能够教育他们到他们看待事物的程度,但"教育销售"的时间和金钱都很昂贵,许多顾客不喜欢被告知"他们已经知道的东西".听起来你必须通过用书来击败他们来教育这个小组,但可能有更简单的方法来实现你的目标.
它会是什么?我不知道,但他们这样做,所以问他们.问问最终推动他们做出决定的是什么.它可能突然意识到你是对的,但更可能的是它更基本,比如越来越害怕在董事会或市场中被羞辱.他们不太可能直接这么说,但如果你真的听他们的答案,你可以在两行之间阅读.在销售中,对销售电话进行事后调查(成功或不成功)对于了解客户的动机以及如何调整自己的技能以提出创意至关重要.
而且,下次,您将会知道询问客户想要实现的目标以及他/她现在和长期存在的问题.它会一直有效吗?当然不是,但学会处理工程问题的社会方面是一项有价值的技能.
让他们就他们期望系统能够支持的内容(并发用户数/任务数等)达成一致,然后确保系统能够满足要求,这将成为开发工作的一个明显部分.