1、系统设计与分析 总体设计说明书编号 001版本 V1。0 总体设计说明书项目名称:客户关系管理系统项目负责人陈一鸣编写赵子贺校对陈一鸣审核康林单位:20132013班第1小组2015年10月8日目录1引言11.1编写目的11。2背景11。3定义11.4参考资料12总体设计12。1需求规定12。1.1系统功能12.1。2系统性能22。1。3输入、输出需求22。2运行环境32。2.1硬件平台32。2。2软件环境32。3基本设计概念和处理流程32。3.1系统设计思想32.3。2拓扑结构和计算模式52。3。3系统管理流程52。4结构62。4.1系统总体结构62。4。2系统界面72。4.3系统功能分析8
2、2.4.3系统操作人员及其权限82。5功能需求与程序的关系82。6人工处理过程92。7尚未问决的问题93接口设计103.1用户接口103.2外部接口103。3内部接口104运行设计124。1运行模块组合124。2运行控制124。3运行时间125系统数据结构设计135.1逻辑结构设计要点135。2物理结构设计要点175.3数据结构与程序的关系176系统出错处理设计176。1出错信息176.2补救措施176.3系统维护设计17070622班第7小组 执笔人:严鑫 联系电话:132065507631引言1.1编写目的本文档的目的是阐述客户关系管理系统的总体设计,全面充实客户关系管理系统在前一阶段中的
3、设计构想,主要内容包括系统的平台设计、基本处理流程、系统的组织结构、模块划分和功能分配等,为系统的详细设计以及今后的编码测试工作提供基础。本文档的预期读者为系统设计人员、软件开发人员以及项目评审人员.1。2背景A. 待开发的软件系统的名称:客户关系管理系统B. 项目的任务提出者:XX酒店C. 项目开发者:哈尔滨工程大学软件工程专业20132013班第1小组1.3定义在概要设计说明书中涉及到的专门术语有:总体设计、接口设计、运行设计、系统数据结构设计、系统出错处理设计,具体的概念与含义在文档中将会解释。1。4参考资料1余志山.酒店电子商务体系的组织结构探讨J。决策与信息(下旬刊),2009,(2
4、):158。DOI:10。3969/j。issn。1002-8129B。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。1001148X。2003。03.041。4周良,郑洪源,谢强等.客户关系管理系统设计研究J。计算机应用研究,2002,19(9):108-109,131。DOI:10。3969/j.issn。1001-3695.200
5、2。09.034。5齐佳音,李怀祖。客户关系管理(CRM)的体系框架分析J.工业工程,2002,5(1):4245.DOI:10。3969/j。issn.10077375。2002.01.011。2总体设计2。1需求规定2。1.1系统功能A. 建立对酒店日常业务的全面管理的系统,建立一个集成的信息平台和合信息系统,完成酒店各项业务流程的信息化处理。B. 对客历信息、会员信息、合约公司信息、应收单位信息、销售员工信息提供全面管理。C. 对客户消费的消费情况提供全面管理。D. 对酒店的营业收入、销售状况等财务信息提供全面的管理.E. 提供对客历的关怀,获取客历的反馈。F. 能够对客户信息和经营状况
6、提供全面的查询功能和数据分析功能G. 对各部门间进行合理的用户权限分配,只能根据权限进行相应的数据操作。2。1.2系统性能A. 正确性:系统正常运转期间不允许出现故障和错误,不允许丢失信息。B. 健壮性:容纳5个以上客户端同时访问。C. 可靠性:服务器意外断电有一定缓冲时间以进行数据库备份.D. 时效性:系统处理效率要比手工提高50,反应时间最慢不能低于3秒.E. 易用性:一般职工通过简单培训就可以使用系统,界面友好,操作简便。F. 清晰性:业务流程明确,各部门职能划分明确。G. 保密性:用户信息保密,操作权限明确,各级使用者只能看到允许查看的系统信息。H. 交互性:系统界面设计友好,操作方便
7、灵活,并且具有联机提示和帮助学习功能。I. 可扩展性:可在当前需求基础之上进行功能上的扩展。J. 兼容性:可运行在大多数主流的硬件环境中.K. 可移植性:可运行在大多数主流的操作平台上。L. 高效性:提供批量数据处理功能,提高工作效率。2.1。3输入、输出需求输入:系统的全部数据输入和运行参数的输入均要求采用填空格式的键盘输入,在所有应提示信息处,系统应能给出下拉式的提示并能可由用户根据需要进行选择。同时要有足够的信息提示与校验用户所输入值的有效性与合法性.输出:系统的运行结果均应能通过屏幕进行输出,并要求能将输出的信息灵活地进行屏幕转换,以提高信息的可读性与操作的灵活性。自定义界面中能够根据
8、子菜单访问频率生成动态界面,提高易用性。2。2运行环境2.2。1硬件平台需求名称详细要求服务器操作系统版本Windows Server 2003内存=4G CPU主频2。4=GHz客户端操作系统版本Windows Xp以上 内存=512MCPU主频=1.6GHz打印机激光打印机五台POS刷卡器读取准确率,读取速度符合国家标准规定身份证信息扫描器读取准确率,读取速度符合国家标准规定2.2。2软件环境需求名称详细要求操作系统Windows XP/7/8运行环境。Net FrameWork 4。0数据库MySQL56显示器分辨率最佳效果1024768像素2。3基本设计概念和处理流程2。3。1系统设计
9、思想客户关系管理系统的基本设计思想是把整个系统按照实现模块进行分解,为提高代码效率,便于维护与扩展,本项目采用基于Winform 。NET 三层结构框架的WCF扩展框架进行分层处理,系统的分层结构图如图2。1所示。 图2。1 系统分层结构图图2。1描述了客户关系管理系统采用的基于Winform .NET 三层结构框架的WCF扩展框架.界面表示层(UI),采用.NET中著名的第三方控件库(开源无版权问题)DevExpress与DotNetBar搭配进行界面设计.业务逻辑层(BLL),用于做一些有效性验证的工作,以更好的保证程序运行的健壮性.如完成数据添加、修改和查询业务等;不允许指定的文本框中输
10、入空字符串,数据格式是否正确以及数据类型验证;用户权限的合法性判断等;通过以上的诸多判断以决定是否将操作继续向后传递,尽量保证程序的正常运行。采用Winform开发框架的业务对象同一调用方式,即通过使用BLLFactory,这样一个系统库提供的抽象工厂模式,进行代码优化与逻辑剥离,辅助进行低耦合处理.在引入了WCF服务层之后,。net Framework提供的权限管理组件与字典管理组件,从UI层移交至BLL层,通过数据处理接口实现与WCF接入.数据访问层(DAL),要是对原始数据(数据库或者文本文件等存放数据的形式)的操作层,具体为业务逻辑层或表示层提供数据服务.抽象的接口模块IDAL,它体现
11、了“抽象的精神,或者说是“面向接口编程”的最佳体现,IDAL只是一个接口层,里面封状了要完成的一些业务逻辑,而具体的实现则交给DAL去实现,然后借助于工厂模式DALFactory和映射完成IDAL层中类的实例化.这样不管我们用的底层用的是什么数据库都可以完成BLL对DAL的调用。数据库层(DB),数据库在本系统中采用的是MySQL56数据库。WCF扩展层,WCF是类似于CORBA的一套基于.NET的中间件系统,实现SOA(面向组件架构)系统,图2。2所示为WCF中间件的代理模型。图2.2 WCF客户端服务器端代理模型UI层与BLL之间通过WCF进行代理,在WCF上实现契约,客户端只需要按照标准
12、契约进行调用扩展接口,而WCF实质上是包含BLL的,是对BLL进行了封装,即图2。1中的IBaseService接口,将此接口提供给WCF服务。2。3。2拓扑结构和计算模式客户关系管理系统按照应用需要设置七个节点,分别为客历管理节点、合约公司管理节点、万能查询节点、报表服务节点、办公室节点、系统管理节点和数据库服务器。客户关系管理系统的拓扑结构采用星型结构,拓扑结构图如图2。3所示.客户关系管理系统的计算模式采用C/S模式。图2.3 拓扑结构图2。3。3系统处理流程酒店是以销售商品的数量为依据进行各项相关流程管理的,例如:当客历消费补单时,通过餐饮、住房等部门上传消费卡片到财务部门,财务部门对
13、应客历将消费信息补录到消费单库中;当总经理需要分析客历消费信息时,首先通过万能查询从客历库和客历消费库中查询到客历消费信息,再从报表库中选择报表样式将目标信息以报表形式输出。图2.4展示了系统的整个流程。图2。4 系统处理流程图2。4结构2.4.1系统总体结构通过对客户关系管理系统的需求分析,可将系统划分为8个子模块,分别为客历管理、会员查询、合约公司管理、应收单位查询、客历关怀、万能查询、系统设置、自定义报表。系统功能结构图如图2。5所示。图2。5 系统功能结构图2.4。2系统界面系统的登录界面如下图所示,用户输入正确的用户名和密码后进入主界面.图2.6 登录界面用户登陆系统后进入主页,采用
14、上左右布局,菜单以及其子菜单如左图所示。系统根据登陆用户的角色显示其具有权限的相应菜单.图2。7 系统主界面2。4。3系统功能分析A. 客历管理:客历管理主要是指对客历信息的存储和管理以及客历消费过程的业务管理,它包括:新增客历、删除客历、客历消费补单、会员批量转客历、客历批量归属设置.B. 会员查询:会员查询能够提供组合条件查询在籍会员的具体信息和会员信息打印。C. 合约公司管理:合约公司管理主要是指对合约公司信息的存储和管理以及合约公司消费流程的业务管理,它包括:合约管理、应收单位批量转合约公司、合约公司随访、合同管理、批量修改合约、合约消费补单、新建合约公司。D. 应收单位查询:应收单位
15、查询能够提供组合条件查询应收单位的具体信息。E. 客历关怀:客历关怀是指通过短信和邮件形式为酒店提供宣传,它包括:短信群发和发送邮件。F. 万能查询:万能查询是指对酒店客户基本信息以及酒店各项业务指标的查询和数据分析,它包括:客历基本信息查询、客历消费查询、合约公司基本信息查询、合约公司消费查询、合约公司所属客历关系查询、客历分析、客历消费分析、合约消费分析.G. 系统设置:系统设置是指客户关系管理系统一些基本信息管理、系统权限的设置以及系统参数的设置,它包括:合约类型编辑、客历类型编辑、操作记录查询、销售员设置、数据源配置、场所设置、用户数据解锁、系统参数设置.H. 自定义报表:自定义报表是
16、指提供报表编辑和报表设置的功能.2.4.3系统操作人员及其权限该酒店设总经理,总经理下设销售人员若干名、业务人员若干名和财务人员若干名。另设有系统管理员,但系统管理员不属与酒店组织机构人员结构体系中,应该由公司内某权益无关人或高级管理人员担任。当用户登录时,系统根据登陆用户角色不同显示不同的菜单,对应于该用户拥有的相应的权限.用户角色与权限的关系如下:A. 系统管理员:拥有所有权限。B. 酒店经理:经营收益录入、合约审核、客历信息查询、合约公司信息查询、消费信息查询、业务经营分析。C. 销售人员:POS销售、客历信息录入、合约公司信息录入、会员信息如露、应收单位信息录入、用户归属设置。D. 业
17、务人员:客历关怀、会员推广、合约公司推广。E. 财务人员:消费补单、报表制定、业务数据统计。2。5功能需求与程序的关系本条用一张如下的矩阵图说明各项功能需求的实现同各块程序的分配关系:客历管理合约公司管理会员查询应收单位查询万能查询客历关怀自定义报表系统设置对客历基本信息、消费信息进行管理对合约公司基本信息、消费信息进行管理对会员信息进行查询统计对应收单位信息进行查询统计对酒店营业状况进行全方位查询和统计分析对报表进行预览和定义对客历的关怀进行管理对系统基本设置、员工信息和数据库进行管理维护2。6人工处理过程A. 将客历信息通过键盘、读卡器等外设录入到客历信息库中。B. 将合约公司信息通过键盘
18、等外设录入到合约公司信息库中。C. 当消费单由于某种原因未被录入数据库中时,手动填写消费补单。D. 当会员信息由于某种原因未被转为客历时,手动会员转客历.E. 当应收单位由于某种原因未被转为客历时,手动应收单位转合约公司.2。7尚未问决的问题登陆系统的用户角色进行相应操作的权限处理考虑欠妥当。3接口设计3.1用户接口用户通过浏览器打开客户关系管理系统的首页后,必须输入正确的用户名和密码才能登陆到系统的主界面,以进行后续的操作.3。2外部接口A. 系统提供了与打印机、读卡器之间的接口。B. 系统提供了与Excel之间的接口。3.3内部接口客历管理子模块中专用应用层和通用应用层几个子模块之间的接口
19、描述见下图:图3。1客历管理子模块接口图合约公司管理子模块中专用应用层和通用应用层几个子模块之间的接口描述见下图:图3.2合约公司管理子模块接口图客历关怀管理子模块中专用应用层和通用应用层几个子模块之间的接口描述见下图:图3。3客历关怀管理子模块接口图万能查询管理子模块中专用应用层和通用应用层几个子模块之间的接口描述见下图:图3.4万能查询信息管理子模块接口图4运行设计4。1运行模块组合系统分为客历管理、会员查询、合约公司管理、应收单位查询、客历关怀、万能查询、系统设置、自定义报表8个子模块。系统根据登录用户的权限显示相应的菜单,对应于用户可以使用的子模块。4.2运行控制说明每一种外界的运行控
20、制的方式方法和操作步骤。4.3运行时间说明每种运行模块组合将占用各种资源的时间.5系统数据结构设计5。1逻辑结构设计要点表名kl表说明客历表列名主键类型字节数长度小数位数允许为空kl_idint4110建立日期datetime客历编号varchar88姓名varchar2020简拼varchar2020联系电话varchar2020证件种类varchar2020证件号码varchar2020照片varchar2020入住天数int2020黑名单否bool11户籍地址varchar100100备注varchar200200VIPvarchar2020销售员号varchar2020卡号varcha
21、r2020合约编号varchar2020合约名称varchar2020前台消费额decimal8194餐饮消费额decimal8194洗浴消费额decimal8194表名Kllx表说明客历类型表列名主键类型字节数长度小数位数允许为空kllx_idint4104客历类型varchar2020表名Sfzjlx表说明身份证件类型表列名主键类型字节数长度小数位数允许为空Zjlx_idint410证件编号varchar2020表名Xfd表说明消费单表列名主键类型字节数长度小数位数允许为空xfidInt440合约编号varchar2020客历编号varchar2020计入时间datetime金额decim
22、al8194折扣金额decimal8194场所号varchar2020场所名varchar2020销售员varchar2020消费时间datetime消费类型varchar2020表名Hyb表说明会员表列名主键类型字节数长度小数位数允许为空Hy_idint1010会员名称varchar2020客历编号varchar2020会员卡类型varchar2020金额decimal8194销售员varchar2020表名Hyklx表说明会员卡类型表列名主键类型字节数长度小数位数允许为空Hyklx_idint1010会员卡类型名varchar2020折扣金额decimal8194表名Xsy表说明销售员表列
23、名主键类型字节数长度小数位数允许为空Xsy_idint1010销售员名称varchar2020表名Menu表说明菜单表列名主键类型字节数长度小数位数允许为空Menu_IDint4100菜单名称varchar1001000URLvarchar1001000Parentint4100表名Role表说明角色表列名主键类型字节数长度小数位数允许为空Role_IDint4100角色姓名varchar202005.2物理结构设计要点给出本系统内所使用的每个数据结构中的每个数据项的存储要求,访问方法、存取单位、存取的物理关系(索引、设备、存储区域)、设计考虑和保密条件。5。3数据结构与程序的关系说明各个数据
24、结构与访问这些数据结构的形式:6系统出错处理设计6。1出错信息用一览表的方式说朗每种可能的出错或故障情况出现时,系统输出信息的形式、含意及处理方法。出错情况提示信息解决办法必须填写项为空*不能为空提示用户将信息补充完全登陆出错用户名或密码不正确提示用户重新填写用户名、密码用户已登录该用户已经登录提示信息并返回消费金额为非法数字请填写正确格式金额提示信息并重新填写6.2补救措施系统提供了数据库备份的功能,一旦系统出现数据不一致或数据丢失等问题,可以数据库恢复到备份时的状态.6。3系统维护设计系统采用本项目采用基于Winform .NET 三层结构框架的WCF扩展框架进行分层处理开发,在保持原有程序结构的前提下可以方便地进行维护与升级。20132013一组 11 / 17 执笔人:陈一鸣 联系电话:15704617761