后台设计的一些总结
想要设计一个好用的后台,其实没那么简单。
以下算是我针对交接出去项目所做后台的一个总结吧。
一.整体设计思路:
1.设计后台前,需要了解整个业务需求,最好通过脑图将整个后台的基本功能勾画出来,有个大概的概念;然后列一个功能列表;查看有没有遗漏,最后通过功能列表累出功能架构图;
2.梳理业务流程,画流程图,或泳道图梳理业务流。
3.竞品分析,了解竞品的设计思路;优化自己项目的设计思路;
4.选择对应的后台原型模板;
5.设计原型界面;
6.撰写PRD;
7.可以直接在原型上写需求文档,也可以单独通过文档写 PRD。
二.后台设计的一些基础模块
1.账户权限:
1)有现成的直接套用基础服务;
2)其实根据角色分配权限即可,创建一个账户分配对应的角色即可使用对应角色的权限;
3)角色的权限可以根据业务逻辑来设定,也可以地理位置等设置对应的权限;
4) 通过管理员创建对应的账户(账号,密码),使用对应的账户登录即可使用后台对应角色的功能;
5)权限的精确度:可以精确到对应的大模块,也可以到小模块,亦或者到按钮,看业务需求;
6)等级关系:可以通过角色设定,也可以通过角色并集,数据并集来设定;
7)退出,修改密码等。
2.商品管理
1)商品是一切业务的基础,要有维护商品的入口;
2)商品基础信息的新增,修改,上架,出入库,调度等;
3)商品库存管理:如果是 O2O 类型的业务,库存是需要注意的一个点,后台需要支持商品库存的盘点,自动校对。
4)根据下单流最好系统支持库存的自动删减;
5)商品的查询等
6)商品上架有效期,入库有效期等考虑好有效期,以及时间有交叉情况下的有效期的概念;
7)商品的排序等;
8)商品信息的审核等。
3.业务相关订单
1)基础功能:查询,导出;
2)根据业务需要针对不同订单状态对应的操作;
3)异常订单的记录;
4)若订单流转比较复杂,线下操作比较多的情况,建议做工单,这样,订单流转比较清晰;
5)审批:设计多级审批的建议使用审批流程;
6)尽量线上操作,减少线下操作造成的问题;
7)订单状态的可逆:根据业务需要判定是否需要订单可逆。
4.财务管理
1)流水账:钱款的出入账;
2)对账功能;
3)根据业务需要:充值或者提现记录;
4)根据业务需要,财务需要审核的钱款记录;
5)对应的操作:查询,导出(方便财务对账)
6)针对坏账,怎么追缴;
7)发票管理等。
5.客户管理
1)记录客户的一些基础信息;
2)客户的附加信息:积分,优惠券,钱包等;
3)客户的关联信息:订单,业务相关的商品信息等;
6.促销活动
1) 简单点:满减,折扣等;
2)免费送等;
3)限时抢购等
4)根据业务需求设计对应的促销活动准没错;
5)积分兑换等;
6)考虑好活动商品和普通商品的价格,活动商品在整个平台上价格是否都是活动价,还是只有单独的入口才有活动价。
7.配置管理
1)根据业务需求,前端一些服务协议等可在后台配置;
2)系统整体价格的规则配置等;
3)一些模板的配置;
4)App发布版本的一些基础配置等。
8.数据统计
1)根据业务需要将订单,财务等数据展现出来;
2)从不同维度展示对应的报表;
9.意见反馈
意见反馈的收集,优化前端交互等;
10.消息推送
1)系统消息的推送:可以根据业务需要推送给不同等级或者不同业务层的用户;
2)可以设置推送时间,推送内容等;
3)根据业务需要的系统推送,
4)重点需要告知客户的消息,可以通过短信或者电话告知用户。
11.工作台
1)一些重要的数据或者操作可以放在工作台上;
2)后台账户可以方便操作。
- 将复杂查询写到SQL配置文件--SOD框架的SQL-MAP技术简介
- Java中实现找到两个数组交集的2种方法,开发实用
- Java Web中JSP的include 指令知识点总结——每日一语法学习
- Java反序列化漏洞从理解到实践
- ORM查询语言(OQL)简介--高级篇(续):庐山真貌
- Java中使用Hibernate系列之映射关联启动工作学习(第五节)
- Java中使用Hibernate系列之单向Set-based的关联学习(第四节)
- Java中使用Hibernate系列之加载并存储对象学习(第三节)
- Java中使用Hibernate系列之启动方法学习(第二节)
- Java中使用Hibernate系列之映射文件学习(第一节)
- Java中为图片添加水印效果的方法——实例代码
- Java中使用Hibernate系列之过滤器(filters)学习
- Node.js中的内存泄漏分析
- Java实现把整数转换为英语单词的方法,实用代码
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 【Java】09 List 集合与 Collections 工具类
- PAT (Advanced Level) Practice 1003 Emergency (25 分)
- 数据结构严书习题6.65已知前中序,求二叉链表
- 【Java】10 Deque 接口
- 12.深入k8s:kubelet创建pod流程源码分析
- (较为详细)树的遍历方式一览(附完整源码可在VScode与cb运行)
- 【Java】12 Map 集合
- 【Java】11 Set 集合
- 4.表格-HTML基础
- 2.语义化-HTML进阶
- MATLAB 与 C 语言的混合编程
- leetcode树之二叉树的层平均值
- C++雾中风景15:聊聊让人抓狂的Name Mangling
- 【Java】15 File 类
- seaborn更高效的统计图表制作工具