1 概述
开发一个业务系统的时候,功能可能非常多,需要对功能进行分组,这里引入“模块”的概念,它就代表着一组功能。对于程序员来说,“模块”这个概念可能容易混淆,比如python语言里也有Module这个概念,翻译为中文也是“模块”,在python中一个模块就是一个代码文件。所以为了有别于其他“模块”,这里专门指功能分组的“功能模块”。如果觉得“模块”这个词不好理解,也可以换成“应用”,本文采用“模块”来说明。
2 模块的规则
2.1 如何分模块
仅“功能模块”这个概念并不好理解,虽然把它定义为一组功能,但“功能”这个词也比较泛,不同人的理解不一样。这里讲几个分模块的原则,增进一点对模块的理解。
首先是业务分离。比如“物业”这个概念,在一个小区里物业管理包含安防巡逻、设备报修维护、清洁保洁等基础业务,即业内常说的“三保”业务。不同的业务不宜合并在一起,合并在一起就互相受影响,不好维护。
然后是角色分离。一般业务系统都至少有三类角色:服务提供方、服务使用方、系统管理员。既然是业务系统,那就需要提供服务,提供服务的那方就是服务提供方,使用系统所提供服务的那一方就是服务使用方。系统管理员负责系统的初始化配置和基础运维,通常代表系统的所有者(如系统的采购方)。当然角色可能还有更多,比如对于一个SAAS平台,可能还有个平台管理方,它管理着所有的服务提供方和服务使用方,系统也带了这方需要使用的功能。
对于同一类功能,如果涉及到这些角色的,建议按角色分成不同模块。比如物业报修,物业接受维修申请、提供维修服务等,属于服务提供方。看到走道的灯坏了向物业方提交一个说明灯坏了的信息(报修),并享受物业维修灯之后走道有灯光的服务,这方就是服务使用方。在物业方内可能还分两个角色,一个是提供维修服务的业务部门,一个是对维修功能进行授权或者初始配置的部门,前者对应前面说的服务提供方角色,后者则是管理员角色。这个时候可以分为“物业报修”、“报修管理”、“报修配置”三个模块,分别对应不同角色。
从这个角度看,模块之所

最低0.47元/天 解锁文章
2559

被折叠的 条评论
为什么被折叠?



