我正在开发一个可以插入现有应用程序的解决方案。它将用于公共用途。
我可以选择使用更新的技术,以促进更好的架构,灵活性,速度等......或者坚持应用已经尝试过的现有技术。
使用更新技术的缺点是需要对基本配置文件进行重大更改以支持它。如果更改出错,应用程序将无法使用。卸载也是一个问题,因为其他开发人员未来的自定义代码可能需要更新的技术,而且无法确定这一点。
在考虑方法时这个问题有多重要?
重要的配置更改是否会让用户放弃部署代码,或者以后会导致问题?
修改
故意不在此处讨论有关技术的细节,以避免问题被搁置。
可以提供安装/卸载软件,但是涉及到一些复杂性,可能导致它们在边缘情况下导致应用程序死机。 (原始配置的备份将是一种缓解这种情况的方法。)另请参阅上面有关卸载的问题,我基本上无法提供。
答案 0 :(得分:2)
是的,根据我的经验,任何大量的工作都会让用户三思而后行。
这是几乎每项决策都由企业完成的标准成本/收益分析。预期收益是否会超过潜在成本?
当我们发布软件更新时,几乎总有一个主要组件可以帮助用户迁移。
一个例子(修改得足以保护内疚):我们有一个产品可以生成有关系统性能和其他内容的报告。但报告并不那么漂亮,用于查看它们的软件与特定平台相关联。
我们利用BIRT为我们提供了基于Intranet的报告,这些报告看起来更好,只需要客户端拥有一个Web浏览器(而不是一些胖客户端)。
在我们提供一个可以获取标准报告并将其转换为BIRT报告的工具集之前,很少有客户进行了切换。一旦我们提供了这一点,客户就开始认真对待它 - 利益没有改变,但成本却一直在下降。
答案 1 :(得分:2)
你没有给我们任何细节,所以我们无法回答任何具体问题。但是,如果您的问题是,如果您的潜在用户群必须进行重要的设置工作,那么您的潜在用户群中的很大一部分将被阻止使用您的产品,那么答案是肯定的。我已经一次又一次地看到了我自己的产品以及我自己安装的产品。唯一的配置更改是卸载并重新安装。人们不喜欢做工作。
您可能希望投入比目前为止所做的更多努力来使升级无痛。即使您正在升级其他人的框架,您也可能会发现这些努力是值得的,并且反映在更多的安装中。
我注意到“高级用户” - 开发人员,系统管理员等 - 愿意忍受更多的设置工作。
答案 2 :(得分:1)
我不确定“主要配置更改”是什么意思,但如果你在谈论设置/配置文件,那么我一直在做这样的事情:
应用程序始终包含默认配置,该配置对大多数用户非常有用,并且无法替换。相反,用户可以覆盖他们自己的独立配置文件中的一个或多个默认设置。当发布新的(主要)版本时,大多数用户不需要重新配置任何东西:他们自己的自定义配置仍然来自他们自己的配置文件,并且可能需要从新版本的默认设置中获取新参数。
很明显,大多数用户不想浪费时间调整一些已经正确的设置 - 而且非常合理。