产品如何建模
很多同学在工作中经常问到一个问题:工作中如何建模?
今天就建模这个事情表诉下我的小观点,希望大家顺着我的思路去想象。
首先: 建模的概念是什么? 百度百科如下解释:
建模,就是建立模型,就是为了理解事物而对事物做出的一种抽象,是对事物的一种无歧义的书面描述。建立系统模型的过程,又称模型化。建模是研究系统的重要手段和前提。凡是用模型描述系统的因果关系或相互关系的过程都属于建模。
这里面有三个过程:
- 对事物的抽象;
- 对事物的系统建模;
- 对事物因果关系的处理。
以上三个过程在互联网的产品工作领域为:
- 对需求的抽象;
- 整理需求中的人、事、物;
- 整理流程图。
这三步,第一步和第二步可用合并为需求的抽象,和元数据的建立。是事物的起点也是产品的工作的起点,对于需求整理的话题本文不进行详细说明,只说建模的逻辑,本阶段建模为“概念建模”,步骤共四步:
- 交流需求;
- 理解需求;
- 确认需求;
- 形成实体。
以上的数据在每次交流需求过程中需要把重要节点记录在笔记上,形成元数据。这些数据是数据世界的一种表现形式,无论你是否是这个行业的专家都需要核对需求方的真正需求,不同的企业对于同样行业的产品商业模式是不一样的。
如:
- 在社交中用户注册这个需求,一般都会有一个用户表,包含:名称、年龄、性别、注册时间、手机号、账户、密码公用字段。
- 在相亲的社交软件上还包含:是否是单身、爱好。
- 在专业的社交软件如:漫画类的还会选择几款你熟悉的漫画,喜欢的画风是什么。
- 在知识类的社交软件会包含:熟悉的领域、是否要关注推荐大神等。
第三步为整理流程图也称为“逻辑建模”,具体的理论基础为:
- 拆分业务场景;
- 细化表格;
- 确定索引和外键。
这一步可以运用用户设计的五元素逻辑来处理——战略层、范围层、结构层、框架层、表现层。但是做为曾经的程序员,我还会按照显示层、逻辑层、数据层的结构来对比建模是否正确。
显示层包含:
- 界面逻辑元素如:功能分区、功能集合、一级标题、二级标题等。
- 提示元素如:按钮、文案、提示框 dailog、toast、tooltip等。
逻辑层包含:正向流程、反向流程、异常流程、极值、可复用的逻辑、可拆分的业务场景。
通过以上的场景最终优化数据层的结构,进行表拆分,字段的优化和整理。
还是用户注册的例子。
在第一阶段中通过对需求的理解,总结了user 表中的不同字段。
在第二阶段显示层可能会有:
- 注册失败提示文案;
- 注册界面的图标;
- 注册用户是否是新客户;
- 注册的验证码;
- 注册的邀请码;
- 语音注册方式。
因此在这个业务中的模型会增加:
user 表中还会增加:注册码、注册方式、用户类型(新用户、老用户)。
注册文案提示表:tips 里面可能包含:提示类型 tipsType(网络异常、注册异常)、提示页面 tipsPage(注册界面、首页、设置页面)、修改人 Modifiedby、 修改时间 updateTime、提示内容promptContent、创建时间 creationTime。
图标管理表:图片类型 pagType (注册logo、首页logo、列表页logo、我的logo )、图片页面 pagType、图片地址 pagUrl、图片更新时间 updateTime、创建时间 creationTime、修改人。
注册界面在第二阶段中的逻辑层可能会存在逻辑判断如:判断是否是新客户,来判断是否显示忘记密码按钮。
可以看到以上的表中的字段不仅在注册界面可以使用,在首页、在列表页、在我的信息页面也可以复用。
第三阶段:数据层包含数据的初始值,数据的类型。
还是设计注册界面,如:用户的头像图片默认头像是什么、用户年龄最大值是多少、一个字段可以表示几个值。
所以业务建模重点在于:
- 需求理解;
- 流程整理;
- 角色梳理。
本文作者 @IT鸡汤哥
版权声明
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!