写点什么

盘点帮助系统的需求,提升用户的体验

作者:AlexLei
  • 2023-10-29
    广东
  • 本文字数:7093 字

    阅读完需:约 23 分钟

本文对各类软件中的帮助模块功能特性进行了全面深入的分析和整理,适合软件设计师和产品经理阅读学习。全文约九千字,配有大量截图。

一、 概述

帮助体系(Help System)是整个软件服务支持体系(SupportSystem)的重要组成部分。服务支持会有多种不同形式,如:提供使用手册、使用培训或指导、在线问答、电话问答、机器人辅助的问答、远程桌面指导等。


本文重点讨论信息化的帮助模块功能和分类。整个的服务支持体系涉及到人机工程学、用户体验、可用性工程、售后服务支持等,这些不在谈论范围之内。

1. 概念解析

不同性质的软件有着不同的帮助体系设计。软件中的提示文字、电子版的手册、在线帮助网站、纸质文档手册均能起到帮助作用。


本文所说的帮助体系,主要是指以文字、图片、音频、视频、交互式学习课程、在线学习培训课程等形式提供给用户的帮助文档。当使用软件的人有疑问需要求助时,通过这些学习资料来获得指导和解答,以继续顺畅使用软件。

2. 内嵌或外联

功能需求非功能需求的分类方法对本文的讨论没有意义。我们介绍两个对帮助模块有价值的分类方式。


根据帮助内容展现的形式或位置,分为内嵌外联


内嵌,嵌入到软件本体并散落在各处。在软件运行到特定场景时显示出与此场景有关的帮助内容。通常以步骤指导、动画演示、旁白注解等形式体现,为用户操作界面提供指导。这些帮助内容作为软件功能的一部分,用以降低操作难度,提升用户体验。


内嵌帮助还有一些特点:更新这些内容通常需要整体更新软件(但不绝对);没有单独的入口,看到帮助内容必须运行软件(如图 1)。


图 1 内嵌在curl程序里的简明帮助手册


外联,帮助内容有专门的入口,可以使用独立子程序打开。帮助内容与软件之间有设计好的接口协议,在软件中以链接形式体现,通过链接能打开专门的子程序并中显示指定帮助内容(图 2)。外联帮助文档可以独立更新。

图 2 Excel软件中外联的帮助文档,可以在软件中打开,也能在浏览器中之间打开


3. 静态或动态

根据帮助内容是否可变或更新的难易程度,分为静态或动态


静态的:帮助内容是不变的。在软件运行期间帮助内容不发生变化。具有最低的使用依赖,但更新有较高成本或难度。例如印刷的使用手册、随附的光盘、电子版帮助手册、静态编译到软件内的帮助文档和词条(如图 3)。


图 3 man curl指令截图,可以离线访问


动态的:帮助内容是可变的。帮助手册具备一些动态交互特征,可以根据操作、上下文生成新的帮助内容或指导,或者帮助文档以方便更新的方式提供。通常是以在互联网线方式提供,同时提供便捷的纠错或反馈方式(图 4)。


图 4 处于联机状态下的Windows 11帮助对话框


注意,动态、静态与离线、在线之间是有区别的。离线帮助通常是静态的,不常更新,但也可以具备一部分的动态交互特征。在线帮助通常是动态的和外联的,但如果没有很好的贯彻更新机制,也很难说做到真正的动态。在线帮助如果遇到没有网络的环境,无法加载实际内容(图 5)


这两个分类是为了帮助深入后文的分析和讨论,实际中的软件并不仅采用某一种固定类型的帮助。


图 5 无网络时Windows11的帮助对话框


4. 不同的入口

人们在使用软件时遇到问题,当然会想随时随地能够获得帮助。但受限于当下的机制,很难做到随时随地。软件开发者们在长期的实践过程中,积累形成一定的经验,通常通过以下时机或途径来提供帮助服务。


1. 安装软件中或安装完毕时。此时通常会显示软件的特色功能或操作说明。受限于环境,安装程序中的帮助内容一般采用静态+嵌入式。当然,如果安装程序在安装允许联网,也是有可能采用动态+嵌入式。软件安装过程通常比较短,能够显示的内容不多,显示完后会循环显示(图 6)。


图 6 Ubuntu安装过程中显示的如何获取帮助(来源:Ubuntu官网安装手册)


2.启动时主动显示帮助内容。这是最重要的一类帮助用户使用软件的手段。例如显示软件的亮点功能、简单的界面按钮说明、帮助入门的操作指导、一些技巧新提示(图 7)等。根据软件的用受众水平,使用习惯等,会有不同的帮助方式设计。


图 7 IDEA CE中的"每日提示"窗口


3. 教学模式。与第 2 种稍有不同,启动时显示的帮助内容是非阻塞、可跳过的,但教学模式会让软件进入特别状态,不能跳过,必须学习完成才能退出。根据需要,教学模式只能进入一次或可多次进入。


图 8 appsmith的交互式学习,帮助模块与主界面有通信,能感知学习进度


在图形界面(GUI)的菜单(menu)中选择"帮助"选项。遵循通行的图形用户界面设计准则,提供通用的帮助入口(图 9)。


图 9 Word Mac版的帮助菜单


5.特别的命令参数。可执行程序如果支持执行时传参,可以有一个参数用于输出帮助文档(见图 1)。


6.使用快捷键触发显示帮助。例如,Windows 中常用“F1”键表示显示帮助的按键,Mac 则是"⌘+?"。浏览器中运行的程序也可以设置快捷键(图 10)


图 10 Grafana在键入"?"时会显示快捷键卡片


7.在操作错误时触发显示帮助。当与软件的交互出现错误时,除了用文字描述提示错误原因之外,还附上更多的帮助内容或外联式方式(图 11)。


图 11 Excel 在公式输入错误时会有帮助链接


8. 使用软件功能时,在旁边显示帮助按钮。界面空间有限,而又需要更多解释来澄清功能时通常会附加外联式的帮助内容(图 12)。

图 12 腾讯会议软件中的"了解更多"按钮


9.查阅帮助手册。最后的最后,除了软件自主显示的帮助内容外,你还可以去主动查阅帮助手册,在线的、离线的亦或打印版。

二 特色需求

软件工程发展至今,已经在用户体验、可用性、辅助、帮助领域积累丰富实践经验。笔者特地整理一批在帮助模块上常见的需求供参考。我们从三个方面进行介绍,内嵌帮助、外联帮助,撰写工具。

5. 内嵌式的特色功能

在第四节提到有相当多的帮助获取入口是必须要嵌入在软件中才能有效果。嵌入的帮助,以静态的居多,作用有限,更新难度大,也会受到用户体验的影响。现在有逐渐通过接入在线助理来提升帮助效率、效果的趋势。经过分析整理,有 6 类特色功能。


欢迎(welcome)。进入软件的首页面显示学习指导内容、快速开始、近期历史记录等帮助用户开始使用软件(图 13)。欢迎页的内容多为动态,并外联帮助文档。不会阻塞、可以关闭。


图 13 VS Code默认显示"Welcome"页提示可能的操作


新功能(what's new)。在软件启动时显示新功能说明(图 14)或更新日志(图 15)。内容通常是静态的。通常在每次有更新后只显示一次。


图 14 Keynote每次更新后会显示一次新功能


图 15 Visual Studio Code在更新后会显示Release Notes


提示(tips)。 在每次软件启动时显示简短的操作技巧提示(图 7)。内容通常是静态、嵌入的。可以永久关闭或开启。


引导(guide、onboarding、tour)。使用遮罩或卡片的方式简单介绍图形界面的各处功能按钮用法(图 16)。内容通常是静态的。在移动应用程序中常见。可以跳过,通常不会再度开启。


图 16 采用阻塞和引导的方式介绍软件使用


教学(learn)。采用交互式的学习的模式一步步教用户使用软件。帮助内容是内嵌、动态的。帮助模块与软件主体之间有通信,能够操作软件内容,也能够感知用户操作的结果,更新教学进度(图 8、图 17)。有的软件的教学模式是强制的,必须完成全部才能退回常规状态,有的教学模式可以由用户自行发起。


图 17 Appsmith中的教学帮助


助手agentassistant)。用户在软件操作过程中有一个助手子模块可与之交互,助力模块能够根据当前操作情景推测用户可能的动作,并给出提示。典型的例子是在微软 Office97——2003 期间,软件启动后会显示一个曲别针拟人助手(图 18)。


图 18 微软Office 助理Clippy(来源:维基百科,Office_Assistant)


助手类模块在流行一段时间后消退了,但在最近伴随 AIGC 的兴起,搭配 AIGC 的在线助手正在重新活跃(图 19)。


图 19 金山云文档的AI助理


内嵌帮助的形式不尽相同,形式不一。不同软件会根据实际需要采取不同的实现策略。并且内嵌的帮助还会涉及到用户体验相关的知识,超出帮助内容本身。借用用户体验专家的话来说,就是:


“操作引导的目的是教用户如何使用界面。不应使用操作引导来补救不好的设计。与创建操作引导内容相比,应该将资源更多地花费在使 UI 更具可用性上”——[1]

6. 外联式的特色功能

外联的帮助多采用专门的格式存储内容并搭配专门的文档阅读器。Web 的流行让帮助文档的存储多采用 HTML 格式。独立帮助系统,是指又专门格式文档与能够解析并展现这些文档的独立阅读程序组成的通用性帮助模块。


除了标准的浏览器所提供的的功能外。外联帮助系统通(阅读器)常也会提供一些特色功能,方便用户查阅文档。这些帮助系统通常会提供这些功能:


搜索。输入关键词在帮助文档中进行查找(图 20)。


根据经验检索功能既可语义问答以离线也可以在线。离线检索会受到电脑处理能力限制多采取简单快速的关键词查找。在线检索则可以利用服务器和更高级的全文检索,甚至做到语义问答。


图 20 微软Word for Mac的检索功能


目录。按照章节大纲的形式组织帮助手册,并显示大纲(图 21)。


图 21 苹果mac帮助手册,左边有目录大纲


多国语言。将帮助手册翻译成多国语言,根据使用选择的语言进行显示。甚至在翻译时使用机器辅助翻译(图 22)。


图 22 安卓开发者手册,中文翻译版


书签与批注。在关键页面添加书签和批注,后面可用于快速跳转(图 23)。


图 23 苹果电脑中电子书阅读器支持书签(开打的是Spring Boot参考手册 )


动态生成。帮助内容有动态交互特征。通过一些操作可以生成用户想要的内容(图 24),并可生成的内容应用到软件中。


图 24 Neo4j的Cypher练习页提供沙盒环境学习


注意:动态的实现不止一种,可运行的示例、可预览效果的演示,视频教程都能帮助加速用户使用。


内容跳转。帮助模块与软件之间有协议约定,在帮助模块中的交互操作可以反映到软件本身中(图 25)。常见实现方案是采用特别的 URL Scheme 约定,也有采用 RPC 方案的。


图 25 Adobe Photoshop学习手册中含有的可导入软件中使用的教学课程


多版本。一个软件产品的不同版本会有功能差异,帮助模块在呈现帮助内容时,应根据运行软件的版本选择性的显示一致的帮助内容。并在版本不一致时提醒用户。


要想达成这一目标,还应当在帮助内容撰写时对内容进行标记。有的采用了一个版本提供一份手册的方案。有的则采用了动态化设计,将标记控制在更为精细的段落级,在运行时有选择的显示不同内容(图 26)。


图 26 微软Windows下载自定义字体页可以动态切换版本


反馈修订。提供用户反馈修订的方法,让用户参与修订文档。可以是意见建议、投票打分、追加批注(图 27)、甚至允许用户参与正文修订。


图 27 PHP帮助手册允许用户追加使用经验


帮助文档的撰写、修订是一个庞大的工作量,不亚于编程。形形色色的人使用软件会就产生形形色色的用法、问题、不同人认知、知识差异还会对相同内容产生不同理解。


在互联网并不发达的时期,帮助内容的管理和维护主要依赖软件开发商的服务团队。从发现问题到修订再到分发更新是一个长周期的过程。现在互联网普及以及管理思路的扩展,将用户加入到反馈修订流程中,并且线上化。与之前相比速度就提高不少。更还产生了邀请用户直接参与修订帮助文档的机制。


现在常见的反馈机制有:对帮助内容打分投票并给出改进建议;追加评注或批注;在线评审纠错机制等。

7. 编写帮助文档的工具

外联帮助因能够及时得到更新,而受到了软件开发商的青睐,得到更广泛的使用。即便是嵌入的帮助,也在想办法将帮助模块做成可以独立更新的。


前面介绍的功能是用户看到的帮助内容。但帮助文档的制作也是有工具来支持的。工具大约可以分为四类:撰写工具、打包工具、存储或分发格式、阅览器。


虽然有这个分类,但工具并没有严格的类型界限。我们从编写帮助中的几个重要点出发来介绍工具。

多媒体内容

帮助内容支持多媒体几乎是必选,文字、符号、格式、图片、音频、视频等(图 28)。终端(Terminal)程序受平台限制难以支持多媒体,但可以通过外联的方式指向多媒体资源。


图 28 Excel在帮助内容中提供视频教学片段,与单纯的文字相比更加生动


多媒体内容之间的链接引用,不仅限于对象的入口,还要能直接指向内部(例如:可以在图片上标记特定区域,对该区域加以说明。视频可以直接跳转到固定时间点开始。)。

文档编写工具

帮助文档的产生制作类似于软件开发,编写、保存、编译、分发、阅读。各阶段都有工具的参与。为了能系统性的做这件事,诞生了一类专门的帮助制作软件(help authoring tools)。


编写工具分为两种,一种是工具套件,完整的负责从编写、编译到分发的整个过程。另外则是格式转换工具,在支持多种通用格式规范文档解析转换,可以使用任意编辑工具编写。


设想一个最简单的场景,使用纯文本方式撰写文档,并保存为 txt 类型进行分发,在客户处使用任意的文本编辑查看工具打开阅读。——这也是一个可行的帮助文档管理方案。


以下是一些常见的工具。


1. Adobe RoboHelp


Adobe 公司发行的帮助文档制作软件。初版发布于 1992 年,当时还是微软 Word 软件的插件,使用 RTF 作为存储格式。


经过近 30 年的发展,已成为集撰写、评审、管理、翻译、发布等功能于一体。并支持将文档输出为网页、PDF、手机程序、电子书,Word 等格式。


2. DocBook


DocBook 不是一个软件,而是一套电子文档的表示模式。适合于科技类书籍和论文的编写,也常用来编写帮助手册。


DocBook 诞生于 1991 年,现已经发展到第五版,目前由结构化信息标准促进组织(OASIS)下的 DocBook 技术委员会维护。其规格说明采用多种表达方式(SGML、XML DTDs、W3C XMLSchema、RELAX NG) 。


DocBook 可使用任何支持 XML 标准的软件来撰写,并使用转换器(XSLT、CSS)转换成其他便于传输和阅读的格式。


3. 其他标记语言


诸如 Markdown、AsciiDoc、reStructuredText、Textile、MediaWiki 等的纯文本标记语言(plaintext markuplanguage)也大量的应用于帮助文档的的写作中。与 XML、HTML 不同,这类标记语言仍然尝试保留有纯文本的结构外观,直接使用文本编辑器查看文档时任然具有不错的所见即所得效果。


这类文档虽然只能接查看,但看到的不是最终效果。必须经过专门的解析、转换输出为最终可阅览的格式。有许多工具支持将这类文档在不同格式之间转换:pandoc、Docutils 等等,还有许多工具支持其发布为一个网站:MkDocs、gitbook、docsify、docusaurus。


4. Wiki


Wiki 类软件也适合用作搭建在线帮助系统。不少项目 Wiki 软件搭建帮助内容支持网站。Wiki 类软件没有固定的标记语言格式,许多 Wiki 软件支持使用 Markdown 来编写内容,也支持将文档导出为 html、pdf。


以著名的 MediaWiki 为例,这是一个使用 PHP 编写的开源的软件。可帮助您收集和组织知识。功能强大、多语言、自由开源、可扩展、可定制、可靠且免费。


Wiki 软件也是内容管理软件的一种,但支持灵活编排组织内容,适合用于协作编辑的场合。


5. 任意文字处理软件


没有上述专门工具也能编写帮助文档,使用微软 Word、苹果 Pages 文稿、OpenOfficeWriter 等等。编写完毕导出为 PDF 格式进行分发。

多国语言翻译

国际化的软件也需要配备多国语言的帮助文档。在没有工具辅助的情况下,编写多语种的帮助手册通常要每个语种各自独立翻译与保存。这样做一次还可以,但如果主语种的文档时长更新就很难保证其他语种的文档及时同步更新。因而需要翻译辅助工具来辅助翻译,比如这些功能。


1. 逐个段落的对照翻译。显示主语言文档段落,同时显示其他语种的编辑框,用于填写翻译内容。


2.每次主语言的文档发生变更后,自动与之前文档对照,摘出变化的部分,供翻译。


3.主语言文档中的独特翻译标记,防止误翻专有片段。


4.人工智能支持的辅助翻译和自动翻译(图 22)

文档传输格式

像 txt、rtf、html、doc 这类型的文件,既是帮助手册的存储格式,又可用于传输和阅读。还有一更些格式不方便编辑,但适合分发与阅览。


表格 1 典型用于分发和阅读的帮助文档格式


类型(扩展名)MIME

说明(用途,使用该类型的程序,管理该文件格式的机构)


1. Hypertext Markup Language(html) text/html

构成当今 WEB 的基础协议。HTML 1.0 发布于 1993 年

W3C 的标准,目前实际由 WHATWG 管理


2. Portable document format (pdf)application/pdf

广泛使用的电子文档存储格式,特点是跨平台查看时保持外观

发布于 1993 年,有许多软件可读取并展现 PDF 文档:谷歌浏览器、Adobe Reader、福昕阅读器

ISO 32000 标准


3. Compiled html help(chm)<br/>application/vnd.ms-htmlhelp

自 win98 开始就集成到 window 操作系统中的帮助文档格式。

初版大约发布于 1997 年。

阅读器支持显示目录结构和进行关键词搜索。


4. Electronic publication (epub)<br/>application/epub+zip

电子书格式,可用于智能手机、平板、电子书阅读器、电脑

初版发布于 2007 年,W3C 的标准。

文档阅读器

文档阅读器的功能和外联式帮助高度重合,我们不再赘述。


帮助文档阅览器与电子文档阅读器功能也是相似的,甚至许多帮助手册就是在使用通用电子文档格式进行分发(pdf、epub、html),只需要使用通用电子书阅览软件就能打开。


将文档打包为 html 格式,使用浏览器打开,也是目前常用的策略。

成体系的帮助系统

大型软件系统常配套有成熟的帮助体系,如操作系统、大型软件。现在逐步有使用在线文档做主要帮助体系的趋势,因为有可在线更新、独立更新的优点。


表格 2 典型帮助系统(Help Authoring System)

1. Linux manual pages

Unix/Linux 操作系统所带参考手册页格式。使用命令 man 进行查阅。man 所使用的手册页是基于纯文本的标记格式(与 html 风格不同),大约起源于 1960 年代(RUNOFF),后逐渐修订引入到 Unix 中作为文档的编写与分发格式(nroff、 troff、 groff)

2. Windows Help

自 win98 开始就集成到 window 操作系统中的帮助文档格式,到 Windows7 时使用率逐渐降低,帮助体系迁移到以外联、动态帮助为主。

3. Apple Help

苹果 OSX 操作系统的主要帮助体系,以 html 为存储与展现格式。

4. Eclipse Help

Eclipse 开发工具中的帮助体系,使用 html 为主要存储格式与展现。并搭配 xml 文档做目录与索引。

小结

  • 帮助文档是软件服务体系的重要组成部分。现实中的软件会采取多种途径提供帮助服务。

  • 嵌入式的帮助与用户体验有关系,要先尽量提升用户界面本身,再搭配帮助

  • 外联与动态帮助因为更新方便是当前软件开发的首选。特别是采用 HTML 做帮助文档的分发或者搭建专门帮助内容网站提供服务。

  • 动态帮助要能输出为静态版本,方便在无网络的条件下分发阅读

  • 有多种不同的软件用以支持帮助文档的撰写,分发。多数工具都能输出 html 格式用于在线阅读,输出 pdf 格式用于打印,输出其他方便传递、阅读的格式。


参考资料

图片声明

除图 6、图 18 外,其余图片均为作者自行截图,以教育为目的,截图中的软件、网站版权归属各自开发商截图涉及使用的软件如下:MacOS 13.6.1(ventura)、Chrome 117、Windows 11(22H2)、安卓学习手册(developer.google.cn)、Appsmith 1.9.19、Curl 8.1.2、Excel for Mac 16.77.1、Grafana 10.1.1、IDEA CE2023.1.4、Keynote 13.1、Neo4j 2023-10、Photoshop 学习指南( creativecloud.adobe.com)、PHP 学习手册(www.php.net/manual)、Spring 学习手册(docs.spring.io)、VS Code 1.82.1、Windows 11 22H2、飞书 6.11.16、高德地图 JS API2.0、金山云文档 Kdocs.cn、腾讯会议 3.20.4、

参考资料

[1] Henry-Lee.移动端的新手引导:组件选择和使用方法[EB/OL].(2020-6-28)[2023-10-1].https://www.woshipm.com/pd/4025477.html


发布于: 刚刚阅读数: 3
用户头像

AlexLei

关注

I'm a program writer. 2023-09-22 加入

系统架构设计师,从业10+年。 专精工程实践、DevOps、程序设计。

评论

发布
暂无评论
盘点帮助系统的需求,提升用户的体验_帮助中心_AlexLei_InfoQ写作社区