一, b端和c端产品的差别
在当前的互联网行业中,一般分为toB或者toC的产品(即B端与C端),这两种类型主要的差别是由于产品的使用用户人群的不同,b端产品主要针对的用户人群是企业用户,而c端主要的用户人群则是普通用户,因此这导致两种产品在产品设计时的设计角度也是截然不同的。
从用户角度出发(毕竟用户决定了产品的高度),b端的用户是企业用户,这样用户人群一般希望能通过我们的产品前更好更高效处理工作事务,如:更好的数据管理,因此b端产品设计时主要侧重了业务逻辑,高效;而相反c端的产品设计主要侧重了用户体验,交互设计,力在为用户提供一个最舒适最傻瓜式的产品体验环境。
从产品功能角度出发,b端产品的功能主要是为了服务企业,提高企业工作效率,为企业创造价值,主要产品有:后台管理系统,数据管理系统等;而c端产品的功能主要是为了服务用户,给用户带来更多的体验,主要产品有:各种娱乐app,工具app,社交app等。
总结:从用户人群,产品设计思维,业务形态等角度来看b端产品和c端产品的区别,见下表。
二, 后台管理系统介绍
开始本文主要的话题,大概说一下自己对b端后台管理系统的一些了解,借机整理一下经历过的项目的业务逻辑。
如上所说,b端主要的产品是各式各样的管理系统,管理系统即是一个针对当前的业务而设计,用于管理各种复杂数据,根据业务需求区分数据,提供便捷功能的系统。常见的有针对大数据的数据管理平台(如:腾讯的统计工具),订单管理系统,crm管理系统,OA系统等等。
三, 以项目为例提取通用功能模块
以自己参与过的项目为例,尝试提取其中的某些通用功能模块。
1.都城连锁快餐会员管理系统(超管端(总公司会员管理系统),客户端(大客户会员管理系统),财务端(财务统计)
功能模块:团餐客户(大客户管理,仅超管端有),会员(用户管理),运营管理(财务人员管理),报表模块。
2.外汇经纪商CRM管理系统(管理员端(外汇经纪商),客户端(客户))
管理员功能模块:首页,客户,销售(用户管理),审核模块,日志模块,报表模块,设置模块,关于我们(公司介绍,更新日志)
客户端功能模块:资金(出入金功能),佣金(返佣),交易(即交易报表),工单功能
由上可见,在一个管理系统之中,一般都会备有的功能模块是用户管理模块,报表模块,而我们往往会发现这两个模块一般的展示模式都是列表页+详情页的形式,毕竟管理系统管理的对象就是各种数据,而数据最好的展示方式就是列表和图表了。下面我们先说一下列表。
产品逻辑:列表页(用户/列表) — 详情页(用户/订单详情)
列表页功能:
1.表内容:一般包含用户的基础信息字段:用户id,用户名字,用户角色(若有角色类型),创建时间,用户状态以及一些业务字段,如crm的交易账号列表中还含有余额,交易杠杆等业务信息字段。
2.查询排序功能,可选择对应的查询信息对列表的信息进行提取,(一般的查询字段与下方展示的字段相关联)方便操作者快速定位到想要的用户条目,一般的管理系统都支持模糊查询功能
3.提供查看账号详情入口,因此一般的列表最后会提供一栏操作栏,可以进行查看,编辑,删除;(或者提供点击用户姓名进行跳转等功能)以及新增功能
4.分页功能,为了美观(表格内容过多导致页面太长),以及加快前端调取接口时的速率;
5.数据统计总览,一般列表页会根据业务需求统计某些数据字段展示在列表上方或下方,如:总人数,总金额等
6.模拟登录,一般是超管端才有的功能,支持直接模拟登录到该用户的客户端账号中,方便管理员更高效的操作
7.数据导出功能,可以导出成excel报表进行存档。
详情页功能: 一般是某一列表条目的更多数据信息的展示,比如用户详情页,一般我们会收集用户的邮箱,手机,地址等更具体的个人信息,而这些信息属于次级字段,不需要展示在列表中,所以提供这样一个详情页方便操作者查看用户的更多信息,当然也可以在这里进行编辑功能,如:修改用户的启用状态,设置用户的查看权限等(具体的权限功能的设计会在后面说。)
说完了列表页,接下来说一下一些更具业务性的管理系统需求功能,另外上面说到图表,图表也是各种管理系统中必不可少的功能,但是图表一般与不同的行业,不同的业务有着比较深的关联,所以这边也没办法比较好的整理这一个功能,可以推荐比较好用的图表前端框架HighCharts,移动端可以看阿里的F2,看看一些比较实际的开发框架,免得瞎提需求被前端小哥鄙视哈。
四,日志模块与事件功能
在管理系统之中,日志模块也是非常重要的一个功能板块。日志模块的功能主要是将系统的重要操作都记录下来,包括注册提交,验证码邮件记录,短信记录,出入金操作记录等,一个完善的日志模块的设计是完全可以体现一个管理系统的专业性的,一方面可以为重要操作进行备份,方便日后出现意外情况或者开发人员debug时提供比较好的参考作用,另一方面也在某些程度上保证了系统的安全,当出现违规操作时我们可以快速找到对应的操作者。
而一个日志模块的设计一般按照事件功能来设计,即某人某时进行了某项操作。举一个用户进行出金操作的例子来说,假设现在某个用户a准备从系统出金,首先我们需要知道出金的流程是什么?
用户出金的流程一般是用户提交出金申请,管理员进行出金审核,财务进行出金审核,出金审核通过完成出金操作;当用户出金进行每一个环节时都需要记录相应的日志。
因此我们可以发现,当我们完成了出现明显的时间间隔的操作时,都需要将其记录在日志模块中,而且需要分类储存。
五,權限系統的設計
接下来说一下管理系统的重点功能–权限划分功能。
由于在一个比较大型的管理系统中,功能模块多样,操作者的角色类型多种,同一类型下的用户的操作权限有时也需要进行控制,因此就出现了权限划分功能,大致可分为下面几种类型:
1.批量菜单访问权限:根据用户的角色类型来限制操作者使用的功能(超管端与客户端)
需求场景:超管拥有所有菜单的访问权限,普通客户不允许访问系统设置,财务管理等菜单
实现方法:每个登录的用户信息中根据角色类型字段进行划分
缺点:权限限制功能单一,无法处理复杂的权限控制场景
2.单一菜单访问权限:
需求场景:在第一种的基础上,同一类型的用户有不同的菜单访问权限
实现方法:每个菜单信息中根据是否展示字段进行划分
缺点:当菜单较多时,前端进行初次页面渲染时须遍历查询每个菜单,访问速率受影响
3.操作功能/特殊字段的编辑的权限划分:
需求场景:a用户可以编辑用户信息,b用户不可以编辑,只允许查看;a用户允许编辑字段c,b用户不允许编辑字段c
实现方法:同2,给每一个需要控制的字段或者操作添加对应的是否展示的字段进行划分
4.数据查看权限划分:
需求场景:下级用户无法查看上级的数据
实现方法:根据用户代理链上的位置进行划分
由上可得:系统进行权限划分时一般通过对用户进行权限配置,通过相应的字段去控制不同操作,因此往往在超管端会开设设置模块,用于管理员对操作中进行配置,如下图
然后我们会发现由于系统的复杂性或产品设计的不完善,会出现我们需要配置比较多的字段才能实现我们的权限控制效果,这不仅对管理员的产品体验不友好,而且对于开发人员的开发也带了比较烦琐的问题。
设计权限系统时的注意点:
1.明确系统的用户角色类型并细化(管理员,客户,代理,销售),细化程度越大的角色类型在权限控制上越灵活;
2.明确权限限制的业务需求背景,选择对应的解决方案,尽量避免多套方案同时使用,导致维护困难程度的加大;
3.对权限限制的字段进行分类,根据产品业务需求进行划分,避免每个字段都需要单一的权限控制;
六,saas化配置
管理系统 saas化也是这几年比较火的一种概念,不少crm系统,oa系统都是针对企业进行了saas化处理。
根据艾瑞发布的报告显示,在国内,SaaS市场在2014-2015年经历了爆发式增长,同比增长率分别高达71.3%和65.4%。然而,从2016年开始,SaaS市场进入相对平稳的发展阶段,同比增长率保持在30%-40%之间,据此预估2020年SaaS市场规模将达到473.4亿元。
从产品角度看saas化:b端产品主要针对的企业,我们可以看到在最近几年,随着互联网思维的不断发散,不少传统行业开始接触互联网,使用互联网工具(如:用管理系统的报表功能代替以前的人工编写excel表格并存储在电脑中),saas化产品正是针对行业的业务需求开发的一套可对行业赋能的产品。
从技术角度看saas化:指一套通用的管理系统供不同的企业使用,企业只需要在前期进行基本的公司信息的配置和部署,即可以直接使用该套管理系统,并在功能上实现一定程度的自定义化,如企业可以修改系统的UI样式,或对某些功能进行开放或禁用。
七,系统安全性
最后,管理系统设计中还有一个比较关键的设计思维就是安全思维了,为了让企业愿意使用我们的管理系统,系统的安全性必须是重点考虑的方面之一。
那么一般系统的安全性体现在以下几个方面:
(1)系统的功能
1.完善的日志模块:记录重要的系统操作
2.校验功能:如:进行重要操作时需要校验用户的手机或者邮箱
3.系统的稳定性:尽量避免系统时不时出现故障的情况
4.系统的权限设计细粒度:包括数据库查看权限,操作权限等
(2)数据的安全性
1.对数据进行加密处理存储
2.数据库内外网络隔离
八,总结
以上就是自己暂时对管理系统的小小理解(看起来还有很多理解不透彻的地方),人们常说管理系统无非就是增删改查,其实相比C端的产品,管理系统要求产品经理对整个业务线的需求和逻辑的了解程度要有比较深入的认知,而且在产品设计过程中,既需要保证用户体验,另外功能的高效性,系统的安全性也是重点考虑的一些方面。