我们希望系统解决的问题通过需求得以体现。GUI设计是要体现出GUI如何引导用户使用系统以解决他们的问题。很多项目都将GUI设计混同于需求的假面之下,这很让人讶异。如果你的项目总是陷于无尽的需求工作之中,看看问题是不是出在GUI设计上。
GUI是设计,不是需求
凯伦,程序经理
我在一家新公司工作时,试图拯救一个陷入“需求地狱”的项目。需求文档已经达到300多页,而且远未完成。
阅读这些文档后,我找到了原因。所有的GUI设计都被记录在需求文档中。GUI设计没有放在项目的设计阶段,业务分析人员和GUI设计人员试图将所有的GUI需求都放在需求文档中。他们使用了功能强大的图形设计工具,并在需求文档中定义GUI。
我向他们询问原因,他们看着我,说道:“这些是GUI需求。”我建议他们认真看看GUI设计,并且考虑这些设计是否应该跟希望系统解决的问题放在一起。GUI设计不应放在需求文档中。
最终,他们同意采纳我的建议,我们也可以逃离需求地狱了。而且,由于我按照逐个功能重新组织了项目,GUI设计也就跟各个功能结合在一起了。我们定期检查整个GUI的一致性,但是这与需求无关,这属于设计。
人们很容易在项目开始阶段设计GUI,并称其为需求。如果要这么做,项目就永远无法找到自己的节奏。它会一直陷于需求的泥沼之中,直到最后,无法完成任何客户需要的功能,虽然到时候能够得到精美无比的GUI。
分享到:
相关推荐
### Python GUI设计——Tkinter基础知识详解 #### 一、Tkinter简介 Tkinter是Python标准库中的一个图形用户界面(GUI)工具包,它提供了一系列的控件来帮助开发者快速构建用户界面。由于其易用性和跨平台特性,...
本资源包"matlab GUI设计——打靶"是针对MATLAB GUI开发的学习资料,尤其适合初学者了解和掌握MATLAB GUI的基本构建和应用。 首先,我们要理解MATLAB GUI的核心组件。MATLAB中的GUIDE(图形用户界面开发环境)提供...
总的来说,C#程序设计——Windows项目开发涵盖了从基础语法到高级特性的广泛知识,包括但不限于C#语言本身、.NET Framework、Visual Studio IDE、Windows Forms设计、事件驱动编程、数据绑定、资源管理、异常处理、...
在本项目中,我们探讨的是一个基于Microsoft Foundation Classes (MFC) 的图形用户界面(GUI)设计,具体实现为一个计算器程序。MFC是Microsoft提供的一套C++类库,它封装了Windows API,使得开发者可以更高效地创建...
在本案例中,我们将深入探讨如何使用Matlab的图形用户界面(GUI)设计工具来实现文件数据的读取、绘制曲线图以及数据的保存。这个压缩包提供了完整的资源,包括源代码、可执行文件和详细的操作指南,让我们一步步...
一个LabVIEW有关GUI前面板设计的例子。
这个“matlab GUI课程设计——简易计算器”项目旨在教授学生如何利用MATLAB GUI实现基本的四则运算,为初学者提供了一个很好的实践平台。 首先,我们需要理解MATLAB GUI的基本架构。在GUI中,我们通常会有一个`.fig...
GUI设计(Graphical User Interface)是用户与计算机系统交互的重要方式,它通过图形元素如按钮、文本框、菜单等提供直观的操作界面。在软件开发过程中,GUI设计是至关重要的一步,因为它直接影响到用户的使用体验。...
总的来说,"Pyqt5目标检测系统GUI程序——Yolo系列(带扩展带接口)"是一个具有高度可扩展性和灵活性的项目,它融合了PyQt5的GUI设计优势和Yolo的高效目标检测能力。通过理解和利用这个项目,开发者可以深入学习到...
基于GUI解一元二次方程的源码,用的Java
Java GUI程序——记忆测试游戏是一种基于图形用户界面(GUI)的互动软件,旨在帮助用户提升记忆力。这种程序通常采用事件驱动编程模型,用户通过点击界面上的元素来触发不同的功能,比如翻转卡片、计时或显示得分。...
平台:matlab appdesigner 功能:模拟刮刮乐活动。具备鼠标刮奖、增删奖项功能 文章链接:https://blog.csdn.net/gouqikong5855/article/details/124972392
总之,"UCGUI源代码——GUI设计"是一个宝贵的资源,无论是对于初学者还是有经验的开发者,都能从中获益。通过深入研究和实践,你可以掌握嵌入式GUI开发的关键技术,并创造出符合特定应用场景的高效用户界面。
MATLAB GUI设计学习手记(第二版)——罗华飞编著2011
java语言课程设计,GUI编程练习——基于Java实现的打地鼠小游戏 java语言课程设计,GUI编程练习——基于Java实现的打地鼠小游戏 java语言课程设计,GUI编程练习——基于Java实现的打地鼠小游戏 java语言课程设计...
关于matlab的GUI设计,EXE文件,比较简单,适合初学者
7. **PPT讲解**:这部分可能包含GUI设计的理论介绍、实例演示和最佳实践,帮助学生更好地理解和应用GUI设计原则。 8. **源代码分析**:通过阅读和分析提供的源代码,你可以深入理解GUI的构造过程,学习如何将理论...
这个项目“哈夫曼压缩——GUI”是基于Visual Studio 2010开发的一个图形化界面工具,对于学习数据结构和算法的学生来说,是一个很好的实践案例。 1. **哈夫曼编码**:哈夫曼编码是一种变长的前缀编码方式,通过构建...
通过阅读《Python Qt GUI快速编程——PyQt编程指南》,读者不仅可以掌握PyQt的基本用法,还能深入理解GUI设计的原则和最佳实践。这本书不仅包含详尽的代码示例,还有许多实际项目中的应用场景,有助于读者将理论知识...
在这个课程设计实训项目中,学生被要求使用Java Swing库来创建一个课程选课系统的图形用户界面(GUI)。具体来说,主要涉及以下几个知识点: 1. **创建主窗口**: - 使用Java编程,创建一个名为`SystemMainWindow`...