《企业销售部门综合管理平台的设计与实现.doc》由会员分享,可在线阅读,更多相关《企业销售部门综合管理平台的设计与实现.doc(42页珍藏版)》请在三一办公上搜索。
1、企业销售部门综合管理平台的设计与实现摘 要随着企业资源计划系统等企业管理系统的飞速发展,如今适用于大型企业的销售管理平台都做的非常完善,但是对于中小型企业来说并不需要如此庞大的系统,而且昂贵的部署费用也令其难以接受。本系统就是针对中小型企业销售部门设计的一个的管理平台,主要实现公司对销售人员和客户资源的管理。本文首先介绍了系统的开发背景并阐述了课题的意义,随后对系统进行了需求分析和可行性分析。然后,按照软件工程学的开发步骤从系统的总体设计到详细设计,详细阐述了系统的功能结构设计、数据库设计、程序设计和界面设计。通过本平台企业可以完成对销售人员工作日程的掌握,对客户资料的控制,对销售业绩的统计,
2、可以进行公司内部的点对点通信,共享文档资料的功能。通过完善的数据库修改与删除权限控制和程序逻辑控制,实现了企业销售部门即使人员流失而客户资源也不会不流失的目的与要求。最后,对系统的功能进行了测试,实现了系统部署方便、管理高效、可维护性强的目标。本项目完全基于网络构建,用户通过浏览器使用本系统,并且具有很高的灵活性。目前国内类似管理平台还尚不成熟,因此本项研究具有一定的创新性和实践意义。关键词:销售人员管理;客户资源管理;权限控制AbstractIn pace with the rapid development of personal computers and the Internet, m
3、ost companies use enterprise management system such as Office Automation System and Enterprise Resource Planning System to manage daily routines and related data, thus achieving a quality leap in enterprise management. Office Automation System and Enterprise Resource Planning System intended for lar
4、ge-scale enterprises are quite developed nowadays, however, for small and medium-sized companies, there are a lot of functions they find unnecessary, not to mention the cost of deployment they cant afford. The Sales Management System in discussion here is devised to find a solution for small and mid
5、dle sized enterprises to manage client resource and sales personnel.From the point of view of software engineering, the paper expatiates on the development process of the Sales Management System in five chapters. Firstly the paper introduces the background and significance of the development of the
6、system while providing detailed feasibility and demand analyses. Secondly, the paper sets forth the realization of the functions of the system following the procedure of its development, i.e., from its overall to specific devises design. Last but not least, the paper shows test results of the functi
7、ons of the system, which prove to be highly user-friendly, efficient and easy to maintain.Key words:Customer Relationship Management;Database;ASP.Net目 录第1章 概 述11.1 课题的背景11.2 课题的目的和意义11.3 开发环境及简介2第2章 可行性分析与需求分析52.1 可行性分析52.2 需求分析62.3 系统设计目标72.4 系统的综合要求8第3章 企业销售部门综合管理平台总体设计93.1 系统流程图93.2 系统数据流图93.3 系统
8、功能结构设计103.4 数据库设计17第4章 企业销售部门综合管理平台详细设计244.1 用户登录界面设计244.2 管理平台首界面设计254.3 部门客户信息界面设计264.4 个人信息界面设计284.5 共享资源界面设计30第5章 企业销售部门综合管理平台系统测试325.1 系统运行环境325.2 软件测试说明325.3 系统测试及操作过程33结 论36参考文献37致 谢38第1章 概 述1.1 课题的背景 信息时代已经来临,社会生产力高速发展,新技术层出不穷,信息量急剧膨胀,整个人类社会已经步入信息化,信息化社会就会产生海量的数据信息,传统的手工式的录入和检索,已无法满足人们对信息和数据
9、的利用和处理。如在查找客户资料、处理银行账目、企业管理、统筹生产等方面,无不需要利用大量的信息资源。这就需要人们利用计算机来检索和记录海量的数据,因此,如何有效地进行数据信息的管理和利用,已经成为人们普遍关注的课题。 在市场经济迅猛发展的今天,商业竞争不断加剧,依靠传统的办公自动化(OA)企业管理方式已经无法适应当今瞬息万变的市场环境。企业家们急切的需要一种全新的、行之有效的企业管理、客户关系管理方法,而由于中小企业市场竞争更为激烈,这种需求尤为迫切。在目前极富挑战性的业务环境中,运营状况卓越的公司要比以前任何时候都希望进一步提高自身的管理水平,并愈发重视他们最宝贵的资产,即他们的客户。各公司
10、都在想办法留住自己最好的客户。无论客户是在销售、服务还是营销环节与公司互动,公司都希望能最大限度地提高每一次客户互动的效力。于是在办公自动化系统之后,企业资源计划系统(ERP)应运而生。ERP系统是包含物资资源管理、人力资源管理、财务资源管理、信息资源管理集成一体化的企业管理软件。ERP系统基于当今世界最先进的企业管理理论,提供了企业信息化集成的最佳解决方案。它把企业的物流、人流、资金流、信息流统一起来进行管理,以求最大限度地利用企业现有资源,实现企业经济效益的最大化。然而ERP系统功能庞大结构繁杂,并不符合占我国企业绝大多数的中小企业的需求,中小企业急需一种根据自身特点和需求开发的企业管理系
11、统。1.2 课题的目的和意义 本企业销售部门综合管理平台是针对侧重销售的中小企业开发的。课题开发者通过长期调查和分析发现在中小企业的销售部门中人员流动性极大,而由于销售工作的特殊性,往往是终端的销售人员掌握着客户关系,这对于企业自身掌握客户数据并从数据中挖掘更大商机极为不便,而且在实际运营中伴随着销售人员流失的客户资源也令中小企业主深感不安。在深入结合中小企业实际需求之后,本企业销售部门综合管理平台以ERP系统中的客户关系管理系统(CRM)作为核心,并辅以部分OA系统的功能,并计划在后期逐步完善财务资源管理系统(FRM)和物资资源管理系统(MRP)的功能。 本企业销售部门综合管理平台是一个专门
12、为企业销售量身定做的管理平台。本产品不仅可以实现对销售人员和客户资料的管理,还可以自定义产品的属性,满足企业的差异化需求。在公司销售商品的过程中,通常需要对商品销售信息管理、客户信息管理和员工管理。这些管理如果由人工进行操作,不仅工作量很大,而且容易出现错误,并造成效率低和管理的混乱。因此需要一套专门的信息化管理平台,来协助管理人员完成管理工作,从而提高工作效率,降低管理成本。本系统主要具有以下功能:为公司保留客户信息,一旦销售员离职不损失客户;能够掌握销售人员的动态,能够一目了然的了解销售人员的工作情况;可以看到单独每一订单的进度,以及成单时间等一些信息,及时处理相应的突发事件;能够收集到客
13、户的反馈信息,了解客户对于服务的满意度;内部通信及共享资料,能够互通有无。1.3 开发环境及简介本系统采用的开发工具为Microsoft Visual Studio 2008,利用Windows XP操作系统,通过SQL Server 2005进行数据库开发。通过对系统整体结构及功能模块的研究,使用ASP.NET对系统界面和数据库访问等模块的进行开发,系统要达到的技术指标如下:(1) 系统基于浏览器和服务器模式(B/S模式)。(2) 代码定义结构注释完善、结构明确,方便维护和后期扩展功能。(3) 数据完整性好,数据准确无误。(4) 系统界面清晰明朗、操作简单易学,方便用户使用。(5) 数据全部
14、进库,便于管理,检索和统计。1.3.1 ASP.NET介绍Microsoft .NET技术目前正是风风火火,作为全球软件业最大的公司,微软在.NET技术上投入了大量的人力物力,把公司未来战略重心放在了.NET上,而从目前看来,.NET技术无疑代表了未来Internet技术的方向1。ASP.NET技术就是由微软的.NET技术细化而来的,它跟ASP技术有些关系,然而又不是仅仅是一个继承,可以讲,ASP.NET跟ASP想比较的话,已经是变得面目全非了,当然好得至少是一个量级以上。ASP.NET完全基于模块与组件,具有更好的可扩展性与可定制性,数据处理方面更是引入了许多激动人心的新技术,正是这些具有革
15、新意义的新特性,让ASP.NET远远超越了ASP,同时也提供给Web开发人员更好的灵活性,有效缩短了Web应用程序的开发周期。ASP.NET与Windows 2000 Server/Advanced Server的完美组合,为中小型乃至企业级的web商业模型提供了一个更为稳定,高效,安全的运行环境。服务器端验证控件是ASP.NET控件中新产生的一种验证控件,它可以在客户端直接验证用户输入,但控件必须包含“runat=server”属性,当用户输入错误时,验证控件还可以显示出错消息。控件在正常情况下是不可见的,只有当用户输入数据错误时,它们才是可见的。服务器端验证控件主要包括6种验证控件。Req
16、uireFieldValidator控件、CompareValidator控件、RangeExpressionValidator控件、CustomValidator控件、ValidatorSunmmary控件2。身份验证是揭示用户标识并判断标识真实性的过程。在ASP.NET应用程序身份验证通常由4种身份验证模式来实现:Windows身份验证、窗体身份验证、Passport身份验证和自定义身份验证,这些身份验证提供程序独立于IIS身份验证方案并且只用于IIS身份验证方案之后。如果ASP.NET被配置为Windows身份验证,则不需要其它的步骤,而是直接承认任何从IIS传来的安全标记。如果ASP.
17、NET被配置为窗体身份验证,将使用一个HTML表单提示用户输入资料。通过用户ID和密码在存储的合法用户列表中查询。应用程序可以任意选择最合适的存储机制,包括SQL Server数据库或Active Directory服务。如果ASP.NET被配置为Passport身份验证,用户将被转入一个Passport Web站点并由Passport服务来鉴别。最后是自定义身份验证,这意味着ASP.NET并不执行自己的验证而是完全依靠已经由IIS执行的验证。在这种情况下,匿名用户可以连接进来,而访问资源使用ASP.NET账户。将ASP.NET鉴别模式设定为None并不妨碍程序实现自己的验证层。各种身份验证模
18、式都有利有弊,开发人员应该根据具体的应用程序的安全性要求来选择具体的验证模式。授权是对特定的会话类型授予权限的过程。可以利用ASP.NET安全架构评估用户标识,并根据用户的特定标识或其扮演的角色准许用户访问资源。身份验证只能在machine.config文件或在程序层的Web.config文件中设置,子目录继承了程序的验证模式。但是,授权设置可以在每个子目录的Web.config文件中设置。换句话说,授权比鉴别支持更细,更能保证程序的安全性。假冒是在其他用户标识的上下文执行代码的过程。默认情况下,所有ASP.NET代码都是在Domain ASP.NET用户账户下执行的。代码访问安全是控制代码对
19、受保护资源和操作的访问权限的一种机制。代码访问安全性执行下列功能:定义权限和权限集,它们表示访问各种系统资源的权限;使管理员能够通过将权限集与代码组关联来配置安全策略;使代码能够请求运行所需权限以及其他一些有用的权限,以及指定代码绝对不能拥有哪些权限;根据代码请求的权限和安全策略允许的操作,向加载的每个程序集授予权限;使代码能够要求其调用方拥有特定的权限;使代码能够要求其调用方拥有数字签名,从而只允许特定组织或特定站点的调用方来调用受保护的代码;通过将调用堆栈上每个调用方所授予的权限与调用方必须拥有的权限相比较,加强运行时对代码的限制3。1.3.2 C#语言的简介C#(C sharp)是微软专
20、门为.NET Framework平台开发的一门新型的编程语言。虽然很多语言都能够编写.NET代码,但C#是唯一针对.NET Framework设计的语言4。它使得程序员可以快速地编写各种基于Microsoft .NET平台的应用程序,Microsoft .NET提供了一系列的工具和服务来最大程度地开发利用计算与通讯领域。正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选,无论是高级的商业对象还是系统级的应用程序。最重要的是,C#使得C+程序员可以高效的开发程序,而绝不损失C/C+原有的强大的功能。因为这种继承关系,C#与C/C+具有极大的相似性,熟悉类似语言的开发者可以很快的转向C
21、#。C#是一种现代的面向对象语言。它使程序员快速便捷地创建基于.NET平台的解决方案。C#在带来对应用程序的快速开发能力的同时并没有牺牲C与C+程序员所关心的各种特性。它忠实地继承了C和C+的优点,如果对C或C+有所了解,会发现它是那样的熟悉,即使是一位新手,C#也不会给带来任何其它的麻烦,快速应用程序开发(Rapid Application Development RAD)的思想与简洁的语法将会迅速成为一名熟练的开发人员5。正如前文所述,C#是专门为.NET应用而开发出的语言,这从根本上保证了C#与.NET框架的完美结合。在.NET运行库的支持下,.NET框架的各种优点在C#中表现得淋漓尽致
22、。C#具有一些突出的特点,相信了解了这些特点以及本项目后将会深深体会到“#”“SHARP”的真正含义:简洁的语法、精心的面向对象设计、与Web的紧密结合、完整的安全性与错误处理、版本处理技术、灵活性与兼容性。第2章 可行性分析与需求分析2.1 可行性分析并不是所有的问题都有简单明确的解决办法,事实上,许多问题不可能在预定的系统规模之内解决。如果问题没有可行的话,那么花费在这项工程上的任何时间、资源、人力和经费都是浪费的。可行性分析的目的就是用最小的代价在尽可能短的时间内确定问题能否解决。如果是正确的就加以肯定。要达到这个目的就必须分析几种可能的解决方法的利弊,从而判断原定的系统目标和规模是否实
23、现,系统完成后所能带来的价值是否大于开发这个系统的投资价值。因此,可行性研究实质上是要进行一次大大的压缩,从而简化了系统分析和设计的过程。首先,需要进一步分析和澄清问题定义。在问题定义阶段初步定义的规模和目标,如果是正确的就进一步加以肯定,如果是错误的就应该加以改正,如果对目标系统有任何约束和限制,也就必须把他们清楚地列举出来。在澄清了问题定义之后,分析员应该导出系统的逻辑模型。然后从系统逻辑模型出发,探索若干个可供选择的主要方法。对每种方法都应该仔细研究它的可行性,一般来说,至少应该达到下面的三个可行性:技术可行性,即使用现有的技术能否实现这个系统。经济可行性,即这个系统所带来的经济利益能否
24、超过它的开发成本。操作可行性,即系统的操作方式在这个用户群内能否行的通。分析员应该为每个可行的解法制定一个粗略的实现进度。当然,可行性研究最根本的任务是对以后的行动方针提出建议。如不可行的话,分析员应该停止这项开发工程,以避免时间、资源、人力和经费的浪费;如果问题值得解决的话,分析员就应该推荐一个好的解决方案,并且为工程指定一个初步设计6。可行性研究需要的时间长短取决于工程的规模,一般说来,可行性研究的成本只是预期工程总成本的5 %10 %。2.1.1 经济可行性软件的经济可行性是指软件所能带来的经济效益与开发设计所需要的投资相比,是否相适宜,同时还要看此软件能否真正给用户带来足够的经济效益。
25、我所开发的这套管理信息系统正是基于为用户提高工作效率、节省工作时间、方便操作与管理的目的而设计的。本系统的开发在经济上是完全可行的。开发此软件不需要大量的经费,而且是个人独立设计,可以节省许多费用,同时也可提高个人的实际动手能力。2.1.2 技术可行性随着计算机的普及,其应用也越来越重要,正是在这种情况下各种应用软件也应运而生,而且不断丰富。在本网站系统中,操作人员易于贯穿软件思想并掌握使用方法,网站系统在运行时每一步都有相应的文字提示,有时还会弹出小窗口。只要根据提示进行相应的操作即可,操作十分简单。本系统是一套比较完整的在线网站应用程序,功能比较齐全,系统可以解决用户注册、查询信息、信息管
26、理,以及发布公告、系统留言等实用性问题。因此,开发此软件在技术上是可行的。2.1.3 操作可行性自从人类社会进入九十年代后,以及计算机技术的飞速发展,各种应用软件已日益为人们所接受。管理形式的计算机网络化是社会发展的必然趋势,各种智能化的软件层出不穷,而面对二十一世纪智能网络的挑战,减少了原来人工操作的费时费力的状况。并且可以避免人为的经济犯罪,管理层容易做出及时的决策。本系统用户平台直接面向普通用户,界面简单、明了,采用可视化界面,普通用户只需用鼠标就可以完成相应的数据操作;少量的数据输入是由后台管理员用户完成的。对于初次使用此系统的用户,不必经过复杂的培训和学习就可以掌握本网站的操作流程。
27、由此可见,开发此网站系统在操作上是可行的7。2.2 需求分析需求分析是程序设计中最关键的一个步骤,是其他步骤的基础。需求分析的主要任务是“为了解决这个问题,目标系统必须做什么”。它主要是确定目标系统具有哪些功能。具体地说,应该确定系统必须具有的功能和性能,系统要求的运行环境,并且预测系统发展的前景;必须仔细分析系统中的数据,既要分析系统中的数据流,又要分析长期使用的数据存储,通过分析应该得出用功能模块图、数据库表、程序流程图描述所定义的详细的系统逻辑模型8。需求是用户对系统提出的要求,这些要求可以是原始的、笼统的,也可以是抽象的,细节化的。任何一个软件系统的开发都必须以这些需求作为出发点。软件
28、需求分析工作质量的好坏,将对后面几个阶段的开发工作产生决定性的影响。一个软件系统不管其设计、编码工作做得多好,若需求分析存在缺陷,不能满足用户要求,将严重影响软件质量并会给开发者带来很大的困难和损失。需求分析过程是整个系统开发最重要的阶段,分析的成功与否,决定着整个系统功能的完善性以及稳定性。在该阶段需求分析人员需要确定整个产品的功能要求,并且将现实事务抽象成对象并建模。由于本系统采用的是B/S模式,所以在建模时应该复合网络的特点。本系统在设计之前已经进行了长期深入广泛的需求调研,直观反映在后期的总体设计中9。2.3 系统设计目标 企业销售部门综合管理平台的主要目标是企业对客户资料的完全掌握,
29、提高企业对销售业务的管理水平,并实现企业对客户资料深层挖掘,进而提高企业盈利水平。本系统的具体设计目标是针对拥有350人规模销售部门的中小型企业量身打造一个基于浏览器使用的管理平台。由于销售数据属于企业核心机密,需要严格的权限控制和安全保障。因此本系统基于我国中小企业普遍采用的三层权限制度,即基层销售人员、中层销售部门部长和高层销售总监的三层权限制度。基于中小企业的基本需求,本企业销售部门综合管理平台包括下列十二个主要功能模块:(1)客户信息模块主要实现客户信息的录入、修改、查看和搜索功能。完成企业对客户信息的完全掌握。(2)销售人员信息模块是本系统的核心模块,存储销售人员自身信息,完成企业对
30、销售人员信息的掌握,并实现企业对销售人员的管理。(3)工作日程模块针对终端销售人员设置、显示和提醒工作日程,完成企业对销售人员动态的掌握,便于掌握销售人员工作量和工作日程。(4)工作目标模块显示已经设置的销售目标和已经完成的工作量,便于企业进行内部评比和激励销售员工,完成企业对于全局的销售情况进行实时掌握。(5)内部信息模块实现内部通信功能,降低企业内部会议次数及时间,提高实际工作时间,方便企业内部沟通。(6)共享资源模块存储企业内部公用资源,方便企业内部共享资源。(7)个人日志模块用于记录销售人员对每日工作总结,便于企业掌握核对销售人员过往工作。(8)帮助模块系统帮助文档,方便用户使用。(9
31、)订单模块显示、记录和统计企业订单,方便企业统一管理来自不同销售人员的订单。(10)其他模块预留后期功能扩展的模块接口,初期预计添加企业电话自动应答系统和本系统的短信平台功能。(11)产品信息模块记录显示产品公告信息。(12)产品后台管理模块整个系统的后台入口,由平台开发者掌握,用于系统维护和系统扩展,以及为新用户定制其所需界面。2.4 系统的综合要求(1)系统应建立友好的使用界面,既要操作简单、直观、灵活,又要易于掌握,具备人性化设计。(2)由于是基于B/S模式的管理系统,所以在用户进入登录界面后应该先进行用户身份的验证,只有系统用户才能够进入本系统进行相应权限的操作。这样做的目的是为了保护
32、系统用户的权益。(3)正确连接数据库,查询到用户相应的信息后,应在界面上显示相关的信息。系统应具有界面相互转换的能力,在每个模块之间都应该有相互转换的部分,可以随时返回主页面来重新选择其它功能。(4)系统应具有良好的安全性。因为绝大多数ASP.Net应用程序都要与后台数据库打交道,因此数据的安全性就显得尤为重要。对于网站管理人员来说,安全性就意味着他必须保证那些具有特殊数据访问权限的用户能够登录到数据库,并且能够访问数据以及对数据库对象实施各种权限范围内的操作,同时他还要防止所有非授权用户的非法操作10。第3章 企业销售部门综合管理平台总体设计总体设计的基本目的就是确定系统应该如何实现,因此总
33、体设计又称为概要设计。总体设计过程通常由两个主要阶段组成:系统设计,确定系统的具体实现方案;结构设计,确定软件结构。这部分主要的设计思想是通过企业销售部门综合管理平台的开发方案,利用现有的软硬件环境,提高系统的开发水平,充分的利用资源。系统需符合管理系统的规定,并操作方便直观。系统采用模块化的程序设计的方法,便于系统功能的各种组合和修改。3.1 系统流程图下图为本系统的系统流程图,描述了系统的操作流程。如图3-1所示。信息修改用户信息验证普通用户用户注册用户登录系统设置数据库更新管理员信息管理数据库信息检索信息浏览信息录入数据库更新图3-1 系统流程图3.2 系统数据流图本系统采用结构化分析方
34、法(Structured Analysis,简称SA方法)的基本思想,对本系统利用自顶向下、逐层分解的分析方式,使用数据流图、数据字典等描述手段构造系统的逻辑模型。数据流图是以图示的方式表达数据处理系统中的信息传递和信息变换处理过程。通过数据流图可以准确理解系统的功能需求,并对功能实现中的输入/输出数据做出精确定义11。数据流图具有3个重要的属性:(1)可以表示任何一个系统(人工的、自动的或混合的)的数据流动过程。(2)每个圆角框代表数据的一个加工处理过程,这个过程可以很简单,也可以非常复杂,以至于需要进一步分解其处理过程求得对数据流动过程的全面理解。(3)数据流图着重强调的是数据流(数据在加
35、工处理间的流动)而不是控制流(具体对数据实施操作的条件动作控制)。下面是系统的数据流图(简称DFD图),主要功能是描述用户登录后,数据在系统中的流动过程。如图3-2所示。事务事务留言信息销售信息部门信息通知信息检索信息部门信息销售信息客户信息事务客户信息验证信息验证信息5.2发布留言6结束事务普通用户4检索信息5.1查看通知信息3.3查看部门信息3.2查看销售信息3.1查看客户信息2接收事务普通客户1验证身份D1客户基本信息D2客户基本信息D3销售基本信息D4部门基本信息D5留言信息图3-2 系统数据流图3.3 系统功能结构设计对于工程产品来说,设计的含义是,应用各种技术和原理对设备、过程、系
36、统做出足够详细的定义之后能够在物理上予以实现,也就是说,工程设计是一个构造过程,这个过程必须具备3个要素:有一个系统的模型。有一组原理或方法可以逐步地构造模型。有一组评价设计质量的标准的原则。经过了需求分析阶段的工作,已经能够基本正确了解系统的需求。即以数据流图、数据字典和一组加工描述的表达形式建立了系统的逻辑模型。软件设计的任务从本质上就是如何应用一组原理与方法并遵循质量的评价原则逐步实现系统逻辑模型的过程。软件设计从概念上分为结构设计和详细设计两个阶段。结构设计又称为总体设计,其主要的任务是制订系统实现方案和设计规范并合理确定软件系统的整体模块结构及接口关系。详细设计,也称为模块设计,其主
37、要任务是详细规定每个模块功能的实现算法。结构化设计的核心思想是:如何应用抽象的原则,将系统功能逐层分解为层次化的模块结构。模块的划分不是随意的,需要遵循一些模块划分的指导性原则。模块是数据说明、可执行语句等程序对象构成并执行相对独立功能的逻辑实体,它可以单独命名而且可以实现按名访问。例如,过程、函数、子程序、宏等等都可以看作模块。模块化是一种“分而治之,各个击破”式的求解方式,它降低了总体的复杂程度,简化了软件的设计过程。层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表各个数据的子集,最底层的各个框代表
38、组成这个数据的实际数据元素(不能再分割的元素)。随着结构的精细化,层次方框图对数据结构也描绘得越来越详细,这种模式非常适合于需求分析阶段的需要。系统分析员从对顶层信息的分类开始,沿图中每条路径反复细化,直到确定了数据结构的全部细节时为止12。以下各图是系统的层次图,系统的总体结构图如图3-3 所示。工作日程工作目标内部信息共享资源个人日志帮助订单客户信息其他销售人员信息销售部门管理平台系统前台用户系统后台管理图 3-3 系统总体结构图如上图所示,本系统总体结构分为前台和后台两大模块,而在两大模块下又依据不同的功能,划分成更基本的功能模块。本系统运行于系统开发商的服务器上,系统前台部分是用户基于
39、网络访问实现系统功能的部分,后台管理是运营者维护和管理系统运行的部分。由于本系统需要对用户实行严格的分级管理,因而在系统前台模块部分针对用户级别不同功能又有所不同。以下是根据用户权限所区别的前台功能模块图。销售部长用户登录之后所使用的功能,如图 3-4 所示。工作目标制定、查看个人工作目标周目标月目标年目标月目标查看公司工作目标制定、查看部门工作目标周目标月目标年目标部长的帮助销售人员信息录入、修改个人信息查看、修改部员个人信息部长个人信息部员个人信息客户信息录入、修改客户信息查询、搜索本人客户信息个人客户信息部员客户信息查找、搜索部员客户信息工作日程工作日程录入工作日程完成进度递交查看、批示
40、部员工作日程部长工作日程部员工作日程内部信息公司内部信息个人信息部门内部信息部长内部信息共享资源公司共享资源部长共享资源部门共享资源订单信息录入、修改订单信息查看、统计部门订单信息有条件删除订单信息查找、搜索订单信息个人日志编写个人日志修改、删除个人日志销售部门管理平台销售部长用户图 3-4 销售部长用户功能模块图销售部长用户除完成自身的销售工作外,还负责本部门的管理工作。在客户信息模块,销售部长用户除了掌握自己的客户资料外还可以修改部门员工的客户资料,以及修改部门员工的个人信息。在工作日程部分,销售部长用户还可以查看批示部门员工的工作日程,批示会返回显示在销售员的工作日程界面。在工作目标模块
41、销售部长用户除个人销售目标制定和修改外,还负责部门的销售目标的设定与修改。在内部信息模块销售部长用户除了可以查看和编写公司内部信息和部门内部信息外,还具有销售部长级用户的通信权限,以及公司内部的点对点通信权限。在订单信息模块,销售部长用户还负责管理部门内部的订单,以及对完成的订单进行回访的工作。销售总监登录之后所使用的功能,如图 3-5 所示。总监的帮助销售人员信息录入、修改个人信息查看、修改员工个人信息总监个人信息员工个人信息工作日程工作日程录入工作日程完成进度递交查看、批示员工工作日程总监工作日程员工工作日程共享资源公司共享资源部长共享资源销售部门管理平台销售总监用户客户信息个人客户信息录
42、入、修改客户信息查询、搜索本人客户信息公司客户信息查找、搜索公司客户信息修改、转移公司客户信息工作目标制定、查看本人工作目标周目标月目标年目标月目标制定、查看公司工作目标查看、修改部门工作目标查看、修改员工工作目标周目标月目标年目标周目标月目标内部信息公司内部信息个人信息部门内部信息部长内部信息订单信息有条件删除订单信息查找、搜索订单信息录入、修改订单信息查看、统计部门订单信息查看、统计公司订单信息个人日志编写个人日志修改、删除个人日志图 3-5 销售总监用户功能模块图销售总监用户作为系统最高级别的用户,可以管理系统的全部资源。仅有销售总监用户可以转移或备份公司用户资料。销售总监用户可以查看和
43、修改全部员工信息,查看和批示全部员工的工作日程,设置公司的工作目标,发送公司内部或是针对某个部门或是给所有部长用户发送信息,查看并统计公司的所有订单并生成相应图标。根据用户需要,还可以单独定制销售总监的权限,如果使用时公司领导人使用总监账户则可以在销售总监账户内集成公司系统管理员功能。用户公司管理员登录之后所使用的功能,如图 3-6 所示。销售部门管理平台管理员用户管理员的帮助销售人员信息创建、删除员工信息修改员工级别共享资源修改共享资源使用权限删除共享资源客户信息合并、删除客户信息转移客户信息工作日程锁定、解锁工作日程查看、删除工作日程工作目标统计、汇总工作目标删除工作目标修改内部信息查看权
44、限内部信息删除内部信息订单信息修改订单信息所属权合并订单信息删除订单信息图 3-6 公司管理员功能模块图公司管理员是企业销售部门综合管理平台的用户管理员,其主要职责是管理系统信息,删除无效和不必要信息、修改各种用户权限、新建和删除用户。3.4 数据库设计3.4.1 数据库设计概述数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术,具体说,数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求(信息要求和处理要求)。大型数据库的设计和开发是一项庞大的工程,是涉及多学科的综合性技术。其开发周期长、耗
45、资多、失败的风险也大。必须把软件工程的原理和方法应用到数据库建设中来。对于从事数据库设计的专业人员来讲,应该具备多方面的技术和知识13。主要有:(1)数据库的基本知识和数据库设计论述;(2)计算机科学的基础知识和程序设计的方法和技术;(3)软件工程的原理和方法;(4)应用领域的知识。3.4.2 数据库设计的特点数据库设计既是一项涉及多学科的综合性技术,又是一项庞大的工程项目。有人讲“三分技术,七分管理,十二分基础数据”是数据库建设的基本规律,这是有一定道理的。技术与管理的界面(称之为“干件” )十分重要。数据库建设是硬件、软件和干件的结合,这是数据库设计的特点之一。数据库设计应该和应用系统设计相结合,也就是说,整个设计过程中要把结构(数据)设计和行为(处理)设计密切结合起来。这是数据库设计的特点之二。传统的软件工程忽视对应用中数据语义的分析和抽象。例如结构化设计(Structure Design,简称SD方法)和逐步求精的方法着重于处理过程的特性,只要有可能就尽量推迟数据结构设计的决策。这种方法显然对于数据库应用系统是不妥的。数据库模式是各应用程序共享的结构,是稳定的、永久的,不像以文件系统为基础的应用系统,文件是某一应用程序私用的。数据库设计质量的好坏直接影响系统中各个处理过程的性能和质量。早期的数据库设计致力于数据模型和建模