在过去的几个学期里,我参加了一些软件设计课程,虽然我看到了很多形式主义的好处,但我觉得它并没有告诉我任何关于程序本身的事情:
在所有这些形式主义的底线是什么:程序的外观,操作,以及它提供了什么经验?对此进行设计不是更有意义吗?更好的方法不是通过一个原型来找出程序应该如何工作,并努力实现它吗?
我知道我很可能是被理论家教工程学的,但是我需要问,他们在这个行业里这样做吗?人们怎样才能搞清楚这个程序到底是什么,而不是它应该符合什么?人们经常使用原型吗?还是他们大多使用UML之类的正式工具,而我只是还没有掌握使用它们的诀窍呢?
发布于 2010-12-13 23:24:37
如果我们正在构建一个GUI应用程序,我们几乎总是创建一个原型或POC (概念的证明)。我们将建立该应用程序的可视化词汇表。我们通常通过POC让我们的客户参与其中,并确保他们理解目标是什么,以及他们应该关注什么。我从未为我制作了一个原型而感到遗憾。只需确保您没有尝试将原型代码转换为产品代码,而是根据您从原型中学到的内容从头开始生产代码。
尽管如此,我们几乎从来没有过服务器端应用程序(服务、中间件等)的原型。我看不出这方面的投资回报(除非你正在做一些新技术,需要证明不同的概念)。
发布于 2010-12-13 22:41:26
。
我也是这么想的,直到你进入商界。然后,它就不再简单到只接受需求并继续进行构建。
在商业上,用户“流”图和lo原型确实是有意义的。
“程序”是如何运作的,这可能是最容易的部分。在LOB (Line Of Business)应用程序中,大部分都是CRUD。挑战在于业务逻辑和规则。这是用户流程图和业务流程流程变得非常重要的地方,以便有效地理解和规划。
发布于 2010-12-13 22:38:38
你所说的节目“运作”是什么意思?您似乎在寻找具体的实现细节,而不是特定的最终实现,这是没有意义的。更高层次的元素应该用来指导实现,而不是决定它。
根据我的经验,原型设计并不常见。当然,它是与规范、需求、体系结构等一起教我的,而且它可能非常有用。
至于“软件需要什么”,这就是需求。你似乎漏掉了整件事。
接口通常是事先勾画出来的,用例可以用于接口“流”。用户体验一点也不缺少。如果你觉得缺少什么元素,那就做一些你的教授没有提到的事情。设计不包括一套明确的从天上传下来的规则。
https://softwareengineering.stackexchange.com/questions/26137
复制相似问题