花时间/员工需要估算将桌面应用程序转换为客户端 - 服务器应用程序

时间:2008-10-27 20:17:06

标签: refactoring

我的老板正在竞标一个项目,将桌面应用程序转换为一个在线运行的客户端服务器应用程序。最初的应用程序有超过25万行的C ++(MFC)代码,这些代码在引擎和前端之间并没有完全分开。

我需要估计需要多长时间以及这样一个项目需要多少人。我们没有任何人员能够做这个项目,我们没有任何Windows机器,所以我们必须转包/外包。

或者,我可以用什么论据来说服我的老板这个项目是个坏主意?

5 个答案:

答案 0 :(得分:1)

我会花很长时间,因为很可能,你必须改变语言。它基本上是一个完全重写。您甚至可以更好地定义旧系统的功能,并从头开始重写,只需要在需要复制业务逻辑时引用旧代码。

答案 1 :(得分:0)

如果引擎和前端之间没有明确划分,那就不好了。将代码交给承包商或类似代码需要进行大量培训才能理解代码,包括要重写为Web应用程序的部分。

您首先需要估计清楚定义边界所需的时间,然后您可以计算项目其余部分需要多长时间。这样,您可以在与演示层和引擎API相关的部件上训练承包商等,而无需解释引擎如何工作(这应该与演示组件无关)。

答案 2 :(得分:0)

将信息提供给合格的顾问/外包商(例如发送给我)并根据他们的估算考虑投资回报率

这听起来好像你没有能力在内部有效地做到这一点,但这并不意味着它是一个坏主意 - 它取决于投资回报率

例如,如果你的老板认为这件事可以在第一年产生100万美元的收入,而承包商可以在6个月内以25万美元进行转换,那么投资回报率(18个月内的300%)可能已经足够做到这一点

如果数字相反,那么这显然是一个坏主意; - )

答案 3 :(得分:0)

这听起来像是COCOMO II的工作。 COCOMO已被成功用于估计规模和成本以及员工规模,但这可能是一种痛苦。它需要大量的细节和时间。但它确实回答了如何评估项目规模和所需人数以及所需时间的问题。

答案 4 :(得分:0)

正确估计这一点的唯一方法是将它交给1.将会工作的人; 2.理解它所使用的语言以及你要转换的语言。

无论如何,始终 BAD IDEA 对您没有经验的项目出价。每次我看到有人这样做,他们都严重低估了它。不仅在所需的工作量方面,而且在学习曲线方面,甚至开始理解潜在的过程。

特别要注意对您没有经验的项目进行投标,然后明确告知分包商他们的预算是什么来完成项目。我再也不会在这种情况下工作了,因为100%的时间参与竞标的人会弄错。

还有一件事,如果它是一个桌面应用程序,带有后端,那么它已经是客户端服务器......您是否想要使用现有的客户端/服务器应用程序并将其转换为Web应用程序?