设计Web应用程序的正确方法(设计软件,而不是图形)

时间:2009-06-04 13:42:23

标签: specifications

最近,我收到了潜在客户对非常复杂的网络应用程序的请求 他们希望我在“真实”作品开始之前写一个规范 规范,因为他们看到它应该只是描述应用程序和数据库的文字 在那里我发现最好的方法是“绘制”或“构建”应用程序将拥有的屏幕原型(html比写书更容易,特别是如果你只是为了这个阶段使用WYSIWYG ......标准并不重要这一点)。

当你的眼前有一个屏幕时,会立即清楚显示应该是什么元素(日历/照片画廊/主要链接,搜索框等)

那么,我的做法是错的吗? 或者客户是否了解正确的做事方式?

8 个答案:

答案 0 :(得分:8)

虽然我同意您需要就构建系统的范围和成本达成一些广泛的一致意见,但我认为,如果系统能够在将系统纳入客户之前完全规范系统,那么我们就会抓住它们。手中。正如您所发现的那样,客户在实际看到之前往往不知道自己想要什么。解决这个问题的一种方法是模拟,就像你习惯做的那样。我在设计和规划期间也使用它们。

然而,大多数情况下,您需要将实际产品送到客户手中,以获得关于哪些有效,哪些无效的不可避免的反馈。你最好早点而不是后来这样做,因为在开发后期发生的变化要困难得多,而且价格昂贵,至少在传统方法中如此。使用灵活的方法尽早并经常提供工作软件,与足够的计划和文档相结合,获得更好的客户反馈,而不是迭代大量的产品规格,客户可能会发现他们不想要(或者至少需要它们)他们说的方式)。

我建议您需要一些文档,概括地说明项目的范围。足以让你就系统的一部分和非系统的一部分达成一致。例如,如果您正在构建库存管理应用程序,则不应期望获得客户关系管理系统。然后,应用敏捷开发方法的技术,以轻量级的方式跟踪所需的功能,并尽早将一些工作代码交到他们手中,然后定期。这需要所有各方的信任,因此您可能希望从小项目和时间表开始,并建立信任。

答案 1 :(得分:6)

规范是项目中最重要的部分(做得最长)。它告诉您(和您的客户)您正在构建的内容以及他们为您支付的费用

对于构建而言没有什么好处,然后找到客户端有一个不同的想法。规格确保您正在阅读同一本书。在这里捆绑一些GUI想法也是个好主意。

最重要的是,您和客户都需要知道在工作开始之前会发生什么。 您的屏幕和模型应该更广泛的规范的一部分

对于大型应用程序,您的方法似乎有点破碎。他们的期望对我来说似乎是正确的。

答案 2 :(得分:3)

我在Balsamiq中使用屏幕模型。它展示了一般的外观和用户体验,而没有侧面跟踪设计的美学

答案 3 :(得分:2)

首先,您的术语有误。在您的问题标题中,您会问“设计网络应用程序的正确方法” - 但请注意:您的客户要求您为应用程序编写规范

规格不等于设计。尝试将它们等同起来很危险。

正如另一位回复者所说,规范是指您和您的客户都知道您正在构建的 。设计是构建它的如何的艺术。

规格通常不包括模型。简而言之,它们包含的语句准确描述了应该做什么。请注意,这与应如何操作有很大不同。对于Web应用程序,我认为模型化应该在设计阶段完成。所以,是的,回答你的问题,你的方法是不正确的。

我建议您查看维基百科上的this article,了解有关规范的更多信息。

修改 虽然我所说的在技术上是正确的,正如tvanfosson指出的那样,在开始开发之前很难完全规范系统。我建议您通读his answer并与客户讨论采用更现实的方法。

答案 4 :(得分:1)

每个人都有不同的软件开发方法。您的方法与您的客户一样可行。但是,由于您的客户是支付给您的客户,我建议您遵守他们的标准或建议您的方法,看看他们的反应。

答案 5 :(得分:1)

您可能会发现以下文章对您的沟通非常有用:

请记住,如果它可以帮助您考虑其余部分,您仍然可以自己模拟HTML。在很大程度上,HTML设计将是您的决定。

就个人而言,我是FITFitnesse的忠实粉丝。它们使得更容易保持最新,并包括一些测试来验证代码是否符合规范。

要记住的另一件事是,作为一项规则,客户并不完全知道他们想要什么,所以即使使用完整的规范也不要认为它完全固定。

答案 6 :(得分:1)

用户界面不是应用程序中最重要的部分,因此尽早关注这一部分可能会导致错误的假设,并根据界面而不是功能强加选择。

我建议首先关注功能,以便同意应用程序的预期,而不是它在屏幕上的外观。界面会及时更改,客户端会希望此按钮在左侧不在右侧,颜色为蓝色,不是黄色,此文本框较大且字体不同,这些是以后的详细信息,如果您提供的规格接口你冒险讨论那些细微的细节,而不是重要的功能。

看看Applying UML and Patterns,我认为它可能有用。 “极限编程”系列中的一本书也不错,我稍后会检查哪一本。

答案 7 :(得分:1)

您可能需要查看以下问题的答案,但问题是中等大小,它可能仍然相当复杂:

What are the basic questions to ask a person who wants his Medium sized website done?

您是否曾询问客户为何不鼓励使用图表或原型屏幕截图?他们可能有自己的理由,例如在“真正的”工作开始之前试图限制完成的工作量。作为一个想法,假设他们之前已经与其他人制定了规范并且对这个过程感到满意,那就不是那么糟糕了。如果这对他们来说是新的,那么可能值得讨论为什么要拥有这些原型,例如:有时单词可以解释,而且用图片比用图片显示的千言万语更容易解决。