文档库 最新最全的文档下载
当前位置:文档库 › 苹果用户界面指南

苹果用户界面指南

苹果用户界面指南
苹果用户界面指南

苹果用户界面指南

此指南的组织结构

此指南主要分为三部分,每一部分又包含很多章节

第一部分,“应用软件设计原则”,描述了最基本的设计准则,在设计任何应用软件时,要时刻记住这些原则;

第二部分,“苹果系统体验”,在这里我们将探讨苹果OSX系统技术,这些技术已被大多数用户所接受。您可以的利用这些方法是你的开发过程更加的顺畅,确保您的应用软件在整个系统的操作中运转流畅。

第三部分,“苹果系统界面”,主要描述苹果OSX系统的用户界面。为您解释特定的用户界面元素如何为您服务,以及包含大量原则,以及如何在你的应用软件中使用和实施这些原则。

第一章应用软件设计原则

《苹果人机界面指南》的这一部分将介绍蕴藏在苹果系统界面背后的哲学和心理学。阅读本章,你可以通过学习设计软件的准则和设计软件需要考虑的方方面面,从而设计出非常出色的软件产品。这个产品具有直观的、吸引人的人性化界面。你还会学习如何将好的用户界面设计思想融合到你的设计当中和决策过程当中;如何在整个设计中使你的用户参与进来。本节还会告诉你,如何使用这些方法和原则,并举一反三。

1.1 设计过程

这一小节介绍给大家一些基本方法,这些方法会帮助你设计出非常出色的软件产品。一个伟大的软件设计包括认真分析用户的需求,毕竟用户是最终使用你产品的人。找出用户的需求和满足需求的方法,是设计过程中非常重要的一步。

1.1.1 使用户参与到设计过程中来

使你的产品满足目标用户的最好方法是使设计过程时刻在用户的督导之下进行。在设计的每一个环节都坚持此原则,这可以帮助你发现你产品中的亮点和薄弱环节。

当你给人机会使用你的软件时(或者是一个软件的演示模型),你可能会发现一些在你最初设计软件时想象不到的问题。尽早的找出并解决这些问题,能够帮助你在后期的设计中节约时间和成本。明确用户的需求有助于你的产品提供高效的解决方案,而且非常容易学习和使用。这些改进将转化成竞争优势、增加销售额、提高用户的满意程度。

1.1.1.1 了解你的用户

明确并懂得你的目标用户,是你在设计产品时需要迈出的非常重要的第一步。同等重要的是,分析与你的产品市场领域相近的其它产品,判断其目标用户,以及这些产品是不是你的竞争对手,你的产品有没有交叉的地方。学习其他产品设计师的方法将会帮助你分析自己的目标用户需求。

创建一个描述某人在某天使用了你设计的软件的记录纲要是非常有用的。思考这些用户使用产品解决问题时的不同的环境、工具和强度。如果可能的话,到真实的工作场景中研究人们如何完成那些你希望你的产品帮助他们完成的任务。

在整个设计过程中,找到那些符合你目标用户的人来使用你的产品演示模型。倾听他们的反馈,用心记录下他们关心的地方。在开发产品时,要时刻把这些用户和他们潜在需求铭记在心,而不是电脑和电脑的潜在需求。

记住,作为软件的开发者和界面的设计师,你应该比你的用户具有更加渊博的知识和对你软件的深刻理解。同时,你还要应用这些知识给你的产品选择最佳的默认设置,以及确定最准确的信息展示。记住,你不是给你自己设计产品,你不是为自己的需求、自己的使用习惯而设计——而是你的潜在用户。

1.1.1.2 分析用户任务

当你明确了你的用户,你需要明确和分析你的用户是如何完成他们任务的。研究那些将会使用你产品的用户的心理模式和概念模式。画一幅用户完成一项任务的心理模型图,而且明确的估算出用户需要经过哪几个步骤才能完成这个任务、以及这些步骤的组织结构和所有的工作流程。

为了帮助你发现目标用户的心理模式,你可以观察在日常生活中他们是怎么完成与你提供的服务相仿的事情的。使用什么样的术语?你目标用户的观念、目标、行为怎样?你设计的产品将反映这些方面,但是不要复制你的用户在没有电脑情况下完成工作的方法。要将计算机环境固有的优势发挥出来,把整个流程变得更加简单流畅。

1.1.1.3 创建演示模型

明确定义好你要完成的任务,以及完成这些任务所需要的步骤,利用这些信息完成初始设计,在此基础上创建出一个演示原型。演示原型是检验你设计方面和保证你产品更好的服务于用户的非常好的方法。你可以用各种方法创建原型,并不是所有的原型都要写代码。比如,你可以绘制出功能流程图,将你的产品应用的过程视觉的呈现出来,就如同用户在完成这项任务时的使用步骤。你也可以使用一些专业的原型设计软件,来模仿你产品的一些功能及演示你的产品如何使用。

注意:记住你的演示原型必须迅速完成,而且是以完善你的设计为目的。如果你需要在的原型设计中加入代码,避免在最终的产品中使用相同的代码。

1.1.1.4 观察用户

当你做好产品的演示原型后,可以请你的目标用户来使用,并观察他们的反映。当这些目标用户在使用这些功能时,用心观察和倾听,甚至用录像机记录下他们的反映。观察使用者可以帮助你检验产品设计的如何,以及产品的问题在哪里。如果产品设计师和工程师在场的话,鼓励他们来观看这样的测试,但是要保证他们不要影响用户,这样的话才不会影响测试的结果。

在用户的测试当中,在你的产品的关键区域,确保要设置一定的测试范围。将测试的重点放在你设计产品时定义非常明确的功能。你应该明确的提示你的用户,但是不要透露你们想要测试的内容。

使用从用户体验测试中的得到的信息,通过这些信息来检验你的设计和你的演示原型。当你做好了第二个设计原型后,开始第二轮用户测试,看看你改动后的设计的工作性能如何。你可以反复这样做,直到你非常自信你已经满足了目标用户的需求,并创造出了一款非常实用的产品,这个产品具备出了一个伟大软件产品应有的所有特征。

1.1.1.5 组织用户测试的注意事项

有很多方法可以得到用户的反馈信息。包括可用性测试、认知测试、群体测试、现场观察和启发测试。在组织用户体验时可以使用以下原则,但是记住这些原则也适用于其他类型的测试。记住这些测试并不是实验,你不会得到精确系统的分析数据。但是,你可以看到用户在使用你产品时遇到的困难,然后就可以完善你的产品了。

如果时间和预算允许,可以考虑与一个具备专业测试能力的专家一起开始这个测试。如果这点行不通,尽量允许一个有代表性的同僚加入你们的队伍来,使用你产品的演示原型,并且把他们的意见收集起来。仅这一点就可以提高你产品的易用性,因为只要做一些测试就比不做要好得多。如果你准备开始一个以用户亲自体验为基础的测试,按照以下的方法,你将会得到最有价值的信息。

?介绍自己并简单的描述这次测试的意图。大多数情况下,不能提及你要观察什么。

要使参与者明白你是在测试产品而不是参与者本人。

?告诉参与者你的测试要持续多长时间,而且在任何时间,可以以任何原因结束测试。

不要让参与者感到他们是被迫完成了整个测试。除此之外,因为进行的任务非常困难和复杂而使得用户推出退出,说明你的产品应该简化一下了。

?我们经常使用一套叫自言自语(把解决问题或完成任务的思路和步骤口述并记录下来)的测试方法。这种方法是这样进行的——要求你的参与者在体验的过程中自言自语,说出在体验过程中他们想到了什么。听到参与者的想法和他们想得到的,你就可以判断出他们对你产品的期望,也可以分析出他们的意图和解决问题的思路。

?当你听到了用户在使用你产品是的想法和期望,会给你提供非常多的有用信息。特别要说的是,你将发现用户在完成这项任务时的思维习惯的一些细节。你可以通过让用户描述一个简单的任务,使用户说出他们的想法,就像他们平时给自己准备咖啡一样。

?简要的说明参与者将要做的事情。介绍一下参与者接下来将要使用的所有设备。如果你在实验室,介绍一下房间里所有设备的使用目的(硬件、软件、记录装置等等),以及在实验当中它们将如何使用。如果在用户体验之前你需要说明一下你的产品,请不要说出你要测试的目的。

?在参与者使用你产品的时候,千万不要打搅他们,也不要让辅助者、软件开发人员以及任何人给予他们额外的帮助。这是最真实的了解用户使用产品时,对产品印象的最好的方法。比如,如果用户在体验的过程当中遇到了麻烦,而你马上告诉他解决方法,你将失去在用户体验过程中最宝贵的信息——找出用户在哪里遇到麻烦,以及他们如何知道接下来该怎么做。

注意:你想介入并给参与者帮助,有很多种方法,但是你应该在测试之前就考虑好这些方法。比如,你可以允许参与者思索3秒后,再提示他们,否则在你提供帮助之前会出现一系列截然不同的问题。无论如何,当你的参与者非常迷惑时,适当的提醒要比他们完全放弃要好很多。

?通过分析什么是你要找的和回答参与者提出的任何问题,来得出结论。

?使用这些结论。当你观察使用者时,你会发现他们这在做你根本就不想让他们做的事。当你发现参与者犯错误时,你的第一反应是责备他们毫无经验和缺乏知识。这是错误的,记住,让用户体验产品的目的,是找出由于错误的设计,而导致你产品易用性差和效率地下的地方

?找出典型。因为一个用户的问题并不代表所有用户都会有同样的问题。认真分析问什么这个用户会遇到这样的问题,如果这非常容易解释的话,可以考虑放弃这个问题,否则,那就承认你的产品存在问题。

?让你公司所有的职能团队都来查看这些结果,包括普遍的产品、市场、工程、用户界面设计、文档编写、质量支持团队等。每个参与者都会用他们自己的经验来检验这些结论,从而分析出造成用户迷惑的易用性问题。

1.1.1做出设计的决定

当你做出应用软件功能方面的设计决定时,衡量成本是非常重要的,并不只是财务方面的,还有那些潜在的与利益相冲突的方面。当你每加一项功能,以下的问题会随之产生。

?软件体积会变得更大。

?你的软件运行变得更慢。

?你软件界面会变得更加复杂。

?你使用更多的时间开发新的功能而不是将现有的功能做的精益求精。

?你软件的文档和使用帮助将大量增加。

?你冒风险做的这些功能改变可能会影响现有功能的正常运转。

?你增加了检测的软件功能能否正常运转的时间。

选择合适的功能并专注于有需求的功能,将他们坚定的贯彻到底,将会给日后的工作节约时间、提高效率。做一套不实用的功能,而且没有安排好设计、程序、测试和文档资源的工作,当日后大量的错误产生或者用户不明白应该如何使用你的产品时,会大量增加的你的成本。接下来的章节将会向你提供额外的要素,这些要素使你在决定给你的产品添加功能是应该考虑的。

1.1.1.1避免功能爆炸

如果你正在开发一套简单的应用软件,增加一些与开始计划不是很相关的功能,看上去很诱人。这些功能的增加会使界面变得复杂,由于太过繁杂使得用户使用起来很慢而且困难。努力保持原有计划的功能项,只有在它们与你的工作流程相关时在加上这些功能。

最好的软件产品不是功能最多的产品。最好的产品是那些与它提供的服务紧密集合,而且非常实用的产品。

1.1.1.2 适用于80%用户的解决方案

在你设计产品的过程中,如果发现了你产品设计的问题,你应该考虑到适用于80%用户的解决方案,即你的软件至少要满足80%用户的需求。这种有代表性的设计原则很简单,更加适合解决问题。如果你试图给对你非常有影响力的目标用户设计产品,而这些用户只占到总用户的20%,你的产品对剩余的80%的用户来说毫无意义。尽管这些少数有影响力的用户可能对软件功能有很好的想法,但是剩下的大部分用户不一定有和他们一样的想法。在设计过程中考虑到大部分的用户,会帮助你找到适用于80%用户的解决方案。

1.2 伟大软件的特征

大多数用户被苹果Macintosh版本所吸引,尤其是最近的苹果OS X版本,因为他们觉得苹果比起其他的软件平台,给他们提供了更加出色的用户体验。苹果电脑有品位、使用灵活、安装简单、维护方便而且功能强大。苹果集合了非常多可信赖的因素——直观的设计、无以伦比的图形绘制、完美的安全性和用户满足用户需要的功能。第三方的应用软件通过提供特有的,一直被苹果设计原则所坚持的高端精密的特征和行为的垂直解决方案,来完善、强化这套系统。

为了帮助您在软件产品中设计出与众不同的解决方案,下面的章节将向您提供在设计软件过程中应该努力达到的较高标准。

注意:虽然达到下面所有的目标是非常必要的,但是达到所有的目标可能不切实际或者没有必要。最终你的目标用户将引导你做出最佳的选择。

1.2.1高性能

性能是指你的软件可以观察到的一些标准,如运转有多快、使用效率有多高,它是软件成功的关键。如果你的软件运行很慢,用户就基本不会买账。如果你不给用户相应的信息反馈,即便你用了最先进的运算方法,你的软件也会让人感觉运转很慢。

有研发设计其他软件平台(包括Mac OS 9)的研发人员,应该花谢时间来研究一下影响苹果OSX系统性能的要素。理解这些要素能够帮助你在设计和实施方案上有更好的选择。

这里有一些与性能有关的原则应该牢记:

?利用精确的度量来判断性能问题。千万不要基于猜想来调整你软件的性能。应用苹果提供的工具,如“Shark”将你软件当中性能薄弱的数据归总到一起。利用这些数据将问题进行分类,然后解决他们。你可能也想研发一个专用于你产品的度量工具来将这些监控数据汇总在一起。

?不要在你研发周期的的尾声才做性能的调整。在你的产品需求中要包含定义非常明确的目标。尽早的将基本的检测数据汇总在一起,而且在研发的过程中也要不断的汇总这些检测数据,从而将目前的进展情况与既定目标进行比较。如果你发现了性能中的不足之处,采取正确的行动来解决这些问题。

?选择最新的应用程序接口替换以前的应用程序接口。苹果OS X系统拥有最新的界面设计,得益于最新的技术和设计理论,这些使得其具有最好的性能。

?选择合适的技术解决当前的任务。例如,Cocoa分布式的目标可能更加容易使用,但是如果你的程序需要在网络上实现最高的性能,CFN网络和BSD插孔可能是最好的选择。

?利用一些线索和思路来提高你代码的反映能力。利用一些具有相似性的线索,能够提供给你非常有意义的性能优势,尤其实在多处理器(multiprocessor)的系统中。

?避免反复的检测系统来获取信息。循环会浪费非常多的CPU资源,而且对最新的应用程序接口来说也是没有必要的。最新的应用程序接口会在情况变化或需求数据可以获得时,提供异步回收机制来通知你。使用这些被替换的机制。

?排除任何不必要的输入和输出操作。访问硬盘机和光驱(optical drive)是你能在计算机中运行的最慢的操作。将这些运转活动降到最小限度,能够非常有效的提高产品的性能。

?充分利用苹果OSX系统的虚拟内存(virtual memory)系统,来优化你的内存使用。

理解苹果OSX虚拟内存系统是如何运转的,能够帮助你更加高效的使用内存。

?除非你的软件十分需要,否则应该避免加载资源。加载资源开始是浪费内存,接着在这些资源使用之前就会引发内存分页(trigger paging)。等到你需要这些资源而且能够妥善的储存时在加载他们。

?使用有阳刚之气(Mach-O)的可执行格式。阳刚之气是苹果OSX系统可执行格式与生俱来的特质,而且被所有的构架系统所应用。使用遗留下来的代码碎片整理器(legacy Code Fragment Manager)可执行格式需要额外的接桥规则,这个规则可以连接你的程序和系统数据库。这个接桥会引发一些小的性能损伤(penalty),会增加等待时间。

1.2.2 易用

任何易用的系统都会给用户提供非常明确、直观的体验。它对纷繁复杂问题提出了最完美的解决方案,而且拥有一套经过深思熟虑设计出来的软件界面,这套界面成为了路人皆知的经典(familiar paradigms)。它还非常容易安装和设置,因为它提供给用户容最佳的选项。同时,在用户需要的时候用户可以直接跳过这些选项。它提供给用户在当前使用环境下相关的工具,同时又排除、禁闭掉与当前操作无关的工具。它还提醒用户警惕当前正在进行的危险操作,同时提供方法挽回已经发生的错误操作。

在进行易用性设计的时候,请记住以下原则:

?在你的用户界面中,用象征、隐喻的方法表现那些具体的熟悉的概念,使用户能够在电脑环境中,更加容易理解一系列可预知的操作。如苹果Mac系统用“文件夹”的概念,来保存数据文件。

?关注解决方法,而不是功能。避免由于竞争的原因,而不断的增加功能。确保每一个功能都能给用户带来切实的利益。

?确保你的产品包装能够清晰的说明系统的需求,以及能够使用户马上开始使用你软件所需的所有信息。

?给你的系统设置一些非常恰当的默认选项,避免一个很长的枯燥的设置过程。如果你需要从用户那里收集一些信息,可以考虑提供一些安装帮助。提供给用户一些非常恰当的内置设置,并且要给用户通过设置面板修改这些设置的权利。

?不要一次显示过多的信息而使用户不知所措。在用户需要相关信息时,这些信息应该逐步的展示出来;当用户用不到这些信息时,用户可以随时屏蔽掉它们。

?将应用程序打包分类。应用程序束是软件功能区分布最好的机制,他可以简化设备,而且方便在寻找器中转移。

?如果你是硬件的开发者,应该支持“即插即用”(plug-and-play)的硬件已发布标准。

苹果系统支持很多的USB和火线接口设备的“已发布的硬件标准”,如麦克风、键盘、硬盘机。如果您遵循这些标准,您的产品将会在插入电脑时立即运行,而不需要像大多数情况下那样安装驱动器。

?不要假设一个用户已经进入了系统,这个用户就有权限进行操作。快速的用户转换意味着在很多情况下你的系统应该同时运行,你的应用软件需要准备随时恰当的解决这些问题。

?当用户进行了错误的操作时,要给他们提示信息,来报告此错误。当错误发生时,错误的提示信息应该提示给用户发生了什么事、为什么发生、和在此过程中可选择的方法。如果有可能的话,提供用户一个变通的方法,而且尽你的一切所能放置好用户丢失任何数据。

?在用户界面中的路径区域和文件名称的地方显示其名称,显示名称应该考虑到用户的语言偏好和文件扩展名偏好。

?允许用户随意的浏览、操作你的系统,而不会造成用户数据的不可恢复性的破坏。

可以提供“取消操作”和“返回”这样的功能,同时也应该提供恢复文件数据的功能。

?把你的软件国际化。在可能的情况下提供地域化的版本。用户在使用自己国家语言时会舒服很多。

?使你的产品能够被残障人士使用。在你的应用软件中加入辅助的操作,使残障人士可以使用他们。即使系统可以自动的提供很多的辅助功能来帮助他们完成任务,但是仍然需要努力改进这些辅助功能。

?提供一个恰当的程序使用说明书。苹果程序使用说明书是一个基于HTML的帮助系统,您可以结合程序使用说明书来操作您的系统。

1.2.3 吸引人的外观

苹果系列系统一个尤为受到用户青睐的方面是其硬件和软件,经过优雅的设计和吸引人的外观。虽然创造出吸引人的硬件和系统软件是苹果人的分内之事,但是你也应该充分的利用苹果OSX系统的长处,给你自己的软件一个吸引人的外观。

探测器和其他软件可以与苹果一起,使用高清晰度、好质量的图形和图标,它们32-比特颜色和透明度。为了软件的外观和更好的为用户传达相关的信息,应该确保你的软件应用高质量的图形。例如,系统使用推动按钮来区分非常接近的选择,用透明效果来增加窗口的空间感。

这里有一些准则,在你进行软件外观设计时需要牢记:

?从包装到用户界面都要光彩照人,确保你的软件一看上去就是经过专业设计而成的。?使用高质量的图形和图标。如果需要,请一家专业的图形设计工作室为你设计。

?采纳苹果用户界面中各个元素的标准,如控件、菜单和提示框。不要按照你自己使用习惯来设计控件和提示框,而抛弃系统提供的控件和对话框。

?使用32-比特色彩,苹果系统经过优化可以提供最高质量的32-比特颜色的外观。不要把你的视觉元素,限制在8-比特颜色的调色板中。8-比特的图形是支持高雅外观的色彩的最小值,也是最容易实现的。

?使用“Interface Builder”来设计你的用户界面。

?最新的程序接口,如Quartz、Cocoa、ATSUI、and OpenGL. 来编辑你的文本和图形。

不要应用过时的绘图程序,如QuickDeaw。

1.2.4 可靠性

一个可靠的系统能够得到用户的信任。这样的程序通过用户可预计的渴求的方法,提供给用户信息。一套可靠的程序能够保存用户所有的信息和数据,并且尽一切可能保护这些数据的丢失和毁坏。这样的系统还要有一套稳健成熟的方法,能够使系统在非常复杂的情况下运转顺畅而不崩溃。

可靠性在各种领域的软件设计中都是非常重要的一点,而且在需要系统长时间运转的领域显得尤为重要。比如,科学领域需要大量的数据设置和很长的时间的运转来得出结论,如果系统在这样的系统运算中崩溃掉,那么科学家很多天甚至很多周的劳动成果就会付之东流。这里有一些可靠性的准则,在你进行软件外观设计时需要牢记:

?确保你的用户界面操作是可以预计到结果的。系统中所有相同的操作应该产生相同的结果。

?你的数据可以在预先看到结果的情况下输出。比如打印,确保用户在屏幕上看到的内容与打印后所得到的内容完全一致。(注意,苹果的打印对话框向您提供了打印预览的设置)

?在数据输入或输出过程中,应减小或避免其损失。如果你系统的输入或输出文件与其它的软件有关联,那么就应该完全支持这个软件的格式。如果你的软件不能把源文件格式完整的输出,提示你的用户,将会发生数据丢失,并且在复制源文件的过程汇总提供一个选项。

?在各种条件下测试你的软件,确保他的反映良好。模仿网络环境失效或安装卷(mounted volume)消失,确保你的软件能够轻松的适应这些环境。

?在你的软件包装上明确的写出此软件运行的系统要求。除非你在很低劣的硬件上测试运行过你的软件,否则不要假设你的软件能在这个硬件上面运行。同样,写明你支持的苹果系统的版本号。

?遇见可能发生的错误,而且恰当的有条理的加以解决。一个功能运行一个包含结果的代码,如果出现问题,点击查看问题并给出合适的解决方法。你也可以使用异常处理程序来找到错误,但是要保守的应用。因为异常处理程序会增加你软件的内存轨迹,会降低你软件的性能。

?确保用户的输入,而且确保输入后的操作结果是用户想要的。比如,如果用户想格式化一个文件,确定用户输入的数据是正确的。

?使用苹果提供的功能和调试工具找出内存的缺陷和你代码中的其它地方的问题。这些工具能够帮助你发现你发现不了的问题。

?用最新的应用程序接口,它比较老的应用程序接口更好控制系统配置。

?选择基于系统标准的应用程序接口。而不是你自己使用习惯的应用程序接口。

1.2.5 适应性

一个适应性非常好的系统能够根据不同的环境而作出适当的调整。那就是,在当前的情况改变的情况下,系统也不会停止工作。如果网络中断,一个适应性非常好的系统能够允许用户在掉线的情况下继续使用。

苹果OSX其中的一项很强大的功能,就是能够非常快速简单的适应配置构造的变化。比如,如果用户在系统个性设置里修改了电脑的网络设置,这个变化就会被如Safair(苹果浏览器)和Mail这样的应用软件自动获得,它使用了CF(寻线机)网络技术来控制网络配置构造的自动变化。

这里有一些适应性的准则,在你进行软设计时需要牢记:

?在你的界面当中创建出可逆的,使人容易理解的机制。确保你的软件能够处理各种情况,如一个系统盘突然消失或网络突然中断,提供给用户一个将文件存储到其他系统盘的选择或稍后重新连接网络。

?不要假象一个硬件是可以使用就去使用它。硬件的配置很大程度的依赖于电脑、地区和用户。比如,并不是所有的苹果电脑都在中央处理器上安装了速度引擎。同样的,不是所有的键盘都布置了同样的按键。硬件也能够在运行的时候配添加或删除。使用输入/输出配置原件接口来检测设备配置的可用性。

?不要根据当前用户的地点场所作出任何的假设。确保要准备好解决不同的日期、时间和数字格式。同样,不要假设当前用户的地址格式就是这个用户正在使用的地址,因为,这个用户会在地址簿中留下其国外的地址。

?不要对你的软件执行环境进行猜想。如果你的系统正在一个网络启动(NetBoot)的环境中运转,你有权使用的系统资源应该被限制或只支持只读模式(read only)。比如,在一个特定的网络启动环境下,只有用户的主目录是何以修改的。

?要对屏幕中的可用性和解决方法非常敏感。苹果OSX支持监听器的热插拔((hot-plugging or Hot Swap)功能就是允许用户在不关闭系统,不切断电源的情况下取出和更换损坏的硬盘、电源或板卡等),而且通过Quartz服务(Quartz 是一个功能齐全的、开源的job时间调度系统。)通知应用程序的变化。你的软件应该恰当的对窗口的位置和方位的调整进行反馈。

?应用最新的应用程序接口。苹果一致努力确保它的最新系统应用程序接口能够恰当的解决配置的变化。尽管一些以前的应用程序接口也可能支持配置的变化,但是这种支持会随着将来的发布而变化。

?不要考虑自定义的设备驱动程序。输入\输出配套原件包含工作驱动来支持很多的标准协议和设备型号。依靠这些驱动就意味着你的硬件能够在任何版本的苹果OSX系统中使用。

1.2.6 互用性

互用性(协同工作的能力)是指一个系统在不同环境下沟通的能力。这种沟通要么发生在用户之间,要么发生在程序级之间,而且这种沟通还包括含在当前或远程计算机的运转过程。在程序级里,一个有协同工作能力的系统提供很多方法使数据在它自己和其他程序中来回移动。它还应该支持粘贴板,而且能够在其它相同的或不同的平台系统中,读出文件的格式。它还要确保程序创建的数据能够被系统的其它程序读出来。

用户可以在服务菜单中看到互用性的功能,比如粘贴板(用户界面中的剪切板)、拖拽、AppleScrept(苹果脚本)、Bonjour(苹果商标名称)、和服务信息。所有的这些功能都提供给用户从一个应用软件中提取或加入数据的方法。

以下有一些准则,在你设计软件的互用性时需要牢记在心:

?任何时候都不要自定义文件的格式,这样可以确保用户之间非常容易的在不同程序中交换文件。如果你必须使用自定义文件格式,那就提供输入或输出的能力,允许用户用其它的应用软件来交换数据。

?使用所有平台都支持的文件格式。确保在一个平台上使用你的应用软件创建的文件,能够在其它平台上的被你的应用软件读取。

?支持文件名的扩展,确保用户在其他平台上能够识别并打开你的文件。

?任何可能的情况下都要使用数据转换的标准协议。XML是一个非常完备的格式,它能够在应用软件和平台中来回的转换数据,因为它可以跨平台的使用,并且应用非常广泛。

?使用Cocoa(苹果的面向对象开发环境,用来生成Mac OS X 的应用程序。主要的开发语言为Objective-c, 一个c 的超集。)和Core Foundation提供的苹果OSX参数选择体系执行标准,来保存配置数据。这些标准在纯文本文件中存放了配置数据,它提供给用户直接或者用脚本修改这些数据的机会。

?细心的设计将你的苹果脚本(ApplyScript)目标模式,使得它们更加灵活并具备功能的拓展性。出色的苹果脚集成需要一些思想,如用户或其它程序如何与你的数据进行交互。

1.1.7 灵活性

灵活性性的设计随着笔记本电脑的普及变得越来越重要。一个灵活的程序应该在反复检测系统或没必要访问周边设备时,不浪费电池的资源。而且在用户转移工作地点、改变显示器设置、使电脑休眠、重启电脑时,不会伤害到电池。

灵活性强的系统,需要有适应不同系统配置的能力,包括适应网络配置的变化。很多硬件设备需要在电脑运转的情况下插入或拔出。灵活性好的系统应该恰当的对这些变化给出相应的反馈。它还应该对电源的使用问题保持敏感。反复的访问一个硬件设备或光驱设备会使得手提电脑的电量消耗很大。必须考虑到经常移动的用户,帮助他们在单一的电池电荷下尽可能长时间的使用电脑。

这里有一些准则,在你设计软件,提高软件灵活性时应该牢记:

?避免反复检测的事件发生。反复的检测系统会毫无意义的浪费CPU使用率,反过来就会浪费可移动设备的电量。最新的应用程序接口有很多种方法在相关事情发生时通知你的系统。记录并接受这些通知,并给出恰当的反馈。相反的,如果你的系统什么都不做,它将被完全的闲置。

?不要让用户在使用你软件的时候,还需要插入系统光盘支持你软件的运转。提供给用户一个配件,这个配件在本地硬件上安装所有系统运行所需的东西。

?使访问硬盘和光驱上文件的次数最小化。为了进一步提高性能,你可以通过经常降低磁盘运转速度来减少电量的消耗。

?使用新的联网接口来适应网络配置的变化。经常移动的用户可能随时变换地点或无线网路接取器。使用CFNenwork(是一个在核心服务框架下的一个框架,它为网络协议提供一个提取库。这些提取元素能够是它在完成多种网络任务时变得更加简单。)和其他的最新接口来为你控制这些配置的变化。

?当进入文件系统时,要有一个安全机制,避免网络卷掉线。如果网络卷消失了,提示用户,并提供一个配件将这些文件保存到其他的使用卷中。

?对屏幕的分辨率和显示器插入、拔出电源后的变化要密切关注。经常移动的用户可能需要插上一个投影仪或其他需要不同分辨率显示的设备,所以不要在你的软件中设置固定的屏幕大小。如果一个显示器的图像不可见,按照这个显示器的需要,恰当的调整所有窗口的位置,图像又会重新显现了。

1.3 人机界面设计

好的产品设计包括一些永恒的人机交互原则。这小节将会向你叙述这些原则,在你设计软件时可以考虑并借鉴这些原则。还指出为了使你的产品在全球范围内有很好的兼容性和广泛使用群体,你应该考虑哪些方面。

1.3.1 人机界面设计原则

这个部分描述了一些关键的原则,对于设计出高雅、高效、直观,以及Aqua(是苹果OSX 系统的用户图形界面和主要的视觉主题。就如同它的名字,它的设计围绕着水这一主题,包括水滴一样的界面元素和不拘一格的使用半透明和反光效果)一直遵守的用户界面设计非常重要。有时这些原则被开发者所忽略,但是这些原则在今天的同样重要,与苹果十几年前第一次发布时的重要性不相上下。事实上,这些原则是苹果OSX系统用户界面设计的动力。

1.3.1.1 隐喻

充分的利用全人类的知识,通过隐喻来传达你软件的观念和特色。隐喻是用户潜在的,对待一项任务的心理模式的构架体系。使用隐喻来表达明确的、为人熟知的想法,明确的使用隐喻,会使用户在电脑环境下自然的接受一系列可预知的观念。例如,苹果OSX系统将储存文件的容器比喻成文件夹;人们可以用平时整理档案柜的方法来整理他们的电脑硬盘。还有其他隐喻的例子,如iTunse播放列表和iPhoto相册,它们应用了现实世界中的音乐点播单和影集的概念。一个控制面板工具一样是完成任务的隐喻,因为它能够向用户说明它的使用意图。

隐喻能够暗示一个特定元素的用途,但是这个用途不能限制隐喻的应用。权衡一个隐喻所代表的含义和电脑所提供的功能,以及隐喻的拓展含义三者之间的关系非常重要。比如说,用户将一些文件放在回收站中,不能被真实生活中将文件扔到废纸篓中的含义所限制。(我的理解是,电脑中的把文件放入回收站,这些文件没有被彻底的删除,还是可以恢复的,真实世界中将文件丢掉很少再将搓成一团的废纸重新拿出来继续使用。所以在电脑世界中,要应用现实世界中的观念,但是又与其含义不完全相同。)

1.3.1.2 反映用户的心里模式

用户已经拥有了固定的心理模式,这影响着你软件提供的功能是否可用。这些心理模式是从现实世界中的经验建立起来的,这些经验包括使用其他软件和电脑经验的总和。比如,用户在真实的世界中有写信和寄信的经验,而且很多用户使用电子邮件软件来写邮件和寄邮件。基于这一点,一个用户对于这个操作就有了一个概念模式,包括一些习以为常的元素,如创建一个新信件、写上收信人、寄出信件。如果一个E-mail软件忽略用户的心理模式,与用户的经验一点都不吻合,那么这个软件会非常难用,甚至让人感到厌烦。这是因为这样的软件将一些用户不熟悉的概念模式强加在了用户头上,而不是在用户已有的知识和经验基础上来开发软件。

在你设计软件的用户界面之前,努力找出你软件帮助用户完成某项任务时,用户的心里模式。注意与一些隐喻在心理上的固定用法,用这种固定的应用来表示这项任务的概念组成。在信箱的例子中,隐喻包括信件、信箱和信封。在与摄影相关的任务心理模式中,隐喻应该包括照片、照相机和影集。力求反映用户任务心里模式的元素、组织方式,以及在你的布局视窗、菜单、系统工具栏和应用面板的工作流程。

一个非常好的展示了如何恰当的反映用户的心里模式,从而创造出了清爽、直观的用户界面的例子,就是iTunes软件(我安装使用了一下,很不合中国人的习惯)的设计。苹果设计的iTunes软件,反映出了经常播放音乐和整理他们的音乐收集的用户的心理模式。在一个非常整洁的窗口,iTunes列出个人喜好的音乐、播放列表,而且在音乐控制区域放置好了回放、搜索功能。最大的窗格显示一系列的歌曲,通过将标题、艺术家和唱片等信息的梳理组合,使其分类组合后的歌曲信息明确清晰的展示出来。小一些的窗格展示歌曲列表和歌曲收藏,这里还可以控制当前正在播放的歌曲列表,就像在探测工具条中硬盘和文件夹图标控制文件、文件夹和软件的显示。突出的播放控制,与收音机、CD播放器和IPod中的播放控制很相似。搜索区域与Finder、邮件和数不清的其它遵从Aqua设计原则的软件的搜索区域是一模一样的。正是因为iTunes用户界面遵从了定义非常明确的用户心理模式,而不是强迫用户去接受不熟悉的概念,使得用户发现iTunes非常直观而且非常易用。

目标用户的心理模式应该影响你软件的用户界面设计。用户的心里模式会告诉你如何排列你软件的窗口、图标的选择和组织方式、工具栏的控制方式和控制板的功能性。另外,你应该尽量按照以下的原则,来支持你用户的心理模式:

?众所周知性。用户的心理模式主要从用户的经验中得来。当可能的时候,优化用户界面的元素组成,通过规范的专业术语来表达规范的象征意义和展示标签。然后,在恰当的地方,使用与苹果OSX系统相近的用户界面元素,从而提供标准的功能操作。

如搜索功能和日期设置的分级导航。

综上所述,iTunes软件使用播放、暂停、回放这样的,用户众所周知的象征意义来

设计其播放音乐的操控方式。然后,iTunes使用标准的Aqua用户界面元素来提供

搜索和帮助功能。一个使用苹果OSX系统的用户自然而然的就会知道如何使用这些标准的用户界面元素,而不需要考虑他们在使用哪一款软件。

?简易性。一个任务的心里模式需要特别的优化,以及将焦点放在任务最重要的部分上。尽管现有的任务很可能有大量的选择细节,基本的组成部分不要与用户注意的细节相抗衡。

例如,在iTunes软件的案例中,最基本的任务有播放音乐、选择播放列表和搜索,这些功能是最主要的。但是,同时还要使用菜单栏和执行附加功能的操作,如弹出光盘、随机播放和显示歌曲,这些功能有力的补充了这些最基本的功能。

?可用性。简易的必然结果就是可用。一个简洁的界面非常重要,但是某些关键功能的可用性和设置用户需要的功能也同等的重要。不要把这些主要的功能隐藏在子菜单这样较深的位置,或者只能在上下层级菜单(contextual menu)中才能使用它们。

比如,iCal软件可以在日程表的菜单中控制提交并发布一个新的日程表。这些任务

非常容易完成,但是这些功能并不是经常使用,所以最终做出了更加合理的决定----让用户在主窗口上来完成这些操作。

?可探索性。通过提供一些应该如何使用用户界面元素的提示,来鼓励你的用户去发掘使用系统中的功能。例如,如果一个元素是可以点击的,应该按照可点击的方式来设计它,否则用户永远不会试图点击它的。确保恰当的使用Aqua的控件,对经验不足的用户不要将控件隐藏起来。

例如,Aqua的按钮是三维的有立体感的图形,这与用户在物理设备上见到的按钮的一样,用户就会懂得如何使用它们了。设计成功的工具栏图标,它们所描述的操作功能,是会被用户认可的。这些友好的设计会给用户探索新软件功能的信心。

不要使用户发觉你的产品操作很难返回和取消,而使用户感到沮丧。

1.3.1.3 直接和间接的控制

所有苹果OSX系统的操作都会使用一个动作来操作一个目标。在操作的第一步,用户会在屏幕上看到想要进行操作的目标。第二步,用户会选择或指派这个目标。左后一步,用户或者使用一个菜单命令,或者直接用鼠标或其他设备直接操作这和目标,在执行这个动作。这就出现了两个并行的操作行为:直接和间接动作。

直接的动作清晰的展示出了操作这个目标的结果。比如,菜单将命令以列表的形式展示出来,通过当前选择的目标等够完成这些命令。菜单命令的名称明确的说明了这些是什么动作,当前命令的状态(禁灰或者激活)表明在当前的应用场景中这些命令是否可用。直接的动作不需要用户记忆当前目标能够完成的任务。

间接的动作出表达了通过视觉线索和当前环境的动作结果。一个拖拉的动作是间接动作常用的案例。拖动一个目标文件到另一个目标文件这一动作,由这些目标文件和此次拖拉操作执行的动作之间的关系所组成。比如,拖动一个文件图标将它放到回收站中,暗示当前的文件将会在文件系统中被立刻移除。作为间接动作应该清晰明了,用户必须够认识到与目标相关联的元素、操作能够完成的任务和动作的结果。

在你设计软件界面的时候,将这两种动作范例铭记在心。了解你软件服务的用户心理模式,能够帮助你在两种动作出现时,作出非常合理的决定。比如,自动机(Automator)在用户将动作拖入流程面板时支持间接的动作,将它们之间建立起一种联系。自动机通过将这些动作、提示潜在的不良后果、提示输入和输出的类型这些因素连接成点显示出来。但是,当这些操作需要用户提供特定的信息时,自动机就会通过显示选择框和可编辑的文本域来提供直接的动作。

1.3.1.4 直接操控

直接操控是间接动作的一个例子,它使用户感觉到他们正在控制着计算机所代表的目标任务。按照这条准则,一个在屏幕上的目标操作应该在用户正在它完成任务的过程当中始终保持可见。而且触发的操作时应该马上可见。(就是说,当我们点击了一个操作后,点击的结果要马上显示出来,否则用户就会以为此操作失灵了)例如,在拖拽的操作中(直接操控的最经典的案例)用户可以通过拖动一个文件的图标将其从一个地方放到另一个地方,或者拖动已选的文字到另一个文本中。另一些直接操控的例子就是在绘图软件中调整图画文件的尺寸,以及在三维场景中放孩子一个物体或摄像机视角。

当用户希望的时候要支持直接操控。不要强迫用户使用一些控制来操控数据。比如,一款管理虚拟图书馆的软件应该允许用户拖动一个书籍图标,将图标拖动到赞助人的名称上从而将书籍登记借出。这样直接的操作支持了用户完成此项任务时的心理模式,而且很自然,比起打开一个窗口、选择书名、选择赞助人、点击登记借出按钮要好得多。

1.3.1.5 用户控制

允许用户而不是电脑来发起及控制一个功能。一些软件试图通过提供自认为有益于用户的双向选择,或阻止用户作出详细决定的方式来“帮助”用户。因为这些方法使得电脑来进行操作,而不是用户,这只满足了最初级用户的需要。对用户来说,规定用户操作的级别是十分妥当的。

最主要的是在用户需要的时候提供给他们相应的能力,帮助他们避免危险、不可逆的操作。如,在用户可能无意的毁坏数据的地方,时刻要有提示信息,但是当用户要做的时候,允许操作继续进行。

1.3.1.6 反馈和交流

反馈和交流包含的远远不是在出错的时候仅仅显示提示信息。相反,它应该包括保持对用户的通知提醒,这些通知提醒通过提供恰当的反馈以及允许用户与你的软件交流,来告知用户发生了什么事。

当用户发起一个动作,通常要给用户相关的提示。如,你的软件接受用户的输入和对其进行的操作,用户想知道他们发起的命令是否启动了。如果没有启动,他们应该知道为什么会这样,以及通过什么方法来弥补。精准的使用动画是展示给用户其需要的动作是否启动的最好的方法。例如,当用户在任务栏(Dock)中点击一个图标,图标的弹跳使得用户明白你的软件正在打开的操作进程当中。

通常情况下,你可以使用动画来明确的将“目标操作”和“操作后的结果”之间的关系展示出来。苹果OSX巧妙的使用了动画,但是却使用很多不同的方法清晰、明确的与用户进行交流。这里将其中的一些方法列在了下面:

?当用户最小化一个窗口,它不是马上消失,而是慢慢的滑进任务栏,明确的告诉用户在哪能再次找到它们。

?表达一个层(Sheet,它是对话框的模式之一,与特定的文件或窗口关联,确保用户不丢失当前文档或窗口中的信息。其实就是提示我们是否保存修改过文件的提示框,在苹果系统中,这个提示框是从标题栏中伸展出来的。)和一个窗口的关系,提示框从窗口的标题栏中展开。

?来强调抽屉(drawer,是一个从父窗口中弹出的子窗口,用户可以在父窗口开启时打开或者关闭。)和其父窗口间的关系,抽屉从父窗口的底下拉出,显示的效果与真实的抽屉拉出效果很相像。

你应该在能够提高用户界面的反馈效率时,才考虑使用微妙的动画。

对于潜在的需要长时间的设置进程,使用进度指示来表明像“此设置还需要多长时间”这样的有用信息。用户无需知道此设置进程精确到秒的精确信息,但是一个大概预期还是非常有用的。比如,苹果OSX系统使用“剩余大约一分钟”这样的陈述来表达一个大概的时间段。将完成所有的步骤总数告诉用户是非常有帮助的,比如,你可以说“正在拷贝850个文件当中的第30个”。

注意:在很长的系统进程中给用户以反馈的一个十分重要的原因是,如果你的软件在两秒钟内没有对当下的任务作出反馈,系统就会自动的给你的软件显示出一个正在忙碌的光标。当用户看到这个光标而没有任何反馈时,就会认为你的软件崩溃掉了,然后就会使用强制退出窗口的方式,退出对你软件的使用。

给你的用户提供一些能使他们明白,直观的、简洁的反馈。比如,错误信息应该非常清楚的描述出是什么情况导致了错误的产生,如“您的硬盘没有足够的空间来储存这个文件”,接着还要给用户提供补救的方法“您可以将文件储存在其它硬盘中”。

如果你的软件包含一个在用户界面上显示的前台进程,和一个完成你软件的部分过全部任务的后台进程,要特别注意,应该通过界面显示的前台进程,来完成与用户的所有交流。尤其

要说的是,即便是在用户需要改变设置或需要提供信息的情况下,一个后台进程永远不要显示出对话框或者窗口。如果一个后台的进程一定要与用户建立联系,它应该启动或显示前台的应用程序。这一点是非常重要的,因为用户很可能不知道(或没有记住)一个后台进程正在运行,而且从后台得到一些交流信息会使他们感到困惑。

比如,考虑到一个备份操作的应用,是由显示在用户界面上的前台进程和完成已开启备份程序的后台进程两部分组成。用户开启这个应用程序,设置备份频率、提供备份数据和需要备份的位置、退出程序、我们的常识是在开启后备份就会开始其进程,如果在进程当中备份的硬盘满了,后台进程必须马上通知用户。如果不,用户就会丢失数据。在做这件事时,后台程序应该开启应用程序,使工具栏图标弹出。将用户的注意力转移到一个熟悉的应用程序,而不是从一个看不到的进程中显示提示窗口,为用户接到信息做准备,使用户采取恰当的措施。

注意:一个只有后台应用程序的应用软件(也叫无界面后台程序faceless background application)与有界面的应用软件没有太大联系。当与用户的交流显得十分迫切时,一个无界面后台程序可以显示一个提示窗口来描述当前的情况,但是这个提示框应该引导用户通过打开其它应用程序(如系统设置)来解决这一问题。

1.3.1.7 统一性

在界面中保持统一性用户就可以在不同的软件中继续使用他们的知识和技能。使用Aqua界面标准的元素来确保你软件的统一性,你就会在跨软件的统一元素使用中受益。在考虑你产品的统一性时,问问自己是否能够解决一下问题:

?这是否与苹果OSX系统标准一致?例如,你的软件是否应用了预定的和推荐的键盘设置,来满足用户当前的使用呢(个人理解,如Ctrl+Z的快捷键的操作,在各个软件中都应该代表相同的“恢复上一步数据”这一功能。如果用户在使用一个软件时,应用Ctrl+Z这一快捷键,却将本软件关闭掉了或者发生了其他事情,就会使用户非常疑惑)?

它是Aqua遵从的标准么?它们应用了苹果OSX系统提供的解决方案标准了么?

?软件本身是统一的吗?在标签名称与其所代表的功能之间运用了相一致的术语了么?同样的图标在各种场合都代表同一个意思么?相同的概念在所有模块中所代表的意义相同么?相似的操作和其他一些用户界元素是不是在其它相似的窗口和对话框中的所在的位置相同呢?

?是否与产品的早期版本保持一致了呢?在发布的版本之间所用的术语和其含义是否保持一致了呢?产品最核心的观念是否没颠覆?

?产品是否与用户的预期保持一致了呢?产品是否在没有添加多余的功能基础上满足了用户的需求呢?它是否被用户的心理模式所接受呢?

?满足所有人的预期是在统一性中比较难做到的,尤其实在你的产品可能被各个专业领域的用户所使用的时候。你可以通过思考“目标用户的应用环境”和“他们的需求”之间的关系,来谨慎的权衡统一性问题。

1.3.1.8 所见即所得

在一个可以允许用户编辑数据用于印刷、发布到网络、转换成影片、DVD或其它格式时,确保用户在显示器上看到的效果与用户输出后看到的最终效果没有太大的差别。如果用户对

文件做了修改,马上将结果显示出来;用户不应该等到文件输出后才看到最终效果,也不应该凭空想象稍后的文档输出后会是什么样子。如果需要的话,使用预览功能。

用户应该何以找到你软件所提供的所有可用功能,应该将能够使用的命令显示在菜单上,而不是将它们隐藏起来。菜单应该显示命令列表,这样用户就能够看清他们的选择,而不是试图记住命令的名字。不要只将功能放在工具栏和分级菜单中,因为工具栏和分级菜单很能被隐藏,在菜单栏的菜单中,这些功能也是可以使用的。

1.3.1.9 谅解机制

通过建立谅解机制——使所有的操作行为都能够很容易恢复(可逆性)的来鼓励用户探索你的软件。用户需要清楚的意识到他们正在进行的操作不会损坏系统和他们的数据。建立一个安全网,如将操作过的命令保存下来,用户可以通过“取消”或“恢复”的操作进行前后命令的转换,所以用户将会在学习和使用你软件的时候感到满意。

当用户正在发起一个不可恢复的操作时,要给予他们相应的警示。但是,如果警示经常出现,证明这个产品设计的还不够完善。当操作标示清晰、反馈信息及时,使用这样的软件时就很少担心自己犯错了。

提前想到一些常见的问题,以及提示用户他们看不到的危害(potential side effects)。在使用产品的每一步都提供大量的反馈和交流,会使用户感觉到他们有足够的信息来使他们作出正确的选择。

1.3.1.10 认知稳定性

Aqua的界面设计提供了一个易懂的、众所周知的和可预知的环境。从而给用户提供了一个视觉感知的稳定性,这套界面定义了很多的图像元素标准,如菜单栏、窗口控制等等。这些标准元素给用户提供了一个是非熟悉的环境,在这个环境中他们知道这些元素的操作方法,并知道如何去使用他们。

为了给用户提供认知的稳定性,界面应该有一套清晰、明确的目标,以及在这些目标所承载的一系列动作任务。比如,当一个菜单任务不适用于当前被选择的对象,或者在当前的状态下不适用于这个对象,应该将这个命令禁灰,而不是将它省略掉。

通过使用户知道程序正在执行一个特定的任务,并提供给用户当前运行状态和反馈信息,同样会提高认知稳定性。

1.3.1.11 美观完整性

美观完整性是指相关信息组织非常合理,与美观的视觉设计准则一致。你的产品应该在屏幕上看起来让人非常舒适,甚至长时间观看也应如此。

保持图形的简介,而且只有在能够提升产品的使用性时才使用它们。不要在窗口和对话框中塞满很多的图标和按钮。不要随意的使用象征符号来表达概念,这可能使用户感到迷惑。在你的窗口和设计的界面当中列出的所有元素,应该反映出你软件所承载任务的用户心理模式。

当设计你软件界面的时候,为了保证其高质量,你需要做很多的事情。比如:

?所有的图标都要被给予最高的质量。

?所有的字符应该是抗锯齿的,在你使用标准的系统字体时它们应该会自动调整。

?字体的大小和类型在窗口中应该保持一致。

?规格控制在窗口中也应保持一致。比如,不要混淆微型控制(如调整字体大小、)和标准控制。

?使用用户可以预见其使用行为的,相匹配的图形元素。不要修改标准元素的意义和行为。

?在允许多个选择时要使用复选框(checkboxes),而不是在单选(mutually exclusive choices)的时候使用它。

?使用推动按钮来表现即时命令,如“打开”。

?在展示弹出菜单或标签栏时,不要使用推动按钮。

?不要使用圆角按钮来表现标签。

测试管理用户手册

目录 MYPM业务流程 (4) 1关于MYPM 1.1简介 “MYPM”是一套专注于IT领域,专门为IT企业定制的集成化项目管理解决方案。一方面,她把ISO9000和CMMI管理体系以软件形式组织起来,使之具有可实施性和引导性,从而帮助企业把项目管理体系建立和组织起来,并能以便捷的方式在实际项目中引入和实施;另一方面,她把计划、任务及进度管理,工时成本管理,知识管理,质量管理,文档管理及搜索等整合到一个集成化平台中,进行统一的分析管理,企业管理层和项目中所有成员(包括客户)通过这一集成化平台进行协作和沟通,全方位对计划,资源,进度,工时,成本,质量,风险进行把控,任何一项发生变化都会反映到项目关联的其它各个部分。 当前版本为只开放测试管理功能永久免费版。商业版在线体验地址为;免费版在线体验地址为。 1.2版权声明 MYPM集成化项目管理平台版权归北京嘉通软科技有限公司所有,任何侵犯版权的行为将被追究法律责任。未经版权所有者的书面准许,不得将本软件的任何部份以任何形式、采用任何手段(电子的或机械的,包括照相复制或录制)、或为任何目的的,进行复制或扩散。免费版只要不用于商业目的,不受此限制。 Copyright(C)2008-2010北京嘉通软科技有限公司。版权所有,复制必究。 北京嘉通软科技有限公司不对因为使用该软件、用户手册中的缺陷所造成的任何损失负责。 2MYPM基本约定 2.1页面布局 2.2数据展示区记录选择 在MYPM数据展示区内,只要点击了某行记录,则在点击工具栏上的功能按钮时,将处理点击的记录。 2.3人员选择窗口缺省加载记录 MYPM人员选择窗口缺省加载时,如人员多于100人,缺省显示按登录名升序排序的前100名。 2.4部分工具栏图标说明

软件UI界面设计测试规范

界面设计测试规范 目前流行的界面风格有三种方式:多窗体、单窗体以及资源管理器风格,无论那种风格,以下规则是应该被重视的。 1:易用性: 按钮名称应该易懂,用词准确,屏弃没楞两可的字眼,要与同一界面上的其他按钮易于区分,能望文知意最好。理想的情况是用户不用查阅帮助就能知道该界面的功能并进行相关的正确*作。 易用性细则: 1):完成相同或相近功能的按钮用Frame框起来,常用按钮要支持快捷方式。 2):完成同一功能或任务的元素放在集中位置,减少鼠标移动的距离。 3):按功能将界面划分局域块,用Frame框括起来,并要有功能说明或标题。 4):界面要支持键盘自动浏览按钮功能,即按Tab键的自动切换功能。 5):界面上首先应输入的和重要信息的控件在Tab顺序中应当靠前,位置也应放在窗口上较醒目的位置。 6):同一界面上的控件数最好不要超过10个,多于10个时可以考虑使用分页界面显示。 7):分页界面要支持在页面间的快捷切换,常用组合快捷键Ctrl+Tab 8):默认按钮要支持Enter及选*作,即按Enter后自动执行默认按钮对应*作。 9):可写控件检测到非法输入后应给出说明并能自动获得焦点。 10):Tab键的顺序与控件排列顺序要一直,目前流行总体从上到下,同时行间从左到右的方式。 11):复选框和选项框按选择几率的高底而先后排列。 12):复选框和选项框要有默认选项,并支持Tab选择。 13):选项数相同时多用选项框而不用下拉列表框。 14):界面空间较小时使用下拉框而不用选项框。 15):选项数叫少时使用选项框,相反使用下拉列表框。 16):专业性强的软件要使用相关的专业术语,通用性界面则提倡使用通用性词眼。 2:规范性: 通常界面设计都按Windows界面的规范来设计,即包含“菜单条、工具栏、工具厢、状态栏、滚动条、右键快捷菜单”的标准格式,可以说:界面遵循规范化的程度越高,则易用性相应的就越好。小型软件一般不提供工具厢。 规范性细则: 1):常用菜单要有命令快捷方式。 2):完成相同或相近功能的菜单用横线隔开放在同一位置。 3):菜单前的图标能直观的代表要完成的*作。 4):菜单深度一般要求最多控制在三层以内。 5):工具栏要求可以根据用户的要求自己选择定制。

用户界面设计及答案

1.用户满意度=功能+___人机界面_____+响应时间+可靠性+易安装性+____信息____+可维护性+其他因素 2. ____人机交互(人机对话)____是指人与计算机之间使用某种语言、以一定的交互方式,为了完成任务进行的一系列信息交换过程。 3.软件界面设计分为____功能性设计界面____、____情感性设计界面____、____环境性设计界面____。 4.进行系统分析和设计的第一步是___用户分析_____。 5.使用较早,也是使用最广泛的人机交互方式是____交互方式____。 6.软件界面开发流程包括____系统分析____、____系统设计____、____系统实施____三个阶段 7.设计阶段包括界面的____概念设计____、____详细设计____、____原型建立____与界面实现以及综合测试与评估等8.VB 是以结构化___Basic_____语言为基础、以____事件驱动作____为运行机制的可视化程序设计语言。 9.菜单使用形式主要有____菜单操作____和____Tba控件操作____两种。 10.随着计算机图形技术的发展,以直接操纵、桌面隐喻以及所见即所得为特征的____图形用户界面____技术广泛被计算机系统采用。 11.在用VB 开发应用程序时,一般要布置窗体、设置控件的属性、___编写代码___。 12. 假定在窗体上有一个通用对话框,其名称为CommonDialog1,为建立一个保存文件对话框,则需要把Action 属性设置为__value__。 13. 计时器事件之间的间隔通过__interval__属性设置。 14. 语句“Print “5+65=”;5+65”的输出结果为__5+65=70__。 15. 设有下列循环体,要进行4次循环操作,请填空。 x = 1 Do x = x * 2 Print x Loop Until__x<=32__ 16. 下列程序段的执行结果为__2 3 5__。 x = 1 y = 1 For I = 1 To 3 F= x + y x = y y = F Print F; Next I 17. 以下为3个列表框联动的程序,试补充完整。 Private Sub Dir1_Change() File1.Path=Dir1.Path End Sub Private Sub Drive1_Change() Drivel.Path=File1.Path;Dir1.Path=Drivel.Path__[7]__ End Sub 18. 在下列事件过程中则响应该过程的对象名是cmdl,事件过程名是__窗口标题事件__。 Private Sub cmd1_Click() Form1.Caption=“VisualBasic Example” End Sub 19. 当将文本框的SelStar 属性设置为0时,表示选择第开始位置在第一个字符之前,设置为1时表示__[9]__。 20. 以下程序代码实现单击命令按钮Command1 时形成并输出一个主对角线上元素值为“-”,其他元素值为“+”第6*6 阶方阵。 Privas Sub Command1_Click() DimA(6,6) For I = 1 To 6 For J = 1 To 6 If I = J Then Print “-” Else __[10]__ End If Print A (I,J); Next J Print Next I End Sub 21. 字母B的KeyAscii 码值为65,其KeyCode码值___[11]__。 22. Visual Basic 中的控件分为3类:__[12]_、ActioveX 控件和可插入对象。

用户界面设计实验-系统界面设计实例完整版.doc

用户界面设计实例 ● 设计的系统名称:个人日常事务管理系统 ● 针对用户群是:广大电脑用户(有一定的电脑操作基础),officer 和广大学 生。 一、系统需求分析(The system requirement ) 针对officer 和学生们的需求分析,从我自身分析:对于我日常的安排我平 时会用专门的记事本记录和更改,对于日常各种事务可能会冲突或不变携带,现在针对这些需求,设计出符合此人群适合的一款系统来帮助人们更好的安排日程和完成工作。此系统是要面向个人的,同企业系统相比,此软件要力求操作简单,效率要高效,由于针对的人群是officer 和大学生,这些人都是年轻的一代人,对计算机和系统都比较了解,而且倾向于华丽的界面,但是该系统同时要解决高效,较少的操作较快地达到用户的需求。由于工作原因或计算机系统崩溃等用户在本机保存的日程安排等数据可能丢失的情况,同时,有些情况下可能无法连接网络,此系统应支持 1.、本机数据保存。2、可以上传到服务器数据库,用户注册可获得免费的空间,用户注册后,只要登录就能在随时随地获得自己的日程安排等信息。 二、系统功能定义(The function definitions ) 个人日程管理系统主要是提供个人时间日程安排系统软件,它具有相当方便的操作接口,让用户能够对所安排的行程一目了然,除去主要功能还附带了更多功能和小工具,安排的行程可以生成通行路线,并会根据天气预报提醒当天安排是否影响。而且用户可以注册,注册后用户有更多的服务,安排的日程数据可以保存到本地同时可以更新到服务器,这样用户就算到外地也可以随时查看自己的日程安排,同时其他功能有:时钟提醒、通讯录、效率评估等。 实现功能(主界面导航): 个人日常事 务管理系统

SOAPUI接口测试使用手册

SoapUI接口测试使用手册 (V1.0)

1.S oapUI的介绍 SoapUI是专门针对Webservice接口的测试工具,功能强大且界面易用。它是直接利用Web Service的WSDL文件测试Web服务的接口,利用SOAPUI测试不需要了解底层的接口、调用关系及详细协议,也不需要使用编程来实现测试用例,而是基于WSDL自动产生测试消息。SOAPUI还支持接口的负载测试。在对同一Web Service接口进行测试时,SOAPUI比Loadrunner表现的性能会更加优越、真实,更接近反映接口的性能指标。并且SoapUI支持多种语言,java、c++,且wcf 这种形式的接口也可支持。 2.S oapUI的安装 SoapUI基于JAVA开发,支持多个平台,需要设置JAVA_HOME 变量指向到相应的JRE 目录,同时修改PATH 变量,将JRE1.6 的bin 目录添加到PATH里面。 3.S oapUI接口测试 3.1创建/导入工程 启动SoapUI程序,双击目录bin下的soapui.bat,即可启动程序。程序第一次打开后,在左侧导航面板上,自动有一个空的Projects 工程。鼠标右键点击Projects,选择第一项“New SoapUI Project”,新建一个工程。(如果本地有现成的工程,也可直接选择第二项导入工程“Import Project”,选择本地的xml文件导入即可)如下图

页面弹出“New SoapUI Project”框,输入Project Name,“Initial WSDL/WADL”可填入URL 地址或直接导入WSDL 文件,(在这一步骤中,也可不导入WSDL文件,等到工程创建好后,右键点击工程名,选择“Add WSDL”也可导入) 如下图所示: 默认选上: Create Requests:Create sample requests for all operations?(为每个接口创建一个请求) Create TestSuite:Creates a TestSuite for the imported WSDL or WADL(为WSDL 或WADL 创建一个测试包) 点击OK按钮,弹出创建测试包的对话框“Generate TestSuite”:

简单实用的界面测试规范,供朋友们进行参考

界面测试规范 目前流行的界面风格有三种方式:多窗体、单窗体以及资源管理器风格,无论那种风格,以下规则是应该被重视的。 1:易用性: 按钮名称应该易懂,用词准确,屏弃没楞两可的字眼,要与同一界面上的其他按钮易于区分,能望文知意最好。理想的情况是用户不用查阅帮助就能知道该界面的功能并进行相关的正确操作。 易用性细则: 1):完成相同或相近功能的按钮用Frame框起来,常用按钮要支持快捷方式。 2):完成同一功能或任务的元素放在集中位置,减少鼠标移动的距离。 3):按功能将界面划分局域块,用Frame框括起来,并要有功能说明或标题。 4):界面要支持键盘自动浏览按钮功能,即按Tab键的自动切换功能。 5):界面上首先应输入的和重要信息的控件在Tab顺序中应当靠前,位置也应放在窗口上较醒目的位置。 6):同一界面上的控件数最好不要超过10个,多于10个时可以考虑使用分页界面显示。 7):分页界面要支持在页面间的快捷切换,常用组合快捷键Ctrl+Tab 8):默认按钮要支持Enter及选操作,即按Enter后自动执行默认按钮对应操作。 9):可写控件检测到非法输入后应给出说明并能自动获得焦点。 10):Tab键的顺序与控件排列顺序要一直,目前流行总体从上到下,同时行间从左到右的方式。 11):复选框和选项框按选择几率的高底而先后排列。 12):复选框和选项框要有默认选项,并支持Tab选择。 13):选项数相同时多用选项框而不用下拉列表框。 14):界面空间较小时使用下拉框而不用选项框。 15):选项数叫少时使用选项框,相反使用下拉列表框。 16):专业性强的软件要使用相关的专业术语,通用性界面则提倡使用通用性词眼。 2:规范性: 通常界面设计都按Windows界面的规范来设计,即包含―菜单条、工具栏、工具厢、状态栏、滚动条、右键快捷菜单‖的标准格式,可以说:界面遵循规范化的程度越高,则易用性相应的就越好。小型软件一般不提供工具厢。 规范性细则: 1):常用菜单要有命令快捷方式。 2):完成相同或相近功能的菜单用横线隔开放在同一位置。 3):菜单前的图标能直观的代表要完成的操作。 4):菜单深度一般要求最多控制在三层以内。 5):工具栏要求可以根据用户的要求自己选择定制。 6):相同或相近功能的工具栏放在一起。 7):工具栏中的每一个按钮要有及时提示信息。 8):一条工具栏的长度最长不能超出屏幕宽度。 9): 工具栏的图标能直观的代表要完成的操作。 10):系统常用的工具栏设置默认放置位置。 11):工具栏太多时可以考虑使用工具厢。 12):工具厢要具有可增减性,由用户自己根据需求定制。

Access_2007_用户界面指南

Access 主页> 新增功能 Access 2007 用户界面指南 本文讨论了新的Microsoft Office Access 2007 用户界面(UI)。这个新的用户界面经过广泛的研究和可用性测试,旨在简化查找所需命令的过程。 在本主题中,您将了解新的用户界面元素以及如何使用这些元素。此外,您还将了解如何在数据库中启用选项卡式文档,以及如何导航新的界面对象。 本文内容 概述 开始使用Microsoft Office Access 功能区 导航窗格 选项卡式文档 状态栏 微型工具栏 获取帮助 概述 Office Access 2007 中的新用户界面由多个元素构成,这些元素定义了您与产品的交互方式。选择这些新元素不仅能帮助您熟练运用Access,还有助于更快速地查找所需命令。这项新设计还使您能够轻松发现以不同方式隐藏在工具栏和菜单后的各项功能。同时,您可以使用新的“开始使用Microsoft Office Access”页快速访问新的入门体验(其中包括一系列经过专业设计的模板),从而加快了启动和运行速度。 最突出的新界面元素称为“功能区”。这是一个包含多组命令且位于程序窗口顶部的带状区域。功能区为命令提供了一个集中区域,是菜单和工具栏的主要替代工具。功能区中有多个选项卡,各选项卡以直观的方式将命令组合在一起。在Office Access 2007 中,主要的功能区选项卡包括“起始页”、“创建”、“外部数据”和“数据库工具”。每个选项卡都包含多

组相关命令,这些命令组展现了其他一些新的UI 元素(例如样式库,它是一种新的控件类型,能够以可视方式表示选择)。 Office Access 2007 中主要的新界面元素包括: 开始使用Microsoft Office Access 从Windows“开始”按钮或桌面快捷方式启动Access 时所显示的页面。 功能区位于程序窗口顶部的区域,从中可选择命令。 命令选项卡以某种方式组合在一起的命令。 上下文命令选项卡根据上下文(即,进行操作的对象或正在执行的任务)所显示的命令选项卡。 样式库可视地显示选择以使您能看到所获得的结果的控件。 快速访问工具栏单个标准的工具栏,显示在功能区中,提供对大多数所需命令(如“保存”和“撤销”)的单击访问。 导航窗格位于窗口左侧的区域,显示了数据库对象。导航窗格取代了早期版本Access 中的数据库窗口。 选项卡式文档表、查询、窗体、报表、页和宏均显示为选项卡式文档。 状态栏位于程序窗口底部的条形区域,用于显示状态信息,并包括可用于更改视图的按钮。 微型工具栏对象上元素,透明地显示在所选文本的上方,因而可以很方便地对文本应用格式。 返回页首 开始使用Microsoft Office Access 单击Windows“开始”按钮或桌面快捷方式(而不是单击数据库)启动Office Access 2007 时,将出现“开始使用Microsoft Office Access”页面。此页面显示了可以执行以开始使用Office Access 2007 的操作。

网页登录界面测试点

如何测试一个网页登录界面 对测试人员(尤其是web测试人员)来说,测试一个网页的登录界面常常是必不可少的测试任务。网页的登录界面测试要素少不了textbox和提交按钮,如何才能更全面的设计test case呢? 首先,你要了解用户的需求,比如这个登录界面应该是弹出窗口式的,还是直接在网页里面的?对用户名的长度、用户名的有效性(比如是不是只能是手机号、邮箱等)密码的强度(就是是不是必须多少位,大小写,特殊字符混搭)等都有哪些要求?还有比如用户对界面的美观是不是有特殊的要求?(即是否要进行UI测试)。剩下的就是设计用例了,等价类,边界值等等。 千万要记住一点,任何测试,不管测什么都是从了解需求开始的。 一个网页的登录界面的测试大致可以从以下几个方面考虑: 功能测试(Function test) 0. 什么都不输入,点击提交按钮,看提示信息。 1.输入正确的用户名和密码,点击提交按钮,验证是否能正确登录。 2.输入错误的用户名或者密码,验证登录会失败,并且提示相应的错误信息。 3.登录成功后能否能否跳转到正确的页面 4.用户名和密码,如果太短或者太长,应该怎么处理 5.用户名和密码中有特殊字符(比如空格),和其他非英文的情况 6.记住用户名的功能 7.登录失败后,不能记录密码的功能 8.用户名和密码前后有空格的处理 9.密码是否加密显示(星号圆点等) 10.牵扯到验证码的,还要考虑文字是否扭曲过度导致辨认难度大,考虑颜色(色盲使用者),刷新或换一个按钮是否好用 11.登录页面中的注册、忘记密码,登出用另一帐号登录等链接是否正确 12.输入密码的时候,大写键盘开启的时候要有提示信息。 界面测试(UI Test) 1.布局是否合理,2个testbox 和一个按钮是否对齐 2.testbox和按钮的长度,高度是否复合要求 3. 界面的设计风格是否与UI的设计风格统一 4. 界面中的文字简洁易懂,没有错别字。 性能测试(performance test) 1.打开登录页面,需要几秒

app测试指导手册

APP测试指导手册 编写目的 本手册编写旨在帮助刚刚入手的移动端测试人员了解移动端项目,并且了解刚刚接触一个移动端的项目如何入手,有哪些问题需要明确,有哪些问题需要注意,欢迎补充 移动端产品(项目)介绍 移动端产品(项目)展现在眼前的就是一个实际的app应用,支撑这个app应用的是它的后台。后台一般有两种,一种是实际部署的后台管理系统,管理系统的基本信息和业务信息,前台仅仅做展示,查看用,如通讯录APP,掌上直播点播;另一种是后台部署的系统和前台有数据交互的,一般这种系统分为pc展现端和APP展现端,pc端和APP端的展现端存在数据交互,有共同的后台管理系统支撑这两个前台应用,如人大APP,一乡一法庭。 1功能测试 1.1安装 目前公司的app基本是机遇两大移动操作系统android和ios开发的,android开发的app 安装文件后缀为apk,ios开发的app安装后缀名是ipa App客户端程序的安装方式主要有如下几种: 1、手机端浏览器输入下载地址 2、通过二维码扫描(需要单独维护二维码信息,一般二维码是封装了下载地址,所以 如果系统提供了此功能,在实施文档中必须说明二维码如何生成如何维护) 3、Android平台,通过Usb连接电脑方式安装 4、App store下载安装(正式发布,目前接触的项目没有正式发布的。如果接触的项目 需要在APP store上发布,需要在发布时间前预留出时间,因为提交申请到APP store 后审核比较严格,需要的时间较长,具体时间需要提前确认) 目前公司开发了一个APP推送平台,测试过程中可以让开发把apk放在推送平台上,测试人员通过这个平台取包,同时在test上进行备份,这样方便开发和测试的交互 需求分析时需要确认系统支持哪几种安装方式,是否符合项目的要求 测试重点(围) 1、安卓主要是测试移动端不同版本的操作系统是否能正常安装。Android及IOS不同

功能及UI测试标准

常用功能及UI测试标准 2017年3月

1. 版本变更记录

目录 1 概述错误!未定义书签。 2 测试点错误!未定义书签。 重复提交问题错误!未定义书签。 弹出框提示信息问题错误!未定义书签。 验证提示信息问题错误!未定义书签。 常用的键盘命令错误!未定义书签。 翻页功能错误!未定义书签。 查询功能错误!未定义书签。 注销功能错误!未定义书签。 上传功能错误!未定义书签。 下载功能错误!未定义书签。 3 GUI图形用户界面错误!未定义书签。 4 UI控件错误!未定义书签。 5 补充错误!未定义书签。 流程测试错误!未定义书签。 兼容性测试错误!未定义书签。 链接测试错误!未定义书签。 易用性测试错误!未定义书签。 性能测试指标规范错误!未定义书签。 概述 为了减少测试过程中的漏测等情况以及避免各种不必要的争议,所以制定这样一个标准来对测试进行规范和约束,以后测试人员在测试的时候按照该规范中列出的测试点进行测试。 下面将会对一些比较常见的测试点和以往测试中有争议的问题、在需求规格说明书中客户又没有明确要求的功能点及UI进行描述,同时,也会对相应的BUG级别进行说明(特殊情况另行考虑),可能会不太全面,以后在测试过程中会慢慢积累和完善。 测试点 重复提交问题 测试时如果存在重复提交问题,作为BUG; 缺陷严重级别定义为:一般(如果一直进行重复提交造成系统连接中断、系统崩溃等,严重级别定义为:致命); 1、在进行添加或修改数据操作时要考虑到重复提交问题的测试; 2、测试方法: 功能按钮(如:提交按钮)反应时间延迟时(限制客户端网络带宽等方式来模拟实现),在短时间内重复点击该功能键,容易出现重复提交问题;

软件测试用户界面设计

学生综合测评管理系统项目用户界面设计报告 版本历史 西南科技大学计算机科学与技术学院 第三届卓越工程师班第七组

目录 0. 文档介绍 (3) 0.1文档目的 (3) 0.2文档范围 (3) 0.3读者对象 (3) 0.4参考文献 (3) 0.5术语与缩写解释 (3) 1. 应当遵循的界面设计规范 (4) 2. 界面的关系图和工作流程图 (4) 3. 登录界面 (5) 3.1登录界面效果图 (5) 3.2登录界面介绍 (5) 4. 主界面 (6) 4.1主界面效果图 (6) 4.2主界面介绍 (6) 5. 子界面–个人信息界面 (6) 5.1个人信息界面效果图 (6) 5.2个人信息界面介绍 (7) 6. 美学设计 (9) 6.1界面布局 (9) 6.2界面色彩搭配 (9) 7. 界面资源设计 (9)

0. 文档介绍 0.1 文档目的 本文档阐述“学生综合测评管理系统”的界面设计。 0.2 文档范围 本文档主要介绍了学生综合测评管理系统的用户界面之间的关系和设计流程。 0.3 读者对象 本系统的开发人员和管理人员。 0.4 参考文献 1.面向用户的管理信息系统界面设计苏子林徐群叁孙中红鲁东大学计算机科学与技术学院 2005年11期 2.基于WEB的人员管理信息系统的界面设计与实现高远福州大学福建省空间信息工程研究中心空间数据挖掘与信息共享教育部重点实验室2009年09期 3. 计科学院计科学院2012年本科生综合测评评定细则 2012 4. 枫火组学生综合测评管理项目开发计划2013/9/8 5. 枫火组学生综合测评管理项目需求规格说明书 2013/10/7 0.5 术语与缩写解释

【实用】功能和界面测试标准规范要求

一、功能测试 功能测试就是对产品的各功能进行验证,根据功能测试用例,逐项测试,检查产品是否达到用户要求的功能。常用的测试方法如下: 1、输入框进行输入测试。包括中文字符、英文字符、数字字符、特殊字符、及几种字符的组合。 2、对界面可操作按钮进行测试。包括【新增】/【添加】【保存】【取消】【删除】【查询(简项查询/高级查询)】【制作文书】【呈请审批】【打印】【退出】等等。同时需要对鼠标右键的菜单进行测试。 3、数据保存测试。将以上1 和2 进行组合。 4、必要条件控制测试。在做了3 时将必要条件(如:a、必填项(黑粗体表示)不可为空 b、身份证类型和证件号码判断 c、日期限制)联合起来验证。 5、页面链接检查:每一个链接是否都有对应的页面,并且页面之间切换正确。 6、相关性检查:删除/增加一项会不会对其他项产生影响,如果产生影响,这些影响是否都正确。 7、字符串长度检查:输入超出需求所说明的字符串长度的内容,看系统是否检查字符串长度,会不会出错(测试时只要看是否有截取长度的功能,过长的字符比如256个输入保存,是否会报错)。 8、字符类型检查:在应该输入指定类型的内容的地方输入其他类型的内容(如在应该输入整型的地方输入其他字符类型),看系统是否检查字符类型,会否报错。 9、标点符号检查:输入内容包括各种标点符号,特别是空格,各种引号,回车键\n,看系统处理是否正确。 10、检查带出信息的完整性:在查看信息或列表框选择的信息或者更新信息后,查看

所填写的信息是不是全部带出,带出信息和添加的是否一致。(比如地址选择控件,选择了长长的地址信息,是否都带入地址文本框,在保存后,是否地址信息都完整的保存)。 11、信息重复:在一些需要命名,且名字应该唯一的信息输入重复的名字或ID,看系统有没有处理,会否报错,重名包括是否区分大小写,以及在输入内容的前后输入空格,系统是否作出正确处理。 12、检查删除功能:在一些可以一次删除多个信息的地方,不选择任何信息,按”删除”,看系统如何处理,会否提示;然后选择一个和多个信息,进行删除,看是否正确处理。 13、检查添加和修改是否一致:检查添加和修改信息的要求是否一致,例如添加要求必填的项,修改也应该必填;添加规定为整型的项,修改也必须为整型。 14、检查修改重名:修改时把不能重名的项改为已存在的内容,看会否处理、报错。同时也要注意,会不会报和自己重名的错。 15、重复提交表单:一条已经成功提交的纪录,back (上一步)后再提交,看看系统是否做了处理。 16、检查多次使用上一步或上一页键的情况:在有上一步/下一步或上一页/下一页的地方,一直点到头再点回到开始,重复多次,看会否出错或按钮失效。 17、查询检查:在有查询功能的地方输入系统存在和不存在的内容,看查询结果是否正,如果可以输入多个查询条件,可以同时添加合理和不合理的条件,看系统处理是否正确。 18、输入信息位置:注意在光标停留的地方输入信息时,光标和所输入的信息会否跳到别的地方。 19、上传下载文件检查:上传下载文件的功能是否实现,上传文件是否能打开。对上传文件的格式有何规定,系统是否有解释信息,并检查系统是否能够做到。

软件测试的原则

软件测试的原则: 1所有的测试都应追溯到用户需求2应当把“尽早和不断地测试”作为座右铭3测试工作应该由独立的专业的软件测试机构来完成4 Pareto原则,测试发现的错误中80%很可能起源于20%的模块中。5设计测试用例时,应该考虑各种情况。6对测试出的错误结果一定要由一个确认的过程。7制定严格的测试计划8完全测试是不可能的,测试需要终止。9注意回归测试的关联性。10妥善保存一切测试过程文档。 软件测试的分类:1按测试方式分类:静态测试(不需要执行所测试的程序,查询代码十分符合规范,对程序的数据流和控制流进行分析),动态测试(选择实际测试用例运行测试程序,模拟用户输入)2、按测试方法分类:白盒测试(结构测试,基于代码的测试或基于设计的测试)黑盒测试(行为测试,功能测试或基于需求的测试,基于系统应该完成的功能进行测试)3按测试过程分类:单元测试集成测试系统测试验收测试.4按测试目的分类:功能测试,健壮性测试,接口测试,性能测试,强度测试,压力测试,用户界面测试安全测试靠性测试安装/反安装测试文档测试恢复测试兼容性测试。 软件测试流程:1制定测试计划:软件测试背景,软件测试依 据,测试范围的界定,风险的确定,测试资源,测试策略,时 间表的制定,其他。2设计测试方案3测试准备和测试环境的 建立4执行测试5测试评估6测试总结 软件测试人员的基本素质:1具有良好的计算机编程基础2具 有创新精神和超前意识3不懈努力,追求完美4具有很强的沟 通和交流能力5具有整体观念,对细节敏感6团队合作精神 如何制定软件测试计划:1认真做好测试资料的搜集整理工作: 软件的类别及其构成,软件的用户界面,在所测试的软件设计 第三方软件的情况下,必须对这个第三方软件的功能及其与所 要测试的软件之间的联系有一定的了解2明确测试的目标,增强测试计划的实用性3检查“5W”规则,明确内容与过程4采用评审和更新机制,保证测试计划满足实际需求。 白盒测试:一种被广泛使用的逻辑测试技术,也称为结构测试或逻辑驱动测试。对象基本是源程序,是以程序的内部逻辑为基础的一种测试技术。分为:静态测试(一种不通过执行程序而进行测试的技术,关键是检查软件的表示和描述是否一致,是否存在冲突。找出源代码的语法错误,编译器和人工检测方法如代码检测法,静态结构分析法)动态测试(需要软件执行,当软件系统在模拟的或真实的环境中执行之前,之中和之后,对软件系统行为的分析是主要特点) 黑盒测试:数据驱动测试,穷举输入测试,只有把所有可能的输入都作为测试数据使用,才能查出程序中所有的错误。分为功能测试(方法:等价类划分,边值分析,因果图,错误推测,功能图法等,主要用于软件确认测试)和非功能测试(性能测试,强度测试,兼容性测试,配置测试,安全测试等) 等价类划分概述(所谓等价类是指摸个输入域的子集,等价类划分是一种典型的、常用的黑盒测试方法。使用这一方法时,把所有可能的输入数据(即将程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据)作为测试用例。 有效等价类(指对于程序规格说明来说,由合理的、有意义的输入数据构成的集合。利用它,可以检验程序是否实现了规格说明预先规定的功能和性能) 无效等价类(指对于程序规格说明来说,由不合理的、无意义的输入数据构成的集合) 单元测试:对软件设计的最小单元——模块进行正确性检验的测试工作,主要测试模块在语法,格式和逻辑上的错误。主要采用白盒测试技术,辅之以黑盒测试技术

苹果用户界面指南

苹果用户界面指南 此指南的组织结构 此指南主要分为三部分,每一部分又包含很多章节 第一部分,“应用软件设计原则”,描述了最基本的设计准则,在设计任何应用软件时,要时刻记住这些原则; 第二部分,“苹果系统体验”,在这里我们将探讨苹果OSX系统技术,这些技术已被大多数用户所接受。您可以的利用这些方法是你的开发过程更加的顺畅,确保您的应用软件在整个系统的操作中运转流畅。 第三部分,“苹果系统界面”,主要描述苹果OSX系统的用户界面。为您解释特定的用户界面元素如何为您服务,以及包含大量原则,以及如何在你的应用软件中使用和实施这些原则。 第一章应用软件设计原则 《苹果人机界面指南》的这一部分将介绍蕴藏在苹果系统界面背后的哲学和心理学。阅读本章,你可以通过学习设计软件的准则和设计软件需要考虑的方方面面,从而设计出非常出色的软件产品。这个产品具有直观的、吸引人的人性化界面。你还会学习如何将好的用户界面设计思想融合到你的设计当中和决策过程当中;如何在整个设计中使你的用户参与进来。本节还会告诉你,如何使用这些方法和原则,并举一反三。 1.1 设计过程 这一小节介绍给大家一些基本方法,这些方法会帮助你设计出非常出色的软件产品。一个伟大的软件设计包括认真分析用户的需求,毕竟用户是最终使用你产品的人。找出用户的需求和满足需求的方法,是设计过程中非常重要的一步。 1.1.1 使用户参与到设计过程中来 使你的产品满足目标用户的最好方法是使设计过程时刻在用户的督导之下进行。在设计的每一个环节都坚持此原则,这可以帮助你发现你产品中的亮点和薄弱环节。 当你给人机会使用你的软件时(或者是一个软件的演示模型),你可能会发现一些在你最初设计软件时想象不到的问题。尽早的找出并解决这些问题,能够帮助你在后期的设计中节约时间和成本。明确用户的需求有助于你的产品提供高效的解决方案,而且非常容易学习和使用。这些改进将转化成竞争优势、增加销售额、提高用户的满意程度。 1.1.1.1 了解你的用户 明确并懂得你的目标用户,是你在设计产品时需要迈出的非常重要的第一步。同等重要的是,分析与你的产品市场领域相近的其它产品,判断其目标用户,以及这些产品是不是你的竞争对手,你的产品有没有交叉的地方。学习其他产品设计师的方法将会帮助你分析自己的目标用户需求。

SOAPUI接口测试使用手册

SoapUI接口测试使用手册 () \

1.~ 的介绍 2.SoapUI SoapUI是专门针对Webservice接口的测试工具,功能强大且界面易用。它是直接利用Web Service的WSDL文件测试Web服务的接口,利用SOAPUI测试不需要了解底层的接口、调用关系及详细协议,也不需要使用编程来实现测试用例,而是基于WSDL自动产生测试消息。SOAPUI还支持接口的负载测试。在对同一Web Service接口进行测试时,SOAPUI比Loadrunner表现的性能会更加优越、真实,更接近反映接口的性能指标。并且SoapUI支持多种语言,java、c++,且wcf 这种形式的接口也可支持。 3.S oapUI的安装 SoapUI基于JAVA开发,支持多个平台,需要设置JAVA_HOME 变量指向到相应的JRE 目录,同时修改PATH 变量,将的bin 目录添加到PATH里面。4.S oapUI接口测试 3.1创建/导入工程 启动SoapUI程序,双击目录bin下的,即可启动程序。程序第一次打开后,在左侧导航面板上,自动有一个空的Projects 工程。鼠标右键点击Projects,选择第一项“New SoapUI Project”,新建一个工程。(如果本地有现成的工程,也可直接选择第二项导入工程“Import Project”,选择本地的xml文件导入即可)如下图 《

页面弹出“New SoapUI Project”框,输入Project Name,“Initial WSDL/WADL”可填入URL 地址或直接导入WSDL 文件,(在这一步骤中,也可不导入WSDL文件,等到工程创建好后,右键点击工程名,选择“Add WSDL”也可导入) 如下图所示: — 默认选上: Create Requests:Create sample requests for all operations(为每个接口创建一个请求) Create TestSuite:Creates a TestSuite for the imported WSDL or WADL(为WSDL 或WADL 创建一个测试包)

用户界面规范

用户界面规范 有关界面设计与测试的规范,我在工作中总结了一些有关界面设计与测试的规范,与大家共享。界面设计与测试规则界面是软件与用户交互的最直接的层,界面的好坏决定用户对软件的第一印象。而且设计良好的界面能够引导用户自己完成相应的操作,起到向导的作用。同时界面如同人的面孔,具有吸引用户的直接优势。 目前流行的界面风格有三种方式、多窗体、单窗体以及资源管理器风格,无论那种风格,以下规则是应该被重视的。 1、易用性:按钮名称应该易懂,用词准确,屏弃没楞两可的字眼,要与同一界面上的其他按钮易于区分,能望文知意最好。理想的情况是用户不用查阅帮助就能知道该界面的功能并进行相关的正确操作。 易用性细则: 1)、完成相同或相近功能的按钮用Frame框起来,常用按钮要支持快捷方式。 2)、完成同一功能或任务的元素放在集中位置,减少鼠标移动的距离。 3)、按功能将界面划分局域块,用Frame框括起来,并要有功能说明或标题。 4)、界面要支持键盘自动浏览按钮功能,即按Tab键的自动切换功能。 5)、界面上首先应输入的和重要信息的控件在Tab顺序中应当靠前,位置也应放在窗口上较醒目的位置。 6)、同一界面上的控件数最好不要超过10个,多于10个时可以考虑使用分页界面显示。 7)、分页界面要支持在页面间的快捷切换,常用组合快捷键Ctrl+Tab 8)、默认按钮要支持Enter及选操作,即按Enter后自动执行默认按钮对应操作。 9)、可写控件检测到非法输入后应给出说明并能自动获得焦点。 10)、Tab键的顺序与控件排列顺序要一直,目前流行总体从上到下,同时行间从左到右的方式。 11)、复选框和选项框按选择几率的高底而先后排列。 12)、复选框和选项框要有默认选项,并支持Tab选择。 13)、选项数相同时多用选项框而不用下拉列表框。 14)、界面空间较小时使用下拉框而不用选项框。 15)、选项数叫少时使用选项框,相反使用下拉列表框。 16)、专业性强的软件要使用相关的专业术语,通用性界面则提倡使用通用性词眼。 2、规范性:通常界面设计都按Windows界面的规范来设计,即包含“菜单条、

WEB界面测试用例

Web界面测试小结[1] 我是从事web测试的,特别是电子商务网站,现在大部分客户对界面的要求非常高,所以对于测试人员来讲,也必须特别注意界面的一些东西。从前几个项目来看,个人认为界面测试的测试点以及应该注意的问题: 1:界面的线条是否一致,每个界面中线条是否对齐,是否一致。(静态页面没有确认的情况下) 2:整个系统的界面是否保持一致 3:界面中是否存在错别字 4:界面所有的按钮样式是否一致 5:每个界面是否同原静态页面设计一致(静态页面确认的情况下) 6:操作是否友好 7:界面所有的按钮、下拉框是否有响应 8:界面所有的链接是否正常 9:界面所有的输入框是否都进行校验(例如:搜索框、字段输入框) 10:界面所有的列表页标题字是否会折行,标题字是否统一居中等,当然也可以居左,这需要同客户沟通(折行的话影响美观) 11:界面所有的展示图片是否样式一致 12:浏览器的兼容性问题,检查页面在不同浏览器下是否会发生异常 13:每个页面的提示字体的颜色、格式是否统一准确 14:界面中所有字段后面是否都存在冒号,有冒号,查看是否冒号为统一的中文冒号还是英文冒号。 15:界面中的提示说明叙述是否太啰嗦,有时候需要能简化尽量简化,并且字体显示格式一致,颜色统一。 16:在web网站,一般经常是后台控制前台的显示,因此在对后台进行数据添加时,查看前台是否有变化,并且查看界面的数据是否溢出框外。 当然,我们在进行界面测试时,必须明确UI测试的目的,它是确保用户界面通过测试对象的功能来为用户提供相应的访问或浏览功能。

确保用户界面符合公司和行业的标准。 通过用户界面测试来核实用户与软件的交互,UI测试的目标在于确保用户界面向用户提供了适当的访问和浏览对象功能的操作,除此之外,UI测试还却表UI功能内部的对象符号预期的要求,并遵循公司和行业的标准。 接下来,具体的分析一下界面测试的依据从哪些方面着手。 测试目标: 1:窗口与窗口之间、字段与字段之间的浏览,以及各种访问方法(tab键、鼠标移动和快捷键)的使用 2:窗口的对象和特征(例如:菜单、大小、位置、状态和中心)都符号标准 测试方法:为每个窗口创建或修改测试,以核实各个应用程序窗口和对象都可正确的进行浏览,并处于正常的对象状态。 我们在实际工作当中,针对web应用程序,也就是经常所说的B/S系统,可以从如下方面来进行用户界面测试: 1:导航测试 导航描述了用户在一个页面内操作的方式,在不同的用户接口控制之间,例如按钮、对话框、列表和窗口等; 不同的链接页面之间,通过考虑下列问题,可以决定一个web应用系统是否易于导航;导航是否直观?web系统的主要部分是否可通过主页存取?web系统是否需要站点地图、搜索引擎或其他的导航帮助 当然,这些同美工以及客户需求有关。我们是根据已经确认的页面进行测试即可。 2:图形测试 图形包括图片、动画、边框、颜色、字体、背景、按钮等。 (1)要确保图形有明确的用途,图片或动画不要胡乱的堆在一起,以免浪费传输时间,web应用系统的图片尺寸要尽量地小,并且要能清楚的说明某件事情。一般都链接到某个具体的页面 (2)验证所有页面字体的风格是否一致 (3)背景颜色与字体颜色和背景色相搭配 (4)图片的大小和质量,一般采用jpg或gif压缩,最好能使用图片的大小减小到30k

UI界面测试要点

1.UI界面测试要点 1、界面的线条是否一致,每个界面中线条是否对齐,是否一致。 2、整个系统的界面是否保持一致。 3、界面是否存在错别字。 4、界面上的按钮样式是否一致。 5、每个界面是否同原静态页面设置一致(静态页面确认的情况下) 6、操作是否友好。 7、界面所有的按钮、下拉框是否有响应。 8、界面所有的链接是否正常; 9、界面所有的输入框是否都进行校验(例如:搜索框、字段输入框)。 10、界面所有的展示图片是否样式一致。 11、界面所有的列表页标题字是否会换行,标题字是否统一居中等,当然也可以 居左,这要看公司规范; 12、浏览器的兼容性问题,检查页面在不同浏览器下是否会发生异常; 13、每个页面的提示字体的颜色、格式是否统一准确; 14、界面中所有字段后面是否都存在冒号,冒号,查看是否冒号为统一的中文冒号还是英文冒号。 15、界面中的提示说明阐述是否太啰嗦,有时候需要能简化尽量简化,并且字体 显示格式一致,颜色统一。 16、在web网站,一般经常是后台控制前台的显示,因此在对后台进行数据添加 时,查看前台是否有变化,并且查看界面的数据是否溢出框外。 2.UI界面测试方法

1.窗口与窗口之间,字段与字段之间的浏览,以及各种访问方法(tab键、鼠标移 动和快捷键)的使用; 2.窗口的对象和特征(例如:菜单、大小、位置、状态和中心)都符合标准; 测试方法:为每个窗口创建或修改,以核对各个应用程序窗口和对象都可正确的进行浏览,并处于正常的对象状态。 3.导航测试:导航描述了用户在一个页面内操作的方式,在不同的用户接口控制之 间,例如按钮、对话框、列表和窗口等; 不同的链接页面之间,通过思考下列问题,可以决定一个web应用系统是否易于导航;导航是否直观?web系统的主要部分是否可通过主页存取?web系统是否需要站点地图、搜索引擎或其他的导航帮助。 4.图形测试 图形包括图片、动画、边框、颜色、字体、背景、按钮等。 1)要确保图形有明确的用途,图片或动画不要胡乱的堆在一起,以免浪费传输时间,web应用系统的图片尺寸要尽量的小,并且要能清楚的说明某种事情,一般能链接到某个具体的页面; 2)验证所有页面字体的风格是否一致; 3)背景颜色与字体颜色和背景色相搭配; 4)图片的大小和质量,一般采用jpg或gif压缩,最好能使用图片的大小减小到30K以下; 5)演示文字回绕是否正确,如果说明文字指向右边的图片,应该确保该图片出现在右边,不要因为使用图片而使窗口和段落排列古怪合作出现骨性; 5.内容测试

相关文档