为什么很多网站讨论编程而不是描述他们试图生产的系统?

26
有很多网站教人们如何构建更好的软件,但为什么很少有网站实际上给出程序员所需创建的领域的详细描述呢?在不同类型的系统之间出现共同需求的模式之前,一个人只能构建那么多库存、会计和ERP系统。从逻辑上讲,如果程序员花费了大量时间尝试在他们的架构中创建可重用组件,这是否意味着他们应该具有一些可重用的“蓝图”,以描述他们应该创建的系统?换句话说,软件开发的焦点似乎过于关注“如何”构建软件,而忽略了目录和准确指定(具有详细要求)“首先”应该使用什么。

因此,我的问题是:是否有任何工作将所有不同类型的系统规范编目到单个位置,全部在单个网站上?如果缺乏项目开始时的适当要求是软件开发的苦恼之一,那么能否从已经编写过的同类型先前系统中“重复使用”要求规范更有意义呢?


为什么要关闭三票?这是一个非常好的问题。 - Steven A. Lowe
驱动式开发。没有评论。这是SO的诅咒,不幸的是。很遗憾没有办法投票来减少计数。 - dkretz
12个回答

6

有一些,但它们通常是由想向您销售解决方案的供应商运营的。 :-/;


更准确地说,是“咨询时间”。 - dkretz

5
有一个网站Database Answers,旨在提供常见数据库设计的解决方案。虽然这不同于您所描述的完整解决方案,但它是朝着正确方向迈出的一步。
您评论说,“在”构建许多[...]系统之前“,共性就会变得明显。然而,那些已经构建了足够多此类系统以发现共性的人们,随后尝试从中受益,并创建自己版本的共性系统,然后将其销售。他们(被认为)不愿意帮助可能做同样事情的其他人。

Database Answers确实很不错,那里是我从中复制了我的小丑注册表设计的地方。 http://databaseanswers.org/data_models/clown_registry/index.htm - Robert Gould

4
我完全同意,有没有“库存IT白痴指南”,以及客户、地址和联系方式等方面的认证数据模型。我发现自己在许多不同的地方重新实现相同的代码,虽然字段和逻辑略有不同,但基本上是相同的东西。几年前,我找到了一个预先制作的数据模型网站——这是朝着正确方向迈出的一小步,但并非全部内容。通用数据模型(无关联)。你会注意到,他们的产品没有得到太多关注。

我还曾在一些组织中工作过,他们正在开发自己的“通用”数据模型作为可销售产品。其中一个领域是金融服务,他们达到了1500多个DB2表,并放弃了。组织以自己独特性为傲,而我们(技术人员)意识到,在引擎盖下,大多数公司都在做着相似的事情——我认为承认他们只是使用UniversalCustomer(TM)1.7的其他人并没有什么好处,因为这可能会对企业自尊心造成太大的伤害。此外,这也为SAP、Peopleware等提供了机会。

最后,这里有很多创业者可以挖掘的机会。一个良好的短书系列,描述常见领域。我是指超级简单的东西,人名、地址、电话等——包括不同文化中的称号和电话号码布局等小细节——现在有一本/维基百科很多人可以使用。


公司正在做类似的事情,但业务流程都是独特的,很少有通用的解决方案或数据模型/规则集可以应用——总会有例外情况,这些例外情况会破坏应用通用解决方案的尝试。 - simon

3
根据我的经验,UI所包含的用例是容易出错的地方。实际上,我设计并构建了一个库存系统,已应用于各种组织和行业(电信、食品、医疗保健、电子制造和分销、消费品、服装、航空航天等)。在前半部分之后,出现了一个良好的数据模型,为所有这些行业提供了少量变化(扩展,但不是变化)的服务。
但即使在同一行业内,由于各种原因(产品性质、体积变化、平均订单大小进出、会计要求、员工动机等等),真正的人们完成工作的方式也有很大的差异,这是有充分理由的。
请注意,上面的例子似乎都是关于更深层次的抽象 - 具体来说是数据模型 - 在这里我们程序员可以按照自己的方式进行操作,以获得利益。我们离用户越近,我们的利益就需要变得次要。
最糟糕的情况是:有没有其他人注意到员工排班和工时报告系统中的模式,每个屏幕显示一周,并且有多屏数据输入表单?

2

1

这将是难以销售的。任何向系统发出询价请求的人都会做出第一个断言:“我们不像其他公司。我们的需求是独特的。”(但实际上并非如此。)


1

如果您要重用需求,那么也可以重用代码。但在更低的层面上,我认为您正在寻找的是“需求模式”,类似于“编程模式”。

现在这里有一本微软关于这个主题的书,但是像所有领域模式一样,想法是它们应该有机地生长并适应领域用户和专家的需求。如果您想要这个想法的真正来源,请查看关于模式的开创性书籍,尽管它来自架构而不是编程,惊喜吧 :)


1
80年代和90年代初有一场巨大的“软件重用”运动。有一大批人建立和调试了软件组件目录,许多人看到它作为软件未来的发展方向。Will Tracz的“一名二手软件销售员的自白”是一个很好的概述,可以搜索“Brad Cox Software IC”、“Martin Griss”。据我回忆,胜利已经宣告,每个人都转向解决其他问题。

我知道Brad Cox的“规划软件工业革命”已经在线:
http://www.virtualschool.edu/cox/pub/PSIR/

0

各国政府正在努力标准化数据模型,以便在不同机构之间实现共享,但除了必要的地方外,这些努力在其他地方几乎没有被采用。例如,在加拿大,我们有CPSIN


0
你可能想看看马丁·福勒的企业应用架构模式 - 虽然不是规范,但它似乎是你所需要的那种东西。
免责声明:我自己没有读过它,我只知道它的存在。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接