`
sunxboy
  • 浏览: 2870259 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

软件设计的十二个最佳步骤

阅读更多

许多公司理解不了为何自己设计的软件没有达到预期的效果,也理解不了为何用户会遇到预料不到的错误。据微软加拿大公司的可用性顾问David Crow和多伦多的软件开发公司Radiant Core总裁Jay Goldman介绍,没有比醒来后才发现需要可用性测试更糟糕的了。近日在加拿大辛尼加学院举行的自由软件和开源软件讨论会上,两人介绍了让软件设计返回 正常轨道的12个步骤。

第一个步骤:承认自己有问题

Goldman说:“你想单凭自己设计出可用性良好的软件是不可能的。”他们主张借助人物角色,设计这种虚构人物是为了模拟目标用户群当中可能使用网站或者产品的不同类型的用户。增强可用性的“非正式”方法可能也管用,比如非正规的客户访谈以及与技术支持人员一起合作。

第二个步骤:要认识到用户比你自己还重要

Crow在会上放了几张幻灯片,上面显示的是三种不同类型的用于公共场所的椅子,然后问观众偏爱哪种设计。自然是萝卜青菜,各有所爱。他说:“应用软件开发也始终存在这个问题。要找出是谁要使用你设计的产品。”

第三个步骤:要认识到优秀设计的重要性

Goldman引用了Steve Jobs的一句话:“设计不单单关注产品的外观感觉,更应关注产品用起来如何。”Crow指出,考虑到基于Mac的硬件销量卷土重来,这句话值得铭记在心。

第四个步骤:认真检查一下在用户体验方面的不足

Crow和Goldman邀请观众上台帮助自己一起画人物线条画,让大家明白即使画简单的图也要运用大量逻辑,还要质疑一些基本假设。这就是为什么他们认为连环漫画书可能是有用的软件开发教材。

第五个步骤:在别人面前承认自身问题的性质

你要做的不只是得到用户反馈,还要站在平等地位与用户进行交谈,这有助于弄清楚为什么应用软件不管用。Goldman说:“迈出这一步(即经常与用户交谈),确实需要莫大的勇气,但是一旦公开表示了自己的不足,你就向成功彼岸靠近了一大步。”

第六个步骤:准备去除这些缺陷

Crow拿微软公司的Office 2007为例说明。这家公司为其Word产品添加更多的特性和功能时,开始在界面中使用“压缩的”工具栏(即两个或者多个工具栏能够容纳在屏幕的同一行 中);等到交付Word 2003时,工具栏从原来的12个增加到超过31个。Crow说:“在前十项特性要求当中,有五项要求Office提供不止一个版本的工具栏。”相比之 下,最新版本使用了“功能区”,上面有一组主要的工具栏,可帮助用户找到所需工具。

第七个步骤:寻求帮助

就连像Mozilla开源基金会这样拥有丰富资源的大组织也开始在网站上发布下一款Firefox浏览器的原型。这么做可能会吓跑一些企业,因为担心自己的设计方案被竞争对手看到。不过Goldman和Crow却认为,这能够获得丰厚回报。

第八个步骤:列出伤害过的所有用户,然后为对方改善设计

Goldman划出了从实用、可靠、可用、方便、令人满意到富有意义的几个档次。他说:“要评估自己处在哪个档次。大多数软件接近‘方便’的档次。”

第九个步骤:直接赔礼道歉

遗憾的是,有时候向用户征求反馈意见反而会带来适得其反的结果。要是你没有改进产品设计,就等着最糟糕的情况发生吧!Crow说:“最好不要与用户断绝关系。不然,他们肯定不会成为回头客,还会把这事告诉他们所有的朋友。”

第十个步骤:不断改进设计

可用性测试不是一蹴而就的,而是一项周期性工作:观察、分析、设计。

第十一个步骤:认识到要是没有用户,一切都是白搭

Goldman提到CueCat是可用性设计非常糟糕的一个案例:这款手持设备用于扫描杂志里面的条形码,然后,将其发送到URL。他说:“它并没有为用户解决问题。用户仍得使用计算机。”

第十二个步骤:让爱传出去

软件社区拥有大量可供后来人汲取的宝贵经验,包括雅虎的用户界面库和Tango.freedesktop.org等。这是促进软件业蓬勃发展的一个关键要素。Crow说:“我们作为设计人员都有义务与他人共享最佳实践。”

分享到:
评论

相关推荐

    软件设计师教程资料文档

    3. **设计模式**:如工厂模式、单例模式、观察者模式等,这些是软件设计中常用的最佳实践,有助于提高代码的复用性和可读性。 4. **数据结构与算法**:高效的数据结构(如链表、树、图)和算法(排序、搜索)是软件...

    软件工程-软件设计概述

    软件工程中的软件设计是将分析模型转化为实际的软件实施方案的过程,它是从软件需求阶段过渡到实现阶段的关键步骤。软件设计的主要目标是明确“怎么做”,即根据软件需求规格说明书,形成软件的具体设计方案,包括...

    DPS均匀设计应用步骤

    总结来说,DPS软件的均匀设计应用步骤包括数据导入、选择分析类型、设定参数、计算与分析、解读结果和寻找最佳组合。这一过程旨在通过科学的方法优化实验条件,提高实验效率和结果的准确性。在实际应用中,根据具体...

    软件工程文档实例书写步骤

    下面将详细讲解"软件工程文档实例书写步骤"中的各个阶段,以及每个阶段对应的文档内容。 1. **需求分析**: 需求分析文档是软件开发的第一步,它明确了系统的目标、功能和性能需求。这个阶段的文档通常包括《需求...

    软件开发的完整步骤.pdf

    概要设计是软件开发的第四步骤,在这个阶段需要进行规范的制定、供选择的方案的设想、推荐最佳方案、功能分解、软件结构设计、数据设计、制定测试计划、编写《概要设计规格说明书》等工作。概要设计的目的是为了确定...

    AutoPress软件设计模具的步骤与注意事项

    以下是对AutoPress软件设计模具的步骤、注意事项及相关知识点的详细说明: 1. **加载或绘制产品图**:首先,设计师需要导入产品图(如图一),可以是直接绘制或从其他CAD软件导入。AutoPress软件提供了接合法展开...

    AutoPress软件设计模具的步骤与注意事项.doc

    下面将详细阐述使用AutoPress软件设计模具的步骤与注意事项。 第一步,加载或绘制产品图。在开始设计前,需要将产品的三维模型导入到AutoPress中,或者直接在软件内绘制二维的产品轮廓,如图一所示。这一步确保了...

    渡槽设计软件.rar

    【渡槽设计软件.rar】是一个压缩包文件,包含与渡槽设计相关的软件工具和可能的文档资料。渡槽是水利工程中的重要组成部分,主要用于输送水流,常用于灌溉、供水和水力发电等领域。在这个压缩包中,我们可以看到以下...

    软件工程课件第4章软件设计.ppt

    第四章的软件设计是软件开发中的关键阶段,它主要分为两个步骤:概要设计和详细设计。概要设计,也称为总体设计或系统设计,主要关注软件的宏观结构和功能,确保用户的需求得到满足。这一阶段的目标是创建一个易于...

    软件设计师试题及答案

    在IT行业中,软件设计师是一个至关重要的角色,他们负责规划、设计和实现软件系统,确保产品的质量和功能满足用户需求。这份“软件设计师试题及答案”压缩包文件,显然是为准备软件设计师资格考试或提升专业技能的...

    成为一个优秀软件设计师

    成为一个优秀的软件设计师并非一蹴而就的事情,它需要扎实的技术基础、卓越的团队协作能力以及对软件生命周期的深入理解。以下是一些关键知识点,对于希望在这个领域取得成功的人来说至关重要。 首先,重视团队合作...

    软件建模与设计

    软件建模与设计是软件开发过程中的核心环节,它涵盖了从需求分析到系统实现的整个流程。本资源包包含了五个PPT课件和一本名为...通过深入学习和应用这些资源,你可以更好地理解和实施高效、可维护的软件设计。

    软件设计师之道ppt

    《软件设计师之道》是一部深入探讨软件设计思想与实践的PPT资料,旨在为软件设计师提供一套全面的方法论和指导原则。这份文档详细阐述了软件设计的重要性、基本原则、设计模式以及如何提升软件设计师的专业素养。 ...

    2015年上半年软件设计师真题及答案

    总之,2015年上半年软件设计师真题及答案是一个宝贵的教育资源,涵盖了软件设计的多个层面,无论是对于考生的技能检验,还是对于从业人员的自我提升,都有着极高的参考价值。通过深入学习和研究,我们可以不断提升在...

    软件设计与体系结构-教案

    "设计模式"是解决常见软件设计问题的最佳实践,它们是经过验证的解决方案模板。在教案中,你会遇到"创建型模式",包括工厂模式(用于创建对象的抽象工厂)、单例模式(确保一个类只有一个实例)、建造者模式(复杂...

    水处理设计软件

    废水处理设计涉及到多个步骤和技术,包括物理、化学和生物处理过程。软件能够模拟这些过程,以确定最佳的工艺组合。例如,它可以分析废水的特性,如BOD(生化需氧量)、COD(化学需氧量)、SS(悬浮固体)等参数,...

    软件工程05总体设计.pptx

    软件设计的步骤包括:总体设计的步骤有五个,分别是:设想供选择的方案、选取合理方案、推荐最佳方案、功能分解、设计软件结构。每个步骤都涉及到软件设计的不同方面,旨在确保软件设计的正确性和可靠性。 在总体...

    软件设计实践

    在软件开发过程中,软件设计实践是至关重要的一个环节,它涉及到整个项目的规划、架构设计以及模块划分等。软件设计不仅仅是编程前的准备,更是保证软件质量和可维护性的关键步骤。以下将详细介绍软件设计实践中的...

    软件设计概要设计模板

    通过这些模板,学习者可以了解到软件设计的完整流程,从需求收集到系统实现,再到测试与维护,每一个步骤都应有相应的文档支持。这些文档不仅有助于保持项目的专业性和可维护性,也有利于团队间的沟通协调,提高开发...

    RO反渗透程序设计软件.rar

    在压缩包内的“RO反渗透程序设计软件p.msi”文件是安装程序,双击后按照向导步骤即可完成软件的安装。安装后,用户可以开始体验其强大的功能,进行反渗透系统设计,解决实际工程问题。需要注意的是,使用过程中可能...

Global site tag (gtag.js) - Google Analytics