企业客户关系管理系统毕业设计(论文)_第1页
企业客户关系管理系统毕业设计(论文)_第2页
企业客户关系管理系统毕业设计(论文)_第3页
企业客户关系管理系统毕业设计(论文)_第4页
企业客户关系管理系统毕业设计(论文)_第5页
已阅读5页,还剩30页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGE摘要长久以来,企业客户关系管理系统都是依赖企业工作人员手工进行的,面对如此众多的客户信息,其工作量可想而知。不仅仅浪费了大量的人力物力,而且由于人工管理存在着大量的不可预见的因素,造成了企业对客户信息管理的某些不规范,使得企业客户信息管理陷入管理繁琐,信息混乱的地步。为有效降低运营成本,杜绝管理漏洞,针对现在企业客户信息管理的弊端,根据企业客户信息管理的基本流程,使企业有一套完善的管理系统是非常必要的。从而使其企业的客户量日渐增加。客户量的上升,不仅带动了销售,也从另一个侧面反映出,在企业客户信息管理信息系统的协助下,企业正在以其专业的服务精神、严谨的管理风格逐步赢得客户的信赖,从而在市场竞争中确立战略优势。而企业客户关系管理系统的开发使其实现了与客户相关的各种信息的系统化、规范化和自动化。通过对客户信息管理模块基本功能的实现,对客户的各种信息进行增加、删除、查找、修改等操作,完成对客户的信息管理。这些功能基本可以满足一般企业对客户管理的需求,使企业节省人力物力,减轻劳动强度;降低成本,节省开支;提高了管理水平,增强了企业在同行业中的竞争力;同时提高了客户信息处理的及时性和准确性。关键词:客户管理C#SQLServer2005客户关系管理ABSTRACTForalongtime,enterprisecustomerrelationshipmanagementsystems,whichrelyoncorporatestaffbyhand,inthefaceofsomanycustomerinformation,theworkloadcanbeimagined.Notonlywastealotofmanpowerandresources,andbecausetherearealotofmanualmanagementofunforeseenfactors,resultingincustomerinformationmanagementbusinessofsomenon-standard,allowsbusinessestomanagecustomerinformationmanagementintoacomplicated,theinformationisconfusingtothepoint.Toeffectivelyreduceoperatingcosts,eliminateloopholesinmanagement,informationmanagementforenterprisecustomersarenowthedrawbacks,accordingtotheenterprisecustomerinformationmanagement,thebasicprocess,thecompanyhasacomprehensivemanagementsystemisnecessary.Makingittheincreasingamountofcorporatecustomers.Increasetheamountofcustomers,notonlytodrivesales,butalsofromtheothersideshows,customerinformationmanagementintheenterpriseinformationsystemwiththeassistanceofitsprofessionalservicesbusinessisthespirit,rigorousmanagementstyleandgraduallywonthetrustofcustomers,resultingincompetitioninthemarkettoestablishastrategicadvantage.Theenterprisecustomerrelationshipmanagementsystemdevelopmentwithcustomerstoachieveavarietyofinformationrelatedtothesystematic,standardizedandautomated.Throughthecustomerinformationmanagement,callrecordsmanagement,customerproductinformationtoachievethebasicfunctionsofthreemodules,avarietyofinformationtocustomerstoadd,delete,find,editandotheroperationstocompletethecustomerinformationmanagement.Thesefeaturesareessentialtomeetgeneralbusinessneedsofthecustomermanagementtoenableenterprisestosavemanpowerandresources,reducelaborintensity;reducecosts,savemoney;improvemanagement,enhancethecompanyintheindustry'scompetitiveness;whileimprovingcustomerinformationprocessingtimelinessandaccuracy.Keywords:CustomermanagementC#SQLServer2005CustomerRelationshipManagement目录TOC\o"1-3"\u1前言 11.1课题背景 11.2课题研究内容及意义 11.3客户信息系统模块需求分析原则 21.4客户关系概述 21.5系统开发方法的选择 22关键技术介绍 42.1系统开发环境 42.1.1硬件环境 42.1.2软件环境 42.2关键技术介绍C# 42.3SQL语言简单介绍 52.4SQLSERVSER数据库 52.5WinForm 62.6系统安全性分析 63系统分析 83.1客户信息模块系统设计的任务 83.2客户信息展示模块系统功能结构图 83.3客户信息系统展示模块系统功能详细设计 93.4系统业务流程图 103.5数据字典 114系统设计 134.1客户商品展示模块系统数据库设计 134.1.1数据库设计概述 134.1.2数据库设计规则 134.2数据库的概念设计 144.3数据库的物理设计 145详细设计 175.1系统登录页面实现 175.2客户资料管理模块的实现 175.2.1客户添加 175.2.2客户删除 185.2.3客户修改 195.2.4客户查询 195.3用户管理模块的实现 205.3.1用户管理模块 206系统测试 216.1系统测试简述 216.2系统测试 216.2.1系统入口测试要点 216.2.2客户添加信息测试要点 216.3系统测试效果 22结论 23谢辞 24参考文献 25附录 26大连交通大学信息工程学院2012届本科生毕业设计(论文)PAGE301前言1.1课题背景企业客户关系管理系统,以企业的客户为中心,从获取和保存客户资料到跟踪客户、签单、售后服务、记录缺陷、反馈客户需求等业务,主要是销售分析、销售预测、销售定单处理、市场营销和客户服务等,并对产品研发和生产提供客户需求信息。企业客户关系管理系统作为强大的客户关系管理系统的一部分其发挥的作用也是显而易见的,对于竞争激烈的市场,很好的掌握用户的资料信息是在市场中立于不败之地的必要条件,俗话说的好:知己知彼,百战不殆。很好的了解竞争对手,合作伙伴,潜在客户是取得客户关系的关键。而企业客户关系管理系统是集客户资料为主体,潜在客户,竞争对手,合作伙伴为附体充分了解客户的一种工具。1.2课题研究内容及意义企业客户关系管理系统对企业来讲,首先是一个商业战略,是帮助企业实现管理关系变化的工具,通过此工具,企业可以透过多种渠道(电话、电子邮件、无线通信等)为客户提供全方位的服务,所提供的活动既涉及到市场与销售部门,还涉及到技术支持和服务等部门。同时本系统也是一个系统集成工程,实施本系统的最终目的是帮助企业增加收入、提高利润、提高客户满意度。综合众多国外著名研究机构和跨国公司(GartnetGroup、IBM、惠普等)对企业客户关系管理系统的诠释,企业客户关系管理系统的概念可由三个层面来表述:1、企业客户关系管理系统是一种现代的经营管理理念,即宏观概念;2、企业客户关系管理系统包含的是一整套解决方案,即中观概念;3、企业客户关系管理系统意味着一套应用软件系统,即微观概念。本系统的核心思想是“以客户为中心”。作为管理系统,企业可以通过与客户的互动来分析客户既时的数据变化以增进对目标客户和潜在客户的了解,从而为不同客户提供个性化的服务。在“以客户为中心”的时代,会展企业管理应变的关键就是如何有效地实现对企业供应链(SupplyChain)的管理,而客户是供应链的“头”,本系统是在真正意义上实现了解决下游供应链的管理。企业客户关系管理系统的核心管理理念:首先是将客户作为当前企业最重要的资源,让客户成为企业资源的途径就是提高客户的满意度;其次本系统系统是企业供应链管理(SupplyChainManagement)的延伸,提供企业下游供应链管理的整体解决方案,同时本系统也将企业与客户之间发生的关系进行全面的评估与管理。英国著名克兰菲尔德管理大学的麦尔科姆教授对企业客户关系管理系统有一形象的比喻:如果将企业客户关系管理系统比作一张凳子,那么它有三条腿:战略、营销和IT,如果缺少其中任何一条腿的支撑,都可能引起系统的失效。因此,本系统不能孤立地建立在某一方面,它应是现代企业管理的重要组成部分。1.3客户信息系统模块需求分析原则本系统信息量大,实现的功能复杂,应具有合理的信息存贮、管理、传输功能,对系统的处理能力、可性、安全性要求高。因此,总体设计应遵循以下原则:1、科学性:采用开发Web应用的先进、开放式的技术,实现基于数据库C/S体系结构的信息系统。2、可靠性:系统应有足够的数据吞吐能力和合理的程序处理功能,在Web多并发用户大批量对数据查询、更新时,能稳定可靠地运行。3、易维护性:应采用先进的程序设计模式,使程序模块结构合理,程序代码共享性好,可扩展、可维护性好。4、实用性:系统功能应满足各类用户的功能需求。5、易操作性:建立友好的用户界面,操作方便。6、安全性:应采用合理的安全技术,保证服务器、用户关键数据传输等安全。1.4客户关系概述客户管理系统涵盖了客户管理、拜访管理和客户商品管理三方面的企业活动。这些客户接触点能提供增强客户关系的必须条件。这个“精彩”的CRM系统是客户和企业双赢的基础。最终用户可以获得增值服务,而公司管理层可以收到有关企业围绕客户运作情况的持续不断的准确而最新的信息。1.5系统开发方法的选择根据企业客户管理系统各个模块的特点,采用的是结构化分析方法和原型法结合的系统开发方法。结构化分析方法(StructuredMethod,结构化方法)强调的是开发方法的结构合理性以及所开发软件的结构合理性的软件开发方法。结构是指系统内各个组成要素之间的相互联系、相互作用的框架。结构化开发方法提出了一组提高软件结构合理性的准则,如分解与抽象、模块独立性、信息隐蔽等。针对软件生存周期各个不同的阶段,它有结构化分析、结构化设计和结构化程序设计等方法。结构化分析的步骤如下:分析当前的情况,做出反映当前物理模型的DFD;推导出等价的逻辑模型的DFD;设计新的逻辑系统,生成数据字典和基元描述;建立人机接口,提出可供选择的目标系统物理模型的DFD;确定各种方案的成本和风险等级,据此对各种方案进行分析;选择一种方案;建立完整的需求规约。结构化设计方法给出一组帮助设计人员在模块层次上区分设计质量的原理与技术。它通常与结构化分析方法衔接起来使用,以数据流图为基础得到软件的模块结构。SD方法尤其适用于变换型结构和事务型结构的目标系统。在设计过程中,它从整个程序的结构出发,利用模块结构图表述程序模块之间的关系。结构化设计的步骤如下:评审和细化数据流图;确定数据流图的类型;把数据流图映射到软件模块结构,设计出模块结构的上层;基于数据流图逐步分解高层模块,设计中下层模块;对模块结构进行优化,得到更为合理的软件结构;描述模块接口。原型法是从开始就根据系统分析人员对用户要求的理解,在强有力的软件环境支持下,给出一个实际的系统模型(或称原型),这个模型大致表达了系统分析人员对当前用户要求的理解和他们希望系统实现后的形式。之后,系统分析人员和用户一起,对这个模型进行评价。原型法的最大优点是能够大大降低软件系统开发后期的维护费用,使系统功能正确地反映用户需求。比较适合于用户需求不清、业务理论不确定、需求经常变化的情况。原型法开发方法重要步骤:第一个步骤是市场调研,技术和市场要结合才能体现最大价值;第二个步骤是需求分析;第三个步骤是概要设计;第四个步骤是详细设计;第五个步骤是编码;第六个步骤是测试。2关键技术介绍2.1系统开发环境2.1.1硬件环境处理器:Inter酷睿T7200。内存:2.0GDDR2内存。硬盘空间:80G。2.1.2软件环境软件环境的选择是程序员开发一个系统首要考虑也是最为关键的一个因素,选择适当且兼容性好的软件环境,会大大提高软件开发的效率,同时为将来的软件移植打下坚实的基础。考虑到时下各个经销商实际的硬件、软件条件,选择了以下软件:操作系统:WindowsXPProfessional。数据库:SQLServer2005。系统开发工具:ViusalStudio。软件开发语言:C#。该软件的界面美观大方,软件运行稳定。2.2关键技术介绍C#C#读做"Csharp",中文译音暂时没有.专业人士一般读"Csharp",现在很多非专业一般读"C井"。C#是微软公司发布的一种面向对象的、运行于.NETFramework之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员AndersHejlsberg的最新成果。C#看起来与Java有着惊人的相似;它包括了诸如单一继承、接口、与Java几乎同样的语法和编译成中间代码再运行的过程。但是C#与Java有着明显的不同,它借鉴了Delphi的一个特点,与COM(组件对象模型)是直接集成的,而且它是微软公司.NETwindows网络框架的主角。并且C#成为ECMA与ISO标准规范。C#看似基于C++写成,但又融入其它语言如Delphi、Java、VB等。微软C#语言定义主要是从C和C++继承而来的,而且语言中的许多元素也反映了这一点。C#在设计者从C++继承的可选选项方面比Java要广泛一些(比如说struts),它还增加了自己新的特点(比方说源代码版本定义)。但它还太不成熟,不可能挤垮Java.C#还需要进化成一种开发者能够接受和采用的语言.而微软当前为它的这种新语言大造声势也是值得注意的。目前大家的反应是:“这是对Java的反击。”C#更象Java一些,虽然微软在这个问题上保持沉默。这也是意料中的事情,我觉得,因为Java近来很成功而使用Java的公司都报告说它们在生产效率上比C++获得了提高。Java所带来的巨大影响和大家对它的广泛接受已经由工作于这种语言和平台之上的程序员数量明显的说明了(估计世界范围内共有两百五十万程序员使用Java)。由这种语言写成的应用程序的数量是令人惊讶的并已经渗透了每一个级别的计算,包括无线计算和移动电话(比如日本发明的Java电话)。C#能够在用户领域获得这样的礼遇吗?我们必须等待并观望,就象已经由SSI公司的CEO和主席KalpathiS.Suresh指出来的那样,“我发现所有这些都是渐进的。如果C#不存在,我们总能回到Java或C和C++。这些都不完全是新技术;它们在更大的意义上来说只是大公司制造的市场噱头。我们必须给他们时间安顿下来看看这些是不是真的对IT工业有什么影响。”2.3SQL语言简单介绍SQL是英文StructuredQueryLanguage的缩写,意思为结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。目前,绝大多数流行的关系型数据库管理系统,如Oracle、Sybase、MicrosoftSQLServer、Access等都采用了SQL语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select、Insert、Update、Delete、Creat以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。在众多的SQL命令中,select语句应该算是使用最频繁的。select语句主要被用来对数据库进行查询并返回符合用户查询标准的结果数据。select语句中位于select关键词之后的列名用来决定哪些列将作为查询结果返回。用户可以按照自己的需要选择任意列,还可以使用通配符“*”来设定返回表格中的所有列。select语句中位于from关键词之后的表格名称用来决定将要进行查询操作的目标表格。2.4SQLSERVSER数据库SQLServer是由Microsoft开发和推广的关系数据库管理系统(DBMS),它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,并于1988年推出了第一个OS/2版本。SQLServer近年来不断更新版本,1996年,Microsoft推出了SQLServer6.5版本;1998年,SQLServer7.0版本和用户见面;SQLServer2000是Microsoft公司于2000年推出的最新版本。MicrosoftSQLServer2000是一个分布式的关系型数据库管理系统,具有客户机/服务器体系结构,采用了一种称为Transact-SQL的SQL语言在客户机和服务器之间传递客户机的请求和服务器的处理结果。支持XML(ExtensiveMarkupLanguage,扩展标记语言。强大的基于Web的分析。支持OLEDB和多种查询。支持分布式的分区视图。SQLServer具有以下特点:是真正的客户机/服务器体系结构。图形化用户界面,使系统管理和数据库管理更加直观、简单。丰富的编程接口工具,为用户进行程序设计提供了更大的选择余地。SQLServer与WindowsNT完全集成,利用了NT的许多功能,如发送和接受消息,管理登录安全性等。SQLServer也可以很好地与MicrosoftBackOffice产品集成。具有很好的伸缩性,可跨越从运行Windows95/98的膝上型电脑到运行Windows2000的大型多处理器等多种平台使用。对Web技术的支持,使用户能够很容易地将数据库中的数据发布到Web页面上。SQLServer提供数据仓库功能,这个功能只在Oracle和其他更昂贵的DBMS中才有。2.5WinFormWindows窗体也称为WinForms,可以创建应用程序的用户界面,并使用任何一种.NET支持的语言编写应用程序的功能。WinForms应用程序一般都有一个或者多个窗体提供用户与应用程序交互。窗体可包含文本框、标签、按钮等控件。大型WinForms应用程序有许多窗体,一些用于获取用户输入的数据,一些用于向用户显示数据,一些窗体会有变形、透明等其他效果甚至让你看不出他的真实面目。Windows窗体的一些重要特点如下:1、简单强大:Windows窗体可用于设计窗体和可视控件,以创建丰富的基于Windows的应用程序。2、新的数据提供程序管理:数据提供程序管理提供易于连接OLEDB和ODBC数据源的数据控件,包括MicrosoftSQLServer、MicrosoftAccess、Jet、DB2以及Oracle等。3、安全:Windows窗体充分利用公共语言运行库的安全特性。这就意味着,一切都可以通过Windows窗体来实现,包括在浏览器中运行的不可信控件和用户硬盘上安装的完全可信的应用程序。4、灵活的控件:Windows窗体提供了一套丰富的控件,并且开发人员可以定义自己有特色的新的控件。方便的数据显示和操作:应用程序开发中最常见的情形之一是在窗体上显示数据。Windows窗体对数据库处理提供全面支持。可以访问数据库中的数据,并在窗体上显示和操作数据。5、向导:向用户提供创建窗体、数据处理、打包和部署等的分布指导。2.6系统安全性分析由于本系统采用的是WinForm+SQLSERVER所开发的系统,因此在安全性方面存在的隐患之一就是数据库数据的安全性。一方面由于本系统的登陆界面中,需要用户输入用户名和用户密码,是用户的唯一识别方式,不能存在安全上的隐患。另一方面由于本系统采用的数据库为SQLServer,其数据库文件在站点内部,它在数据的安全性方面存在一定的缺陷,当服务器受到攻击,重要的数据外泄,造成的后果是无法想象的。因此,为了增加安全性,必须对数据库中的重要信息进行加密以保证系统的安全。为了保证数据库中数据的安全性可以对数据库敏感数据加密达到其安全性的目的。通过查阅相关书籍和资料,了解到md5加密算法是目前较为常用的一种加密算法。本系统也采用了md5实现对数据库中重要数据的加密。MD5的全称是Message-DigestAlgorithm5(信息-摘要算法),在90年代初由MITLaboratoryforComputerScience和RSADataSecurityInc的RonaldL.Rivest开发出来。此算法是不可逆的,所以它即既可用于客户端加密,也可用于服务器端加密。它的作用是让大容量信息在用数字签名软件签署私人密匙前被"压缩"成一种保密的格式(就是把一个任意长度的字节串变换成一定长的大整数)。3系统分析3.1客户信息模块系统设计的任务系统设计工作应该自顶向下地进行。首先设计总体结构,然后再逐层深入,直至进行每一个模块的设计。总体设计主要是指在系统分析的基础上,对整个系统的划分(子系统)、机器设备(包括软、硬设备)的配置、数据的存贮规律以及整个系统实现规划等方面进行合理的安排。系统设计的任务是:在系统分析提出的逻辑模型的基础上,科学合理地进行物理模型的设计。系统模型分为逻辑模型和物理模型。逻辑模型主要确定系统做什么,在系统分析阶段提出而;物理模型则主要解决怎样做的问题,系统分析阶段提出在系统设计阶段提出。系统设计原则主要有:1、系统性;系统是作为统一整体而存在的,因此,在系统设计中,要从整个系统的角度进行考虑,系统的代码要统一,设计规范要标准,传递语言要尽可能一致,对系统的数据采集要做到数出一处、全局共享,使一次输入得到多次利用。2、灵活性;为保持系统的长久生命力,要求系统具有很强的环境适应性,为此,系统应具有较好的开放性和结构的可变性。在系统设计中,应尽量采用模块化结构,提高各模块的独立性,尽可能减少模块间的数据耦合,使各子系统间的数据依赖减至最低限度。这样,既便于模块的修改,又便于增加新的内容,提高系统适应环境变化的能力。3、可靠性;可靠性是指系统抵御外界干扰的能力及受外界干扰时的恢复能力。一个成功的管理信息系统必须具有较高的可靠性,如安全保密性、检错及纠错能力、抗病毒能力等。4、经济性;经济性指在满足系统需求的前提下,尽可能减小系统的开销。一方面,在硬件投资上不能盲目追求技术上的先进,而应以满足应用需要为前提;另一方面,系统设计中应尽量避免不必要的复杂化,各模块应尽量简洁,以便缩短处理流程、减少处理费用。3.2客户信息展示模块系统功能结构图本网站主要是实现了客户管理、拜访管理及客户商品管理三大功能。客户管理又细分为客户管理及单位管理两个子模块。这两个子模块分别对客户及单位信息进行增删改查的操作。增加的单位信息可以在客户信息中的下拉列表中找到。拜访管理及客户商品管理分别实现了对各自信息的增加删除操作。具体功能结构图如下所示:企业客户关系管理系统企业客户关系管理系统资料管理我方信息管理用户管理帮助区域信息管理竞争对手管理客户资料管理基本信息管理货物资料管理重大历史历程更改密码用户管理员工资料管理设置权限重新登入关于我们退出系统启用记事本启用word启用Excel图3-1系统功能结构图3.3客户信息系统展示模块系统功能详细设计通过对本系统的分析,该系统主要分四个模块模块主要实现的功能有:1、通过“用户管理”菜单中的“用户管理”模块添加操作员,“设置权限”模块为操作员分配操作权限,“更改密码”模块修改密码。2、通过“我方信息管理”菜单中的菜单项添加,修改,删除本单位基本信息资料,员工信息资料,货物资料管理信息资料和添加重大历史历程。3、通过“资料管理”菜单中的菜单项添加客户资料信息,区域管理和竞争对手信息。4、本系统提供了很多辅助功能。在“帮助”菜单中可以直接启动记事本、word、Excel等。其中“水平平铺”和“重直平铺”的效果,需要在打开两个以上模块的情况下实现。3.4系统业务流程图系统设计以前,要对系统需求进行归纳分析,查找出所有的业务主角,确定业务主角后,每个主角的相关活动及流程应清晰地制定出来,最终设计出逻辑视图、用户界面示意图。在进行业务流程设计,需要注意以下事项。调查用户网络环境和配置,使系统能够具有合理可行的系统架构。调查用户偏好和技能水平,这将直接影响到项目开发的深度和用户界面的设计。预测并制定系统的性能指标,为编写测试计划提供依据。以下是本文当中使用的数据流图图例,见图3-2。外部实体外部实体处理过程数据流数据存储图3-2数据流图图例本系统的业务流图如下:用户管理用户管理管理员资料管理我方信息管理用户管理帮助退出系统错对验证信息图3-3系统业务流图3.5数据字典数据字典是对流程图加以补充说明的工具,为系统管理员提供了数据项的综合信息。下面将列出管理系统中的几个重要数据元素。用户信息管理模块数据字典部分数据条目。表3-1用户外部实体名称:用户总编号:1-001说明:个人信息维护人员编号:001输入数据流:个人信息输出数据流:个人信息表3-2管理员外部实体名称:管理员总编号:1-002说明:系统管理用户人员编号:002输入数据流:用户信息输出数据流:用户信息表3-3查看客户信息处理过程名称:查看客户信息总编号:2-002说明:管理员对客户信息进行查看编号:P2.1输入数据流:客户信息输出数据流:客户信息表3-4编辑客户信息处理过程名称:编辑客户信息总编号:2-002说明:用户对客户的信息进行编辑编号:P2.2输入数据流:客户信息输出数据流:客户信息表3-5编辑用户信息处理过程名称:编辑客户信息总编号:2-002说明:管理员对客户注册信息进行编辑编号:P2.4输入数据流:客户信息输出数据流:客户信息表3-6客户信息数据存储名称:客户信息总编号:3-001别名:已增加的客户信息编号:D1数据流来源:客户名称,所属行业,客户等级等关键字:客户名称4系统设计4.1客户商品展示模块系统数据库设计4.1.1数据库设计概述数据库设计是在给定的DBMS、操作系统和硬件环境下,如何表达用户的需求,并将其转换为有效的数据库结构,构成较好的数据库模式,这个过程称为数据库设计。数据库及其应用系统开发的全过程可分为两大阶段:数据库系统的分析与设计阶段;数据库系统的实施、运行与维护阶段。数据库设计有两种不同的方法:以信息需求为主,兼顾处理需求,这种方法称为面向数据的设计方法;以处理需求为主,兼顾信息需求,这种方法称为面向过程的设计方法。数据库设计的3个特点:1、反复性(Iterative);2、试探性(Tentative);3、分步进行(Multistage)。数据库设计的过程(六个阶段):1、需求分析阶段;2、概念结构设计阶段;3、逻辑结构设计阶段;4、数据库物理设计阶段;5、数据库实施阶段;6、数据库运行和维护阶段。4.1.2数据库设计规则数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构可以提高数据库存储效率,保证数据的完整性和一致性。设计数据库系统时应充分了解用户各个方面的需求,包括现有系统的需求以及将来可能增加的需求在信息世界中,信息从客观事物出发流经数据库,通过决策机构最后又回到客观世界,信息的这一循环经历了三个领域:信息世界,数据世界,现实世界。现实世界的事物反映到人的头脑中,人的大脑对它有个认识过程,经过分析(选择、命名、分类等)进入信息世界。这些信息再进一步加工、编码,然后进数据世界,而软件系统的开发工作需要考虑这两个方面的问题,也就是要考虑系统开发所需要的数据,以及如何对这些数据进行操作。这两个问题贯穿了整个软件系统的开发过程,这也就是数据库的设计问题,软件设计的一个核心。数据库设计的主要任务是针对一个给定的应用环境,在给定的硬件环境、操作系统、以及数据库管理信息系统等软件环境下,创建一个性能良好的数据库模式,建立数据库及其应用系统,使之能有效地收集、存储、操作和管理数据,满足用户地各类需求。数据库设计通常是在一个通用的DBMS支持下,即利用现成的DBMS作为开发的基础。4.2数据库的概念设计根据系统的特点,可绘制如图4-1所示的系统ER图。管理员信息管理员信息名称密码id图4-1系统管理员ER图客户信息客户信息客户名称客户编号客户等级客户来源所属行业客户类别所在区域联系电话Email图4-2客户ER图4.3数据库的物理设计物理设计主要是指把逻辑设计当中的关系模式图在数据库中以基本表的形式建立出来。该系统的涉及到的表如下:1、客户信息表包括:客户编号(主键),客户名称,客户等级,客户来源,所属行业,客户类别,所在区域,联系电话,传真号码,邮政编码,联系地址,E-mail,备注。表4-1客户信息表(dbo.tb_ClientInfo)列名数据类型是否为空注释*ClientidVarchar(20)否客户编号CnameVarchar(50)是客户名称CstepVarchar(20)是客户等级CrootVarchar(20)是客户来源CtradeVarchar(50)是所属行业CtypeChar(10)是客户类别CareaVarchar(50)是所在区域CphoneVarchar(20)是联系电话CfaxVarchar(20)是传真号码CpostcodeBigint是邮政编码CaddressVarchar(50)是联系地址CemailVarchar(50)是E-mailCremarkVarchar(1000)是备注2、员工信息表包括:编号(主键),姓名,性别,生日,工作日期,学历,所在部门,当前职务,类别。表4-2员工信息表(dbo.tb_Employee)列名数据类型是否为空注释*EidVarchar(20)否编号EnameVarchar(20)是姓名EsexChar(4)是性别EbirthdayVarchar(20)是生日EwdateVarchar(20)是工作日期EdiplomaChar(10)是学历EdepartmentVarchar(50)是所在部门EpositionVarchar(20)是当前职务EtypeVarchar(20)是类别3、资本信息管理表包括:企业名称(主键),法人代表,电话,传真号码,邮政编码,联系地址,E-mail,企业网址,备注。表4-3基本信息管理表(dbo.tb_CInfo)列明数据类型是否为空注释*CnameVarchar(50)是企业名称CmanagerVarchar(20)是法人代表CphoneVarchar(20)是电话CpostcodeBigint是传真号码CfaxVarchar(20)是邮政编码DEmailVarchar(50)是联系地址CnaddressVarchar(50)是E-mailCaddressVarchar(100)是企业网址CremarkVarchar(1000)是备注4、区域信息表包括:编号(主键),名称,类型。表4-4区域信息表(dbo.tb_Area)列名数据类型是否为空注释*AreaidVarchar(20)否编号AreanameVarchar(50)是名称AreatypeChar(10)是类型5、重大历史历程表包括:编号(主键),标题,时间,内容。表4-5重大历史历程表(dbo.tb_Event)列名数据类型是否为空注释*EventideVarchar(20)否编号EtitleVarchar(100)是标题EdateVarchar(20)是时间EcontentVarchar(10000)是内容6、货物资料管理表包括:编号(主键),名称,类别,规格,进货价格,销售价格,单位,备注。表4-6货物资料管理表(dbo.tb_GoodsInfo)列名数据类型是否为空注释*GidVarchar(20)否编号GnameVarchar(50)是名称GtypeVarchar(50)是类别GspecVarchar(50)是规格Gipricemoney是进货价格Gppricemoney是销售价格GunitChar(10)是单位GremarkVarchar(20)是备注7、竞争对手管理表包括:编号(主键),名称,法人,行业,区域,规模,联系电话,联系电话备注,传真,邮编,地址,E-mail。表4-7竞争对手管理表(dbo.tb_Opponent)列名数据类型是否为空注释*OidVarchar(20)否编号OnameVarchar(50)是名称OmanagerVarchar(20)是法人OtradeVarchar(20)是行业OareaVarchar(50)是区域OsizeVarchar(20)是规模OphoneVarchar(20)是联系电话OfaxVarchar(20)否传真OpostcodeBigint是邮编OaddressVarchar(100)是地址OemailVarchar(50)是E-mail8、竞争对手管理表包括:编号(主键),名称,密码,用户权限。表4-8用户管理表(dbo.tb_User)列名数据类型是否为空注释*UseridVarchar(20)否编号UsernameVarchar(20)是名称UserpwdVarchar(20)是密码UserrightChar(10)是用户权限5详细设计5.1系统登录页面实现主页面如图5-1所示。图5-1系统首页页面5.2客户资料管理模块的实现5.2.1客户添加添加客户页面如图5-2所示。包括输入客户编号,客户名称,客户等级,所在城市等信息,点击添加客户。添加客户的信息,如输入有误将提示错误。图5-2客户添加页面5.2.2客户删除删除客户页面如图5-3所示。选中要删除的客户点击删除进行删除。图5-3客户删除页面核心代码如下:privatevoidtsbtnDel_Click(objectsender,EventArgse){try{if(MessageBox.Show("确定要删除该客户吗?","提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Question)==DialogResult.OK){boperate.getcom("deletefromtb_ClientInfowhereClientID='"+Convert.ToString(dgvClientInfo[0,dgvClientInfo.CurrentCell.RowIndex].Value).Trim()+"'");frmClientManage_Load(sender,e);MessageBox.Show("删除数据成功!","提示",MessageBoxButtons.OK,MessageBoxIcon.Information);}}catch(Exceptionex){MessageBox.Show(ex.Message,"提示",MessageBoxButtons.OKCancel,MessageBoxIcon.Information);}}5.2.3客户修改修改客户页面如图5-4所示。点击修改按钮,修改选中的客户信息包括(名称,等级,来源,所属行业,类别,区域,电话,传真,编码和地址等信息)。图5-4客户修改页面5.2.4客户查询客户查询页面如图5-5所示。查询时选择查询条件再输入关键字,点击查询按钮就会找到要查询的信息。图5-5客户查询页面5.3用户管理模块的实现5.3.1用户管理模块包括增加,删除,修改和查询用户编号,用户名称,密码和权限等信息。图5-6用户管理模块页面6系统测试6.1系统测试简述系统测试(SystemTest,ST)是将经过测试的子系统装配成一个完整系统来测试。它是检验系统是否确实能提供系统方案说明书中指定功能的有效方法。在任何软件系统的开发过程中,尤其是在进行大型软件系统的开发中,任何一个编程人员都不可避免地会产生错误。为了尽可能地发现并改正系统设计中的错误,减少错误造成的损失,保证系统开发的质量,需要进行系统的测试。对程序的测试常采用以下两种方法:一是黑盒法,将程序看成不透明的,不考虑其内部的结构和路径,只管程序的整体功能,即输入与输出数据转换是否按规范要求进行。黑盒法发现程序中的错误,必须使用所有可能输入的数据来检查程序是否都能产生正确的输出。为此,黑盒法经常采用以下几个方法:等价划分法,边值划分法,因果图法以及错误推测法等。较为完成的测试是把这几种方法都结合起来使用。二是白盒法,白盒法与黑盒法正好相反,把程序视为一个透明的盒子,需要了解程序的内部构造,要对程序内部的所有逻辑路径进行测试,故白盒法又称为逻辑覆盖。如果想用白盒法发现程序中所有的错误,则至少必须使程序中每种可能的路径都实际执行一次。事实上是不可能的。而且即便试完了所有路径,仍不能保证程序符合要求。因为程序中有些错误是同数据有关的,测试只能证明错误存在,不能证明错误不存在。目前常用的覆盖标准是:语句覆盖、条件覆盖、判定/条件覆盖,以及条件组合覆盖等。白盒法和黑盒法各有特点,每种方法都可以提供一组有用的例子,然后没有一种方法可以提供一组完整的例子。因此。在处理实际问题时,最好时使用各种方法,以便对程序进行比较严格周密的测试。测试的过程:先对逐个模块测试,一般采用先用白盒法分析模块内部逻辑,再用黑盒法补充一些例子,在软件装配的同时进行测试,以便及时发现与接口相联系的问题。之后进行有效性测试,检查程序功能与用户要求的功能是否一致,最后把软件和其它系统元素结合在一起,进行系统整理。6.2系统测试6.2.1系统入口测试要点测试要点:用户名和密码。测试路径:用户名和密码是否为真。测试结果:为真,进入系统;为假,提示重新输入用户信息。6.2.2客户添加信息测试要点测试要点:客户添加信息输入格式。测试路径:客户添加信息输入格式是否正确。测试结果:格式正确,系统增加新的客户信息;不正确,提示出错信息。6.3系统测试效果表6-1客户增加测试用例编号测试项操作步骤预期结果输入数据实际结果结果比较说明001客户增加在注册页面填写注册信息注册信息格式正确,系统增加新的客户注册信息;不正确,提示出错信息。0411-88846不符合,电话格式不正确,不可注册符合002客户增加在注册页面填写注册信息注册信息格式正确,系统增加新的客户注册信息;不正确,提示出错信息。1234不符合,邮编格式不正确,不可注册符合003客户增加在注册页面填写注册信息注册信息格式正确,系统增加新的客户注册信息;不正确,提示出错信息。W不符合,邮箱格式不正确符合当对客户增加信息输入时,如邮箱的格式不正确,其测试效果如下图:图6-1客户增加信息测试效果图结论经过三个多月的设计和开发,企业客户关系管理系统基本开发完毕。在这期间,我主要完成了开发该系统所要做的需求分析工作,设计工作,以及用户界面的设计工作。其功能基本符合用户需求,能够实现区域信息,竞争对手信息,员工信息,客户资料信息的查询,录入,修改,删除。通过对客企业客户关系管理系统的开发,我掌握了C#技术的相关知识,了解了C/S模式的构架。通过对SQLServer2005数据库的系统学习,体会到数据库功能的强大,学习了很多数据库设计思想,将以前学习过的数据库的概念真正和实际相结合并进行运用。也更加深刻的了解了面向对象程序开发的思想。一个软件的开发,整体的设计和对业务流程的熟悉是很重要的。编码只是其中的一部分。只有掌握了整体的业务流程之后,才能合理的设计出数据库,进行相应的关系操作。所以,作为一个计算机专业的学生,要具备一定的规划和设计能力。毕业设计的时间很短,就个人而言,能力是有限的。系统还有很多不足,有待改进、充实和完善。通过对该系统的全面测试,其结果与预想结果基本相同,完成了大部分的设计功能。包括客户信息的管理,信息服务的管理,以及用户的一些基本操作。其功能作用基本上能满足企业对客户的管理需求。但是由于设计的时间和能力的有限,设计上还是存在一些不足之处,这些问题将在后期的系统升级与维护过程中不断改进与完善。谢辞经过了几个月的不懈努力,在大家的帮助与协助下,我顺利的完成了毕业设计的工作。在此,我特别要感谢我的论文指导赵凌云老师和宋丽芳。她们学识渊博,专业精通,老师工作繁忙,但仍然一直关心我们的学习和工作。她们诲人不倦,与同学们保持着良好的沟通并经常给予科学的指导和热心的勉励。就本篇毕业论文总结报告而言,从提纲、草拟、修改到最后定稿,老师都时刻督促、悉心指导和热忱鼓励并给予了一而再、再而三的精心批阅,每个环节都凝结了老师努力的付出和辛劳的汗水。同时,还要感谢在论文期间给予我帮助的同学和朋友,没有他们的帮助,我是不可能在短短几个月内,顺利的完成毕业设计论文的。我们互相鼓励,相互帮助,使得毕业设计论文顺利的完成。更要感谢的是我的家人对我的支持和关怀,不仅是本人能够完成学业的重要保障,而且也是我最后能够完成论文的重要精神支柱。在毕业设计过程中,以前在书本上学到的理论知识得以实践,使我能够更加有体系的更加深入地学懂这些知识,也让我明白了平日日积月累的重要性。相信这些收获对我今后的学习和工作生活都会有很大的帮助。最后,感激所有关心、支持和帮助过我的人。参考文献[1]王华杰.李律松.孙一波等编著.C#数据库开发技术.清华大学出版社.2003.2[2]陈志泊.数据库原理及应用教程(第二版)[M].北京.人民邮电出版社.2008.[3]刘晓强.信息系统与数据库技术[M].北京.机械工业出版社.2008.[4]王晴.关系数据库与SQLServer教程(教材)[M].北京.中国人民大学出版社.2008.[5]陆昌辉.吴晓华.SQLServer2005核心技术揭秘[M].北京.北京希望电子出版社.2002.[6]常军林.魏功.SQLServer2005数据库实用教程.机械工业出版社.2010.7[7]王小科等著.C#开发实战宝典.清华大学出版社.2010.1[9]周存杰.编著.VisualC#.NET网络核心编程.清华大学出版社.2002[8]常军林.魏功.SQLServer2005数据库实用教程.机械工业出版社.2010.7[10]覃国蓉.基于C/S架构的软件项目实训[M].北京.电子工业出版社.2004[11](美)A.RussellJones著,高春蓉等译.WinForm从入门到精通.电子工业出版,2002.1[12]ScottAllen等著.C#数据库入门.郝启堂张哲峰译.清华大学出版社.2003.2[13](美)微软公司著.NET框架1.1类库参考手册.清华大学出版社.2004.1[14](美)JeffreyRichte著.Microsoft.NETFrameworks.清华大学出版社.2003.4[15]AlexHomer等.ASP.NETWebFormsProgramming.清华大学出版社.2003.1附录usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;namespaceCRM{publicpartialclassfrmMain:Form{publicfrmMain(){InitializeComponent();}privatevoidfrmMain_Load(objectsender,EventArgse){tsslUser.Text="||操作用户:"+frmLogin.M_str_name;tsslTime.Text="||登录时间:"+DateTime.Now.ToLongDateString()+""+DateTime.Now.ToLongTimeString();if(frmLogin.M_str_right.ToString().Trim()=="普通用户"){客户资料管理ToolStripMenuItem.Visible=false;竞争对手管理ToolStripMenuItem.Visible=false;我方信息管理ToolStripMenuItem.Visible=false;员工资料管理ToolStripMenuItem.Visible=false;货物资料管理ToolStripMenuItem.Visible=false;重大历史历程ToolStripMenuItem.Visible=false;基本信息管理ToolStripMenuItem.Visible=false;用户管理ToolStripMenuItem1.Visible=false;设置权限ToolStripMenuItem.Visible=false;//nbiClientManage.Visible=false;//nbiOppManage.Visible=false;//nbcCInfoManage.Visible=false;//nbiBInfoManage.Visible=false;//nbiEInfoManage.Visible=false;//nbiGInfoManage.Visible=false;//nbiImportantEvent.Visible=false;//nbiUserManage.Visible=false;//nbiEditRight.Visible=false;}}privatevoid区域信息管理ToolStripMenuItem_Click(objectsender,EventArgse){CRM.DataManage.frmAreaManagedmFAM=newCRM.DataManage.frmAreaManage();dmFAM.MdiParent=this;dmFAM.Show();}privatevoid客户资料管理ToolStripMenuItem_Click(objectsender,EventArgse){CRM.DataManage.frmClientManagedmFCM=newCRM.DataManage.frmClientManage();dmFCM.MdiParent=this;dmFCM.Show();}privatevoid竞争对手管理ToolStripMenuItem_Click(objectsender,EventArgse){CRM.DataManage.frmOppManagedmFOM=newCRM.DataManage.frmOppManage();dmFOM.MdiParent=this;dmFOM.Show();}privatevoid基本信息管理ToolStripMenuItem_Click(objectsender,EventArgse){CRM.PInfoManage.frmBInfoManagepmFBM=newCRM.PInfoManage.frmBInfoManage();pmFBM.MdiParent=this;pmFBM.Show();}privatevoid员工资料管理ToolStripMenuItem_Click(objectsender,EventArgse){CRM.PInfoManage.frmEInfoManagepmFEM=newCRM.PInfoManage.frmEInfoManage();pmFEM.MdiParent=this;pmFEM.Show();}privatevoid货物资料管理ToolStripMenuItem_Click(objectsender,EventArgse){CRM.PInfoManage.frmGInfoManagepmFGM=newCRM.PInfoManage.frmGInfoManage();pmFGM.MdiParent=this;pmFGM.Show();}privatevoid重大历史历程ToolStripMenuItem_Click(objectsender,EventArgse){CRM.PInfoManage.frmImportantEventpmFIE=newCRM.PInfoManage.frmImportantEvent();pmFIE.MdiParent=this;pmFIE.Show();}privatevoid客户级别分析ToolStripMenuItem_Click(objectsender,EventArgse){CRM.SumManage.frmCLAnalysesmFCL=newCRM.SumManage.frmCLAnalyse();smFCL.MdiParent=this;smFCL.Show();}privatevoid客户来源分析ToolStripMenuItem_Click(objectsender,EventArgse){CRM.SumManage.frmCRAnalysesmFCR=newCRM.SumManage.frmCRAnalyse();smFCR.MdiParent=this;smFCR.Show();}privatevoid用户管理ToolStripMenuItem1_Click(objectsender,EventArgse){CRM.UserManage.frmUserManageumFUM=newCRM.UserManage.frmUserManage();umFUM.MdiParent=this;umFUM.Show();}privatevoid更改密码ToolStripMenuItem_Click(objectsender,EventArgse)privatevoidtsslNAddress_Click(objectsender,EventArgse){System.Diagnostics.Process.Start("");}privatevoidstatusStrip1_ItemClicked(objectsender,ToolStripItemClickedEventArgse){}}}基于C8051F单片机直流电动机反馈控制系统的设计与研究基于单片机的嵌入式Web服务器的研究MOTOROLA单片机MC68HC(8)05PV8/A内嵌EEPROM的工艺和制程方法及对良率的影响研究基于模糊控制的电阻钎焊单片机温度控制系统的研制基于MCS-51系列单片机的通用控制模块的研究基于单片机实现的供暖系统最佳启停自校正(STR)调节器单片机控制的二级倒立摆系统的研究基于增强型51系列单片机的TCP/IP协议栈的实现基于单片机的蓄电池自动监测系统基于32位嵌入式单片机系统的图像采集与处理技术的研究基于单片机的作物营养诊断专家系统的研究基于单片机的交流伺服电机运动控制系统研究与开发基于单片机的泵管内壁硬度测试仪的研制基于单片机的自动找平控制系统研究基于C8051F040单片机的嵌入式系统开发基于单片机的液压动力系统状态监测仪开发模糊Smith智能控制方法的研究及其单片机实现一种基于单片机的轴快流CO〈,2〉激光器的手持控制面板的研制基于双单片机冲床数控系统的研究基于CYGNAL单片机的在线间歇式浊度仪的研制基于单片机的喷油泵试验台控制器的研制基于单片机的软起动器的研究和设计基于单片机控制的高速快走丝电火花线切割机床短循环走丝方式研究基于单片机的机电产品控制系统开发基于PIC单片机的智能手机充电器基于单片机的实时内核设计及其应用研究基于单片机的远程抄表系统的设计与研究基于单片机的烟气二氧化硫浓度检测仪的研制基于微型光谱仪的单片

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论