后台人机界面开发 什么软件好

2024-12-14 10:47:33
推荐回答(1个)
回答1:

件设计不能再像过去一样仅仅只靠丰富的功能立于不败之地设计师们也开始关注非功能性的一些因素例如软件的界面设计。软件的人机界面是交互式系统的重要组成部分一个好的界面可以极大的提高用户使用软件的效率和用户体验度。 2. 人机界面设计 在人机系统中人与机器之间的所有关联依靠人机界面来实现。人机界面是人与机器相互作用的纽带和进行交互的操作方式。苹果公司的Mac OS和微软公司的Windows系列产品就是人机界面成功的典范。 2.1 设计理念 当前广泛使用的人机界面都是用户图形接口GUIGraphical User Interface。是指采用图形方式显示的计算机操作用户界面。相对于早期的命令行界面图形界面对于用户在视觉上更容易接受。 国际上广泛采用的以用户为中心的设计UCDUser Centered Design方法已经被国际标准化组织ISO作为正式标准——以人为中心的交互系统设计过程而发布。该方法的主要特征是用户积极参与对用户及其任务清楚了解用户和技术之间适当分配功能等强调产品的最终使用者与产品之间的交互质量使软件产品易于理解、便于使用从而达到用户满意的目的。 多通道交互MMIMulti-Modal Interaction是近年来迅速发展的一种人机交互技术适应了“以人为本”的自然交互准则所谓的MMI是指“一种使用多种通道与计算机通信的人机交互方式”。而通道则涵盖了用户表达意图、执行动作或感知反馈信息的各种通信方法如言语、表情、手势、触觉等采用这种方式的计算机界面称为“多通道用户界面”体现了“以人为本”、“以用户为中心”的设计理念。 基于剧情的设计Scenario-Based Design详细给出了交互过程中的全部角色各种场景的假设、剧情的描述、事件叙述的人机对话分解。由于该方法在较高层次上描述了用户意图同时符合人的认知过程并便于实现所以被广泛采用。该方法的开发模式为“建立观察剧情”-“建立分析场景”-“建立分析模型”-“建立设计模型”。 2.2 设计原则 人机界面是一门交叉学科它研究的范围涉及到人机工程学、工业设计、计算机科学、认知科学、生理学、心理学、艺术学、社会学等相关领域。人机界面设计的好坏与是否遵守设计原则有直接的关系。有些原则对几乎所有良好的人机界面的设计都是适用的一般地可从可交互性、信息、显示、数据输入等方面考虑要设计好的人机界面很重要的一点是需要遵守相应的原则其次是增加创造性的设计但创造性的设计也应当是建立在实效性的分析基础上的。只有这样才能设计出用户喜爱的人机界面。 人机界面中应遵循的设计原则有 1 用户原则。人机界面设计首先要确立用户类型。确定类型后要针对其特点预测他们对不同界面的反应这就要从多方面进行设计分析。 2 信息最小量原则。人机界面设计要尽量减少用户记忆负担采用有助于记忆的设计方案。 3 帮助和提示原则。要对用户的操作命令做出反应帮助用户处理问题。系统要设计有恢复出错现场的能力在系统内部处理工作要有提示尽量把主动权让给用户。 4 媒体最佳组合原则。多媒体界面的成功并不在于仅向用户提供丰富的媒体而应在相关理论指导下注意处理好各种媒体间的关系恰当选用。 当前人机界面设计要积极研究人的交往习惯和对话方式让界面设计符合这些习惯和方式达到人机界面的智能化。 3. 人性化界面设计方法 对于用户来说一个优秀的人机界面应能够满足大多数用户的操作喜好以及感官需求让用户能够轻松控制其使用过程获取用户的满意的。而以用户为中心的设计方法User-centered DesignUCD 的基本思想就是将用户时时刻刻摆在设计过程的首位。 3.1 以用户为中心的设计步骤 众所周知人机界面是一个软件与用户之间的交互桥梁。以用户为中心的人机界面设计要让使用者能够足够容易理解设计者的设计意图进而发起正确的操作即设计者期望的操作同时设计者应从使用者那里得到有效的反馈信息用于改进其设计两者之间能有效地实现双向互动使开发的过程重复迭代收敛于满足用户需求的产品。 以用户为中心的人机界面设计方法步骤如下图所示 图3.1: 以用户为中心的人机界面设计方法步骤 3.1.1 用户建模 创建用户模型是人机界面设计的第一步。发现用户了解用户想做什么知道什么之类具体而非抽象的问题。不仅应以使用者所处的大环境为主了解未来情境还应当对使用者更深入探索对用户进行宏观和微观的研究。研究用户的目的在于激发设计团队并让他们聚焦在某些关键点上在时间和预算有限时要换位思考沉浸在用户的环境中了解实实在在的使用者的需要。可以对用户使用产品的过程做情节描述考虑不同环境、工具和用户可能遇到的各种约束。可能的话还应当深入到实际的使用场景中去。设计师可以通过与用户交流让用户在工作时边想边说并了解用户执行任务的过程找到有利于用户操作的设计而不是硬要用户说出自己的想法。因为人们在描述和实际操作之间往往大相径庭常常遗忘或省略一些例行任务或表面上无足轻重的细节而这些细节有时往往是界面设计的关键所在。 3.1.2 分析需求 完成用户模型定义后需要定义和分析用户将履行的任务寻找与任务相关的用户心智和概念模型。对观测来的结果进行分析并总结出几个主要的设计主题。通常用视觉化的形式视频、图画、剧本等 来展示给设计团队以便突出重点让他们有思考的基础。 分析需求有很多种方式主要目的是为了将用户的需求展示给设计团队并让团队的成员们理解用户的需求到底是什么。但是软件开发的经验告诉我们用户的需求目标很难被开发团队完全理解因为用户的需求被抽象、分解后细节的丢失比较严重。开发团队需要一种帮助机制来推动对于用户需求的理解和抽象。 基于剧本的目标模型开发是一个不错的选择使用编写需求剧本的方式可以将分析的粒度由粗到细逐步求精并能够保留用户的需求细节。撰写的剧本可以包含麻烦的片段、期待的片段即人与产品交互使用情境中避免出现以及期待出现的情境。 基于剧本的需求分析既为设计决策提供依据也为系统实现后的评估提供依据。利用它能产生一个完整、明确的任务模型使设计者明确系统应完成的目标以及系统是怎样帮助用户去完成这些目标的。 3.1.3 架构产品 在完成用户建模和需求之后就可以使用这些关于任务及其步骤的信息构建草图进一步构建出产品的原型。这种原型描述粒度较粗但其优点是简单、易于理解和操作。我们可以使用各种各样的办法构建原型。例如可以用故事板、剧本等可视化地描述用户使用产品的过程也可以使用原型工具来模拟过程以此说明产品是如何运行的。在架构人机界面的原型时也应考虑到使用者界面的设计标准来架构技术框架。例如用户机能及其生理特征是在以用户为中心的设计中应该考虑的问题。原型是很好的测试设计的方法它能够帮助检验界面设计方案在多大程度上锲合用户的操作。想象一种新产品可能适合自然生活方式和用户态度是常见的构建方式并且可以记录用户的思维方式、一些潜在的操作细节以及操作习惯。 3.1.4 用户反馈 一个成功的产品离不开一个成功的用户界面而界面则是用户操作软件的接口。人机界面评估就是把构成人机界面的软、硬件系统按其性能、功能、界面形式、可用性等方面进行评估这里不仅仅要与人机界面预定的标准进行比较更重要的是进行用户测试。随着软件日新月异的发展用户关注的不仅仅是可用性同时也对产品使用的舒适度提出了更高的要求综合而言用户的体验度是评估一个用户接口是否成功的标志。初期用户测试针对的是低精确度原型。高精确度的原型将在之后的流程中给出。在进行用户测试时应仔细地观察、倾听用户在执行特定任务时的反馈看是否与设计定义相一致同时对参与者的指导必须清晰而全面但不能解释所要测试的内容。使用测试记录获得的信息来分析设计进而修正和优化原型。随着所反馈的人机界面的细节设计不断加入在易学性和易用性之间达到一个平衡在造型、色彩、材质等方面进行深入。不断地重复这个循环迭代的过程直到用户满意进而形成最终的方案并实施。 4. 界面与逻辑分离 对于软件开发人员来说人机界面的设计并不是仅仅编程实现那么简单。一直以来虽然开发人员绞尽脑汁将界面设计的更加绚丽、互动感更强这大大的增加了开发人员的工作量。因为开发一个完美的用户界面不仅需要计算机领域的相关知识还要用到心理学、艺术学、社会学等各个领域内的知识。 能把软件的界面设计和逻辑设计分开是多年来程序开发人员的梦想。而当下对于界面设计与逻辑设计分离的最佳方案当数微软在Vista上应用的新一代图形系统WPF了。 4.1 WPF简介 WPF是微软新一代图形系统运行在.NET Framework 3.0架构下为用户界面、2D/3D 图形、文档和媒体提供了统一的描述和操作方法。基于DirectX 9/10技术的WPF不仅带来了前所未有的3D界面而且其图形向量渲染引擎也大大改进了传统的2D界面。它提供了丰富的.NET UI 框架集成了矢量图形丰富的流动文字支持3D视觉效果和强大无比的控件模型框架。最重要的是它能够清晰而又有效的将用户界面和程序实现分开。它使得设计可视化的用户界面的设计者和编写内部核心代码的开发人员可以并行工作。 使用WPF开发模型界面设计人员可以直接使用Microsoft Expression Blend 来设计界面最终完成的方案又可以直接拿给软件开发人员。由于开发人员可以直接使用设计出的界面成果在其中加入程序的逻辑。 4.2 WPF与XAML 针对Vista操作系统微软提供了专门的界面开发语言XAMLeXtensible Application Markup Language可扩展应用程序标记语言。XAML作为微软Vista操作系统的界面描述语言它可对WPF程序的所有界面元素进行定制从而构建炫丽夺目的软件界面。 XAML作为界面描述语言它最终会被编译成.Net后台代码。因此它能够同后台进行逻辑处理的.NET语言如C、J、C、VB等协同工作其工作性质类似于ASP.NET中的HTML。XAML的产生使得界面描述代码和程序代码得以分开从而提高了开发效率并有利于团队开发。 4.3 WPF的设计制作 大多数WPF程序都将同时包含XAML代码和程序代码。开发时一般分成两步 1 使用XAML定义程序界面如前所述可以手工编写也可以采用Experssion Blend等可视化工具编写 2 用.NET语言C VB.Net等编写相应的逻辑代码。和ASP.NET类似逻辑代码既可以直接嵌入XAML文件中也可保存为独立的代码文件。 XAML并非设计WPF程序所必须我们依然可以按照传统方式使用程序代码来实现界面设计制作。但是如果使用XAML界面设计和逻辑设计就可以完全分离。这样不但使程序的开发和维护更加方便而且当进行团队开发时可真正实现“专业的人做专业的事”把界面设计交给专业的美术设计师们去完成而让我们精力和时间都宝贵的程序员们专心致志于业务逻辑的实现。真正做到“各尽其能各施其职”最终得到一个功能强大、界面一流的WPF程序。 WPF与普通的WinForm窗口的比较如下图所示 图4.1: WPF程序窗口“FUN”与Windows窗口比较摘自网络 4.4 MVVM设计模式 MVVMModel-View-ViewModel框架的由来便是MVPModel-View-Presenter模式与WPF结合的应用方式时发展演变过来的一种新型架构框架。它立足于原有MVP框架并且把WPF的新特性揉合进去以应对客户日益复杂的需求变化。WPF的数据绑定与Presentation Model相结合是非常好的做法使得开发人员可以将View和逻辑分离出来但这种数据绑定技术非常简单实用也是WPF所特有的所以我们又称之为MVVM。这种模式跟经典的MVP模式很相似除了你需要一个为View量身定制的Model这个Model就是ViewModel。ViewModel包含所有界面特定的接口和属性并由一个 ViewModel 的视图的绑定属性并可获得二者之间的松散耦合因此需要在ViewModel 直接更新视图中编写相应代码。 图4.2: MVVM架构图 View绑定到ViewModel然后执行一些命令在向它请求一个动作。而反过来ViewModel跟Model通讯告诉它更新来响应界面。这样便使得为应用构建人机界面非常的容易。往一个应用程序上贴一个界面越容易外观设计师就越容易使用Blend来创建一个漂亮的界面。同时当界面和功能越来越松耦合的时候功能的可测试性就越来越强。 在MVP模式中为了让界面层能够从逻辑层上分离下来设计师们在界面层与逻辑层之间加了一层Interface。无论是界面开发人员还是数据开发人员都要尊重这个契约、按照它进行设计和开发。这样理想状态下无论是Web还是Window应用程序都可以使用同一套数据逻辑了。 5. 结论 如果把一款软件比作一个人那么人机界面就是一个人的外表。爱美之心人皆有之人机界面的好坏直接影响到用户的体验度。应用以用户为中心的设计方法可以更好地满足用户的需求。让用户在使用软件的过程中直觉上感到好用并且有一个愉快的心情。用户对使用体验的肯定将造就顾客的忠诚度及公司名誉。毋庸置疑未来的人机界面设计将更加关注用户的感受。 而对于软件开发者来说界面与逻辑解耦是所有程序开发人员所关注并一直努力的目标而使用WPF/C开发模式能够比较轻松的解决这一难题设计模式也将从MVPModel-View-Presenter向MVVMModel-View-ViewModel转化使得界面层与逻辑层剥离开来这样对于开发者可以专人专用界面设计人员关注界面的布局以及美工程序开发人员关注底层的逻辑设计。既关注了用户的体验同时又减轻了开发人员的负担。用户与开发兼顾增强了用户体验降低了开发成本。 参考文献: 1 贾晓辉 董智勇 乐嘉锦. 多通道人机界面设计及应用. 计算机应用软件 200825:121-122. 2 梅云. 感性设计人机界面设计新思维. 科技资讯 20089:217. 3 褚中苇 魏东. 交互设计在人机界面设计中的应用. 艺术与设计 2009:93-95. 4 夏敏燕 王琦. 以用户为中心的人机界面设计方法探讨. 上海电机学院学报 200811:201-202. 5 林涛 应晶. 基于剧本的目标模型开发框架. 计算机科学 200027:23-26. 1、引言 软件界面是人与计算机之间的媒介。用户通过软件界面来与计算机进行信息交换。因此软件界面的质量直接关系到应用系统的性能能否充分发挥能否使用户准确、高效、轻松、愉快地工作所以软件的友好性、易用性对于软件系统至关重要。目前国内软件开发者在设计过程中很注重软件的开发技术及其具有的业务功能而忽略了用户对软件界面的需求影响软件的易用性、友好性对界面设计的研究也集中在界面设计技术、设计手段上面。软件开发人员在设计时以经验为参考依据缺乏对实际用户需求的了解。而软件的友好性、易用性同用户特征紧密相联同样的软件界面不同用户可能有绝然相反的评价。因此分析用户特征、了解用户需求和操作习惯是开发软件界面的必有步骤必须引起足够重视。 本文讨论了一种界面需求分析的方法意在探讨研究如何完成针对系统所有用户的界面需求定义从而开发为用户所接受的界面。讨论该方法的目的在于帮助设计人员快速明确用户的界面需求让用户充分参与到界面需求分析中从而在最终界面需求说明中体现用户的思想满足用户要求。 2、界面需求分析过程 21界面元素 通常一个软件界面的元素包括界面主颜色、字体颜色、字体大小、界面布局、界面交互方式、界面功能分布、界面输入输出模式。其中对用户工作效率有显著影响的元素包括输入输出方式、交互方式、功能分布在使用命令式交互方式的系统中命令名称、参数也是界面元素的内容如何设计命令及参数也很重要。影响用户对系统友好性评价的元素则有颜色、字体大小、界面布局等这种划分不是绝对的软件界面作为一个整体其中任何一个元素不符合用户习惯、不满足用户要求都将降低用户对软件系统的认可度甚至影响用户的工作效率而使用户最终放弃使用系统。围绕界面元素所要达到的设计目的是让最终用户能够获得美感、提高工作效率、易于操作使用系统。 目前在界面元素的选择、布局设计等方面的研究进行得较多内容涵盖了人机工程学、认知心理学、、美学、色彩理论等方面的探讨。 22用户角色 界面需求分析必须围绕用户为中心不同于客观功能需求分析具有很大的主观性。虽然界面设计人员可以按照通行的原则来设计但是用户个体的文化背景、知识水平、个人喜好等是千差百异的其界面需求也是相差很大。不同的用户对软件界面有不同的要求表达自己要求的方式也尽不相同。而且用户的界面要求通常不象业务功能需求那样容易明确、有据可查、可以利用专门工具进行分析。多数用户往往并不能提出明确的、全局的界面需求其需求同自身主观因素联系紧密是模糊、变化的。调查用户的界面需求必须先从调查用户自身特征开始将不同特征用户群体的要求进行综合处理再有针对性地分析其界面需求。因此这里引出用户角色这个概念模型。 用户角色是指按照一定参考体系划分的用户类型是能够代表某种用户特征、便于统一描述的众多用户个体的集合。用户调查的目标是通过调查分析用户特征将每个不能建立模型的单一用户归纳为集合将用户集合定义为角色模型同时赋予不同的优先级别了解记录其界面需求。用户的需求调查和其特征调查即用户角色定义往往同时进行。调查的方法有很多种如直接交流、资料统计、表格调查等。用户角色定义的原则是有代表性、同系统功能有关并有利界面的需求分析。一个用户角色可能包括大量的用户个体他们对于界面的要求可以按照一定的界面模型进行定义。在一个软件系统中用户角色定义时所依据体系可以多种多样一个单一用户可以属于不同参考体系下的不同用户角色但是一个用户角色要求能够代表一种界面需求类型。如收银员就是按照用户工作职位划分出来一个用户角色如果按照操作计算机的熟练程度属于收银员角色中的系统用户又可以分为熟练用户、生疏用户。 用户角色定义就是人机工程学理论在软件开发过程中的一种应用。用户角色的确定可以根据系统需求方提供的用户资料和行业经验如美学观念、用户计算机水平、用户工作内容等对用户进行初始角色定义然后在需求调查过程中进行修正扩充。 之所以要定义用户角色是因为不同的用户角色在需求分析过程中的需求目标不同侧重点也不同甚至互相矛盾。在一个大型系统中需求分析人员面对的用户只能是众多单一的用户个体他们的需求千奇百怪。只有明确了用户角色需求分析人员才能在纷乱复杂而又不甚明了的用户要求中理出脉络依据用户角色不同的优先级别平衡众多用户需求中的矛盾抽象出完整的GUI界面模型。 23需求变化 我们知道用户对于界面通常只能提出基本的要求而且提出的要求也不一定科学因此如何诱导用户在项目进行中尽早明确自己的需求是任何需求分析人员都会面临的问题。 用户对目标系统的认识和需求的变化过程如下图所示 用户根据自己想象中的理想系统向分析开发人员提出自己的要求。开发方实现目标后交给用户在系统实施运行后用户将实际目标系统同自己想象中的理想系统对比同时目标系统的使用会刺激用户修正想象中的理想系统然后提出新的需求。由于软件界面的评审因素同用户的心理状况、认识水平有很大关系所以对于软件界面用户只有在使用过之后才能知道是否符合自己的操作习惯颜色、字体等界面元素是否满足自己的要求从而提出更明确的要求。 24界面原型 由于在软件开发前期用户的界面需求很模糊甚至没有自己的理想模型用户提出的要求就很难量化结果很容易被需求分析人员忽略。因此在用户角色定义完成后应用快速原型法来设计用户界面可以帮助用户尽快完善自己的理想模型。 利用界面原型可以将界面需求调查的周期尽量缩短并尽可能满足用户的要求。快速原型法是迅速地根据软件系统的需求产生出软件系统的一个原型的过程其主要好处是可尽早获得更完