客户关系管理系统系统总体设计说明书.docx
《客户关系管理系统系统总体设计说明书.docx》由会员分享,可在线阅读,更多相关《客户关系管理系统系统总体设计说明书.docx(22页珍藏版)》请在冰豆网上搜索。
客户关系管理系统系统总体设计说明书
编号001
版本V1.0
总体设计说明书
项目名称:
客户关系管理系统
项目负责人一鸣
编写子贺
校对一鸣
审核康林
单位:
20132013班第1小组
2015年10月8日
1引言
1.1编写目的
本文档的目的是阐述客户关系管理系统的总体设计,全面充实客户关系管理系统在前一阶段中的设计构想,主要容包括系统的平台设计、基本处理流程、系统的组织结构、模块划分和功能分配等,为系统的详细设计以及今后的编码测试工作提供基础。
本文档的预期读者为系统设计人员、软件开发人员以及项目评审人员。
1.2背景
A.待开发的软件系统的名称:
客户关系管理系统
B.项目的任务提出者:
XX酒店
C.项目开发者:
工程大学软件工程专业20132013班第1小组
1.3定义
在概要设计说明书中涉及到的专门术语有:
总体设计、接口设计、运行设计、系统数据结构设计、系统出错处理设计,具体的概念与含义在文档中将会解释。
1.4参考资料
[1]余志山.酒店电子商务体系的组织结构探讨[J].决策与信息(下旬刊),2009,
(2):
158.DOI:
10.3969/j.issn.1002-8129-B.2009.02.107.
[2]王保伦.我国旅游酒店组织结构再造研究[J].旅游学刊,2001,16(6):
43-48.DOI:
10.3969/j.issn.1002-5006.2001.06.009.
[3]于淼.CRM的结构和容解析[J].商业研究,2003,(3):
101-103.DOI:
10.3969/j.issn.1001-148X.2003.03.041.
[4]周良,洪源,强等.客户关系管理系统设计研究[J].计算机应用研究,2002,19(9):
108-109,131.DOI:
10.3969/j.issn.1001-3695.2002.09.034.
[5]齐佳音,怀祖.客户关系管理(CRM)的体系框架分析[J].工业工程,2002,5
(1):
42-45.DOI:
10.3969/j.issn.1007-7375.2002.01.011.
2总体设计
2.1需求规定
2.1.1系统功能
A.建立对酒店日常业务的全面管理的系统,建立一个集成的信息平台和合信息系统,完成酒店各项业务流程的信息化处理。
B.对客历信息、会员信息、合约公司信息、应收单位信息、销售员工信息提供全面管理。
C.对客户消费的消费情况提供全面管理。
D.对酒店的营业收入、销售状况等财务信息提供全面的管理。
E.提供对客历的关怀,获取客历的反馈。
F.能够对客户信息和经营状况提供全面的查询功能和数据分析功能
G.对各部门间进行合理的用户权限分配,只能根据权限进行相应的数据操作。
2.1.2系统性能
A.正确性:
系统正常运转期间不允许出现故障和错误,不允许丢失信息。
B.健壮性:
容纳5个以上客户端同时访问。
C.可靠性:
服务器意外断电有一定缓冲时间以进行数据库备份。
D.时效性:
系统处理效率要比手工提高50%,反应时间最慢不能低于3秒。
E.易用性:
一般职工通过简单培训就可以使用系统,界面友好,操作简便。
F.清晰性:
业务流程明确,各部门职能划分明确。
G.性:
用户信息,操作权限明确,各级使用者只能看到允许查看的系统信息。
H.交互性:
系统界面设计友好,操作方便灵活,并且具有联机提示和帮助学习功能。
I.可扩展性:
可在当前需求基础之上进行功能上的扩展。
J.兼容性:
可运行在大多数主流的硬件环境中。
K.可移植性:
可运行在大多数主流的操作平台上。
L.高效性:
提供批量数据处理功能,提高工作效率。
2.1.3输入、输出需求
输入:
系统的全部数据输入和运行参数的输入均要求采用填空格式的键盘输入,在所有应提示信息处,系统应能给出下拉式的提示并能可由用户根据需要进行选择。
同时要有足够的信息提示与校验用户所输入值的有效性与合法性。
输出:
系统的运行结果均应能通过屏幕进行输出,并要求能将输出的信息灵活地进行屏幕转换,以提高信息的可读性与操作的灵活性。
自定义界面中能够根据子菜单访问频率生成动态界面,提高易用性。
2.2运行环境
2.2.1硬件平台
需求名称
详细要求
服务器
操作系统版本WindowsServer2003存>=4GCPU主频2.4>=GHz
客户端
操作系统版本WindowsXp以上存>=512MCPU主频>=1.6GHz
打印机
激光打印机五台
POS刷卡器
读取准确率,读取速度符合国家标准规定
信息扫描器
读取准确率,读取速度符合国家标准规定
2.2.2软件环境
需求名称
详细要求
操作系统
WindowsXP/7/8
运行环境
.NetFrameWork4.0
数据库
MySQL56
显示器分辨率
最佳效果1024×768像素
2.3基本设计概念和处理流程
2.3.1系统设计思想
客户关系管理系统的基本设计思想是把整个系统按照实现模块进行分解,为提高代码效率,便于维护与扩展,本项目采用基于Winform.NET三层结构框架的WCF扩展框架进行分层处理,系统的分层结构图如图2.1所示。
图2.1系统分层结构图
图2.1描述了客户关系管理系统采用的基于Winform.NET三层结构框架的WCF扩展框架。
界面表示层(UI),采用.NET中著名的第三方控件库(开源无问题)DevExpress与DotNetBar搭配进行界面设计。
业务逻辑层(BLL),用于做一些有效性验证的工作,以更好的保证程序运行的健壮性。
如完成数据添加、修改和查询业务等;不允许指定的文本框中输入空字符串,数据格式是否正确以及数据类型验证;用户权限的合法性判断等;通过以上的诸多判断以决定是否将操作继续向后传递,尽量保证程序的正常运行。
采用Winform开发框架的业务对象同一调用方式,即通过使用BLLFactory,这样一个系统库提供的抽象工厂模式,进行代码优化与逻辑剥离,辅助进行低耦合处理。
在引入了WCF服务层之后,.netFramework提供的权限管理组件与字典管理组件,从UI层移交至BLL层,通过数据处理接口实现与WCF接入。
数据访问层(DAL),要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层,具体为业务逻辑层或表示层提供数据服务。
抽象的接口模块IDAL,它体现了“抽象”的精神,或者说是“面向接口编程”的最佳体现,IDAL只是一个接口层,里面封状了要完成的一些业务逻辑,而具体的实现则交给DAL去实现,然后借助于工厂模式DALFactory和映射完成IDAL层中类的实例化。
这样不管我们用的底层用的是什么数据库都可以完成BLL对DAL的调用。
数据库层(DB),数据库在本系统中采用的是MySQL56数据库。
WCF扩展层,WCF是类似于CORBA的一套基于.NET的中间件系统,实现SOA(面向组件架构)系统,图2.2所示为WCF中间件的代理模型。
图2.2WCF客户端服务器端代理模型
UI层与BLL之间通过WCF进行代理,在WCF上实现契约,客户端只需要按照标准契约进行调用扩展接口,而WCF实质上是包含BLL的,是对BLL进行了封装,即图2.1中的IBaseService接口,将此接口提供给WCF服务。
2.3.2拓扑结构和计算模式
客户关系管理系统按照应用需要设置七个节点,分别为客历管理节点、合约公司管理节点、万能查询节点、报表服务节点、办公室节点、系统管理节点和数据库服务器。
客户关系管理系统的拓扑结构采用星型结构,拓扑结构图如图2.3所示。
客户关系管理系统的计算模式采用C/S模式。
图2.3拓扑结构图
2.3.3系统处理流程
酒店是以销售商品的数量为依据进行各项相关流程管理的,例如:
当客历消费补单时,通过餐饮、住房等部门上传消费卡片到财务部门,财务部门对应客历将消费信息补录到消费单库中;当总经理需要分析客历消费信息时,首先通过万能查询从客历库和客历消费库中查询到客历消费信息,再从报表库中选择报表样式将目标信息以报表形式输出。
图2.4展示了系统的整个流程。
图2.4系统处理流程图
2.4结构
2.4.1系统总体结构
通过对客户关系管理系统的需求分析,可将系统划分为8个子模块,分别为客历管理、会员查询、合约公司管理、应收单位查询、客历关怀、万能查询、系统设置、自定义报表。
系统功能结构图如图2.5所示。
图2.5系统功能结构图
2.4.2系统界面
系统的登录界面如下图所示,用户输入正确的用户名和密码后进入主界面。
图2.6登录界面
用户登陆系统后进入主页,采用上左右布局,菜单以及其子菜单如左图所示。
系统根据登陆用户的角色显示其具有权限的相应菜单。
图2.7系统主界面
2.4.3系统功能分析
A.客历管理:
客历管理主要是指对客历信息的存储和管理以及客历消费过程的业务管理,它包括:
新增客历、删除客历、客历消费补单、会员批量转客历、客历批量归属设置。
B.会员查询:
会员查询能够提供组合条件查询在籍会员的具体信息和会员信息打印。
C.合约公司管理:
合约公司管理主要是指对合约公司信息的存储和管理以及合约公司消费流程的业务管理,它包括:
合约管理、应收单位批量转合约公司、合约公司随访、合同管理、批量修改合约、合约消费补单、新建合约公司。
D.应收单位查询:
应收单位查询能够提供组合条件查询应收单位的具体信息。
E.客历关怀:
客历关怀是指通过短信和形式为酒店提供宣传,它包括:
短信群发和发送。
F.万能查询:
万能查询是指对酒店客户基本信息以及酒店各项业务指标的查询和数据分析,它包括:
客历基本信息查询、客历消费查询、合约公司基本信息查询、合约公司消费查询、合约公司所属客历关系查询、客历分析、客历消费分析、合约消费分析。
G.系统设置:
系统设置是指客户关系管理系统一些基本信息管理、系统权限的设置以及系统参数的设置,它包括:
合约类型编辑、客历类型编辑、操作记录查询、销售员设置、数据源配置、场所设置、用户数据解锁、系统参数设置。
H.自定义报表:
自定义报表是指提供报表编辑和报表设置的功能。
2.4.3系统操作人员及其权限
该酒店设总经理,总经理下设销售人员若干名、业务人员若干名和财务人员若干名。
另设有系统管理员,但系统管理员不属与酒店组织机构人员结构体系中,应该由公司某权益无关人或高级管理人员担任。
当用户登录时,系统根据登陆用户角色不同显示不同的菜单,对应于该用户拥有的相应的权限。
用户角色与权限的关系如下:
A.系统管理员:
拥有所有权限。
B.酒店经理:
经营收益录入、合约审核、客历信息查询、合约公司信息查询、消费信息查询、业务经营分析。
C.销售人员:
POS销售、客历信息录入、合约公司信息录入、会员信息如露、应收单位信息录入、用户归属设置。
D.业务人员:
客历关怀、会员推广、合约公司推广。
E.财务人员:
消费补单、报表制定、业务数据统计。
2.5功能需求与程序的关系
本条用一如下的矩阵图说明各项功能需求的实现同各块程序的分配关系:
客历管理
合约公司管理
会员查询
应收单位查询
万能查询
客历关怀
自定义报表
系统设置
对客历基本信息、消费信息进行管理
√
对合约公司基本信息、消费信息进行管理
√
对会员信息进行查询统计
√
对应收单位信息进行查询统计
√
对酒店营业状况进行全方位查询和统计分析
√
对报表进行预览和定义
√
对客历的关怀进行管理
√
对系统基本设置、员工信息和数据库进行管理维护
√
2.6人工处理过程
A.将客历信息通过键盘、读卡器等外设录入到客历信息库中。
B.将合约公司信息通过键盘等外设录入到合约公司信息库中。
C.当消费单由于某种原因未被录入数据库中时,手动填写消费补单。
D.当会员信息由于某种原因未被转为客历时,手动会员转客历。
E.当应收单位由于某种原因未被转为客历时,手动应收单位转合约公司。
2.7尚未问决的问题
登陆系统的用户角色进行相应操作的权限处理考虑欠妥当。
3接口设计
3.1用户接口
用户通过浏览器打开客户关系管理系统的首页后,必须输入正确的用户名和密码才能登陆到系统的主界面,以进行后续的操作。
3.2外部接口
A.系统提供了与打印机、读卡器之间的接口。
B.系统提供了与Excel之间的接口。
3.3部接口
客历管理子模块中专用应用层和通用应用层几个子模块之间的接口描述见下图:
图3.1客历管理子模块接口图
合约公司管理子模块中专用应用层和通用应用层几个子模块之间的接口描述见下图:
图3.2合约公司管理子模块接口图
客历关怀管理子模块中专用应用层和通用应用层几个子模块之间的接口描述见下图:
图3.3客历关怀管理子模块接口图
万能查询管理子模块中专用应用层和通用应用层几个子模块之间的接口描述见下图:
图3.4万能查询信息管理子模块接口图
4运行设计
4.1运行模块组合
系统分为客历管理、会员查询、合约公司管理、应收单位查询、客历关怀、万能查询、系统设置、自定义报表8个子模块。
系统根据登录用户的权限显示相应的菜单,对应于用户可以使用的子模块。
4.2运行控制
说明每一种外界的运行控制的方式方法和操作步骤。
4.3运行时间
说明每种运行模块组合将占用各种资源的时间。
5系统数据结构设计
5.1逻辑结构设计要点
表名
kl
表说明
客历表
列名
主键
类型
字节数
长度
小数位数
允许为空
kl_id
√
int
4
11
0
建立日期
datetime
√
客历编号
varchar
8
8
varchar
20
20
√
简拼
varchar
20
20
√
联系
varchar
20
20
√
证件种类
varchar
20
20
√
证件
varchar
20
20
√
照片
varchar
20
20
√
入住天数
int
20
20
√
黑否
bool
1
1
√
户籍地址
varchar
100
100
√
备注
varchar
200
200
√
VIP
varchar
20
20
√
销售员号
varchar
20
20
√
卡号
varchar
20
20
√
合约编号
varchar
20
20
√
合约名称
varchar
20
20
√
前台消费额
decimal
8
19
4
√
餐饮消费额
decimal
8
19
4
√
洗浴消费额
decimal
8
19
4
√
表名
Kllx
表说明
客历类型表
列名
主键
类型
字节数
长度
小数位数
允许为空
kllx_id
√
int
4
10
4
客历类型
varchar
20
20
表名
Sfzjlx
表说明
件类型表
列名
主键
类型
字节数
长度
小数位数
允许为空
Zjlx_id
√
int
4
10
证件编号
varchar
20
20
表名
Xfd
表说明
消费单表
列名
主键
类型
字节数
长度
小数位数
允许为空
xf-id
√
Int
4
40
合约编号
varchar
20
20
√
客历编号
varchar
20
20
√
计入时间
datetime
√
金额
decimal
8
19
4
√
折扣金额
decimal
8
19
4
√
场所号
varchar
20
20
√
场所名
varchar
20
20
√
销售员
varchar
20
20
消费时间
datetime
√
消费类型
varchar
20
20
√
表名
Hyb
表说明
会员表
列名
主键
类型
字节数
长度
小数位数
允许为空
Hy_id
√
int
10
10
会员名称
varchar
20
20
√
客历编号
varchar
20
20
√
会员卡类型
varchar
20
20
√
金额
decimal
8
19
4
√
销售员
varchar
20
20
√
表名
Hyklx
表说明
会员卡类型表
列名
主键
类型
字节数
长度
小数位数
允许为空
Hyklx_id
√
int
10
10
会员卡类型名
varchar
20
20
√
折扣金额
decimal
8
19
4
√
表名
Xsy
表说明
销售员表
列名
主键
类型
字节数
长度
小数位数
允许为空
Xsy_id
√
int
10
10
销售员名称
varchar
20
20
√
表名
Menu
表说明
菜单表
列名
主键
类型
字节数
长度
小数位数
允许为空
Menu_ID
√
int
4
10
0
菜单名称
varchar
100
100
0
√
URL
varchar
100
100
0
√
Parent
int
4
10
0
√
表名
Role
表说明
角色表
列名
主键
类型
字节数
长度
小数位数
允许为空
Role_ID
√
int
4
10
0
角色
varchar
20
20
0
√
5.2物理结构设计要点
给出本系统所使用的每个数据结构中的每个数据项的存储要求,访问方法、存取单位、存取的物理关系(索引、设备、存储区域)、设计考虑和条件。
5.3数据结构与程序的关系
说明各个数据结构与访问这些数据结构的形式:
6系统出错处理设计
6.1出错信息
用一览表的方式说朗每种可能的出错或故障情况出现时,系统输出信息的形式、含意及处理方法。
出错情况
提示信息
解决办法
必须填写项为空
**不能为空
提示用户将信息补充完全
登陆出错
用户名或密码不正确
提示用户重新填写用户名、密码
用户已登录
该用户已经登录
提示信息并返回
消费金额为非法数字
请填写正确格式金额
提示信息并重新填写
6.2补救措施
系统提供了数据库备份的功能,一旦系统出现数据不一致或数据丢失等问题,可以数据库恢复到备份时的状态。
6.3系统维护设计
系统采用本项目采用基于Winform.NET三层结构框架的WCF扩展框架进行分层处理开发,在保持原有程序结构的前提下可以方便地进行维护与升级。