代理商门户系统的设计与实现Word文档下载推荐.docx
《代理商门户系统的设计与实现Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《代理商门户系统的设计与实现Word文档下载推荐.docx(31页珍藏版)》请在冰豆网上搜索。
摘要:
文档从代理商系统的发展背景、现状,以及详细业务流程角度,对整个系统的设计进行了描述,通过描述整个系统所涵盖的功能划分具体模块,以及不同模块的详细业务流程,使开发人员的详细设计可以有个简单的参考。
系统采用MyEclipse8.5IDE,Oracle9i数据库,Struts1.2、Spring2.5框架进行开发。
关键词:
系统设计;
模块;
业务流程;
开发工具;
开发框架
DesignAndImplementationOfTheFortalAgentsSystem
Student:
LIU-Wei
Tutor:
JIANGShao-Ping
(OrientalScience&TechnologyCollegeofHunanAgriculturalUniversity,Changsha410128)
Abstract:
Documentsfromtheagentsystemdevelopmentbackground,status,anddetailedbusinessprocessperspective,thedesignoftheentiresystemisdescribedbydescribingthefunctionscoveredbythesystemasawholedividedintospecificmodules,andmodulebusinessprocesses,sothatdevelopers’detaileddesigncanhaveasimplereference.ThesystemusedtheMyEclipse8.5todevelop,anddatabaseusedtheOracle9i,andtheframeworkusedStruts1.2,Spring2.5.
Keywords:
SystemDesigned;
Module;
BusinessProcesses;
DevelopmentTools;
DevelopmentFramework
1、前言
1.1系统约束
本系统的代理商只针对电信下属的代理商,相应系统功能和初始化数据都只提供电信旗下相应产品的数据信息,系统采用struts[1]和spring[2]框架开发。
1.2发展现状
目前,代理商门户系统基本满足代理商进行业务受理的所有需求,电信下所有的各个地域都有一套完整的代理商门户系统[3],不同的地域的代理商通过专有的账号密码登入门户系统进行相应的业务受理,传统的繁杂而且昂贵的专线接入等都与代理商无关,电信相应代理商业务得到很好的发展。
1.3开发背景
以前电信下属的代理商基本都通过专线接入、VPN登陆使用CRM[4]前台系统进行业务受理,稍具规模的大中代理商都可以通过专线接入等方式开展业务,随着代理商数量的快速发展,大量小代理商涌入,小代理商无法通过专线等方式操作前台系统,使得小代理商开展业务必须得通过上级代理商的一层层许可,严重制约了代理商业务的发展,核心业务支撑系统无法满足大量大中代理商的并发接入,严重影响系统的性能,也影响了代理商受理业务的效率,并且操作前台CRM系统很复杂,需要对相关代理商进行培训,小代理商则完全无法操作CRM系统,为了业务的更好发展,一款独立于CRM系统的代理商专用的门户系统应运而生。
1.4开发目的
开发一种独立于需要专线接入等方式登录的CRM系统供代理商使用,可以降低代理商的接入门槛和培训成本,方便代理商快捷的进行业务办理,便于代理商业务的发展以及减轻核心业务支持系统的压力。
2名词解释
VPN[5]:
虚拟专用网络(VirtualPrivateNetwork)是在公用网络上建立专用网络的技术。
代理商:
代理商(Agents)是指代企业打理生意,而不是买断企业产品的,是厂家给予商家佣金额度的一种经营行为。
电信代理商是指用代理商自己的账户帮助客户开展业务,客户应付的金额从代理商处扣除,电信营业商根据代理商销售额给予相应的提成或者折扣。
CRM系统化:
即客户关系管理系统(CustomerRelationshipManagement),以客户为中心,基于客户生命周期的全过程,采用协同技术和理念,帮助企业更好的获取客户、保留客户及提升客户价值、提高客户满意度和忠诚度,从而全面提升企业竞争能力和盈利能力。
3需求分析
3.1市场需求
随着电信业务代理商业务的开展,专线操作前台CRM系统的操作弊端也越来多,代理商门户系统已经成为代理商受理业务的专用系统,虽然在全国不同服务区的代理商门户系统已经初俱规模,但是总体需求还是很大,所以,一款可扩展性好,操作简便、快速的代理商门户系统的市场需求还是很大的。
3.2系统功能模块划分
3.2.1业务受理
业务新装:
业务受理包括完成移动业务的入网功能,记录客户信息,订购的服务信息,是其他各种业务受理的前提条件。
业务新装可能需要收取受理费用。
每次业务受理都需要占用一个号码和SIM卡资源。
业务变更:
提供客户对套餐档次的修改功能。
3.2.2充值缴费
现金缴费:
客户产品余额不足时进行缴费。
在实施现金缴费之前代理商必须有足够的保证金。
3.2.3业务查询
客户信息查询:
根据业务号码展示客户名称、业务号码、套餐名称等信息。
客户余额查询:
根据业务号码查询客户余额。
代理商信息查询:
根据代理商工号展示代理商名称、工号等其他信息。
代理商余额查询:
查询代理商余额。
缴费记录查询:
根据业务号码,查询该号码在代理商系统的缴费记录。
订单查询:
订单查询提供了代理商的业务新装,业务变更,现金缴费的订单信息查询。
3.2.4报表统计
充值缴费量统计:
提供代理商统计充值和交费的交易数量及金额功能。
业务受理量统计:
提供代理商统计业务受理量。
3.2.5管理功能
密码修改:
修改代理商密码。
代理商管理:
提供添加、修改、删除代理商的功能。
套餐管理:
提供配置代理商系统可受理的套餐功能。
添加、删除、修改套餐信息。
3.2.6沟通交流
投诉受理:
帮助客户提交投诉申请。
投诉单查询:
查看已经提交的投诉申告进度。
相应的业务功能架构如下:
3.3环境需求
硬件环境:
(1)CPU:
CPU233MHZ以上;
(2)内存:
512MB以上;
(3)硬盘:
30G以上;
(4)显示器:
17英寸。
软件环境:
WindowsXP[6]操作系统,apache-tomcat-5以上版本,MyEdipse系列版本,Oracle9i[7]数据库系统,JDK1.5以上软件,IE7以上版本浏览器,PL/SQLdeveloper
3.4可行性分析
3.4.1可行性分析目的
可行性分析通过对项目的主要内容和配置条件,如市场需求、资源供应、建设规模、工艺路线、设备选型、环境影响、资金筹措、盈利能力等,从技术、经济、工程等方面进行调查研究和分析比较,并对项目建成以后可能取得的财务、经济效益及社会环境影响进行预测,从而提出该项目是否值得投资和如何进行建设的咨询意见,为项目决策提供依据的一种综合性的系统分析方法。
3.4.2开发的软硬件可行性
UN开发需要的硬件对想在的个人PC机来说完全能够承受,开发的软件中,Tomcat[8]、MyEclipse是现在Web开发的主流开发工具,开发人员的获取很容易,WindowsXP系统现在是PC机的一半配置,S公司的JDK是免费的,并且现在已经更新到1.7,并且一直在更新,所以JDK1.5[9]要求很低,获取很容易,Oracle9i加上可视化操作软件PL/SQLdeveloper软件能让用户很简单的操作数据库,对于代理商门户系统这种数据量很多的系统,oracle9i数据库能很好的进行数据的操作。
Oracle9i[10]和MyEclipse是收费的,但对于大型的项目,Oracle9i是必要的,也是可行的。
3.4.3经济可行性
经济可行性[11]分析的是软件开发的成本和经济效益,来确定开发软件是否有开发的价值。
代理商门户系统缓解了电信前台CRM系统的压力,减少了各级代理商使用VPN专线的开支,减少了代理商操作CRM系统的培训成本,有利于代理商业务的扩展,为电信增加了极大地盈利,相比于购买数据库的开支,并不困难的开发,经济效益是很大的。
3.4.4操作可行性
代理商门户系统本来就是为了减轻代理商操作前台复杂的CRM系统而产生的替代品,操作的简易性不是操作复杂的CRM系统可以比拟的,友好的界面设计和用户体验使代理商可以很快的上手,进行业务受理,基本不需要培训。
代理商参照系统随带的操作手册基本就可以正确使用,系统摒弃了以往系统繁杂的系统提示步骤等,尽量精简代理商需要操作的功能,是代理商可以很舒心的操作本系统。
综合上面从软硬件、经济、操作等方面的优势,本系统开发具备全部条件,无论从何角度考虑,都是可行的。
4系统分析
4.1系统分析目的
本系统的系统分析,选择基本的面向对象的分析方法。
系统分析的主要任务是将在系统详细调查中所得到的文档资料集中到一起,对组织内部整体管理状况和信息处理过程进行分析。
识别将要开发的系统应用领域的对象,分析对象之间的关系,建立出符合系统需求的模型。
在需求分析的基础上一般需要建立两种模型[13],一种是静态模型,主要包含:
用例图、类图等等;
另一种是动态模型,主要包含:
序列图、协作图、活动图等等。
本文专注于静态模型的用例图和动态模型的活动图。
4.2系统整体用例
4.2.1系统管理员用例图
图1系统管理员用例图
Fig.1Managerofsystemusecasediagram
4.2.2代理商用例图
图2代理商用例图
Fig.2Agentusecasediagram
4.3动态模型
面向对象分析设计当中,动态模型的建模描述了系统动态行为,动态模型描述了操作时间和顺序有关联的系统特征,并且影响改变的事件、事件序列、事件环境及事件组织。
借序列图、状态图、活动图等,可描述系统的动态模型。
动态模型的每个图均对理解系统的行为特征有帮助。
对开发人员来说,动态模型的建模具有可视性、明确性和简易性。
其中序列图描述的是对象如何交互,并将重点放在消息的次序上,就是说,描述消息怎么在对象之间接受和发送。
序列图可供不同的人员使用,用户可以从序列图中看到业务过程的细节;
分析人员可以从序列图中看到相关的处理流程;
开发人员可从序列图中看到需要开发的对象及对这些对象的操作过程;
可以看到过程的具体细节,并根据这过程开发测试案例。
所以说序列图对系统开发的各方面都是有用的。
可见,序列图对系统来说是至关重要的。
交互图的另外一种形式是协作图,它侧重描述对象、对象间的链接及链接对象间怎么发送消息。
活动图体现了活动,这是序列图与协作图不可能表示出来的。
因此综合以上,本次动态模型主要选择序列图进行分析,但是一些重要模块另外对其进行协作图与活动图的分析。
下面是业务新装业务流程:
检测
图3业务新装业务流程图
Fig.3Businessnewlyinstalledbussinessprocessdiagrams
5系统设计
5.1设计思想
一个系统的总体设计[14]都是由两个阶段组成的:
系统设计,主要用来确定系统的具体实施方案;
而结构设计,主要用来确定系统的软件的具体结构。
系统的设计是从系统的总体目标为出发点,根据我们在需求分析当中对系统逻辑功能的需求来考虑系统所要用到的技术及经济开销与系统运行环境方面的条件,确定系统的总体的设计方案,从而达到系统总体目标的实现。
5.2设计目标
系统总体设计目标是为了建立一个用户体验好,操作简单,对缓解核心CRM系统压力起到一定作用的供代理商受理业务,业务查询,对电信代理商业务发展起一定推进作用。
5.3系统结构设计
系统总体架构图如下:
图4系统总体架构图
Fig.4Systemarchitecturediagram
5.4系统的代码设计
在代码设计的过程当中,要求开发人员遵循一下代码设计原则[15]:
(1)要适合计算机处理;
(2)要便于使用;
(3)要具有系统性、通用性和可扩展性;
(4)选择最小值代码;
(5)代码标准化;
5.5系统的数据库设计
5.5.1数据库库概念设计
1
N
1
NN
图5代理商门户系统E-R图
Fig.5AgentportsystemE-R
根据以上E-R模型[16],将其转化为具体的关系模型:
客户(城市、客户编号、客户名称、证件类型、证件号码、性别、出生日期、职业、家庭住址、家庭邮编、住宅号码、联系人、联系电话、Email、传真号码)
代理商(职员号码、职员名称、登录账号、工号等级、办公地址、办公号码、电子邮件、移动电话、传真地址、家庭地址、出生日期、性别、城市、职员状态、代理商编号)
产品(业务号码、UIM卡号、账户余额、套餐信息)
5.5.2数据字典
表1业务功能
Table1Bussinessfunction
名称描述定义
业务功能受理事项对应的业务功能点1业务变更2现金缴费3投诉受理
表2卡资源状态表
Table2Cardsourcestatustable
卡资源状态唯一标识,代表卡使用状态1可用2占用
表3服务状态
Table3Servicestatus
服务状态服务状态信息表中唯一标识状态1正常2停机
表4受理历史标识
Table4Acceptedhistoricalidentity
受理历史唯一的标识受理历史中的产品标识1新装2变更
表5产品关联
Table5Productsassociatedwith
产品关联变更中的原产品和变更产品标识源产品:
PROD_ID目标产品:
RELA_PROD
5.5.3数据库详细设计
(1)代理商信息表(AG_EMPLOYEE_T)
表6代理商信息表
Table6Agentinformationtable
字段名类型 是否允许为空 备注
F_EMPLOYEE_IDVARCHAR2(16) N 职员编码
F_EMPLOYEE_NAMEVARCHAR2(32)N 职员名称
F_PARENT_EMPLOYEE_IDVARCHAR2(16) Y 主管人员编码
F_WORK_NO20.78VARCHAR2(20)Y 登录账号
F_WORK_PWDVARCHAR2(32) Y 登录密码
F_EMPLOYEE_TYPENUMBER
(1)N权限
F_WORK_ADDRESSVARCHAR2(256)Y办公地址
F_WORK_TELEPHONEVARCHAR2(15)Y办公电话
F_EMAILVARCHAR2(64)Y电子邮件
F_MOBILEVARCHAR2(32)Y移动电话
F_FAXVARCHAR2(32)Y传真地址
F_HOME_ADDRESSVARCHAR2(256)Y家庭地址
F_BIRTHDAYDATEY出生日期
F_GENDERNUMBER
(1)Y性别
F_RESIGNED_DATEDATEY辞职日期
F_LOGIN_IPVARCHAR2(32)Y登陆IP
F_CITY_CODEVARCHAR2(32)Y城市编码
F_STATUSNUMBER
(1)Y职员状态
F_DEALER_IDVARCHAR2(16)Y代理商编码
(2)客户信息表(R_CUS_INFO_T)
表7客户信息表
Table7Customerinformationtable
字段名类型是否允许为空备注
F_CITY_CODEVARCHAR2(8)Y城市代码
F_CUS_IDNUMBER(10)N客户编号
F_CUS_NAMEVARCHAR2(64)Y客户名称
F_ID_KINDNUMBER
(2)Y证件类型
F_ID_CODEVARCHAR2(30)Y证件号码
F_SEXNUMBER
(2)Y性别
F_BIR_DATEDATEY出生日期
F_OCCUPATENUMBER
(2)Y职业
F_OME_ADDRVARCHAR2(128)Y家庭住址
F_HOME_ZONENUMBER(6))Y家庭邮编
F_HOME_PHONEVARCHAR2(30)) Y住宅电话
(3)产品服务表(R_SERV_INFO_T)
表8产品服务表
Table8Productsservicetable
F_USER_IDNUMBER(10)Y用户编号
F_ARD_NOVARCHAR2(30)Y智能卡号
F_IMSIVARCHAR2(30)YIMSI
MAIN_PROD_IDVARCHAR2(30)Y
F_ADDVARCHAR2(30)Y附加业务串
(4)产品套餐表(AG_MAIN_PRODUCT_T)
表9套餐表
Table9Producttable
PROD_IDVARCHAR2(8)N产品编号
PROD_NAMEVARCHAR2(256)N产品名称
PROD_DESCVARCHAR2(1024)N产品描述
SERVICE_KINDNUMBER(4)N业务类型
IF_VALIDNUMBER
(2)N是否有效
INVALID_DATEDATEY失效时间
(5)受理事件表(AG_APPLY_EVENT_T)
表10受理事项表
Table10Acceptedmatterstable
APPLY_EVENTNUMBER(4N受理事项
NAMEVARCHAR2(30)Y描述
IF_VALIDNUMBER
(2)Y是否有效
(6)受理历史表(AG_BUS_INFO_T)
表11受理历史表
Table11Acceptedhistorytable
REGISTER_NUMBERVARCHAR2(20)N受理编号
CONTACT_IDNUMBER(15)N接触编号
SERVICE_IDVARCHAR2(30)N业务号码
APPLY_EVENTNUMBER(4)N受理事项
DEALER_IDVARCHAR2(12)N代理商编号
ACCEPT_DATEDATEN受理时间
ACCEPT_PERSONVARCHAR2(20)Y受理人
(7)城市表(AG_CITY_T)
表12城市表
Table12Citytable
CITY_CODEVARCHAR2(20)Y城市编号
CITY_NAMEVARCHAR2(40)Y城市名称
IF_VALIDNUMBER
(2)Y城市名称
(8)接触信息表(AG_CONTACT_INFO_T)
表13接触信息表
Table13Contactinformationtable
EMPLOYEE_IDVARCHAR2(30)N员工编号
CONTACT_DATEDATEY接触时间
APPLY_EVENTNUMBER(4)Y受理事项
(9)充值缴费表(AG_PAY_FEE_T)
表14充值缴费表
Table14ChargeTable
PAY_FEENUMBER(8,2)N交费额
DEALER_IDVARCHAR2(16)Y代理商编码
(10)产品受理历史表(AG_PROD_ACCEPT_INFO_T)
表15产品受理历史表
Table15Productacceptedhistorytable
REGISTER_NUMBEVARCHAR2(20)N受理编号
PRODUCT_IDVARCHAR2(15)N产品编号
ADD_BUSVARCHAR2(500)Y附加业务
CHANGE_KINDNUMBER
(1)N受理类型
APPLY_DATEDATEN受理时间
BEGIN_DATEDATEY生效时间
END_DATEDATEY结束时间
(11)服务类型表(AG_SERVICE_KIND_T)
表16服务类型表
Table16Servicetypetable
SERVICE_NAMEVARCHAR2(40)N业务名称
IF_OPENNUMBER
(2)N使用状态
(12)