编辑导语:产品的设计分为多个步骤和层面,从为什么要做这个产品到这个产品带给用户的意义,从抽象思维到具象等等;本文作者分享了关于面向对象的产品观中的抽象思维,我们一起来看一下。
产品设计难么?
相信每一个人的心中都会有不同的答案。
而我曾经认为产品设计是非常简单的一件事情,无非就是看两本经典书籍,学习一点交互设计知识,懂一点市场就可以做出让人直呼好家伙的产品。
后来,现实的*打让我明白了我的浅薄;要做出一个好的产品需要对市场的精准把控,对需求的深刻理解,对功能的精细设计,对细节的精益求精才能达成;缺少任意一个环节,换来的都将是现实无情的*打。
而要想做好一个产品,必须要有一套切实可行的完整方法论!
我相信很多的产品大牛到最后都可以形成一套自己的方法论;而对于我本人来说,构建产品需要经过以下五个层面(构建这个词的内涵远超设计,后续的文章都我将用构建来描述产品设计过程):
这五个看起来有点拗口的层面,来源于我做码农时期每天都要用户的一种思维方式:面向对象思想。
这套脱胎于面向对象的产品构建方法,我就很大言不惭的称其为:面向对象的产品观。
当然可能很多人看到这里心里已经骂开了,做产品就做产品,扯什么面向对象思想,这不装逼会死么?
但是在我看来,不论你做的是哪一类的产品,不管是社交、电商还是直播类产品,究其本质其实都是软件产品。
而软件产品的开发早就有了一套名为:面向对象思想的底层思想;这套思想经过了一代又一代的计算机大师,经过几十年的不断发展,完善,现在已经写入到了程序员的基因中,如果你不懂面向对象甚至都不能够开发程序!
一套如此牛叉的方法论我相信不但能指导编程,同样可以指导我们做好产品构建的工作。
正如古语所云:他山之石,可以攻玉。
我本人在做产品的过程中就走过很多的弯路,直到我在某一天突发奇想般的将面向对象的思想套用到产品构建的过程中;之后就如同打开了新世界的大门,原来面向对象的思想与产品构建的结合是如此的顺滑,就如同肉片遇到了辣椒,番茄遇到了鸡蛋,一切都是那么的刚刚好。
但是面向对象的思想是如此的博大精深,我作为一个勉强及格的码农,外加一个半路出家的产品经理,实在很难通过短短的文字就阐述明白面向对象的产品构建流程的全部精髓;接下来也只是抛砖引玉,写一点自己这些天来领悟到的一些皮毛,还请各位看官莫要见笑。
下面我们正文开始。
正文最初,就由我向大家阐述一下面向对象的产品构建流程的具体内容。
首先,在我看来构建一款产品是一个将从具象到抽象再到具象的一个过程。
说人话就是,构建产品要先了解具体的人的行为,然后从行为中抽象出他们的需求,然后再将需求分解为可行的功能,再将功能组合为各自独立又互有关联的模块,再将这些模块通过一定的顺序进行连接;最后生产出一个具象的,看得见摸得着的,能够满足需求的产品。
这个过程,需要经过抽象,分解,组合,连接,具象五个层面;从抽象开始,到具象结束。
抽象:确定产品愿景。
抽象解决了Why的问题,让你弄明白为什么要做这个产品。
做产品最终的目标都是满足用户需求,创造用户价值。抽象就是指如何使用面向对象的思维去找到用户需求,确定产品最终目标。
抽象是一个自下而上的过程。
首先你要找到你所服务的人群,然后抽象出人群共有的特征,形成不同的子类;然后根据每一个子类的特征,抽象出不同的基类;最后,分析不同类之间的共有需求,抽象出产品的最终愿景,这个最终愿景就是产品最终的努力方向。
抽象又分为特征抽象与行为抽象。
抽象是构建产品过程的第一步,也是最为重要,最为核心的一步;毕竟只有找到了方向才能保证你走在正确的道路上,就像往东走到不了喜马拉雅。
分解:确定产品功能。
分解解决了What的问题,也就是搞明白这个产品要做什么。
分解是一个自上而下的过程。
从产品的愿景开始不断的向下进行分解。如我们的用户有哪些类,每一个类的共同需求是什么?每一个类又有多少独立的对象,每一个对象的需求又是什么?针对这些需求又有哪一些解决方法?
分解又分为纵向分解与横向分解。
分解的要点是:原子性、一致性、隔离性、持久性。
分解的原则是:相互独立不重复,完全穷尽无遗漏。
组合:将功能组合为一个一个的模块。
组合、连接、具象三个层面解决的都是How的问题,也就是如何去构建这个产品。
分解后功能是零散的,不成体系的,需要根据不同的用例,场景去进行组合,形成具体的模块。
组合根据不同的功能特点又可以分为搭架子和装组件。
组合的要点是:高内聚、低耦合;也就是说同一个用例的功能全部组合为一个独立的模块,不同的模块之间尽量减少关联,模块之间通过连接进行信息传输。
连接:让信息在你的产品中有序流动。
任何一个软件产品都是一个信息不断流动的动态系统。要让信息流动起来,就要将各个独立的模块有序连接起来。
连接又可以分为内循环与外循环。
模块之间的连接十分繁复,为了保证连接的有序,连接流又分成了基本流,备选流以及异常流,不同的连接流相互独立又互有关联。
在进行连接时,需要考虑各种不同流的走向以及各自的结果。
具象:用户体验设计。
具象是用户真正可以感知的部分,也是整个产品构建过程中的最后一步。
具象化最重要的