产品设计文档需要包含这些.......
作为产品经理,日常接触最多的工作之一就是设计文档了。每个产品经理有自己的设计文档的写法,各个公司也有各自的设计文档的要求,所以大家平时看到的设计文档几乎没有一模一样的。
一份设计文档的结构大概包括一下几部分的内容:项目背景、项目排期、版本历史、信息架构分析(包括站点地图、体验地图、流程图等)、产品框架设计、线框图和视觉稿等。
具体在设计文档中要展示哪些内容,取决于实际项目的情况,公司的具体规定、产品经理的个人工作习惯等,可能删减一些内容,也可能增加一些内容。
每个部分拆分开来,我们一起来看看具体是如何的。
》》
这一部分的内容在充分沟通需求之后完成。产品经理充分了解要设计的产品是什么,是什么平台上发布的,产品的用户群体是哪些类型,使用场景有什么,他们想通过这个产品解决什么问题,业务/产品现状,关键痛点是什么。把需要和需求方了解清楚之后,能够明确产品设计目标,要解决的需求是什么,根据这些需求,需要设计什么样的功能或者如何优化现有的功能,最终达到怎样的业务目标。
》》
和需求方确认各阶段交付物的时间节点,知道什么阶段要完成什么工作,达成什么目标。根据时间节点制定完成设计的具体计划,根据这个计划有节奏、有方向地展开工作,以较高的质量按时交付。
》》
每发生一次比较大的迭代更新,都要记录在版本历史记录里。这样做的好处是,可以清晰地展现设计稿的迭代历程,做了哪些需求的改动,设计思路发生什么样的变化,哪个部分是什么时候什么人负责的。对于产品设计的回溯,提供了极大的便利。相比一个个去翻以前的设计稿,查看版本历史记录更清晰,项目结束后浏览这一部分,也可以看到自己的设计在哪些方面哪个阶段存在不足,是如何被发现、改进和提升的,下一次设计的时候是否可以更早地思考到和回避掉。
》》
根据具体项目性质的不同,这一块的分析工具也有较大的差异,具体的选择和使用要按照实际场景来,而非机械进行套用。
如果是设计一整套网站系统,站点地图必不可少。站点地图可以对整个网站的架构可以构建起一个初步的印象,像架构层级过深、页面内容重复等问题都可以通过站点地图发现,以全局的角度去观察整个产品,而不是单一的某个功能、某个页面。
体验地图可以把产品在不同使用场景、流程下的体验问题直观地呈现出来,我们通过调研,会得到一些用户的体验反馈,但是通常比较杂乱、没有逻辑性。通过体验地图可以整理出用户使用产品大概有哪些场景和环节,各场景和环节下都遇到过什么样的问题,哪些问题出现的频率较高等,让产品经理能够更贴近用户,沉浸到使用产品的实际体验过程中去,进而思考各场景、环节下都可以进行怎样的设计目标拆解与设计优化、最终帮助完成产品的整体目标。
流程图也是一个常用工具,明确展示出用户使用产品的流程和步骤是怎样的。通过它可以查找步骤是否可以合并优化,能否抽象出通用的流程来构建框架设计等。
》》
产品框架设计构建起产品的轮廓,抽象出通用的布局原则,页面上大概有哪些模块,这些模块之间的主次、优先级关系是怎样的。整体规划把握界面的结构、模块之间的关系呈现等,而不是纠结于一些细枝末节和不重要的内容上。
》》
线框图在产品框架设计的基础上具化出了产品的完整骨架。在绘制线框图的时候需要仔细考虑到每一个可能的使用场景,包括负面、误用等特殊情况都要包括在内。
Axure是绘制产品经理绘制线框图的常用的工具。在Axure中,通过命名页面和调整层级关系,建立站点地图。在每个页面中根据场景画出线框图,包括具体的功能及场景,可以加以文字说明,辅助以用例交互。
线框图不是视觉设计稿,但在视觉效果呈现上却马虎不得。如果在绘制线框图的时候不考虑如产品尺寸、页面规范等,最终完成得会比较粗糙,也容易对内容的编排产生影响,导致整个页面结构都要被迫调整之类的情况,只能增加产品设计成本,而在最开始就注意这方面的问题,就可以尽可能地避免类似的情况发生。
》》
视觉稿作为产品设计的最终产出,在线框图的基础上完成配色、图标绘制等视觉细节,为产品“涂脂抹粉”。视觉稿选择关键场景的界面进行绘制表现,注意一些Hover/Active之类的状态表现,然后就可以标注交付前端了。
这是产品设计文档中比较常见也比较重要的的几部分内容,根据你自己的需要和公司的规定、项目的具体情况,选择需要重点体现的内容,也可以有所增删,并不是一成不变的。
首先想清楚什么数据存内存,什么数据存文件。
一般来讲,参与逻辑运算的标志位,中间变量,计数器存内存;需要显示的东西、实时的东西先存内存,挑选你要存文件的东西存文件;存内存的意思是当进程结束这些东西都会被释放回收。
给用户设置参数的配置信息存文件,还有需要查看的历史信息存文件。
存在哪里这个基本不需要考虑吧,开始你就存在工程目录下比较方便,这样打开和保存的时候都不需要写路径。
至于存什么格式的文件无关紧要,关键是搞好读取文件的方式,然后就存成txt好了。有段时间我下电影经常下到PDF格式的电影,几个G的PDF你敢信?然后直接用播放器播放一样能看。
数据结构中,逻辑上(逻辑结构:数据元素之间的逻辑关系)可以把数据结构分成线性结构和非线性结构。线性结构的顺序存储结构是一种随机存取的存储结构,线性表的链式存储结构是一种顺序存取的存储结构。线性表若采用链式存储表示时所有结点之间的存储单元地址可连续可不连续。逻辑结构与数据元素本身的形式、内容、相对位置、所含结点个数都无关。
算法的设计取决于数据(逻辑)结构,而算法的实现依赖于采用的存储结构。数据的运算是在数据的逻辑结构上定义的操作算法,如检索、插入、删除、更新的排序等。
SW设计树的文件夹结构通常包括:项目文件夹、资源文件夹、设计文件夹、项目文档文件夹、图像库文件夹(或者其他素材文件夹)。项目文件夹结构包括项目conf进行项目配置,src存放源代码,打包文件夹,主要用来做项目打包,library存放外部库文件和其他开发所需素材。资源文件夹用于存放资源文件,设计文件夹用于存放UI等设计资源文件,项目文档文件夹用于存放整个项目的文档,图像库文件夹用于存放图像资源等文件。
2. 架构设计文档:根据客户的需求,设计完整的软件系统架构,包括系统架构图、各部件的功能、关键算法、性能要求等。
3. 模块设计文档:根据软件系统架构,设计各个模块的功能、关键算法、性能要求等。
4. 数据库设计文档:根据软件系统的需求,设计数据库的存储结构,以及数据库的增删改查功能。
5. 用户界面设计文档:详细说明了软件界面的布局、元素、风格等。
6. 测试用例文档:详细说明了各个功能测试用例的内容、步骤、期望值等。