【问题标题】:How many apps should an internal development group be building/maintaining?一个内部开发团队应该构建/维护多少个应用程序?
【发布时间】:2009-09-29 08:37:28
【问题描述】:

我一直认为,内部开发团队实际上应该只构建/维护三个应用程序。

  1. 内部复合/可插拔/可扩展应用程序。
  2. 公司网站。
  3. (可选)#1 的移动版本,供现场员工使用。

我是一名顾问,无论我走到哪里,我的客户都会在网络和桌面上拥有数十个一次性应用程序,以满足各种需求,无论它们与其他应用程序的相关程度如何。有人来 IT 部门说“我需要这个”,然后 IT 开发人员转而编写另一个一次性 ASP.NET 应用程序或另一个 WinForms 应用程序。

你有什么意见?我应该接受“我们想要/需要多少应用程序”的运动吗?我认为这很常见;但这样做明智吗?

编辑: 一位同事指出,这取决于开发的重点——你是在做应用程序还是在做系统?我想对我来说,内部开发就是建立一个系统;可交付软件产品的开发,例如 MS Word、iTunes 和 Photoshop,是关于制作应用程序的。

【问题讨论】:

  • 一个内部开发团队应该构建/维护多少个应用程序?支付给您多少来维护。 :)
  • @voyager - 我在什么时候停止“创建尽可能少的解决方案以获得报酬”并开始“创建解决方案时牢记我的团队和公司的整体进步”?似乎我可以继续这种一次性应用程序的循环,直到我的团队(和公司)在维护的重压下崩溃。那么当高管们来到我们的团队并问“你为什么要这样开发它?你不能更聪明地工作吗?你让我们沉没!”时,我们该怎么说? :)
  • 我可以在评论中主观,对吧? :)

标签: asp.net winforms architecture desktop environment


【解决方案1】:

全部?

【讨论】:

    【解决方案2】:

    哇,我真的同意你的观点。问题是许多一次性应用程序将(在某些时候)每个都有许多一次性维护请求。从业务规则更新到新报告请求的任何内容。在某些时候,需要维护的应用程序与可用开发人员的比例将会增加/增加负担。

    从我可能(有限?)的角度来看,我开始认为 #1 和 #3 可以归结为 Sharepoint。我工作的大多数一次性申请(一家拥有 500 多家律师事务所的大型律师事务所)都包含以下一项或多项:

    1. 维基
    2. 博客
    3. 某种列表(或以某种关系连接在一起的列表),可以以不同的方式进行排序和排列。
    4. 报告(Sharepoint 数据视图或 SQL Server 报告都可以正常工作)
    5. 或者,用户只是想“制作一个网页”并向其中添加内容。但只有他们应该能够编辑它。除非他们不在办公室,然后等等……

    尝试使用 [命名您的技术] 构建上述任何一种,并且您需要等待很多维护周期(相对于相对较小的 Sharepoint 更改)。

    如果我可以重申我认为您的观点:为什么不将您的大部分开发周期用于改进和维护一个可以支持大部分您的企业一次性需求的应用程序,而不是不断地推出一系列小型专业应用程序?

    【讨论】:

      【解决方案3】:

      这个问题取决于很多东西,而且是主观的。我曾在需要多个不同应用程序的公司工作,因为我们在谨慎的孤岛中开展业务。在这种情况下,一个内部小组可能不会构建和维护应用程序,但可能会与另一个负责维护的小组一起构建多个应用程序。

      另外,“应用程序”是什么意思?如果你把这个词放得足够宽,那么你可以说“这只是一个大应用程序”。

      简而言之,我认为主要考虑的是集团的能力和业务需求是什么。

      【讨论】:

        【解决方案4】:

        我认为应该有内部开发团队,每个团队都有一个系统,其中可能包含多个应用程序。举几个我所说的系统的例子:

        1. ERP - 如果您是产品制造商,您可能需要一个系统来跟踪库存、账簿和资金会计以及其他计划要素。此类系统的规模范围很广,但我怀疑在大多数情况下会进行一些定制,这就是使用团队的地方,如果公司成功并且需要新系统,最终可能会一遍又一遍地这样做替换前一个,因为这些可能需要数年才能完全启动和运行。车间申请可能与 CFO 编写季度收益数字所需的申请不同,这里举两个例子。

        2. CRM - 跟踪组织内对销售和营销部门有用的所有客户交互如何?同样,有许多不同的解决方案,通常会由另一个团队完成定制。销售团队可能对数据有一个看法,但如果公司有支持部门,他们可能需要有关客户的不同数据来帮助他们。

        3. CMS - 现在,我可以看到您的三个应用程序很有意义,但请注意除了简单的内容之外还有什么。

        我认为我不想在一切都是自制解决方案并且根本不使用外部代码的地方工作。许多代码可以以相当好的方式使用,例如工具,也可以用于数据库服务器或开发 IDE 等组件。

        【讨论】:

        • 我明白你的意思。但是,在许多商店中,有一个独立于开发人员的团队来支持第 3 方系统。开发人员最接近这些系统的是调用 Web 服务或查询后端 RDBMS。但你是对的,不要在家里种植所有东西,你不会像专门研究它的产品那样做得好,你只会重新发明轮子。
        • 在我工作的地方出现了这种分离,而现在在同一个团队中有开发和支持。从理论上讲,我喜欢这个想法,因为这意味着维护生产系统不会消耗开发资源。
        【解决方案5】:

        那么,除了几个一次性应用程序之外,还有什么替代方案?一个运行一切的超大型应用程序?这对我来说似乎更糟......

        【讨论】:

        • 这个想法是通过构建“插入”到共享主干的功能来简化开发、维护和部署。 Visual Studio、Eclipse、Office 等应用程序建立在可插入/可扩展的主干之上。归根结底,如果它是在公司内部使用的,那么它可能无关紧要吗?无关紧要,需要自己的基础?可能不是。如果您从未构建过可扩展的应用程序,那么您真的错过了。请参阅以下msdn.microsoft.com/en-us/library/…msdn.microsoft.com/en-us/library/bb266334.aspx
        猜你喜欢
        • 1970-01-01
        • 2013-02-14
        • 1970-01-01
        • 2016-10-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-04-11
        • 1970-01-01
        相关资源
        最近更新 更多