jsp团购网站ssh论文_第1页
jsp团购网站ssh论文_第2页
jsp团购网站ssh论文_第3页
jsp团购网站ssh论文_第4页
jsp团购网站ssh论文_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

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

文档简介

摘要网络团购是消费者为满足其特定需求,利用互联网平台便捷性的特点,自发组团、信息共享,共同采购,以降低交易成本和交易风险,获取产品价值最大化的一种理性行为。目前,网络团购在国内主要以同城团购为主,即发起人在网上召集有共同购买意愿的团众,在线下组织见面交货。本系统主要设计B/S模式的团购网站,实现团购网站的基本功能:用户注册登陆、团购信息介绍、今日团购信息、往日团购信息查询、在线留言等功能关键字:团购网,信息管理,JSP

AbstractConsumerstobuythenetworktomeettheirspecificneeds,easeofuseoftheInternetplatform,thecharacteristicsofspontaneousgroups,informationsharing,jointprocurementtoreducetransactioncostsandtradingrisk,accesstomaximizethevalueofaproductofrationalbehavior.Atpresent,mainlyinthedomesticnetworkbuybuycity-based,thatthepromotershaveacommononlinepurchaseintentiontoconvenethepubliccorporation,organizedunderthelinetomeetdelivery.

ThesystemdesignofB/Smodebuywebsitebuywebsitestoachievethebasicfunctions:userregistrationlogin,commodityclassification,buyinformationsheets,onlinebuy,onlineforums,onlinemessageandotherfunctionsKeywords:Customers,Informationmanagement,JSP

目录1绪论 11.1选题背景 11.2管理信息系统简介 11.3计算机信息系统的发展 21.4管理信息系统的发展现状 21.5开发管理信息系统应注意的问题 31.6可行性分析 31.7系统开发步骤 42开发环境 52.1软件工程介绍 52.2开发环境及工具 52.1.1选择JSP2.0作为开发语言 52.2.3选择SQL2000作为后台数据库 62.3JSP数据库开发技术 62.3.1.JDBC开发数据库 62.3.2.BDE开发数据库 72.4体系结构 82.4.1系统体系机构的一般阐述 82.4.2C/S模式与B/S模式的比较分析 82.4.3B/S模式的优势 102.4.4C/S模式的优势 102.5开发方法整体选择 113系统分析 123.1模块设计 123.2功能模块图 123.3数据库设计概述 123.4数据库设计周期 133.5SQL查询语言及使用 143.6系统数据分析 143.7系统数据库设计 154详细设计 184.1用户登录界面 184.2添加团购信息 194.3团购商家管理 194.4管理员设置 204.5注册会员管理 204.6会员信息管理 215系统调试与测试 225.1程序调试 225.2程序的测试 225.2.1测试的重要性及目的 225.2.2测试的步骤 235.2.3测试的主要内容 236结论 25致谢 27参考文献 28PAGE281绪论1.1选题背景随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机实现团购网信息的管理势在必行。目前团购网管理的借阅工作部分大多数还是手工管理,工作效率很低,并且不能及时了解团购网的种类和会员们比较需求的团购网等,不能更好的适应当前会员的借阅要求。手工管理还存在这许多弊端,由于不可避免的人为因素,造成数据的遗漏、误报。计算机信息化管理有着储存量大,速度快等许多优点,提供给我们的处理信息及时快捷,因此我们利用计算机提供给我们的信息对会员的借阅过程形成一整套动态的管理能够极大地提高团购网管理管理的效率,这也是团购网管理的科学化、正规化管理,与世界接轨的重要条件。1.2管理信息系统简介管理信息系统就是我们常说的MIS(ManagementInformationSystem),在强调管理,强调信息的现代社会中它变得越来越普及。MIS是一门新的学科,它跨越了若干个领域,比如管理科学、系统科学,运筹学、统计学以及计算机科学。在这些学科的基础上,形成信息收集和加工的方法,从而形成一个纵横交织的系统。管理信息系统是现代信息管理工作不可缺少的一部分,是适应现代高团购网信息管理尺度的要求、推动信息管理走向科学化、规范化的必要条件。只有信息管理规范了,才能给人们提供更好的生活环境及便利的生活空间。信息是管理上的一项极为重要的资源,管理工作的成败取决于能否做出有效的决策,而决策的正确程度则在很大程度上取决于信息的质量。在21世纪,人类将步入知识经济时代,知识经济时代是团购网发展日新月异和知识、信息呈爆炸膨胀的时代。有所谓信息威胁之说,这是指人类面临的要处理的信息量大到难以处理的地步,以至造成混乱的结果。计算机的出现解决了这个问题,由于计算机迅速、准确为信息收集、加工、使用、查询提供可能。随着以计算机技术、通信技术、网络技术为代表的现代信息技术的飞跃发展,人类正在从工业时代向信息时代迈进,人们越来越重视信息资源的开发和利用,“信息化”已成为一个国家经济和社会发展的关键环节,信息化水平的高低已成为衡量一个国家现代化水平和综合国力的重要标志。管理信息系统是一个由人和计算机等组成的,能进行管理信息的收集、传递、加工、保存、维护和使用的系统,它能实测国民经济和企业的行为、帮助实现其规划目标。管理信息系统功能包括:信息收集、信息存储、问题处理、对话及信息输出、信息管理机构。1.3计算机信息系统的发展从1945年美国第一台电子会员积分计算机ENIAC诞生以来,短短四、五十年,计算机技术发展异常迅速,应用日益广泛。从硬件上由电子管、晶体管、集成电路、大规模、超大规模集成,价格降低、可靠性增强。计算机尤其是微型计算机逐渐普及,从开始4位微处理器的微型机到现今32位高档微机,主频速度越来越快。随着硬件的发展,软件也不断更新,由2进制代码到机器语言汇编语言、高级程序语言,到现今面对对象的非过程化语言,人们不必关心问题的解法和计算过程描述,只需告诉它干什么,至于如何干,则由软件自动完成,这给软件开发人员带来及大的便利。软件开发人员不必化大多时间和精力在描述程序的具体细节上,提高效率,减少手工编程中的误差。计算机的应用也由原先单纯的数值计算,到数据处理如办公自动化,辅助教学,工业的自动控制、人工智能,可以说渗透到生产生活的各个领域。计算机的应用提高了效率,降低了成本,节省人力物力。但要发挥其巨大作用,还需提高人们的应用水平。1.4管理信息系统的发展现状现代社会、社会化趋势的扩大和社会产品需求使企业在生产经营活动中涉及的内外部信息积聚膨胀,随着科学技术突飞猛进和生产迅速发展,使人类知识量增长速度不断加快,信息量的增加,外部环境变化的变快,人工已无法胜任。如何收集足够的信息资源,强有力的信息并加以利用,积极的开发和及时利用信息爆炸有效的信息资源,已成为现代社会的难题。计算机的出现解决了这个问题,由于计算机迅速、准确为信息收集、加工、使用、查询提供可能。计算机技术与通信技术结合极大的促进现代信息技术的发展,各国加快信息进程,国际社会建设信息高速公路的热潮和中国工人“金”字号工程为代表的国家信息工程项目的开展,使中国的企业信息化面临新的形势。电子计算机适应现代社会管理信息量迅速增长,信息寿命短,要求及时转换的问题。信息系统由电子数据处理,信息报告系统,决策支持系统进一步发展到专家系统及支持领导层的决策执行信息程序,在竞争中支持战略决策的战略信息系统。当今社会现代信息技术广泛迅速的渗透到社会生活的各领域但目前在管理信息系统应用还很不完善,属于起步阶段。计算机对管理工作的支持,不仅是数据处理、而且是辅助决策的工具,能够从海量的信息中收集、整理,分析提供给管理者、决策有关的信息,相关的决策分析,甚至可和管理者交互对话,生成决策。目前各个行业的计算机处理信息管理,很大一部分仍停留在单项业务理,处在电子数据处理阶段,各单位由事务处理到系统处理转向支持系统还建立起真正的具有预测控制和支持决策功能的管理信息系统。虽然信息系统已有一定发展,在业务处理过程控制办公自动化方面已有长足进步,但很不完善。要充分利用计算机处理信息,必须从目前情况入手,着眼于未来,开发适合本单位、行业的小型管理系统,甚至是其中一步分,如工资管理系统,然后逐步完善,不断扩充。管理信息系统的特点之一就是数据集中统一,采用数据库。利用数据库技术可解决数据共享问题。数据库用一定数据模型组织数据,使数据面向系统,程序独立于数据,实现数据独立性,减少数据冗余和不一致性,且易编程、扩充、移走。尤其20世纪70年代后期产生的分布式、面对对象数据库,使数据和数据操作方法作为对象由数据库管理,系统更好用,减少出问题的可能性.其属性继承性可在对象中共享数据和操作,极大的方便了用户。总而言之管理信息系统是集科学化、计算机及系统方法为一体的综合性边缘性学科。1.5开发管理信息系统应注意的问题成功地开发一套管理信息系统,不仅需要具备一定的理论基础,而且还需要对开发过程中所面临的问题有一个充分、清醒的认识,例如:社会因素、文化背景、企业体制、起点环境等。特别是在中国当前IT行业飞速发展的形势下,更要强调这些方面对管理信息系统开发的影响。1.6可行性分析经济可行性研究是对组织的经济现状和投资能力进行分析,对系统建设运行和维护费用进行估算,对系统建成后可能取得的社会和经济效益进行估计。由于公司XXXX团购网管理系统是作为毕业设计由我们会员自己开发的,在经济上的投入甚微,系统建成之后将为今后实现公司团购网管理系统提供很大的方便,估算新系统的开发费用和今后的运行、维护费用,估计新系统将获得的效益,并将费用与效益进行比较,看是否有利。开发、运行和维护费用主要包括:购买和安装设备的费用:计算机硬件、系统软件、机房、电源、空调等;软件开发费用:若由实习单位的技术人员开发,则该项费用可以计入下面的人员费用一项;人员费用:系统开发人员、操作人员和维护人员的工资、培训费用等;消耗品费用:系统开发所用材料、系统正常运行所用消耗品,例如水、电费,打印纸、软盘、色带等开支。技术可行性要考虑现有的技术条件是否能够顺利完成开发工作,软硬件配置是否满足开发的需求等。团购网管理系统用的是JSP开发语言,调试相对简单,当前的计算机硬件配置也完全能满足开发的需求,因此在技术上是绝对可行的。软件方面:由于目前单机模式相对发展成熟,故软件的开发平台成熟可行,它们速度快、容量大、可靠性能高、价格低,完全能满足系统的需求。运行可行性是对组织结构的影响,现有人员和机构和环境对系统的适应性及人员培训补充计划的可行性。当前我们公司信息化技术已经相当普及,各类操作人员水平都有相当的高度,所以在运行上是可行性的。根据新系统目标来衡量所需的技术是否具备,一般可从硬件、软件的性能要求、环境条件、技术人员水平和数量等方面去考虑和分析,其中开发人员的技术力量应首先考虑能力与水平,并考虑近期内可以培养和发展的技术人员。运行可行性对新系统运行后给现行系统带来的影响(包括组织机构、管理方式、工作环境等)和后果进行估计和评价。同时还应考虑现有管理人员的培训、补充,分析在给定时间里能否完成预定的系统开发任务等。

按上述三方面进行可行性分析、研究后,就可整理并编制出新系统开发的可行性报告,它是总体规划工作的阶段性成果。使用本系统,能使公司加强对资金的管理,对其团购网中商品信息及时反馈。利于公司及时采取经营策略。本系统的开发,是典型的Mis开发,主要是对数据的处理,包括数据的收集,数据的变换,及数据的各种报表形式的输出。采用流行的JSP+SQLServer2000体系,已无技术上的问题。1.7系统开发步骤一般说来,管理信息系统的建立与应用可以划分成总体规划、系统开发和系统运行三个阶段,其中系统开发阶段还可进一步分为系统分析、系统设计和系统实施等工作环节。上述各个阶段排列成一个严格的线性开发序列,在每个工作阶段均产生完整的技术文档作为下一阶段工作的指导和依据,每一阶段都应对文档进行评审,确信该阶段工作已完成并达到要求后才能进入下一阶段,同时在以后的工作中不能轻易改变前面经过评审的成果。上述开发方式的主要优点是便于开发工作的组织和管理,并且可大大降低管理信息系统开发的复杂性。国内外许多系统开发的实例都证明这是一种行之有效的开发方式。国外曾有人对一些软件项目开发各阶段的工作量进行了统计,结果表明,在开发过程中各工作阶段所占全部工作量的比重分别达到系统分析:系统设计:编程:模块调试:系统调试=20%:15%:20%:25%:20%。由此可见,程序编写在开发工作中只占很小比例,而调试工作却占整个开发工作量的一半左右,因此“系统开发就是编程”的习惯说法显然是片面的。另据统计,在建立管理信息系统的三个阶段中,总体规划和系统开发阶段的工作量约占整个工作量的2/3,而运行、维护阶段要占1/3,这说明一个管理信息系统开发后,仍应十分重视它的维护工作,以便使系统不断完善并充分发挥其作用。2开发环境2.1软件工程介绍软件工程是用科学知识和技术原理来定义、开发、维护软件的一门学科。它涉及计算机科学、工程科学、管理科学、数学等领域,计算机科学着重于原理和理论,而软件工程着重于如何建造一个软件系统。软件工程在软件开发过程中占有不可动摇的重要地位,一个软件从开始计划起,到废弃不用止,称为软件生存周期。一般来说,软件生存周包括计划、开发、运行三个时期,每一时期又可分为若干更小的阶段。计划时期的主要任务是分析用户要求,分析新系统的主要目标以及开发该系统的可行性。开发时期要完成设计和实现两大任务具体。具体分为需求分析、概要设计、详细设计、编码、测试。其中编码和测试是软件开发期的最后两个阶段。运行时期是软件生存周期的最后一个时期,软件人员在这一时期的工作,主要是做好软件维护。“新华书店团购网管理系统”虽然只是一个比较小的项目,但是为了做的更规范,也尽量按照软件工程的指导来做,事实上,不管一个多小的工程,都是离不开软件工程的指导思想的。2.2开发环境及工具2.1.1选择JSP2.0作为开发语言JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。

JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。JSP技术的强势:1.一次编写,到处运行。在这一点上Java比PHP更出色,除了系统之外,代码不用做任何更改。

2.系统的多平台支持。基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。相比ASP/PHP的局限性是显而易见的。

3.强大的可伸缩性。从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。4.多样化和功能强大的开发工具支持。这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。2.2.3选择mysql作为后台数据库SMySQL是一个多用户、多线程的SQL数据库,是一个客户机/服务器结构的应用,它由一个服务器守护程序mysqld和很多不同的客户程序和库组成。SQL(StructuredQueryLanguage结构化查询语言)是目前使用最广的并且是标准的数据库语言。SQL语言使得存取或更新信息变得十分容易,你可以直接使用SQL从网站上查询信息。MySQL的快速和灵活性足以满足一个网站的信息管理工作。数据库与用户端之间的接口程序可以使用CGI进行通信。新网ChinaDNS使用的是PHP,使用PHP和MySQL这两样东西加在一起,对于开发数据驱动的网站这项工作而言是最佳组合。PHP是一种用于服务器端执行程序解释的脚本语言。如果你接触过ASP的话,那么您对于在HTML页面中嵌入代码应该是比较熟悉了。PHP代码在服务器一端被解释、执行并转变成普通的HTML页面内容,送给浏览器一端。这种模式使得我们可以用它来完成相当复杂的功能。MySQL的功能特点如下:1、可以同时处理几乎不限数量的用户;2、处理多达50,000,000以上的记录;3、命令执行速度快,也许是现今最快的;4、简单有效的用户特权系统。5、数据类型字段支持大量数据类型是件好事。通常的整数、浮点数、字符串和数字均以多种长度表示,并支持变长的BLOB(BinaryLargeOBject)类型。对?br>字段由自动增量选项,日期时间字段也能很好的表示。MySQL与大多数其他数据库系统不同的是提供两个相对不常用的字段类型:ENUM和SET。ENUM是一个枚举类型,非常类适于Pascal语言的枚举类型,它允许程序员看到类似于'red、'green'、'blue'的字段值,而MySQL只将这些值存储为一个字节。SET也是从Pascal借用的,它也是一个枚举类型,但一个单独字段一次可存储多个值,这种存储多个枚举值的能力也许不会给你一些印象(并可能威胁第三范式定义),但正确使用SET和CONTAINS关键字可以省去很多表连接,能获得很好的性能提高。6、SQL兼容性MySQL包含一些与SQL标准不同的转变,他们的大多数被设计成是对SQL语言脚本语言的不足的一种补偿。然而,另一些扩展确实使MySQL与众不同,例如,LINK子句搜索是自动地忽略大小写的。MySQL也允许用户自定义的SQL函数,换句话说,一个程序员可以编写一个函数然后集成到MySQL中,并且其表现的与任何基本函数如SUM()或AVG()没有什么不同。函数必须被编译道一个共享库文件中(.so文件),然后用一个LOADFUNCTION命令装载。它也缺乏一些常用的SQL功能,没有子选择(在查询中的查询)。视图(View)也没了。当然大多数子查询可以用简单的连接(join)子句重写,但有时用两个嵌套的查询思考问题比一个大连接容易。同样,视图仅仅为程序员隐蔽where子句,但这正是程序员们期望的另一种便利。7、存储过程和触发器MySQL没有一种存储过程(StoredProcedure)语言,这是对习惯于企业级数据库的程序员的最大限制。多语句SQL命令必须通过客户方代码来协调,这种情形是借助于相当健全的查询语言和赋予客户端锁定和解锁表的能力,这样才允许的多语句运行。8、参考完整性(ReferentialIntegrity-RI)MySQL的主要的缺陷之一是缺乏标准的RI机制;然而,MySQL的创造者也不是对其用户的愿望置若罔闻,并且提供了一些解决办法。其中之一是支持唯一索引。Rule限制的缺乏(在给钉字段域上的一种固定的范围限制)通过大量的数据类型来补偿。不简单地提供检查约束(一个字段相对于同一行的另一个字段的之值的限制)、外部关键字和经常与RI相关的“级联删除”功能。有趣的是,当不支持这些功能时,SQL分析器容忍这些语句的句法。这样做目的是易于移植数据库到MySQL中。这是一个很好的尝试,并且它确实未来支持该功能留下方便之门;然而,那些没有仔细阅读文档的的人可能误以为这些功能实际上是存在的。9、安全性自始至终我对MySQL最大的抱怨是其安全系统,它唯一的缺点是复杂而非标准,另外只有到调用mysqladmin来重读用户权限时才发生改变。通常的SQLGRANT/REVOKE语句到最近的版本才被支持,但是至少他们现在有了。MySQL的编写者广泛地记载了其特定的安全性系统,但是它确实需要一条可能是别无它法的学习过程。10、备份和恢复、数据导入/导出强制参考一致性的缺乏显著地简化备份和恢复,单靠数据导入/导出就可完美复制这一功能。LOADDATAINFILE命令给了数据导入很大的灵活性。SELECTINTO命令实现了数据导出的相等功能。另外,既然MySQL不使用原始的分区,所有的数据库数据能用一个文件系统备份保存。数据库活动能被记载。与通常的数据库日志不同(存储记录变化或在记录映像之前/之后),MySQL记载实际的SQL语句。这允许数据库被恢复到失败前的那一点,但是不允许提交(commit)和回卷(rollback)操作。11、连接性MySQL客户库是客户/服务器结构的C语言库,它意味着一个客户能查询驻留在另一台机器的一个数据库。然而MySQL真正的强项处于该库中的语言“包装器(wrapper)”,Perl、Pathon和PHP只是一部分。Apache的Web服务器也有许多模块例如目录存取文件等允许各种各样的Apache配置信息(例如目录存取文件)使用MySQL,应用程序接口简单、一致并且相但完整。另外、多平台ODBC驱动程序可自由获得。12、未来MySQL的开发继续以快速进行着。事实上,开发步伐对大多数开放源代码是一种挑战。本文提到的几个抱怨中有很多新功能正在解决,然而,我将不对还没确实存在的特征做评价。开发者们向我表明了在未来的开发中把增加查询功能和提高查询速度作为最高优先级。13、总结Mysql是数据库领域的中间派。它缺乏一个全功能数据库的大多数主要特征,但是又有比类似Xbase记录存储引擎更多的特征。它象企业级RDBMS那样需要一个积极的服务者守护程序,但是不能象他们那样消费资源。查询语言允许复杂的连接(join)查询,但是所有的参考完整必须由程序员强制保证。MySQL在Linux世界里找到一个位置-提供简洁和速度,同时仍然提供足够的功能使程序员高兴。数据库程序员将喜欢其查询功能和广泛的客户库,数据库管理员会觉得系统缺乏主要数据库功能,他们会发觉它对简单数据库(在不能保证购买大牌数据库时)是有价值的。2.3JSP数据库开发技术2.3.1.JDBC开发数据库JDBC(JavaDataBaseConnectivity,java数据库连接)是一种用于执行SQL语句的JavaAPI,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JDBC为工具/数据库开发人员提供了一个标准的API,据此可以构建更高级的工具和接口,使数据库开发人员能够用纯JavaAPI编写数据库应用程序,同时,JDBC也是个商标名。

有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBCAPI,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix数据库又编写另一个程序等等,程序员只需用JDBCAPI写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。

Java具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是Java应用程序与各种不同数据库之间进行对话的方法。而JDBC正是作为此种用途的机制。JDBC扩展了Java的功能。例如,用Java和JDBCAPI可以发布含有applet的网页,而该applet使用的信息可能来自远程数据库企业也可以用JDBC通过Intranet将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有Windows、Macintosh和UNIX等各种不同的操作系统)。随着越来越多的程序员开始使用Java编程语言,对从Java中便捷地访问数据库的要求也在日益增加。MIS管理员们都喜欢Java和JDBC的结合,因为它使信息传播变得容易和经济。企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。新程序的开发期很短。安装和版本控制将大为简化。程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。对于商务上的销售信息服务,Java和JDBC可为外部客户提供获取信息更新的更好方法。2.3.2.BDE开发数据库BDE是负责用户和数据库交流的中间媒介。事实上,应用程序是通过数据访问组件和BDE连接,再由BDE去访问数据库,完成对数据库的操作,而并非直接操作BDE。这样用户只需关心JSP中的数据组件即可,不用直接和BDE打交道。数据库组件主要分为两类:“数据访问组件”和“数据控制组件”,它们和数据库的关系如图2-1所示:图2-1数据库组件与数据库关系图其中,数据访问组件在JSP组件面板的DataSQL组件页上。其中的Table、Query和Storedproc三个控件,它们称为“数据集组件”,用于和数据库连接。这些组件功能如下:1.DataSource控件是数据集组件和数据控制组件的连接媒介。数据控制组件是用户操作数据库中数据的界面,只有通过DataSource控件才能和数据集组件连接,从而对数据进行显示、修改、维护等操作。2.Table控件是通过数据库引擎——BDE来存取数据库中的数据的。通过BDE将用户对数据库的操作(如添加、删除、修改等)传递给数据库。3.Query控件是利用SQL(StructuredQueryLanguage,结构化查询语言)通过BDE来操作数据库的,和Table控件完成的功能相似,它只是采用了SQL来实现。4.Storedproc控件是通过BDE对服务器数据库进行操作的,常用于客户/服务器(C/S)结构的数据库应用程序。5.DataBase控件一般用于建立远程的数据库服务器——客户/服务器结构的数据库应用程序和数据库之间的连接。6.Session控件是用于控制数据库应用程序和数据库连接的,主要用于复杂功能的实现,例如:多线程数据库程序设计。而数据控制组件也可以称为数据显示组件或数据浏览组件。它们的主要功能是与数据访问组件相配合,提供给用户一个对数据进行浏览、编辑等操作的界面。数据控制组件在组件板上的DataControl页上。从上图可以看出,BDE负责与具体的数据库相连,通过BDE,几乎可以操作目前所有类型的数据库。但是BDE也有很大的缺点,当然,在对于一些比较简单的数据库,例如ASCII,BDE可以直接访问。另外它也可以通过一些相应的驱动,访问特定的数据库,例如通过DAO访问SQL数据库。不同类型的驱动程序都具有不同的特征,主要是表现在:数据库的安全性,事务,数据字典和完整性验证,存储过程和触发器。对于不能直接支持的数据库,BDE还可以连接到ODBC,通过ODBC进行访问,所以BDE有时效率很低。在JSP提供的所有数据库访问方式中,BDE的历史最长,因此提供的功能也最多,包括大量的和数据库交互的API。使用它访问PARJDBCX和DBASE时效率最高。同时,针对Oracle的访问也有专门的优化,效率也最高。JSP目前正逐步放弃BDE,已经不再为BDE增加新的功能,只是对现有的功能进行维护,排除BUG。BDE包含如下组件:TDATABASE,TTABLE,TQUERY,TSTOREDPROC,TSESSION,TBATCHMOVE,TUPDATESQL,TNESTEDTABLE。2.4体系结构2.4.1系统体系机构的一般阐述MIS系统平台结构模式大体上分为4种:主机终端模式、文件服务器模式、客户机/服务器模式(Clint/Server,简称C/S)、web浏览器/服务器模式(Browser/Server,简称B/S)。主机终端模式由于硬件选择有限,已被逐步淘汰。而文件服务器模式由于硬件选择有限,硬件投资得不到保证,已被逐步淘汰。而文件服务器模式只适合小规模的局域网,对于用户多,数据量大的情况就会产生网络瓶颈,特别是在互联网上不能满足用户要求。因此,现代企业级平台结构模式应主要考虑C/S模式和B/S模式。2.4.2C/S模式与B/S模式的比较分析C/S系统又被称作分布式计算系统,它的含义是程序的数据处理并不像通常在基于小型机或基于主机的计算机系统(终端方式)中那样在单个的计算机上发生,而是把程序的不同部分在多台计算机上同时运行。例如,对于SQLServer来讲,将数据存放在服务器计算机上,客户端界面作为程序的另一部分(完成商业逻辑和显示逻辑)存在于客户端桌面计算机上。客户/服务器系统的这两个部件通过网络连接相互通信,并且可以扩展到任意规模。SQLServer是一个真正的客户/服务器关系型数据库系统。它使企业可以设计出能够满足不断改变的信息需求的分布式数据库系统。客户端通过网络向服务器发送SQL语句,服务器返回客户端结果集。对于Client/Server模式而言,其主要特点为:1.具有成熟的设计开发方法和工具。经过多年的研究和积累,基于Client/Server模式的系统设计开发方法已被用户所熟悉和掌握。并且,众多的数据库和软件生产商提供了各种可是化工具和编程语言来支持它的开发。相对而言,目前的基于Browse/Server模式的应用及其开发方法仍然处于发展阶段。2.交互性强,界面友好。各个Client机上运行的应用程序是针对待定的用户和任务设计,同时具有在线帮助和出错提示等辅助功能。这些优势是Browse/Server模式所不具备的。3.数据通信量小,安全性高。Client/Server模式中前后台传递的仅仅是查询请求SQL语言或查询结果,而不象Browse/Server模式中在前台的Browse和后台Server之间传递程序或主页模块:Client/Server模式一般采用基于局域网点对点式的结构和安全性较好的网络协议,而Browse/Server是一种开放式的结构,面向众多的用户,其防火墙技术并不能完全屏蔽网络黑客和内部人员对系统的恶意侵袭。C/S模式主要由客户应用程序(Client)、服务器管理程序(Server)和中间件(middleware)三个部件组成。客户应用程序是系统中用户与数据进行交互的部件。服务器程序负责有效地管理系统资源,如管理一个信息数据库,其主要工作是当多个客户并发地请求服务器上的相同资源时,对这些资源进行最优化管理。中间件负责联结客户应用程序与服务器管理程序,协同完成一个作业,以满足用户查询管理数据的要求B/S模式即Brower/Server结构模式,是基于Internet/Intranet的结构模式,分为三层,第一层为表示层,用户通过浏览器完成和后台的交互及最终查询结果的输出功能。第二层为具有ODBC接口的WEB服务器,属功能层,主要利用服务器完成客户的应用功能。第三层为数据层,根据客户的请求独立地进行各种运算。即前台客户端采用浏览器,中间件服务器为Web服务器,后台为数据库服务器。此种结构由客户端在Web页面发出请求至WebSever,再由WebSever向数据库服务器发出请求,而最后中间件服务器接受到数据库服务器的应答后,最终返回给客户端的仍然是页面形式。这样实现了客户端不直接和数据库服务器发生关系,保证了数据安全性。对Browse/Server模式而言,其主要特点为:1.其在逻辑上采用了3层结构,它在前台Browse和后台Server之间增加了一层WebServer层,所有的应用程序模块都安装在它上面,在Browse上只需安装一个通用的浏览器软件,因此,这种模式简化了客户端,使用户的操作更加方便。2.开放性好,Intranet/Intenet完全兼容。3.扩展性好,根据发展需要,可对系统随时进行扩展,降低了系统的开发和维护的开销2.4.3B/S模式的优势首先它简化了客户端。它无需象C/S模式那样在不同的客户机上安装不同的客户应用程序,而只需安装通用的浏览器软件。这样不但可以节省客户机的硬盘空间与内存,而且使安装过程更加简便、网络结构更加灵活。再次,它使用户的操作变得更简单。对于C/S模式,客户应用程序有自己特定的规格,使用者需要接受专门培训。而采用B/S模式时,客户端只是一个简单易用的浏览器软件。无论是决策层还是操作层的人员都无需培训,就可以直接使用。B/S模式的这种特性,还使MIS系统维护的限制因素更少。最后,B/S特别适用于网上信息发布,使得传统的MIS的功能有所扩展。这是C/S所无法实现的。而这种新增的网上信息发布功能恰是现代企业所需的。这使得企业的大部分书面文件可以被电子文件取代,从而提高了企业的工作效率,使企业行政手续简化,节省人力物力。鉴于B/S相对于C/S的先进性,B/S逐渐成为一种流行的MIS系统平台。各软件公司纷纷推出自己的Internet方案,基于Web的财务系统、基于Web的ERP。一些企业已经领先一步开始使用它,并且收到了一定的成效。B/S模式的新颖与流行,和在某些方面相对于C/S的巨大改进,使B/S成了MIS系统平台的首选,也使人忽略了B/S不成熟的一面,以及C/S所固有的一些优点。下面让我们来看C/S相对于B/S的一些优势。2.4.4C/S模式的优势首先,交互性强是C/S固有的一个优点。在C/S中,客户端有一套完整的应用程序,在出错提示、在线帮助等方面都有强大的功能,并且可以在子程序间自由切换。B/S虽然由JavaScript、JSPScript提供了一定的交互能力,但与C/S的一整套客户应用相比是太有限了。其次,C/S模式提供了更安全的存取模式。由于C/S是配对的点对点的结构模式,采用适用于局域网、安全性比较好的网络协议(例如:NT的NetBEUI协议),安全性可以得到较好的保证。而B/S采用点对多点、多点对多点这种开放的结构模式,并采用TCP/IP这一类运用于Internet的开放性协议,其安全性只能靠数据服务器上管理密码的数据库来保证。现代企业需要有开放的信息环境,需要加强与外界的联系,有的还需要通过Internet发展网上营销业务,这使得大多数企业将他们的内部网与Internet相连。由于采用TCP/IP,他们必须采用一系列的安全措施,如构筑防火墙,来防止Internet的用户对企业内部信息的窃取以及外界病毒的侵入。最后,采用C/S模式将降低网络通信量。B/S采用了逻辑上的三层结构,而在物理上的网络结构仍然是原来的以太网或环形网。这样,第一层与第二层结构之间的通信、第二层与第三层结构之间的通信都需占用同一条网络线路。而C/S只有两层结构,网络通信量只包括Client与Server之间的通信量。所以,C/S处理大量信息的能力是B/S所无法比拟的。2.5开发方法整体选择根据用户的实际情况和需要,最终决定采用在Windowsxp下使用JSP+SQL开发,采用B/S结构,使用JDBC连接数据库。这样的好处是:1.使用JSP+SQL灵活方便,可扩充性、可移植性较好。2.JDBC与SQL同为微软开发,兼容性好,同时存取效率高,且较成熟,目前许多数据库应用系统都采用这种方式。3.采用B/S结构是能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。对应的优点就是客户端响应速度快。JDBC是Microsoft主要数据存储技术,JDBC主要让应用程序或WEB应用程序存取各种不同的数据源。JDBC封装了OLE-DB复杂的接口,以极为简单的COM接口存储数据,简化了程序员数据存取的工作。JDBC架构图如图2-2所示:OLEDBOLEDBJDBCApplication/BrowserJDBCSQLDATA图2-2JDBC架构图3系统分析3.1模块设计该系统平台从功能模块上分为五大模块:团购商品管理模块、商品查询模块,会员管理模块和基础维护模块,普通用户可以使用这个系统进行注册、查询、购买,而系统的管理员可以对商品的类别和详细信息进行全面的管理,以及查询用户的购买情况,,还可以对系统的信息进行管理。前台:今日团购:对日期在今日的商品信息进行团购信息的发布。往期团购:对以往的商品信息进行团购信息的发布。用户注册:对用户信息进行管理,注册等。我的信息:查看我的个人信息,并可以在线修改。网站留言板:对网站提出一些意见和建议,并进行留言。商品评价:对网站的团购商品进行评价。后台管理:个人信息管理:对个人信息的密码等进行修改设置。团购商品管理:对商品的团购信息进行添加以及对团购信息进行管理。会员订单管理:对注册的会员信息进行管理。并对用够购买商品的订单进行管理。系统公告管理:对系统的公告信息进行添加以及对公告信息进行管理。留言板:对网站的留言板信息进行在线的修改管理。商品评价管理:对前台用户的评价信息进行查看,并可以删除评价信息。3.2功能模块图本题要开发的团购网站系统的主要功能模块如图3-1所示:团购网站系统用户注册登陆系统功能模块商品查询功能模块团购商品管理模块团购商品信息评价管理团购网站系统用户注册登陆系统功能模块商品查询功能模块团购商品管理模块团购商品信息评价管理留言公共管理模块会员管理模块图3-1团购网馆管理系统平台各个功能模块图3.3数据库设计概述计算机信息系统以数据库为核心,在数据库管理系统的支持下,进行信息的收集、整理、存储、检索、更新、加工、统计和传播等操作。对于数据库应用开发人员来说,为使现实世界的信息流计算机化,并对计算机化的信息进行各种操作,就是如何利用数据库管理系统、系统软件和相关硬件系统,将用户的要求转化成有效的数据结构,并使数据库结构易于实现用户新的要求的过程。确切的说,数据库设计是指对于一个给定的应用环境,提供一个确定最优数据模型与处理模式的逻辑设计,以及一个确定数据库存储结构与存取方法的物理设计,建立起既能反映现实世界信息和信息联系,满足用户数据要求和加工要求,又能被某个数据库管理系统所接受,同时能实现系统目标,并有效存取数据的数据库。3.4数据库设计周期根据软件工程的思想,数据库设计的周期可以划分为六个阶段:规划阶段:确定开发的总目标,给出计划开发的软件系统的功能、性能以及可靠性等方面的设想。需求分析阶段:认真细致地了解用户对数据的加工要求,确定系统的功能与边界。本阶段的最终结果能够提供一个可作为设计基础的系统说明书,包括对软硬件环境的要求和一整套完善的数据流程图。设计阶段:把需求分析阶段所确定的功能细化,主要工作是概念设计阶段、逻辑设计阶段、物理设计阶段,然后,对每个阶段内部设计详细的流程。程序编制阶段:以一种或几种特定的程序设计语言表达上一阶段确定的各模块控制流程。程序编制时应遵循结构化程序设计方法。调试阶段:对已编好的程序进行单元调试(分调),整体调试(联调)和系统测试(验收)。运行和维护阶段:是整个设计周期最长的阶段,其工作重点是收集和记录系统实际运行的数据。在运行中,必须保持数据库的完整性,必须有效地处理数据故障和进行数据库恢复。同时解决开发过程的遗留问题,改正错误进行功能完善。数据是系统的灵魂所在,整个系统的运行基础是系统数据库,因而数据库的设计质量对整个系统的功能与效率有很大影响,所以我们在进行数据文件和数据库设计时,充分考虑了数据存储的完整性、可靠性、安全性和数据的一致性及便于操作等方面的问题。一个完整的信息系统的建设并不是一步到位的。在实际的建设过程中,在时间上各子系统有先建、后建之分,在开发人员的分配上有他建、我建之别,这就涉及到各子系统之间的兼容问题。在现有的软件水平下,追求应用系统间的相互兼容存在困难,但对于数据的兼容也就是数据的共享来说,既非常重要,又相对应用系统的兼容较易实现。在提高数据共享性方面,可主要从数据的一致性方面来考虑。在我们的数据库系统建设中,着重考虑了以下两个标准保证数据的一致性:字段标准:字段标准不统一是造成数据库难以共享的一个主要原因,因为字段的设计处于数据库设计的最底层,或者可以说是最基本的一层,如果这一层都不能统一的话,会直接影响到数据库中数据的共享。代码标准:代码的引入为保持数据库中数据的一致性提供了一个重要手段。

此外本数据库设计主要遵循以下原则:数据库文件的实用性,数据库文件的安全性,数据库文件的独立性,节省磁盘空间。数据库设计是要在一个给定的应用环境(DBMS)中,通过合理的逻辑设计和有效的物理设计,构造较优的数据库模式、子模式,建立数据库和设计应用程序,满足用户的各种信息需求。物理结构设计的原则如下:1.尽可能的减少数据冗余和重复。2.结构设计与操作设计相结合。

3.数据结构具有相对的稳定性。基于以上设计原则,本系统设计了一个数据库,包含基本信息表(如员工类别、存货等)及几个实体联系建模后的表(如散件销售、整机销售等)。为了加快系统访问的速度把这些表放在一个数据库中。3.5SQL查询语言及使用SQL语言是结构化语言(StructureQueryLanguage)的缩写,是一种用于数据库查询和编程的语言,已经成为关系型数据库普遍使用的标准,使用这种标准数据库语言对程序设计和数据库的维护都带来了极大的方便,广泛地应用于各种数据查询。JSP和其他的应用程序包括SQLserver2000、Foxpro、Orcale、SQLSEVER2000等都支持SQL语言。SQL语言的常用操作有:建立数据库数据表(CREATETABLE),如本系统中的学生及成绩备份就用到该语句;从数据库中筛选一个记录集(SELECT),这是最常用的一个语句,功能强大,能有效地对数据库中一个或多个数据表中的数据进行访问,并兼有排序、分组等功能;在数据表中添加一个记录(INSERT);删除符合条件的记录(DELETE);更改符合条件的记录(UPDATE);JSP中的数据库操作对象都提供了对SQL语句的支持。其一般的用法是以JSP的各种控件接收用户对数据库访问的请求,在事件响应程序代码中将其转换成对数据库的SQL查询语句,并以字符串的形式存在,然后将其传递给相应的数据库操作对象,最终完成对数据库的访问。3.6系统数据分析通过对团购网管理系统的分析,可以得出该系统涉及三个实体:会员、商品、工作人员。通过对各实体数据关系的整理,我们可以画出如下E-R图如图3-2所示:会员会员购买浏览购买浏览管理员商品商品发布管理员商品商品发布图3-2系统E-R图这些实体涉及的数据项有:会员:用户名、姓名、性别、年龄、联系方式等。商品:商品编号、商品名称、简介、图片、价格、折扣。管理员:登陆编号、登陆密码。实体之间的联系涉及的数据项有:3.7系统数据库设计1商品信息数据表商品信息数据表的主要功能在于商品发布以及保存在库商品的主要信息和相关信息,包括:‘商品编号’、‘商品名称’、‘简介’、‘图片’、‘价格’以及‘折扣’.商品信息数据表如表4-1所示:表4-1商品信息数据字段名称字段意义字段类型键值约束备注goods_id商品idNUMBERPRIMARYKEYgoods_tuangoushijian团购时间VARCHAR2(16)Nullgoods_name商品名城VARCHAR2(16)goods_miaoshu介绍VARCHAR2(16)goods_pic图片VARCHAR2(16)goods_shichangjia价格NUMBERgoods_zhekou折扣率VARCHAR2(16)goods_del删除标志VARCHAR2(16)2.会员信息数据表会员信息数据表的主要功能是新会员的注册以及保存已注册的会员相关信息。它包括:‘会员编号’、‘会员姓名’‘会员性别’、‘会员年龄’’、‘会员联系方式’’、‘会员住址’。会员信息数据表如表4-2所示:表4-2会员信息数据表字段名称字段意义字段类型键值约束备注user_id会员idNUMBERPRIMARYKEYuser_name账号VARCHAR2(16)Nullguser_pw密码VARCHAR2(16)user_realname真实姓名VARCHAR2(16)user_address地址VARCHAR2(16)user_sex性别VARCHAR2(16)user_tel联系方式VARCHAR2(16)goods_del删除标志VARCHAR2(16)3.订单信息数据表订单信息数据表的主要功能是进行有关订单信息的处理,它包括:‘订单编号’、‘订单日期’、‘订单状态’、‘送货时间’、‘付款方式’、‘会员编号’、‘定金金额’和‘商品数量’。订单信息数据表如表4-3所示:表4-3订单信息数据表字段名称字段意义字段类型键值约束备注order_id订单idNUMBERPRIMARYKEYorder_bianhao编号VARCHAR2(16)Nullorder_date日期VARCHAR2(16)order_zhuangtai订单状态VARCHAR2(16)order_songhuodizhi送货地址VARCHAR2(16)order_fukuangfangshi付款方式VARCHAR2(16)goods_id商品NUMBERorder_user_id删除标志VARCHAR2(16)4.团购商家信息数据表团购商家数据表的主要功能是对团购商家的信息进行查询。它包括:‘商家名称’、‘联系人’、‘联系方式’、‘联系地址’和‘备注’。团购商家信息数据表如表4-4所示:表4-4团购商家信息数据表字段名称字段意义字段类型键值约束备注id编号NUMBERPRIMARYKEYlianxiren联系人VARCHAR2(16)Nulltel电话VARCHAR2(16)telqita其他联系方式VARCHAR2(16)dizhi地址VARCHAR2(16)name商家名称VARCHAR2(16)tuangouleixing团购类型VARCHAR2(16)del删除标志VARCHAR2(16)5.公告信息数据表公告信息数据表的主要功能是保存管理员发布的公告信息。它包括:‘公告标题’和‘公告内容’公告信息数据表如表4-5所示:表4-5公告信息数据表字段名称字段意义字段类型键值约束备注id编号NUMBERPRIMARYKEYtitle公告标题VARCHAR2(16)Nullcontent公告内容VARCHAR2(16)4详细设计4.1首页今日团购信息首页采用了红色为主的界面,主要有今日团购,往日团购等信息。4.2今日团购信息对系统日期和团购日期一致的商品信息进行发布显示,并能在线进行商品的抢购。4.3用户注册界面用户注册,用户可以在线实现注册功能,包括用户名,密码,姓名,性别,住址,电话等。4.4用户登录界面当系统登陆时,首先出现的是一个用户权限登陆的界面,权限设置主要是维护系统的安全性和完整性。拥有管理员权限的操作员能对其他操作员进行相应的权限设置,没有权限的操作员不能对相应的窗口进行操作。如图4-1所示:图4-1登录主界面这是进入系统时的身份验证,用户首先要从软件开发者那里申请用户名和密码,才可以进入。该过程的流程图如图4-2所示:输入姓名及口令输入姓名及口令记录在口令表吗中进入主界面继续吗结束开始提示信息NYN图4-2登录界面流程图4.5添加团购商品信息身份验证通过以后,点击可以使用系统的基本信息管理界面,这是管理员主要的输入信息部分,它即可以对数据进行输入。填写好各项信息后,单击保存按钮,系统将对这些信息进行处理。界面如图4-3所示:图4-3添加商品界面4.6团购订单管理对团购商品进行订单管理,界面如图4-4所示:图4-4团购订单4.7管理员设置本系统增加系统管理员以及修改当前管理员密码等功能。添加管理员功能如图4-5所示:图4-5添加管理员界面4.8注册会员管理点击可以使用系统的注册管理界面,这是管理员主要的输入信息部分,它即可以对数据进行输入。填写好各项信息后,单击保存按钮,系统将对这些信息进行处理。界面如图4-6所示:图4-6注册会员管理界面4.9商品评价信息管理这是本系统对商品的基本的评价信息进行管理。界面如图4-7所示:图4-7商品评价信息管理界面5系统调试与测试5.1程序调试在设计系统的过程中,存在一些错误是必然的。对于语句的语法错误,在程序运行时自动提示,并请求立即纠正,因此,这类错误比较容易发现和纠正。但另一类错误是在程序执行时由于不正确的操作或对某些数据的计算公式的逻辑错误导致的错误结果。这类错误隐蔽性强,有时会出现,有时又不出现,因此,对这一类动态发生的错误的排查是耗时费力的。5.2程序的测试5.2.1测试的重要性及目的测试的重要性:软件的测试在软件生命周期中占据重要的地位,在传统的瀑布模型中,软件测试学仅处于运行维护阶段之前,是软件产品交付用户使用之前保证软件质量的重要手段。近来,软件工程界趋向于一种新的观点,即认为软件生命周期每一阶段中都应包含测试,从而检验本阶段的成果是否接近预期的目标,尽可能早的发现错误并加以修正,如果不在早期阶段进行测试,错误的延时扩散常常会导致最后成品测试的巨大困难。事实上,对于软件来讲,不论采用什么技术和什么方法,软件中仍然会有错。采用新的语言、先进的开发方式、完善的开发过程,可以减少错误的引入,但是不可能完全杜绝软件中的错误,这些引入的错误需要测试来找出,软件中的错误密度也需要测试来进行估计。测试是所有工程学科的基本组成单元,是软件开发的重要部分。自有程序设计的那天起测试就一直伴随着。统计表明,在典型的软件开发项目中,软件测试工作量往往占软件开发总工作量的40%以上。而在软件开发的总成本中,用在测试上的开销要占30%到50%。如果把维护阶段也考虑在内,讨论整个软件生存期时,测试的成本比例也许会有所降低,但实际上维护工作相当于二次开发,乃至多次开发,其中必定还包含有许多测试工作。在实践中,软件测试的困难常常使人望而却步或敷衍了事,这是由于对测试仍然存在一些不正确的看法和错误的态度,这包括:1.认为测试工作不如设计和编码那样容易取得进展难以给测试人员某种成就感;2.以发现软件错误为目标的测试是非建设性的,甚至是破坏性的,测试中发现错位是对责任者工作的一种否定;3.测试工作枯燥无味,不能引起人们的兴趣;4.测试工作是艰苦而细致的工作;5.对自己编写的程序盲目自信,在发现错误后,顾虑别人对自己的开发能力的看法。这些观点对软件测试工作是极为不利的,必须澄清认识、端正态度,才可能提高软件产品的质量。测试的目的:如果测试的目的是为了尽可能多地找出错误,那么测试就应该直接针对软件比较复杂的部分或是以前出错比较多的位置。1.软件测试是为了发现错误而执行程序的过程;2.测试是为了证明程序有错,而不是证明程序无错误;3.一个好的测试用例是在于它能发现至今未发现的错误;4.一个成功的测试是发现了至今未发现的错误的测试。这种观点可以提醒人们测试要以查找错误为中心,而不是为了演示软件的正确功能。但是仅凭字面意思理解这一观点可能会产生误导,认为发现错误是软件测试的唯一目,查找不出错误的测试就是没有价值的,事实并非如此。首先,测试并不仅仅是为了要找出错误。通过分析错误产生的原因和错误的分布特征,可以帮助项目管理者发现当前所采用的软件过程的缺陷,以便改进。同时,这种分析也能帮助我们设计出有针对性地检测方法,改善测试的有效性。其次,没有发现错误的测试也是有价值的,完整的测试是评定测试质量的一种方法。5.2.2测试的步骤与开发过程类似,测试过程也必须分步骤进行,每个步骤在逻辑上是前一个步骤的继续。大型软件系统通常由若干个子系统组成,每个子系统又由若干个模块组成。因此,大型软件系统的测试基本上由下述几个步骤组成:1.模块测试在这个测试步骤中所发现的往往是编码和详细设计的错误。2.系统测试在这个测试步骤中发现的往往是软件设计中的错误,也可能发现需求说明中的错误。3.验收测试在这个测试步骤中发现的往往是系统需求说明书中的错误。5.2.3测试的主要内容为了保证测试的质量,将测试过程分成几个阶段,即:代码审查、单元测试、集成测试、确认测试和系统测试。1.单元测试单元测试集中在检查软件设计的最小单位—模块上,通过测试发现实现该模块的实际功能与定义该模块的功能说明不符合的情况,以及编码的错误。2.集成测试集成测试是将模块按照设计要求组装起来同时进行测试,主要目标是发现与接口有关的问题。如一个模块与另一个模块可能有由于疏忽的问题而造成有害影响;把子功能组合起来可能不产生预期的主功能;个别看起来是可以接受的误差可能积累到不能接受的程度;全程数据结构可能有错误等。3.确认测试确认测试的目的是向未来的用户表明系统能够像预定要求那样工作。经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是确认测试的任务,即软件的功能和性能如同用户所合理期待的那样。4.系统测试软件开发完成以后,最终还要与系统中其他部分配套运行,进行系统测试。包括恢复测试、安全测试、强度测试和性能测试等。单独对系统的测试主要从以下几方面入手:1.功能测试:测试是否满足开发要求,是否提供设计所描述的功能,是否用户的需求都得到满足。功能测试是系统测试最常用和必须的测试,通常还会以正式的软件说明书为测试标准。2.强度测试及性能测试:测试系统能力最高实际限度,即软件在一些超负荷情况下功能实现的情况。3.安全测试:验证安装在系统内的保护机构确实能够对系统进行保护,使之不受各

温馨提示

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

评论

0/150

提交评论