基于领域驱动设计的物业管理系统建模研究
摘要:领域模型是指软件领域中具有静态特征和动态行为的事物。该文首先讲述领域驱动建模的相关内容,然后具体描述如何使用领域驱动建模方法完成物业管理系统的分析与设计,最后阐述建立系统领域模型的过程。
关键词:领域驱动设计;物业管理系统;面向对象分析;SSH框架
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)31-7354-04
Abstract: The domain model is the static characteristics and dynamic behavior of things in the software field. This paper first describes the domain driven modeling, and then described in detail how to use the domain driven modeling method to complete the property management system analysis and design, and finally elaborated the process of establishing a system domain model.
Key words: domain driven design; property management system; OOA; SSH
对于大多数软件项目而言,领域驱动设计应该是基于模型的,而且其根本点应着眼于软件领域及业务逻辑。软件系统复杂之处的根本原因在于领域本身,在于用户及其参与的业务活动,而不在于技术。只有在设计时深刻理解了软件领域,并以模型概念和元素的形式清晰地描述出复杂的领域逻辑,才能保证软件项目的真正成功。
软件项目开发速度的有效提升依赖于领域驱动设计。领域驱动设计可以大大提高我们所能解决的问题的复杂度,引导我们从混乱和复杂的软件领域中找出业务规则,提取出一套描述语言,并运用相应的模式和策略来发挥这种描述语言的强大作用。这是一个相当需要技巧和经验的过程。能够真正深入地理解、掌握和运用这些技巧和经验就已经非常不易,而将这么技巧和经验总结和整理出来就显得尤为珍贵。
问题领域本身的复杂性是造成软件开发复杂性的核心。任何软件不可能避开这种复杂企业中的复杂性问题,它所能做的仅仅是控制好复杂问题。
一个好的领域模型是控制复杂问题的关键,它能够透过问题域的表象看本质,为软件开发人员提供一个参考模型,便于沟通和理解问题域。一个好的领域模型有非常重要的价值,但建立它却不是一件容易的事情。很少有人能够出色地完成,并且建立的方法也很难传授。
首先,在进行领域建模的时候,不能够将概念和实现分离。一个高效的领域建模人员不应该只会使用记事本和计算器,还要能够编写Java程序。一部分原因是离开对于实现问题的考虑,便无法建立一个有用的概念模型。然而概念与实现不可分割的主要原因是:领域模型最重要的价值在于提供一种通用的语言,将领域专家与技术人员联系在一起。
真正有效的领域模型是随着时间慢慢发展得来的,即使最有经验的建模人员也会发现总是在系统的初始版本实现后才会找到他们的最佳想法。领域模型会对管理软件开发起到重大的影响——不管软件开发使用何种语言或环境实现。
1 建模过程
1.1需求描述
康正物业公司是我市一家专业的物业管理公司,其下辖六个物业服务处,每个物业服务处管理多个小区,公司的主要业务即对各小区进行日常物业管理工作。
公司物业管理软件的建设,是为了更好的跟进小区物业的管理工作,实现物业服务处工作网络化,提高工作效率,及时掌握公司的经营状况,提高管理水平。
物业管理系统的建设将围绕对业主各项收费进行管理,根据各项报表与查询信息,公司管理层可以实时了解公司业务运营情况,监督各物业服务处的日常工作。
本文最终确定的系统功能目标如下:
1) 业务办理。包括房产登记、水电报表上传、系统自动计费、物业收费、临时收费、减免收费、预收费用和退还押金等功能。
2) 参数设置。包括楼栋类型、房产类型、房产来源、车位类型等参数的设置,以及部门信息、物业服务处信息、小区信息、楼栋信息、房产信息和业主信息的管理功能。
3) 系统设置。包括用户信息、角色信息、收费方式、收费单位、收费项目、收费标准、单独收费标准以及历史欠费录入等功能。
4) 信息查询。包括小区收费月汇总、小区收缴率月汇总、小区收费年汇总、公司收费月汇总、公司收费年汇总、物业服务处收费月汇总、物业服务处年汇总、单项收费明细、业主缴费明细、业主缴费汇总、业主欠费汇总、业主欠费明细以及公司临时收费月汇总等报表查询功能。
1.2 需求分析
整个系统是一个基于互联网的工作平台,允许公司各部门拥有权限的用户进行使用,用户必须通过登录验证才有权限使用本系统。用户登录后,根据所在部门分配相应权限,只能按其拥有的权限进行操作。如物业服务处的用户不能查询及操作其他服务处的信息,公司财务处可以查询到所有服务处的业主信息。公司员工的操作都通过日志进行记录,管理者可以通过查询日志来查看操作员某一时间段的收费、减免收费的情况。
1.2.1制定房产收费标准
对于每个小区都有一个基本的收费标准,这个收费标准根据收费项及住宅类型划分为若干个不同的子标准。物业管理费的收费可能根据单层普通业主、单层还建业主、多层普通业主、多层还建业主、普通商铺、还建商铺、多层普通商铺、门面不同而不同。停车服务费的收费根据路面、地下室,位置的不同而收费。水费、电费的收费根据商铺、住宅、门面的不同而不同。对于按月收费的收费项目,因某些特殊原因,需要降低收费标准的,可以通过特殊权限,修改制定的某一房产的收费标准。对于需要一次性收费的项目,需要减免的,可以通过物业管理区申请,公司财务审核的方式进行减免。
1.2.2初始化
物业公司计算按月收费的起始日期,并非是开发商将房产管理权移交给物业公司的日期,而是通过执行“房产初始化”功能时指定的初始化日期开始计算,未进行初始化操作的房产不计算按月收费的项目。可以指定一组房产或单个房产进行初始化。
1.2.3收费
收费操作是指收取业主的各项费用的操作。收费有以下几种情况:业主交费的金额与待缴金额相等时,可以直接办理收费。待缴金额有零钱的情况(如102元),而业主只想交100元时,系统自动判断操作员是否有缴费金额优惠的权限,并且优惠的范围在允许的权限之内时,操作员可以办理优惠收费(100元)。
业主需要对待缴金额进行减免收费, 并减免额度超过操作员允许的额度的情况下,由操作员向公司财务进行“减免申请”,财务审核通过后,操作员按减免后的金额收费。提供一次性缴费优惠套餐,如一次性缴纳全年的物业管理费,按照XXX元收费。
1.2.4减免收费审核
减免收费审核由公司财务管理审核同意后,物业管理区操作员可以按减免后的金额收费。
1.2.5楼栋管理
楼栋管理的功能主要实现新增、修改、删除楼栋的功能。楼栋需保存的信息包括物业服务处、小区、楼栋号、单元、楼层、类型、多层、电梯房、收费方式、坐收、走收等。
1.2.6房产管理
房产管理的功能主要实现新增、修改、删除房产的功能。房产需要保存的信息包括物业服务处、小区、楼栋号、单元数、楼层、房号、户主、是否已初始化、楼栋类型、房屋类型。
1.2.7业主管理
管理员可以新增、修改、删除业主信息。业主管理需要保存的信息包括业主工作单位、电话、姓名、身份证,业主家庭成员信息,可以包含一个或多人(工作单位、电话、姓名、身份证),业主的房产信息。
1.2.8部门管理
部门的组织结果以树状方式进行表述,一级部门为公司,二级部门为公司科室及物业服务处。用户可以新增、修改和删除部门信息。
1.2.9用户管理
由系统管理员负责维护整个系统的用户信息,包括用户的增加、删除、所属部门的变更、用户授权。用户使用信息系统的权限由系统管理员负责设置,用户权限授予的原则根据用户实际负责的工作来决定。
1.2.10小区管理
可以增加、删除、修改小区,并指定小区所属物业服务处。小区属性有:小区名称,地址、收费方式、所属物业服务处。
1.2.11收费项目
收费项目按收取方式可分为:按月收费、一次性收费。按月收费的项目有:物业服务费、停车服务费、水费、电费、垃圾清运费。一次性收费的项目有:装修垃圾清运费、装修保证金、装修服务费、其他。
1.2.12收费标准
收费标准的划分,对于每一个小区都有一个基本的收费标准,这个收费标准根据收费项目及住宅类型划分为若干个不同的子标准。房产只有经过初始化,并指定初始化日期后,系统才能按月计算物业服务费和垃圾清运费,没有经过初始化的房产,不计算物业服务费和垃圾清运费。其中水费、电费需要记录起止码及历史欠费信息。停车服务费指业主每月需要缴纳的停车服务费,停车服务费的收费标准根据标准、路面、地下室而不同。对于临时收取的停车服务费,在当日交班时作为一次性收费进行录入收费金额即可。
1.2.13信息查询
包括收费年汇总表、公司收费月汇总表、管理区收费年汇总表、管理区收费月汇总表、小区收费年汇总表、小区收费月汇总表、单项收费明细表、业主缴费汇总表、业主缴费明细表、业主欠费汇总表、业主欠费明细表、暂定以上统计报表。
需求分析的任务就是根据前期与用户的沟通记录,找出用户心中真正想要的全部功能需求并加以描述,然后利用OOA(面向对象分析)思想提取出核心领域模型类。
1.3 系统用例
软件系统的功能需求可以使用系统用例来加以描述。以下系统用例指出,操作本系统的用户角色包含ADMIN(系统管理员)、CHARGEMAN (物业收费员)、OWNER(业主)、USER(普通用户)。每个用户角色操作系统的功能不同,由此确认出系统用例。系统管理员可以设置系统参数楼栋类型、房产类型、房产来源、车位类型、收费方式、收费单位,并对用户、角色、部门、物业服务处、小区、楼栋、房产、业主、收费项目和收费标准进行管理,同时也可以对小区物业收费进行统计查询。物业收费员首先对小区进行房产登记工作,指定各房产应缴纳的收费项目,之后上传各房产的水电报表,以便让系统自动计算各房产所属业主应缴纳的物业费用并生成每月账单,提醒业主每月按时缴纳账单,完成物业收费工作,同时也可预收费用并存到业主账户中。图1即为本系统用例图(Use Cases)。
2 总结
本文基于物业管理系统的完整需求分析及系统设计阶段,再现了基于领域驱动设计进行软件系统领域建模的完整过程。通过与湖北康正物业有限公司以及小区业主的详细交流,以物业收费业务领域为入口,该文定义出了本系统中的全部领域模型类,及其属性和方法,并重点分析它们之间的相互依赖关系,从而对系统需求有了更深刻的理解,在绘制UML用例图和类图的基础上,完成了物业管理系统的领域建模工作。
参考文献:
[1] 黄光芳,金义富.基于领域驱动设计构建企业级Web平台的应用[J].实验室研究与探索,2013(8).
[2] 申新鹏,张利军,杨波.基于动态领域模型的业务流程管理[J].信息技术,2012(6).
[3] 王海林.模型驱动下的Web应用系统自动生成[J].计算机技术与发展,2012,22(1):83-86.
[4] 吴映波,王旭,林云.面向服务的领域分析与建模框架[J].计算机工程与设计,2011,32(8):2704-2707.
版权声明:
1.十号范文网的资料来自互联网以及用户的投稿,用于非商业性学习目的免费阅览。
2.《基于领域驱动设计的物业管理系统建模研究》一文的著作权归原作者所有,仅供学习参考,转载或引用时请保留版权信息。
3.如果本网所转载内容不慎侵犯了您的权益,请联系我们,我们将会及时删除。
本栏目阅读排行
栏目最新
- 1在农民收入调查工作动员培训会上讲话
- 22024年领导干部政治素质自评材料(完整)
- 3公司党委党建工作总结报告【完整版】
- 42024年主题教育党建调研开展情况总结
- 52024年度区妇联关于党建工作述职报告(完整)
- 6关于加强企业人才队伍建设调研与思考(完整文档)
- 72024县党员干部抓基层党建工作述职报告
- 8第二批主题教育研讨发言:时刻“以民为本”,听“实言实语”,办实事好事
- 92024关于党员干部法治信仰情况调研报告(2024年)
- 10局网络安全工作责任制落实自查报告(全文)
- 11XX国企分管领导关于党建设引领企业高质量发展研讨发言(范文推荐)
- 122024年第二批主题教育专题读书班研讨发言提纲(6)【完整版】