prd文档是什么?
prd文档是指产品需求文档,而产品需求文档是将商业需求文档和市场需求文档用更加专业的语言进行描述;prd的主要使用对象包括开发、测试、项目经理、交互设计师、运营及其他业务人员。
该文档是产品项目由“概念化”阶段进入到“图纸化”阶段的最主要的一个文档。当然,这个定义针对的是一个全新的产品。
广义上来讲,产品需求的描述,应该包含有产品的战略和战术,战略是指:产品定位、目标市场、目标用户、竞争对手等。战术是指产品的结构、核心业务流程、具体用例描述、功能&内容描述等。
产品需求文档是将商业需求文档(BRD)和市场需求文档(MRD)用更加专业的语言进行描述。
高质量的规范文档是一个优秀设计系统的代表物。我们详实地描述每个 UI 组件的设计与代码规范,来帮助设计师高效地作出决策,推动开发速度。编写高质量的文档需要前期规划和一系列合理的流程来辅助,付出的成本相当高。
这个系列由六篇文章组成,致力于描述编写组件规范文档的过程。本篇我会从目标读者、文档内容、文档结构开始。然后会涉及案例,设计与代码指南。这些内容来自于我自己这些年的实践经验以及社区里大家所分享的知识。
那么我以一个问题开始今天的主题:文档的目标读者是谁,他们需要什么样的内容,作为编写者我们该怎样组织文档结构来作出清晰的表达?
文档的目标读者
首先:你要弄清楚谁是你的文档的主要读者。
工程师,设计师,还有公司里的所有人!
当一个设计系统包含了代码指南,工程师们显然会是读者。那么一个只包含了代码指南的设计系统应该服务于设计师吗?如果文档里只包含了设计规范而没有代码(如 Material Design),工程师还是读者吗?
在我看来,两个问题的答案都是肯定的。规范文档是从不同的角度来服务于多种角色的。
除了设计与工程,它还服务于其他人吗?很有可能,特别是当文档所在的设计系统已经成为产品的基石时。简短有效的介绍对于 PM(产品经理) 很有价值,QA(测试) 则比较关注案例部分…等等。
规范文档是从不同的角度来服务于多种角色的
很多设计系统团队还会把自己的系统公开出来,在体现共享精神的同时也能起到吸引行业人才的作用。所以文档应该能够体现团队的专业与严谨。
文档的主要目标是:为设计师、工程师和团队里的其他角色服务,让他们能够高效地做决策。
Takeaway:设计系统的效应和影响力不只覆盖设计与工程,一个成长中的系统必将会服务于更多的角色。
工程师,接着是设计师,然后才是其他人
为所有角色服务并不意味着平等地服务所有角色。工程师每天会查阅 10 次或更多次文档,他们甚至会把文档与代码编辑器窗口并排排列!设计师的访问次数应该是少于工程师的,其他角色则会更少。
所以谁是最重要的?以我的经验来看,设计系统最初就是为了工程与设计之便,由工程师和设计师建立的。即使其他角色也对其有所贡献,但他们仍是偏次要的。因此我们首先需要确保工程师与设计师的需求能够得到满足。
设计师与工程师优先级最高
那么,工程师与设计师孰轻孰重呢?我最近参与设计的设计系统项目中都需要同时服务于两者,为设计和代码制作规范指南。我也在一些企业的文档中看到了对其中一方的过多偏见,或者是有将他们的目标完全分离开的倾向(稍后我会解释)。有很多维度需要考量:设计系统的目标,他们的使用频率,内容深度、质量、生产成本,以及和他们日常工作的相关度。
设计师 vs 工程师
Takeaway:读者的优先级由很多因素决定。要有预期:工程师和设计师的需求会有冲突,并尽可能地优化和处理这些冲突。如果实在不行,就要偏向于距离最终产品最近的那一方,通常是工程师。这就意味着工程师优先,设计师其次。
文档内容
规范文档是连接读者与内容的媒介。内容会有不同的格式或模块,因此成本也各有差异,而你需要最终把它们编织在一起。
文档内容模块:简介和案例文档内容模块:设计参考和代码参考
抽象地来看,规范文档的内容通常包含以下四种模块:
介绍:组件的名称,以及一段简明扼要的介绍。(必要)
案例:这个组件的各种形式,状态,尺寸等等其他要素,比较好的做法是用代码直接把这些展示出来,而不是不可以交互的静态图片。(必要)
设计参考:比如什么时候应该用这个组件,允许的做法与不允许的做法,以及视觉、交互、文案方面的指南。(推荐)
代码参考:包含 API 和其他实施及部署方面的指南。(必要)
不同的模块会有不同的制作成本
「介绍」写起来当然非常的短平快。结构优秀的「案例」也是值得投入成本的,并且写起来会越来越顺手。工程师也需要一个合理清晰的「代码参考」。但是,真正有效的「设计参考」可能会非常耗费成本。
横轴:细节的丰富程度由浅到深。纵轴:制作成本由低到高
请点击输入图片描述
Takeaway:规范文档可以包含很多内容模块。所以需要团队在前期就进行充分的讨论,对每种内容模块做出符合自己团队和产品价值的判断,再投入成本去制作。
文档的信息结构
设计与代码:分开还是合并?
在实践中,设计师往往会自顾自的发布或更新和自己相关的内容,工程师也一样。这样的惯性行为会在无意中增加设计与工程的距离。所以大家需要在前期就对文档的信息结构达成共识。
谷歌的 Material 文档生态就是这种距离感的代表。 Material’s design foundation 优先服务于设计实践, 而 Material Design Lite,Polymer Project,Android Developer’s,Material UI (built for React) 都是服务于代码,和设计规范绑定的并不紧密。
请点击输入图片描述
这种分离的状态其实是有意义和理由的。因为 Material 是一个操作系统的底层系统,跨越了许多框架,团队,平台。它的复杂度在某种意义上超越了目前世界上所有的设计系统。但你要知道大多数的设计系统并不是服务于一个操作系统的,因此不会发展至如此复杂的形态。
对于像我们一样的产品团队来说,设计和代码分开是符合共识的。这种做法能够给分别为两种角色设计符合他们需求的体验。
组件设计规范与 API 和代码规范分别放在两个网站上。来自:Atlassian
请点击输入图片描述
这种做法也有风险。随着时间推移,两个网站可能出现不同步的现象:
设计与代码的分类逻辑出现差异(最简单的例子就是 Loader 和 Spinner 的命名:代码里叫 Loader,而设计里则叫 Spinner)
功能差异:设计规范里出现了代码不能实现的功能,或者代码里加入了设计里没有考虑的功能。
你可能会觉得这样也挺好,毕竟设计和代码本身就是两个领域。至少对于文档的写作者来说这种分离还是挺方便的(只用考虑自己的需求,管理自己的进度)。
但真正的读者需要的是一个「真相的唯一来源(Single source of truth)」。如果你是一个对设计和代码都有需求的读者,你会发现自己不停在两个网站间切换,两个地方都有对你有价值的内容,这感觉就像是在打网球时陷入了拉锯战。
Takeaway:要慎重地看待设计与代码的分离。虽然一开始方便了内容作者和发布者,但之后会有风险。这种做法也可能会在潜移默化中造成设计与工程的距离扩大。
合并内容的两种方案:堆叠还是切换?
例如 Morningstar Design System 是把设计和代码放在一个页面里,读者就能找到完全统一的命名,指南,功能描述。
一个页面之堆叠式:把设计和代码放在一个页面中,纵向滚动来查看。
请点击输入图片描述
堆叠式的布局方式会使得页面变得冗长。当然还有一种方式是使用 Tab 来切换内容。
一个页面之切换时:把设计和代码放在一个页面中,通过 Tab 来切换内容。
请点击输入图片描述
Takeaway:将设计和代码混合在一起是有可能的,大家可以按自己的需求来选择以上两种布局方式。
按类型来为内容做排列和编组
不论选择那种布局方式,文档内容的模块结构和顺序应该是保持一致的:
简介
案例
设计参考
代码参考
其实只要把「案例」放到读者一进来就能看到的地方,把设计和代码参考放在一步点击就能达到的地方,就是一个不错的设计了。下面是几种行业内比较有代表性的模式:
左:IBM Carbon 模式 中:Hudl's Uniform System 模式 右:Lightning Design System 模式
请点击输入图片描述
IBM Carbon 认为代码更应该被优先展示,将交互用法和样式分别放在其他的 Tab 中。Hudl’s Uniform system 把顺序反了过来,设计优先于代码。 Salesforce’s Lightning Design System 把代码和组件案例放在 Tab 上方,默认选中开发者指南这个 Tab,而后两个 Tab 则被奇怪地留空了。
Takeaway:把简介和案例放在一开始最重要的位置,接下来的模块则没有唯一的方案,需要大家自己做出符合自己团队情况的判断。
若页面很长,则为读者提供定位导航
你的文档页面越长,越需要给读者清晰的认知,要让他们知道这个页面里会包含哪些内容以及当前所处的位置。纵向的定位导航栏是个不错的方案:一直固定存在于页面右侧,在滚动时同步追踪位置,并且可以包含子标题。
Morningstar Design System 在文档页面右侧设计了一个两级的定位导航栏
请点击输入图片描述
Takeaway:不论选择哪种形式,最重要的是在整个系统中保持逻辑一致,符合读者的预期与心理模型。
展示设计?展示代码?还是都展示?
把设计和代码融合,就会有读者只对其中一个方面感兴趣,他们会提出自己的意见:
设计负责人可能会问到:我能把这些代码案例和指南隐藏掉嘛?
工程师可能会问:我能把这些和设计规范有关的文字隐藏掉嘛?
可以考虑加一个选项或按钮来允许隐藏设计/代码内容。比如:
Design Only:把代码指南、代码片段和属性表等等都隐藏起来
Code Only:把视觉样式指南和文案指南都隐藏,但还是要把一部分交互用法指南保留着,这对工程师们也有用。
1、考虑PSD文件存储大小
之前小编一直遇到一个问题,PS文件本身并不大,但是保存PSD文件后异常大。前端在切图操作时,电脑会变得非常的卡,从而影响PS的运行速度,降低工作效率。后来小编尝试了各种办法,终于知道了是什么原因。是因为在PS操作过程中,对文档进行了过多的操作,就造成文档保存了历史图像多余的操作数据。而解决这个问题的方法也很简单,只要导入一段代码即可,就可以把多余的操作数据清除掉。
2、整理图层
最后的设计稿要确保图层是清晰的,不要把一长串没有命名,而且没有分组的设计稿发给前端。要确保每个图层都命名,把不必要的图层删除,将对象组织成组,一些特殊的组或图层标注颜色,给前端一个明显的区分。
3、文件命名清晰
PSD设计稿合理命名文件名称,例如:A1首页、B2关于我们等等,这样别人也可以清晰快速的找到所需的设计稿。客户修改页面时,只需按数字向下排列就可以,例如:A2首页、A3首页......就会简单的知道那个页面时客户最后的定稿文件。
1、定稿前的评审 首先评审的时候一定要把改版视觉变化最大的要和开发说明清楚,布局框架改变都会增加开发工作量,能否实现或者实现是否功耗很高。
2、整理一份标注文档 这里文档不一定要十分严格的按照交互文档或者视觉规范文档来做,可以简易的做,关键是能让开发看得懂。另外,需要把文档里面更新迭代的共同的页面整理出来,最重要的是,设计师标注一定要把点击区域标注出来。
3、向开发宣讲标注 只有向开发宣讲标注,才能在在实现时候减少出错。我们前面每走一步,都是为了后面我们检视还原度的时候要轻松一些,开发也轻松一些,就比如前期基础没打好,后面深入很难。
4、积极响应开发的每一个疑问 在开发紧张环节中,即使我们前面所有工作都准备好了,也很难避免沟通,因此我们需要做的是积极回应,及时沟通。先沟通具体原因,然后找出解决办法,如果是标注出现问题,比如标注标死了,页面不灵活,适配局限性很大。
5、开发还原度检视 检视是有一套科学方法的,以场景检视为例,可以按照页面展开的顺序自上而下检视,这样就避免漏掉场景,异常场景等等。更高级的做法,可以做一个测试用列,这样百分之百不漏掉场景。
望采纳。
1.新建文档
点击菜单栏的文件->新建,可以弹出新建文档窗口。
2.新建文档弹出
弹窗主要由名称、文档类型、图像宽度、图像高度、分辨率、颜色模式、背景内容、颜色配置文件、像素长宽比等选项构成。
3.名称
顾名思义就是这个文档的名字,建议大家在新建PSD文档的时候一定要填写一个规范的名称,比如"港囧_海报","星际争霸_壁纸"通过一定的命名规范来管理文档,方便自己日后使用和查找。这是一个管理设计资源的习惯问题。
4. 文档类型
文档类型是ps内置的一些规范的设计文档。用户可以通过这个功能快速的创建符合规范的文档,比如A4大小的纸张,iphone 6的基础画板都可以通过对文档类型的选择快速创建文档。文档类型下面的所有文档属性都会根据你选择的文档类型进行变化。
注意:不同版本的PS会有不同的文档类型,一般最新版本的文档类型一定是最全的。本文是根据photoshop cc 2015写的。
(1)剪贴板
我们用QQ截图功能截图的时候,截图的图片会存放到windows的剪贴板上,当我们在QQ聊天的对话框使用粘贴功能的时候,截图就会粘贴出来。
PS的剪贴板文档类型,就是利用windows剪贴板里的图片内容进行新建文档,通过剪贴板新建的文档,宽度,高度,分辨率等其他属性都会和剪贴板里的图片属性是一样的。
(2)默认 photoshop 大小
这不是经常使用的文档类型,这个文档类型是个PSD文档的示例。默认photoshop大小的,高度,宽度会受到不同版本的影响。比如英语版和中文版可能就会不一样。至于PS这个默认的文档类型的大小的由来还得大家自己去挖掘一下了。
不管是那个photoshop版本默认photoshop大小尽管宽度和高度的单位可能不一样,但是一定都是1.33:1的比例。据说是最初的mac
就是图中的这台电脑的尺寸比例就是1.33:1所以photoshop就从那个时候起一直到现在沿袭了这个比例将其应用到“默认photoshop大小”当中。
(3)美国标准纸张
如果将文档类型指定为美国标准纸张,那么在下面的大小属性里就可以直接选择美国三种标准纸张的样式了。方便快速创建文档。
(4)国际标准纸张
和美国标准纸张差不多,在大小属性里可以选择国际通用的标准纸张大小,可以通过国际标准纸张类型直接创建自己需要的标准纸张的文档。
(5)照片
照片文档类型和纸张文档类型差不多,你可以通过大小属性快速创建你想要的照片尺寸。
(6)Web
web是面向网页设计师使用的文档类型,在ps cc 2015当中web这个文档类型和之前的ps版本都有很大的区别。因为ps cc 2015支持了画板功能,所以我们选择web文档类型的时候,下面的属性会变成画板大小,这意味着我们创建的文档不再传统的PS文档类型,而是PS的画板文档。在画板大小属性里会有一些常用的web设计使用的文档,方便快速创建,也省去了自己去搜索响应尺寸大小的麻烦。
(7)移动应用程序设计
在PS cc 2015版本当中,PS为了使用UI设计的需求,添加了画板功能,移动应用程序设计文档类型和Web文档类型差不过,通过这个文档类型我们可以快速创建符合需要的手表、手机、平板、超极本等PS文档。
(8)胶片和视频
使用AE和PS的同学可能会应用到这个文档类型,当你用AE创建一个PAL D1/DV的文档类型以后,可以用PS创建一个一样PAL D1/DV的文档样式,然后自己就不用去考虑 PAL D1/DV视频制式的尺寸大小问题了。
(9)图解
图解这个文档类型是给用户提供快速创建小图标等小图标组件的文档类型,它会创建画板PS文档。
(10)画板
当然你也可以单纯的选择画板,这样在画板大小属性里就可以选择所有支持画板的文档样式。
(11)自定
我们也可以创建一个自定义的文档类型,属性可以完全自定义,并且你在设置好属性,点击确定之前;我们可以点击存储预设按钮将你设置的文档属性存储成一个固定的文档类型。比如你创建一个名片样式的文档,存储这个预设属性,下次我们再设计名片的时候就可以直接选择这个预设的文档类型进行创建。
(12)其他
如果我们已经新建了一个文档,新建文档处于打开状态,当我们再一次新建“未标题-2”文档的时候就可以根据之前创建的“未标题-1”的尺寸来创建。
未完待续……