在你可以做任何事情之前,你最好退后一步,尝试了解业务。如果他们通过调整流程来应对变化,那是一件好事。当他们多年来保持完全一样的事情时,你就可以忘记他们仍然是一家公司。但是,您需要确保您响应的更改不会对上游或下游业务流程产生负面影响。业务部门不经常进行这种检查。但是,当一切都陷入困境时,你知道他们会责备谁,对吧?通过这样做,您可以解决这些问题并宣传“更好的方法”。不这样做是永远沮丧的处方。
在您考虑编纂它之前了解他们的业务。
至于机制:我总是让我的团队写的是“通用软件”。某些业务部门可能需要一种方法来捕获表格并生成报告。好吧,很简单,对吧?错误的。始终将请求视为某事*200。您想支持 200 个这样的应用程序,它们几乎都在做同样的事情吗?不是我。太懒。
我指导我的团队制作一个通用的表单系统,并使用非自我或通用的报告机制。我强调尽可能多地使用 XML/XSLT(例如,不依赖于微软的easy-bake-oven 技术,这些技术似乎会随着每个新版本的发布而中断)。然后,当另一个业务部门想要“类似但有变化的东西”时,核心已经存在——我们只需要一个新文件夹,修改 XML/XSLT,我们就完成了。
这总是 - 总是 - 使这些未来的变化更容易处理。“需要新字段?更改 XML 文件。需要更改生成报告的方式?更改 XSLT。无需更改程序。” 得到它?没有程序更改。尽可能远离逻辑。甚至业务流程也可以用 XML/XSLT 表示。
实际上,您将遇到的大多数应用程序都是相同的 Programming Wheels(顺便说一句,这是一本很好的算法书),已经永远完成了。他们只会被那些不了解业务并且更不了解他们的手艺的人做得更差。
他们不会围绕您或您的软件建立业务,除非您是第一次编写 MS DOS。一旦你提出建议,你就会离开。而且......你应该是。