系统的设计和开发

190 阅读8分钟

2017年7月我参与了xxx保险公司财产险承保核心系统的设计和开发,担任系统分析师。该项目核心团队30多人,历经1年3个月于2018年10月成功上线。该项目结合了大数据和云计算并采用工作流引擎技术实现了保险承保全业务自动化流程和核保的智能风险控制管理,减轻了保险业务人员的工作,为公司减少了业务运行成本,同时也满足了用户对快速,高效,智能保险产品的需求,极大提升了用户满意度。本文结合作者的项目实际经验对软件开发法中结构化和面向对象还有原型法进行了论述,具体通过保单管理快中结合面向对象的开发方法进行详细的论述。

随着互联网技术的不断发展,保险公司市场的竞争越来越激烈,客户对于保险产品的多样性的需求与日俱增,公司原来的财产险承保系统已经满足不了市场快速迭代产品的需求。经过公司高层的一致分析和研究,需要开发一套满足公司今后运行要求的新一代承保核心系统。2017年7月我参与了xxx保险公司财产险承保核心系统的设计和开发并担任了系统分析师,该项目核心团队30多人,总共历时1年3个月于2018年10月成功上线。该项目结合了大数据和云计算并采用了工作流引擎技术实现了保险承保全业务自动化流程和核保的智能风险控制管理,减轻了保险公司业务人员的工作,建设了公司对财产险业务运营的成本,同时也满足了用户对快速,高效,智能的保险产品需求,极大的提高了用户的满意程度,为公司带了巨大的有形和无形价值。该系统主要分为4个核心模块,分别是险种的产品工厂模块,承保模块,保单的管理模块,智能核保模块。产品工厂模块主要功能是通过该模块系统的业务配置人员可以快速的配置新的保险产品,上线新的保险产品不用系统开发人员进行参与,极大的缩短了发布新产品的周期,为快速获得用户市场提供了技术支持。

承保模块,通过该模块可以进行新契约的创建,保单批改的创建,保单快速的保费计算,保单的智能核保,保单生成和打印还有保费的收取,该模块采用了activiti工作流引擎技术实现了保单全流程的自动化处理,减少了业务人员的工作量和提升了保险过程的精准度。

保单管理模块,通过该模块业务人员可以对保单对象进行修改申请和批准,比如对保单的基本信息投保人和被保人的信息进行修改,对保费和保单责任进行修改申请。

智能核保模块,该模块结合阿里云提供的大数据和云计算服务,通过规则系统,可以高效,准确,和智能的对保单的核保进行指派和通过和拒绝,极大的提高了保单的风险管理控制,为实现全流程的自动化提供了基础。

为了更高质量的设计和实现承保系统,在系统分析阶段我们采用了面向对象的方法对项目进行开发,下面我将具体论述在保单管理的实际工作过程中的运用。

软件开方法主要分为,结构化开发方法,原型化开发方法,和面向对象开发方法。结构化开发方法就是自定向下,逐层分解,对软件的设计和开发从上至下一层一层逐步的去实现软件的开发,每一个阶段的产物都作为下一个阶段的输入,每一层都有具体严格的要求和方法论。优点是对于需求确定的项目可以高质量的对项目进行开发和管控,缺点是对于需求不确定的项目后期需求的变更对前期有重大的影响,严重的影响项目的开发进度。

原型法的特点就是特别适用于需求不确定的项目,在需求模糊的情况下,首先通过原型法快速构造一个界面和功能的原型通过用户的不断反馈,持续的进行迭代,直至软件开发完成,最终满足用户的要求,缺点就是没有具体的方法论和严格的流程控制,项目开发过程中如果没有改方法的实践经验容易将项目推至一个混沌的不可控的状态,有着极大风险。

面向对象的开发方法就是通过客观世界去描述软件具体的模块功能和属性,通过该设计,开发人员可以快速的理解软件的功能,需求参与方也可以即使不了解技术也可以对设计进行讨论,方便了软件设计和开发过程中的沟通,减少了需求的误差,同时开发完成后也有较高的复用性。

在系统分析阶段保单管理模块我们就采用了面向对象开发方法。分为具体一下几个步骤,识别和定义对象,在保单管理模块定义出一些重要的对象如,投保人,被保人,保费,保险责任,保额等信息,

将对象定义为类,类是一组具有相同属性和方法的对象的集合,在保单管理系统中保单和投保险人具有不同的属性和方法就可以被定义为policy和policyholder。

定义类的属性和方法,在保单管理系统中policy中的属性有保额信息,保费信息,责任信息等等,policyholder中有姓名住址等等信息,

定义类之间的关系,类之前的关系十分重要包括,关联,继承,和组合和聚合,在保单管理系统中policy和policyholder的关系就是关联,policy和risk的关系就是组合。

定义类的行为方法和规则,为类定义方法和规则是为了定义和描述和规范类的行为,比如policy中定义了保费计算的方法,和详细保费计算的规则。

通过面向对象的方法分析更好的可以获取业务人员的需求,和方法开发人员的开发。对功能的模块的扩展性和可维护性有着巨大的提升。为高质量开发系统提供了基础

结尾:

经过核心团队30多人和关联多个部门和外部供应商的配合,该承保核心系统于2018年10月项目成功上线,该项目运行至今一直运行稳定。该项目减轻了承保业务人员的工作量,满足了用户对于个性化的保险产品的需求,减少了公司的运营成本,为业务扩大营收提供了技术支持。得到了公司领导和业务部门一直的好评,极大提高了用户的满意度。当然在项目建设过程中也遇到了不少困难,比如项目资源紧张,项目工期有逾期风险,项目对于新技术落地有技术风险等等问题,通过我们的一系列的努力和领导资源的调度都得到了及时的解决。我们在软件设计过程中比较重视软件开发方法的选择,通过理论结合项目的实际情况取得了显著的成果,为项目的能按时和高质量的开发做了巨大的帮助。在项目建设过程中当然也有遇到一下映像比较深的问题和思考,比如在需求分析阶段,由于刚开始业务人员对需求比较模糊,系统在开发过程中遇到了频繁的需求修改,拖延了项目的进度。在后面我们对需求不清楚的模块采用原型化的开发方法,在需求清楚的情况下,对需求进行严格的分析和确认,对后期需求的变更有着严格的变更控制,保证了项目按时完成。我将这些项目中所遇到的问题和思考分享给团队成员和记录为以后系统分析和设计工作提供指南。