毕业论文.doc

ASP+ACCESS软件信息发布系统设计(源代码+论文+开题报告+任务书+答辩PPT)

收藏

资源目录
跳过导航链接。
压缩包内文档预览:(预览前20页/共70页)
预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图 预览图
编号:438928    类型:共享资源    大小:9.35MB    格式:RAR    上传时间:2015-06-03 上传人:小*** IP属地:福建
20
积分
关 键 词:
asp access 软件 信息 发布 系统 设计 源代码 论文 开题 报告 讲演 呈文 任务书 答辩 ppt
资源描述:
ASP+ACCESS软件信息发布系统设计(源代码+论文+开题报告+任务书+答辩PPT),asp,access,软件,信息,发布,系统,设计,源代码,论文,开题,报告,讲演,呈文,任务书,答辩,ppt
内容简介:
软件信息发布系统的设计与实现- 1第一章 课题认识1.1 课题背景随着计算机及网络技术的飞速发展,Internet/ Intranet 应用在全球范围内日益普及,当今社会正快速向信息化社会前进,信息自动化的作用也越来越大,并且信息已成为世界三大资源之一,并成为我们日常生活中必不可少的部分,信息化已成为社会发展的一个必然趋势,信息化水平也是科学技术水平和经济发展程度的重要标志。众所周知,信息管理活动从手工记录到计算机存储,从平面文件到关系型数据库,从单机单用户数据库访问模式到客户/服务器模式,从客户/服务器模式到浏览器/服务器,信息管理的技术越来越先进、科学和客观。同时,可管理的信息容量也越来越大,更适应信息膨胀时代的要求。然而软件也应用于各个领域并在迅速的发展中,随着当今社会信息化的日新月异的发展,计算机应用已经渗透到日常工作的许多方面无论是其自身还是所发挥的作用,计算机都标志着一种高科技、高效率和高水平。在信息的海洋中,软件信息在整个信息体系中起着举足轻重的作用。因此为了能让更多的软件使用者能获得最全面的软件信息,能用上最好的软件,从而使我们从繁杂的事务中解放出来,提高了我们的工作效率。为此,有必要介绍一下如何将软件信息发布,充分理解软件信息发布系统设计意义。1.2 软件发布系统简介与现状1.2.1 软件发布模式软件发布模式是指软件从开发阶段转入运行阶段的方式。传统的软件发布模式具有一条非常明晰的分隔线,开发者编制完软件后,得到的只是自身能理解和使用的源代码资源,必须通过编译、连接等过程生成可执行代码,以此做为最终产品提供给用户1。这种模式存在以下问题:当开发者根据需求变化修改得到新的源码时,并不意味着一个新的最终产品已经形成,必须通过编译和连接等手段才能得到可执行系统;软件信息发布系统的设计与实现2软件升级时,必须手工更新到每一个用户,对于企业级应用,这将是一种极其繁重的高成本工作;对于不同工作组的用户,一般是通过权限管理来控制对功能的访问,但由于软件中包含了所有功能,恶意用户可能通过破解或者其它手段进行间接访问,导致安全漏洞。由此可见,传统软件发布模式体现了开发者和使用者的产品形态,在需要变化频繁的大型应用系统中,对于诸如瀑布式、叠代式和快速原型法等多种要求反复循环的软件设计方法,他不可能提供良好的支持。由于传统软件发布模式的弱点,使得基于 ASP 和 HTML 语言的 WWW 软件开发平台,在诸如电子商务等因特网 B/S 这类可以看作是需求变化极端的应用开发中占居了主导地位2。WEB 应用的发布思路与传统软件相反。开发者编写得到的产品(HTML,页面)就是用户可以直接使用的最终产品;同时,软件的功能由驻留在服务器上的页面组成,用户需要执行某项功能时,通过浏览器自动下载功能页面。开发者和用户处于信息共享的地位,软件的变化一旦实现,就可以直接地反映到客户端。显然,软件发布模式于软件系统的开发和运行有着理论和实际的意义,应该吸收WEB 发布模式的优点,实现软件信息全生命周期内的共享,以提高软件系统动态调整、并行开发的可能性,并降低软件发布代价,提高系统安全性。20 世纪 90 年代伴随着信息高速公路的兴建而提出来的。美国克林顿政府于 1993年 9 月正式提出建设“国家信息基础设(NationalInformation Infrastructure,简称NII),俗称“信息高速公路”(Information Superhighway)的计划,其核心是发展以Internet 为核心的综合化信息服务体系和推进信息技术(Information Technology,简称 IT)在社会各领域的广泛应用,信息网络化快速带动了各个行业在网上将自己的信息发布出去。软件也不例外,现今国内软件业迅猛发展。为了能让软件开发爱好者开发的软件能够迅速发布出去,有必要实现软件网络化。1.2.2 发布的特征基于Internet的软件发布模式:根据客户端和服务器端应用模式的不同,基于网络的发布可以分为C/S和B/S结构。软件信息发布系统的设计与实现3对于C/S结构,发布者在服务器运行服务器端软件,并保持其状态,而使用者需安装软件发布商所提供的专用客户端,并按照发布商的说明完成客户机的设置工作。安装和运行过程有所不便。对于B/S结构,软件的发布可以有两种方式:(1)在服务器端发布,发布者制作组件并对组件注册,组件提供COM接口,供程序调用,如ASP就可以在网页中对组件进行调用,使客户端浏览者通过服务器完成计算或其他功能3。(2)在客户端发布,通过访问企业网站,浏览者的浏览器自动下载已将ActiveX控件和需要的功能链接库打包的数据文件,检查并登记软件发行企业的数字签名,然后解开该压缩包,根据包内的配置文件内脚本的安全性,自动完成客户端软件的安装和设置,并在网页的相应位置显示ActiveX控件(企业软件界面)供用户操作。以上B/S结构软件的两种发行方式可以混合使用,完成功能部件和ActiveX控件的注册,最后,检查并完成网络交互的复杂功能。1.2.3 软件信息化现状 计算机拥有率和网络覆盖率及网络传输技术水平提高,为企业系统集成、资源整合、工作协同、信息共享,消除“信息孤岛”等,奠定了一定的物质技术基础。企业接入网基本每百人拥有计算机 7 台,许多企业管理人员达到人均 1 台的水平,接近国外先进水平;接入网络的计算机已占总数的 68.4;二是大多数企业建立了内部网、外部网、企业门户网站。各类网络的覆盖率和业务应用范围加大,已支持到企业的各个层面,尤其是企业的管理部门和核心业务;三是大多数企业的网络接入方式都达到了一定的先进水平,带宽加大。77.7的企业内部网主干带宽都实现 100 兆至 1000 兆;76.4的企业桌面带宽达到 10 兆至 100 兆;大多数企业外部网接入访问带宽在 1 兆以上,达到高速传输通道水平。信息优势是企业在未来市场竞争中生存和立足之本。所谓信息优势并不是指企业拥有多少信息,而是指企业拥有多大的宣传商品信息、获取关键市场分析、经营状况和决策支持以及新产品开发信息的能力。这些信息优势可以从以上各种不同的角度得到,而网络为企业提供了一种全新的方式,谁运用得恰到好处,谁就有可能占据先机。软件信息发布系统的设计与实现4 随着网络带宽的逐步扩大,网站已经成为企业信息系统中不可或缺的一个节点。这个信息节点与众不同的地方就在于:它会成为企业信息释放与收集最有效的工具,从而成为企业及产品对外的主要窗口。充分利用网站展示信息的能力,将企业的商务信息有序化,通过网站有效地传播出去。同时,借助网站的互动能力广泛地收集受众的反馈信息,并加以整理和分析。最后,与企业内部的业务流程紧密结合在一起,以企业网与内部网隔开即(Extranet/Intranet)形式让信息自外向内再自内向外有序流动,形成一个闭环的信息系统,真正起到辅助市场和管理决策的作用,从而为企业带来利润的增长。 Intranet/Extranet 可以实时连通企业各组织、各成员之间的联系,提高管理工作的效率和信息反馈的速率。建立全面涉及企业内部产、供、销以及生产、经营、管理等主要环节的网络信息系统 NIS,全面提高企业管理工作的质量和效率,这是建立企业内部管理整体信息优势的措施,也是商务 e 化的关键所在。 如果将网站视为企业信息系统的前端,那么企业内部的 Intranet/Extranet 可以算是企业信息系统的后端。显然,要使企业的信息系统发挥最大的效益,前端与后端的无缝衔接是企业商务 e 化能否成功的关键。目前,很多企业对此缺乏足够的重视,业务流程和业务人员与网站的衔接机制没有建立起来,信息流动没有形成闭环,造成网站效能低下,直接表现就是网站内容枯燥乏味,严重缺乏交互机制,毫无经营模式可言。究其原因,其一,基础数据管理水平比较低。这里所说的基础数据包括市场采样调查数据,产、供、销和经营状态统计数据,产品及企业形象数据等等;其二,是信息技术的应用水平比较低。具体体现在投入的力度非常不够。殊不知,这两点是建立企业信息优势的关键和基础。 中国政府对软件产业的重视和版权维护的加强,中国的软件产业在近两年取得了长足的发展,2001年,国内软件产品销售达到330亿元,比2000年增长38.7%。而在2001年底的政府大规模软件采购开始进行之后,以金山为代表的国产软件企业在一个良性的软件市场中逐渐取得了领导地位。中国IT业能够以30%左右的速度发展。 所以软件的快速发展,也带动了各个企业如何将自己的软件信息通过网络这一渠道发布出去的兴起。就是在这样的一个环境下。开发本系统,系统集合各个软件发布软件信息发布系统的设计与实现5的优点,开发了一个功能齐全,易用的发布系统。1.3 软件发布系统现状与研究意义 现在是信息化时代,进入E时代,不管是大的如房地产,小到一个小产品,您都可以在网上找到。这些信息多得数不清,可以说你想知道某个事物。第一方法就是到网上去寻找。可以说我们的生活已经离不开网络。1.3.1 软件业现状 我国的软件产业从80年代中期开始发展,现已成为一个年销售额超过130 亿元的重要产业部门,是高新技术产业部门的主要生力军之一。1998年,中国计算机软件市场销售总额为138亿元人民币,比1997年的112亿元增长23.2。其中:系统软件市场销售总额为17.4亿元人民币,比1997年的13.7亿元增长27;支撑软件市场销售总额为35.9亿元人民币,比1997年的27.5 亿元增长30.5%;应用软件市场销售总额为84.7亿元人民币,比1997年的70.8亿元增长19 .6。我国目前的专业软件企业有2000多家,兼营软件或从事相关服务企业4000多家,拥有软件开发人员约10万人,计算机应用人员约40万人。 除科学技术部推动建设的八大软件基地(园)外,信息产业部以及各地方政府也在建设各自的软件园。信息产业部建设的软件园主要有北方软件园、浦东软件园和珠海南方园,其中北方软件园主要以中软公司为主导,主营系统软件,1997年软件产值达到4.3亿元;另外两个软件园尚在建设之中,未来分别主营应用软件和出口软件。各地方自主建设的软件园主要有:常州园、深圳赛博韦尔园、成都园、大连园、西安园、福州园、厦门园、南昌金庐园、湖南银河信得佳园等。全国各类软件园已有20多个。现阶段我国软件基地主要集中在大中城市和沿海开放城市,并依托大专院校以及科研院所的高素质软件人才发展。从我国软件业的发展因素看。首先,软件人才相对较为丰富,十几年的软件发展历程造就了一大批国内软件人才,这些人才不仅发展着民族软件事业,也成为国外软件本地化发展的主要力量。其次,国内经济的快速发展以及Internet 网与计算机的普及极大地准动了中国软件产业的发展,政府大力推行的国民经济信息化建设为软件和软件信息发布系统的设计与实现6信息服务业带来良好的发展机遇,使国内计算机硬件市场高速发展,也造就了潜在的软件市场。国家主导的信息化进程为中国软件业的发展创造了巨大的软件需求,成为软件业发展的主要推动力量之一。1.3.2 信息发布系统建设现状 软件发布系统是商家对外宣传和软件客户提供信息服务的重要窗口,因其重要性己成为软件发布的一个重要不分。大多数信息发布系统只是一个小网站,其静态信息的制作和动态信息的更新都是由网站管理员手工完成的,不仅信息发布效率低,而且更谈不上信息的有效管理与保证信息的安全。少部分公司实现了基于数据库的带自动发布功能的信息发布系统,大大提高了信息发布的质量,但从这些信息系统的使用情况来看。因此有必要来谈论一下信息发布站点的建设。动态信息发布系统是针对企业内部与外部网站信息管理、信息发布和网站维护而开发的基于Web交互模式的内容管理和发布应用系统。系统包括信息采集、整理、分类、审核、发布和管理的全过程,具备完善的信息管理和发布管理功能,是企事业单位网站、内部网站内容管理和维护的理想工具。应用该系统,政府等各部门可以随时方便地提交需要发布的信息而无须掌握复杂的技术4。它的出现大大减轻了信息发布更新维护的工作量,通过数据库的引用,将信息发布的更新维护工作简化到只需录入文字和上传图片,从而使信息更新速度大大缩短,通过应用信息发布系统,信息快速更新从而大大加快了信息的传播速度,也吸引了更多的长期用户群,时时保持活动力和影响力。1.3.3 网络发布信息优势 信息化是由计算机与互联网生产工具的革命所引起的工业经转向信息经济的一种社会经济过程,网络信息化它能对多种信息进行比较对信息不断的进行更新和加工、组合和整理,基于此知识重组。通过表1.1的传统发布模式与现代信息发布模式的比较可以看出,运用网络对信息进行发布软件的页面更新在多方面都有优势,尤其智能化方面。通过网络发布系统我们可以对信息进行批量更新维护,而且更新时候可以通过数据库的更新,就可以对系软件信息发布系统的设计与实现7统进行全面的改变,工作效率高,这些都是传统信息发布方法所不能比拟的。因此,我有必要研究运用网络发布信息。表1.1 传统发布模式与现代发布模式比较传统的信息发布信息发布系统页面更新单独设计、更新、易产生错误连接按类型批量更新、自动验证分配访问地址维护使用页面需要单独维护上传根据类型批量维护可扩展性单独设计制作仅需通过界面更新数据库工作效率很烦琐高效1.3.4 软件信息发布系统研究意义随着社会的发展,行业竞争的日趋激烈,如何提高工作效率、降低管理成本、提高服务水平和企业的竞争能力,是每一个企业管理者最为关注的问题。越来越多的管理者认为实行计算机科学化管理是解决这一问题的关键。 软件产品开发企业由于行业特点,传统操作过程复杂,文件繁多,竞争日趋激烈。越来越多的信息问题涌现出来,例如:一方面,要不断开发客户市场,对客户的基本资料,软件需求分布情况有较为全面的了解,另一方面,要作好软件实时更新,升级。以往通过简单的调查单的发布收集,显然是不可取的。必须采取更有效的解决办法。同时收集处理信息的速度、信息的准确性、安全性,还影响到公司整体的管理水平和决策层对整体业务的控制和协调。采用计算机软件管理信息是解决上述问题的一个行之有效的办法。 软件发布管理软件,就是根据开发市场情况与本公司的发展趋势,软件开发情况以及发布等方面的信息方便、快捷地管理与发布,提高公司在同行业中的知名度,增强公司的竞争力。在当今信息化时代的,我们要收集资料以及发布信息已经不是简简单单的打印几张纸发发传单那么简单。鉴于目前现有的大多数企业信息发布难以管理与控制等缺点,软件信息发布系统的设计与实现8因此当前开发基于WEB的功能强大且安全可靠的信息发布系统就具有特别重要的意义。信息发布系统是产品信息发布平台,它有以下几个优点:首先,它能有效控制和管理各种信息的发布和管理。有以软件信息网上越来越多,种类繁多,但是又不能有效控制,杂乱无章。为了能让用户及时找到自己需要的并且将他下载使用。信息发布系统能实现信息的快速有序发布,大大提高信息发布效率与质量。网络将是今后企业信息系统必然要利用的重要工具,因为产品发布相当一部分要通过网络来实现。例如:在企业/品牌宣传方面,可将原来用于企业形象宣传介绍和产品/品牌广告的纸面印刷材料实时动态地移到网上,这样不仅节省了大量费用,而且网络主页的没有地理距离、24小时服务和动态双向开放企业和品牌最新信息的功能是传统方式无法比拟的;在商品或原材料的供需和信息服务方面,可将原来的各类定货会和商业供销过程移到网上,在广告策划方面以传统方式(如:电视、报纸、媒体、小礼品等)宣传网址,而在网络主页中利用各种技术手段(如多媒体、动画、全方位的产品信息分类、智能化的查询和促销方式等)宣传产品的详细信息;因此通过网络发布信息对于企业产品的发布具有极其重要的意义。软件信息发布系统的设计与实现9第二章 发布系统的结构分析信息发布系统是一个基于网络的软件,软件在正式编写程序代码前需要两个不可或缺的步骤:第一个是对业务逻辑的分析和定义,以形成业务逻辑结构,一般称为需求分析阶段:第二个是根据业务逻辑结构设计软件结构,包括数据字典、数据处理方式、编码结构等,一般称为架构设计阶段5。因此,软件结构是将业务逻辑转为编码的重要环节,就如同盖楼必须要先打造地基一样,其设计的效果直接影响到未来软件可实现应用的程度,和可扩展的程度,因此,首先了解一下有关软件结构方面的知识。另外,为了科学地完成软件的项目,需要遵循软件工程所规定的流程来开发系统。2.1 B/S 与 C/S 的比较既然是基于网络的信息发布系统,会涉及到采用什么结构的问题,目前有两种结构可供选择,一种是B/S结构,另一种是C/S结构。2.1.1 B/S 结构B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3-tier结构。B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种Script (VBScript, JavaScript.)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构软件信息发布系统的设计与实现10造技术。随着Windows98/Windows 2000将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。显然B/S结构应用程序相对于传统的C/S结构应用程序将是巨大的进步。B/S结构采用星形拓扑结构建立企业内部通信网络或利用Internet虚拟专网(VPN)。前者的特点是安全、快捷、准确。后者则具有节省投资、跨地域广的优点。须视企业规模和地理分布确定。企业内部通过防火墙接入Internet再整个网络采用TCP/IP协议。B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如CA证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。2.1.2 C/S 结构C/S又称Client/Server或客户/服务器模式。服务器通常采用高性能的PC,工作站或小型机,并采用大型数据库系统,如Oracle, Sybase,Informix或SQLServer。客户端需要安装专用的客户端软件6。C/S的优点是能充分发挥客户端PC的处理能力,很多工作可以在客户端处理后再提交给服务器。对应的优点就是客户端响应速度快。缺点主要有以下几个:只适用于局域网。而随着互联网的飞速发展,移动办公和分布式办公越来越普及,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。特别是有很多分部或专卖店的情况,不是工作量的问题,而是路程的问题。还有,系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。对客户端的操作系统一般也会有限制。适应于Win98。但不能用于win2000或Windows XP。或者不适用于微软新的操作系统等等,更不用说Linux,Unix等。软件信息发布系统的设计与实现112.1.3 B/S 与 C/S 的区别Browser/Server是主要建立在广域网的基础上的。Client/Server主要是建立在局域网的基础上的。B/S结构与C/S结构有很大的区别,我们可以从硬件环境,安全要求,程序框架、程序架构、软件重用、系统维护、处理问题、信息流来对他们进行比较从而选出更适合于本系统开发的结构,两者结构比较如表2.1所示表2.1 B/S与C/S结构比较比较类别B/S结构C/S结构硬件环境主要建立在广域网上,不必是专门的网络硬件环境。信息自己管理。一般只要操作系统和浏览器一般建立在专用的网络上,小范围里的网络环境,局域网之间再通过服务器提供连接和数据交换服务安全要求对安全的控制能力相弱,面向不可知的用户群。一般面向相对固定的用户群,对信息安全的控制能力很强。程序架构对安全以及访问速度的多重的考虑,建立在需要更加优化的基础之上。比C/S有更高的要求。可以更加注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑。软件重用要求构件相对独立的功能。能够相对较好的重用。不可避免的整体性考虑,构件的重用性不如在B/S要求下的构件的重用好。系统维护构件组成方面构件个别的更换,实现系统的无缝升级。系统维护开销减到最小。必须整体考察,处理出现的问题以及系统升级。升级难。可能是再做一个全新的系统口处理问题面向不同的用户群,分散地域,与操作系统平台关系最小。处理用户面固定,并且在相同区域,安全要求高需求。 信息流信息流向可变化,B-B, B-C一般是典型的中央集权的机械式处理,交互性相对低。软件信息发布系统的设计与实现12通过表2.1对B/S结构与C/S结构的介绍和比较可以看出,B/S结构在很多方面都有优越性,并且根据软件发布信息的发展趋势,B/S更适合本系统。2.2 两层结构与三层结构随着Internet的进一步普及和发展,基于网络的数据处理问题日益成为企业信息化的中心环节。数据库的灵活性、安全性和可拓展性等成为数据处理技术焦点。以数据处理结构为主线,回顾并展望基于网络的数据处理方式的演变。2.2.1 两层结构在基于网络的数据处理中,客户机/服务器(Client/Server)二层计算模式具有里程碑意义。这种模式在20世纪80年代后期开始引入业界。它为多用户系统提供了前所未有的双向交流感和灵活性,革命性的改变了传统的应用设计和系统实现方式,很快便在各种类型的软件系统设计与开发中获得了广泛应用,到20世纪90年代初期,这种计算模式已成为业界的主流技术。客户机/服务器二层计算模式的基本结构是对客户端提供用户界面、运行逻辑处理应用,数据服务器接受客户端SQL语句并对数据库进行查询,然后返回查询结果。用一个形象的比喻来描述就是:服务器端像一个仓库,主要功能是存储原材料和成品,但并不进行加工,而客户端就像最后的加工车间,完成从原料到成品的整个制造过程,然后将成品存储到仓库。由于业务的处理逻辑主要在客户端执行,因此这种结构也被成为胖客户(Fat client)结构。 我们可以看看这种两成结构的应用软件模型如图2.1所示,从中我们可以看到用户界面和应用界面是集合在同一个客户机上的。然后通过SQL语句和数据库进行数据通信。 SQL 语言 客户机服务器图2.1 两层结构应用软件模型该结构最大的优点在于结构简单,开发和运行的环境简单。但也正是这种结构,用户 逻辑界面 界面数据库软件信息发布系统的设计与实现13产生了其原生性的问题。当将这些部门级都成功应用逐渐推广到企业级的关键任务时,这些小规模环境下运行就得到良好的应用,一旦进入大规模生产系统之后 ,性能呈几何级数下降,以致影响到系统的可靠性;在系统开发完成后,整个系统的安装也非常繁杂。在每一台客户机上不但要安装应用程序,而且必须安装相应的数据库连接程序,还要完成大量的系统配置工作。其次是系统的安全性问题。在二层结构下,大量代码化的企业业务流程驻留在客户机上,给系统的安全性带来了极大的考验。同时随着用户数量的增加,这种业务逻辑的维护成本也越来越高。最后是系统间的通讯功能障碍。当二层计算模式从部门级应用拓展到企业级应用时,二层结构的应用之间几乎没有交互性操作,因此很难实现分布系统的组件技术。以上这些问题是两层结构本身的原生性问题,仅仅依靠对二层结构进行细枝末节的修补和开发,无法很好解决。要真正解决这些问题,必须从根本上改变这种二层结构设计。2.2.2 三层结构从上面的分析中可知,企业应用系统的不断扩充和新应用的不断增加,基于传统的二层数据处理结构在系统拓展性、维护成本、数据安全性和应用间通讯功能障碍等原生性问题的存在,在应用中已是捉襟见肘、力不从心。在这样的背景下,三层数据计算结构应运而生。三层结构就是将数据处理过程分为三部分:第一层是客户端(用户界面),提供用户与系统的友好访问;第二层是应用服务器,专司业务逻辑的实现:第三层是数据服务器,负责数据信息的存储、访问及其优化。由于业务逻辑被提取到应用服务器,大大降低了客户端负担,因此也成为瘦客户(Thin Client)结构,如图2.2所示三层机构应用软件模型。自定义协议SQL语言 客户机应用服务器数据库服务器用户界面应用逻辑数据库软件信息发布系统的设计与实现14图 2.2 三层机构应用软件模型如图2.2所示可知,三层结构在传统的二层结构的基础上增加了应用服务器,将应用逻辑单独进行处理,从而使得用户界面与应用逻辑位于不同的平台上,两者之间的通信协议由系统自行定义。通过这样的结构设计,使得应用逻辑被所有用户共享,这是两层结构应用软件与三层应用软件之间最大的区别。这种三层结构数据处理的优势可以看成它在二层结构中间加了标准化的加工厂和传输路线,从而可高效生产并传输客户端所需产品。具体而言主要有以下几点:首先,通过将整个系统分为不同的逻辑块,大大降低了应用系统开发和维护的成本。三层结构将表示部分和业务逻辑部分按照客户层和应用服务器相分离,客户端和应用服务器、应用服务器和数据库服务器之间的通讯、异构平台之间的数据交换等都可以通过中间件或者相关程序来实现。当数据库或者应用服务器的业务逻辑改变时,客户端并不需要改变,反之亦然,大大提高了系统模块的复用性,缩短开发周期,降低维护费用。其次,系统的扩展性大大增强。由于系统模块化,使得系统很容易在纵向和水平两个方向拓展:一方面可以将系统升级为更大、更有力的平台,同时也可以适当增加规模来增强系统的网络应用。由于摆脱了系统同构性的限制,使得分布的数据处理成为可能。在技术和市场日新月异的信息时代,竞争的规则己从“大鱼吃小鱼”演变为“快鱼吃慢鱼”,以中间件为基础,构建三层的数据处理结构,将会更快、更好的促进信息化,提升竞争力,在激烈的市场竞争中赢得优势、脱颖而出。本章分析了科学开发软件过程中应该考虑的问题,分析了基于网络的软件应该考虑的B/S结构和C/S结构之间的区别,还分析了架构软件体系的两层结构和三层结构的优缺点,最后介绍了软件开发流程。对于信息发布系统这样一个基于网络平台的软件,根据其本身的特点,更适合采用B/S结构。在软件架构方面,三层结构的优势决定了信息发布系统采用三层结构模式。软件信息发布系统的设计与实现15第三章 相关技术应用3.1 ASP 技术基于B/S结构的信息发布系统肯定要用到动态网页技术,了解动态网页与静态网页的区别。让我们能够更好开发本系统。静态网页主要是以“. htm”或“html”结尾的网页,静态网页只能浏览不能有交互性的操作,因此在无法满足信息发布系统的要求。动态网页技术能够实现交互功能,不但能够浏览,还能够向网页提交信息,并且根据提交的信息进行相应的处理。就是因为有了这样的技术,才使得信息发布系统能够采用B/S结构。3.1.1 动态网页技术比较目前实现动态网页主要有4种技术:CGI技术、ASP技术、PHP技术和JSP技术,我们从各个方面来论述它们的各自优点从而选择系统要用的动态网页技术。(1) CGI (Common Gateway Interface公用网关接口)技术CGI是Web上数据库应用的传统解决方案,它通过数据库接口技术与数据库进行连接7。CGI程序可以使用软件信息发布系统的设计与实现16Perl,C,C+等语言编写,跨平台性能好,但CGI程序是服务器端的可执行程序与Web服务器占据不同的进程,尤其是多用户访问时,会挤占服务器的系统资源,导致CGI程序和Web服务器运行效率很低,开发数据库也没有统一标准。(2) ASP (Active Server Pages)技术ASP技术是微软公司开发的一种类似Html,script (脚本)与CGI的结合体。ASP的核心技术是对组件和对象技术的充分支持。但ASP技术有很明显的缺陷。它的安全性与稳定性不好,跨平台性较差,很难提高程序效率。(3) PHP (Personal Home Page)技术PHP是一种易于学习和使用的服务器端脚本语言,它是嵌入Html文件的一种脚本语言,它的语法大部分是从C,Java,Perl语言中借来的,并形成了自己的独有风格。但由于PHP是世界各地的志愿者开发出来的,缺乏统一的接口,从而造成对不同数据库的连接变化很大,使得数据库的开发工作很复杂,开发难度大。(4) JSP (Java ServerPages)技术JSP是基于Java Servlet以及整个Java体系的Web开发技术,它利用JDBC (Java DataBase Connectivity) API实现对后台服务器的访问,随着Java和JDBC的日益成熟,JSP技术由于它极佳的跨平台性能,很高的运行效率以及越来越多的企业支持,使得它的应用范围及其广泛。通过以上比较,JSP技术无论是在跨平台特性、运行效率还是商业支持方面都具有优势。3.1.2 Asp 技术简介从微软推出了ASP(ActiveServerPage)后,它以其强大的功能,简单易学的特点而受到广大WEB开发人员的喜欢。但是它却有微软产品的通病,只能在Windows平台下使用,虽然它可以通过增加控件而在LINUX下使用,但是其功能最强大的DCOM控件却不能使用。而SUN公司在JAVA的基础下开发出的JSP(Java ServerPages)实现了动态页面与静态页面的分离,脱离了硬件平台的束缚,以及编译后运行等方式大大提高了其执行效率而逐渐成为因特网上的主流开发工具。分析它们异同,为系统选择更适合的开发技术。JSP可以从以下几发面来总结增强的性能可以在服务器上运行的编译好的公共语言运行库代码。与被解释的前辈不同,ASP.NET 可利用早期绑定、实时编译、本机优化软件信息发布系统的设计与实现17和盒外缓存服务。这相当于在编写代码行之前便显著提高了性能。世界级的工具支持。ASP.NET 框架补充了 Visual Studio 集成开发环境中的大量工具箱和设计器。WYSIWYG 编辑、拖放服务器控件和自动部署只是这个强大的工具所提供功能中的少数几种。威力和灵活性。由于 ASP.NET 基于公共语言运行库,因此 Web 应用程序开发人员可以利用整个平台的威力和灵活性8。.NET框架类库、消息处理和数据访问解决方案都可从 Web 无缝访问。ASP.NET 也与语言无关,所以可以选择最适合应用程序的语言,或跨平台的多种语言分割应用程序。另外,公共语言运行库的交互性保证在迁移到ASP.NET 时保留基于 COM 的开发中的现有投资9。简易性。ASP.NET 执行常见任务变得容易,从简单的窗体提交和客户端身份验证到部署和站点配置。例如,ASP.NET 页框架使您可以生成将应用程序逻辑与表示代码清楚分开的用户界面,和在类似 Visual Basic 的简单窗体处理模型中处理事件。另外,公共语言运行库利用托管代码服务(如自动引用计数和垃圾回收)简化了开发。可管理性。ASP.NET 采用基于文本的分层配置系统,简化了将设置应用于服务器环境和 Web 应用程序。由于配置信息是以纯文本形式存储的,因此可以在没有本地管理工具帮助的情况下应用新设置。此零本地管理哲学也扩展到了 ASP.NET 框架应用程序的部署。只需将必要的文件复制到服务器,即可将 ASP.NET 框架应用程序部署到服务器。不需要重新启动服务器,即使是在部署或替换运行的编译代码时。可缩放性和可用性。ASP.NET 在设计时考虑了可缩放性,增加了专门用于在聚集环境和多处理器环境中提高性能的功能。另外,进程受到 ASP.NET 运行库的密切监视和管理,以便当进程行为不正常(泄漏、死锁)时,可就地创建新进程,以帮助保持应用程序始终可用于处理请求10。自定义性和扩展性。ASP.NET 随附了一个设计周到的结构,它使开发可以在适当的级别插入代码。实际上,可以用自己编写的自定义组件扩展或替换 ASP.NET 运行库的任何子组件。实现自定义身份验证或状态服务一直没有变得更容易。安全性。借助内置的 Windows 身份验证和基于每个应用程序的配置,可以保证应用程序是安全的。由此可知ASP服务能够实现异地同步和协同管理:跨地域的应用,有效地解决企业异地信息整合和协同管理的麻烦。通过ASP模式,最终客户将花最少的软件信息发布系统的设计与实现18钱,有机会接触到具有国际先进水平的IT技术,最有效地使用应用软件,集中精力做他们业的核心业务。用户企业不必设立单独的IT部门,因为硬件系统较为耐用,软件系统的维护和优化、开发由ASP公司承担服务,这样就可以降低大量的系统维护费用,并去了后顾之忧11。同时,他们可将在IT上省下的资金投到他们具有最大竞争优势的方面,加速企业的成长,并更快地走向成功。而且asp用户能够省投资。用户以较小的投资。事实上,已经有60%的美国企业此刻正在享受专业的IT外包服务,而国内近年来才开始兴起此项服务。将来IT服务的外包也会像企业租用电信的电话、传真,委托邮局投递信函一样普遍。互联网本身就是沟通全球、促进协作的,IT技术的应用将紧密和互联网联系在一起才能发挥其跨越时空的优越性。目前,已有越来越多的企业在更广泛的领域选择了ASP。从投资和客户服务上。Asp都有相对的优势,而本系统开发要求大,注重在于客户服务的支持需求,所以我选择了ASP来开发。3.2 Access 技术Access 2002中文版是一个典型的开放式数据库系统,是当今世界上最流行的数据库管理软件之一。Access 2002中文版在功能上也较Access的以往版本有了较大的改进,并且支持各种多媒体技术。3.2.1 Access Access中文版是Microsoft Office 2000套装软件的数据库管理系统软件,是目前比较流行的小型桌面数据库管理系统,它适用于小型企业、学校、个人等用户,可以通过多种方式实现对数据收集、分类、筛选处理,提供用户查询或打印报表。3.2.2 Access 的特点Access具有良好的界面,采用了与Windows和Microsoft Office系列软件完全一致的风格,用户可以通过菜单和对话框操作,不用编写任何命令便能有效地实现各种功能的操作,完成数据管理任务。Microsoft Office的一个集成化的程序设计语言是VBA(Visual Basic for Applications),使用VBA可以创建非常实用的数据库应用系统。Access可以作为个人计算机终端和大型主机系统之间的桥梁。通过如SQL、ODBC等特定软件信息发布系统的设计与实现19技术,方便地存储、检索和处理服务器平台上的关键信息,提供了灵活、可靠、安全的客户/服务器解决方案12。Access可以接受多种格式的数据,从而方便了用户在不同系统之间进行数据转换。随着Internet网络应用的发展,Access还增加了使用信息发布Web向导和用HTML格式导出对象的功能。3.3 系统开发流程图为了让软件系统的开发严格按照开发流程图开发系统,要有软件工程理论的支持和对软件项目的科学管理。软件系统的开发需要按照需求分析、概要设计、详细设计、代码编写、测试等软件开发流程进行,就可以顺利实现。一项计算机软件的筹划、研制及实现,构成一个软件开发项目。一个软件开发项目的进行,一般需要在人力和自动化资源等方面作重大的投资。为了保证项目开发的成功,最经济地花费这些投资,并且便于运行和维护,在开发工作的每一阶段,需要编制一定的文件。这些文件连同计算机程序及数据一起,构成为计算机软件。文件是计算机软件中不可缺少的组成部分,它的作用是:为开发人员在一定阶段内的工作成果和结束标志;向管理人员提供软件开发过程中的进展和情况,把软件开发过程中的一些“不可见的”事物转换成“可见的”文字资料13。以便管理人员在各个阶段检查开发计划的实施进展,使之能够判断原定目标是否己达到,还将继续耗用资源的种类和数量:记录开发过程中的技术信息,便于协调以后的软件开发、使用和修改;提供对软件的有关运行、维护和培训的信息,便于管理人员、开发人员、操作人员和用户之间相互了解彼此的工作;向潜在用户报导软件的功能和性能,使他们能判定该软件能否服务于自己的需要。换言之,文件的编制必须适应计算机软件整个生存周期的需要。计算机软件所包含的文件有两类:一类是开发过程中填写的各种图表,可称之为工作表格;另一类则是应编制的技术资料或技术管理资料,可称之为文件。在一项计算机软件的开发过程中,将会产生十四种文件。这十四种文件是:可行性研究报告;项目开发计划;软件需求说明书;数据要求说明书;概要设计说明书;详细设计说明书;数据库设计说明书;用户手册;操作手册:模块开发卷宗;测试计划;测试分析报告;开发进度月报;项目开发总结报告。软件信息发布系统的设计与实现20一项计算机软件,从出现一个构思之日起,经过这项软件开发成功投入使用,直到最后决定停止使用,并被另一项软件代替之时止,被认为是该软件的一个生存周期。一般地说这个软件生存周期可以分成六个阶段:可行性与计划研究阶段、需求分析阶段、设计阶段、实现阶段、测试阶段和运行与维护阶段14。在可行性研究与计划阶段内,要确定该软件的开发目标和总的要求,要进行可行性分析、投资一一收益分析、制订开发计划,并完成应编制的文件。在需求分析阶段内,对系统进行系统分析,确定对软件的各项功能、性能需求和设计约束,确定对文件编制的要求,本阶段工作的结果,需要编写软件需求说明书、数据要求说明书和初步的用户手册应该编写出来。在设计阶段内,在反复理解软件需求的基础上,提出多个设计,分析每个设计能履行的功能并进行相互比较,最后确定一个设计,包括该软件的结构、模块的划分、功能的分配以及处理流程。在被设计系统比较复杂的情况下,设计阶段应分解成概要设计阶段和详细设计阶段两个步骤。在一般情况下,应完成的文件包括:概要设计说明书、详细设计说明书和测试计划初稿。在实现阶段内,要完成源程序的编码、编译(或汇编)和排错调试得到无语法错的程序清单,要开始编写模块开发卷宗,并且要完成用户手册、操作手册等面向用户的文件的编写工作,还要完成测试计划的编制。在测试阶段,该程序将被全面地测试,己编制的文件将被检查审阅。一般要完成模块开发卷宗和测试分析报告,作为开发工作的结束,所生产的程序、文件以及开发工作本身将逐项被评价,最后写出项目开发总结报告。在运行和维护阶段,软件将在运行使用中不断地被维护,根据新提出的需求进行必要而且可能的扩充和删改。对于一项软件而言,其中有些文件的编写工作可能要在若干个阶段中延续进行。软件信息发布系统的设计与实现21业务需求规范说明书制定项目开发计划技术方案实施说明书网站风格整体设计项目约定书制定项目开发管理规范书开发环境的准备业务流程总体设计书数据库关系设计图任务分配文档需求制定图3.1 软件需求流程图尽管在文件编制中存在着很多灵活性,然而,文件的编制确实是非常必要的,其意义如前所述。为了控制这种灵活性,保证文件编制能达到应该达到的目的,对于具体的软件开发任务,应编制的文件的种类、详细程度应取决于承担开发单位的管理能力、任务的规模、复杂性和成败风险等因素。应该根据本单位经营承包的应用软件的专业特点和本单位的管理能力,制定一个文件编制实施规定,说明在什么情况下应该编制哪些文件。我们可以通过下面的需求流程图如图3.1所示来全面地了解软件的开发初期的整个过程,并按照这个收集并拟定开发系统的初期工作。软件信息发布系统的设计与实现22第四章 软件发布系统的实现4.1 系统的需求分析4.1.1 系统需求 网上有丰富的软件信息,它们种类各异,来源广泛,需要统一管理与规范,并且其中有价值的信息要能快捷发布,动态信息要能迅速更新,信息垃圾要能及时剔除。同时,人们也能够借助于一些必要的工具获取自己需要的信息。信息发布系统就是为了满足这一需求而进行建设和开发的,其目标是建立一个基于Internet及软件信息网的来源通畅、发布快捷、资源丰富、服务到位的综合信息发布平台,能对网上的公共信息进行集中管理与控制,面向网上进行信息的自动快捷有序发布,提供多种优质的信息服务15。为实现这一目标,信息发布系统应该实现下述功能:面向网上各个行业,有软件添加功能、软件信息发布功能、软件管理、软件测试等功能部件。还有一些经软件信息发布系统的设计与实现23常变动的网址链接等。因此要求信息发布系统也能够进行分散发布信息,避免集中式录入发布,以提高效率,并要求能够定时发布。要求信息发布系统简单易用,界面友好。要求信息发布系统要有审核功能。4.1.2 系统分析 本信息发布系统要是动态网页,需要动态维护,各个组成部件有基本相似,只是功那不同,有的不需要审核,有的需要审核,有的只允许查看,有的栏目可以添加发布信息,各个栏目的深度也不一样,有一级栏目、二级栏目等等,最深的有三级栏目,各个页面形式各异,所以,后台维护系统即信息发布系统的设计有很大的难度。信息发布系统除了维护网页的栏目外,还有其它功能,如网址管理、弹出窗口管理等等。根据分析可以知道该信息发布系统比一般的信息发布系统有着更为复杂的关系,信息由各个部门来发布,而且各个部门可以发布各个栏目的信息,所以这是一个非常复杂的基于至少两级的多对多的关系;就其发布的内容来说,要通过B/S模式实现图文混排确实是其它任何信息发布系统所没有的功能16。所以,为了满足上面的功能需求,而且还要开发一个比较通用的系统软件,最终形成产品,因此我从系统用例和角色两个层面上来分析该系统。4.2 系统的整体设计4.2.1 系统结构的确定一个信息发布系统是否合理,对该系统的性能和安全都有至关重要的影响,因此在此进行信息系统整体设计时,首先就是要确定合理的系统结构。信息发布系统实际上是一个基于web的信息系统,通过上一章节所进行的B/S结构和C/S结构的比较和信息发布系统本身的应用属性与应用范围决定了它只能采用B/S结构;通过上一章所进行的两层结构与三层结构的比较,三层结构对两层结构的无与伦比的优势决定了本系统的软件结构采用基于B/S结构的三层结构。软件信息发布系统的设计与实现244.2.2 系统的整体设计系统的整体设计系统整体设计的目的是为了产生一个可用的解决方案,并且能够比较容易将该解决方案转换成程序代码。本信息发布系统主要由客户端浏览器、网站、数据库组成。Web是运行在Internet顶层的服务集合。基于Web的信息使用HTML格式以超文本和超媒体方式传送。 Web服务以客户机/服务器模式运行。信息资源以页面形式存储在Web服务器上,用户通过客户端的Web浏览器向Web服务器发出查询请求;Web服务器根据客户端请求的内容做出响应,并将存储在服务器上ASP代码页面进行编译然后以HTML页面发送给客户端;Web浏览器对收到的页面进行解释并将页面显示给用户17。 Web服务器安装在服务器计算机上,使用HTTP的Internet协议来响应TCP/IP网络上的Web客户请求。 本系统就是采用Web服务器软件Microsoft的IIS。而浏览器软件则用Microsoft Internet Explorer(IE)。 根据网站建设的需求,首先构造整个网站的整体结构,本系统考虑到发布的功能区别,系统主要实现一般用户和管理登陆网站的不同权限问题,进行不同的权限分配。不管是一般的用户还是管理员首先登陆的界面都是一样的,软后再分支出来,进入不同的页面。同时网站的数据是来源于数据库。它们联系ER图如图4.1示,很明显就看出这个系统运行的基本路线,有管理用户通过各自的浏览器登陆网站,查看网站上的相关信息,还有普通用户登陆网站查看信息。浏览者浏览器系统管理员浏览器网 站软件信息发布系统的设计与实现25图 4.1 浏览器访问网站示意图根据图4.1的系统运行模式,为各个部分选用相应的管理工具。(1)客户端根据个人的喜好可以选用各自喜欢的浏览器访问服务器,现在浏览器对于ASP开发的网站支持都比较好,不过还是建议用微软的IE浏览器登陆网站。希望用最新的IE版本5.0及其以上版本。(2)有于系统要提供多人同时访问服务器,所以要求服务器配置要较高,由于开发成本问题和安全考虑,用windows 2000 server版本作为服务器端的操作系统。而系统硬件配置要求奔2.4G处理器。有于服务器实时在交换数据,数据的冗余,日记将会产生非常多,因此硬盘要求80G以上,而且日记记录在计事本里面,而不是保存在数据库里面,这样可以减少数据库的负担。而内存要求512M以上,这样当服务突然遇到许多用户访问,也能应付过了,而不至于导致服务器瘫痪或重起。(3)数据库采用Access数据库服务器。虽然SQL Server是微软推出的中小型网络数据库系统,是目前最常用的数据库系统之一。随着SQL Server网络数据库应用程序日益增多,这种Web数据库应用系统的正常运行一般依赖于已存在的用户数据库。但是SQL Server对于服务器要求比较高,如果配置太低了,系统根本无法运行,只要同时访问的用户一多起来,马上就会瘫痪。而Oracle更是超大型数据库,只能是运行在大型网站开发中,本身安装就占用2G多的硬盘空间,只适用于超大型的开发系统。Oracle根本无法使用在一般配置的服务器上,没还运行服务器,只打开Oracle就可以让你的机子停止运作几分钟。基于此本系统用Access数据库来开发,它简单实用功能齐全。而且是微软配套的,与系统结合相对要好。(4)同过模块创建使功能模块达到复用的目的,减少代码编写的工作量和减少错误几率,可以将本管理发布系统模块分为以下几个:a.管理员模块图,本系统是收集网上的软件信息进行整理发布的,这些信息的收集,重组,更新资料复杂繁多,必须要有管理员来对信息进行整理、分析,测试、发布等,要为管理员设置专门的通道,拥有本网站软件的管理权限,所以本系统为管理数据库软件信息发布系统的设计与实现26员设计了专门的登陆界面。而管理员登录涉及到数据,网站的安全,这本系统设计中的一个重点,如果没有考虑到管理员登陆的安全,将会对网站的安全存在致命的威胁。所以我用小型的数据库Access来建立管理员用户名和密码管理表单,当管理员要登陆通过登陆界面要登陆管理界面,只要用户名跟Access表单里的用户名和密码一致就可以登陆管理。这个一不分就运用到了数据库的查询功能。如图4.2所示管理员登陆验证过程数据库 图4-2 管理员登陆验证过程b.我们根据初期需求设计的调查从而制定出了网站的几个主要界面设计,软件提交页面就是将软件的基本信息通过页面提交到服务上,然后提供其他浏览者浏览。这个界面提供了一个软件简介信息界面,功能齐全,主要给出了发布者的姓名、软件名称、下载地址、运行环境、软件类型、程序演示、软件简介、其中对于各项都有明确的要求,不能随意填写,对于姓名的软件名称都必须填写,否则会返回错误信息,程序运行演示这样项根据情况可以填写或是不填,由于考虑到服务器端的负载能里,要求只能填写不超过1000个字。根据这些情况构造其E-R图如图4.3示 管理员登录登录用户名密码正确管理界面软件信息发布系统的设计与实现27软件提交您的姓名软件名称下载地址运行环境软件类型程序演示软件简介图4.3 软件提交界面设计信息填写相应的代码编辑如下:function isok(theform)if (theform.txtname.value.length5) alert(姓名最少要1个字,最多5个字!); theform.txtname.focus(); return (false); if (theform.txtshowname.value.length20) alert(软件名称最多20个字!); theform.txtshowname.focus(); return (false); if (theform.txttitle.value= | theform.txttitle.value.length1000) alert(简介不能为空 及 请少于1000汉字!);软件信息发布系统的设计与实现28 theform.txttitle.focus(); return (false); return (true);c.管理员登录界只允许有管理权限者登录,为了信息能够得到及时的整理,发布出去,让浏览者得到错误的信息,网站提供了两个管理者权限,在两个管理员进行管理下,它们之间密码和用户名都是不一样的,这样防止了共同登录时带来的不必要问题,而且任何一个管理员用户失去作用或者要清楚用户名,可以直接在用户名数据库里进行修改,修改之后只要对服务器刷新就会立刻有效。这样加快了运行效率。管理员登陆界面只提供管理者登陆,因此管理员登录的界面设计得相当简洁。登陆界结构图如图4.4示 管理员登录用户名密码图4.4 管理员登陆结构图 d.管理员管理界面,主要是对新发布的软件信息进行管理,所以功能相对其他用户多些,功能齐全,管理员可以看到最新发布者的软件信息,考虑到软件的可用性,管理员首先对软件进行测试连接,以及软件信息的的核实,然后考虑是否将软件发布出去还是要删除。根据这些需求我首先绘出管理员管理界面功能如图4.5示软件信息发布系统的设计与实现29管理员管理界面发布人名称软件名称测试删除图4.5 管理员管理界面功能图e.密码验证登录数据库设计如图4.6示,由于这个设计到网站的安全问题,所以用户名和密码严格要求,用户名和密码都必须在6个字符以上,20个字符以下。用户名,密码输入限制代码如下:function FrontPage_Form1_Validator(theForm) if (theForm.username.value = ) alert(请在 username 域中输入值。); theForm.username.focus(); return (false); if (theForm.username.value.length 20) 软件信息发布系统的设计与实现30 alert(在 username 域中,请最多输入 20 个字符。); theForm.username.focus(); return (false); 密码验证usernamepassword用户名密 码图4.6 用户名,密码数据库创建结构根据图4.6,我用Microsoft Access建立密码验证表如图4.7示图4.7 建立数据库密码验证用户名密码验证代码如下:软件信息发布系统的设计与实现32第五章 系统配置与调试5.1 服务器安装与系统运行调试 开发本系统前首先就是要配置好系统开发环境,我们是基于.net下用ASP开发的。 首先安装IIS信息服务,这是微软windows 2000系统下配带的服务器软件,都可以通过系统安装光盘安装,这样节省了一笔开县,不用专门购买,服务器软件光盘。安装步骤如下,插入Win2000或WinXp安装盘,点击“开始设置控制面板添加/删除程序添加/删除Windows组件”,然后出将会出现如图5.1示,把第一项IIS(即Internet信息服务)打上勾,如果要看详细安装文件可以点击下面的详细信息,可以对要安装的各项选择,将Frontpage这项点上,软后点击下一步。如果没放入如系统盘,系统将会出现提示窗口如图5.2示,根据系统放入光盘,并且选择光驱系统文件中下的I386这个目录,一路确定就就会安装 IIS信息服务器。想知道是否安装好了IIS信息服务,可以到控制面板里的管理工具,如果有一项Internet信息服务的快捷方式就说明已经安装好了。图5.1 IIS信息服务安装软件信息发布系统的设计与实现33图5.2 安装IIS提示窗口接着,就对进行IIS配置。安装好Internet信息服务后就,开始对IIS进行设置,首先需要建立虚拟目录, Win2000专业版和服务器下,我的计算机名叫“sgz”,将开发的网站文件夹我的D下“My web”这个文件夹,命名为fb,设虚拟目录指向这个D盘路径,并设置虚拟目录名为fb。到此IIS基本配置完毕。可用通过http:/sgz/fb来访问网站。计算机名也可以用本地IP 或localhost代替。设虚拟目录的方法是 :打开控制面板管理工具,选择“Internet服务管理器”,展开后在“默认Web站点” (或默认网站)点鼠标右键,选择“新建虚拟目录”,别名写fb,目录找到D:My web,把“执行、写入、浏览”等都打上勾。确定后就OK了如图5.3示虚拟目录设置软件信息发布系统的设计与实现34图5.3 虚拟目录设置现在可以用http:/sgz/fb或者/rb或者http:/localhost/fb来访问主页。 对系统运行IIS信息服务,为了安全期间,我们要对IIS信息服务进行相应的配置,配置如图5.4示。由于考虑到系统安全问题,不将网站页面放置在系统根目录下。通过虚拟目录达到映象功能。设置访问权限,选择本地主目录路径,也就是网站显示的主目录,本系统,默认安装是生成的地址c:inetpubwwwroot;设置只允许读取,日志访问和索引资源点上,这样有利于管理访问者,防止恶意破坏。服务器扩展选择相应的客户端脚本,网站功能框添加网站描述语句。IP地址,这里根据情况填写,可以选择默认模式,或者选择本级iP地址,如果是联入网,可以设置成电信给予的固定Ip地址,以能够让外网的用户能够访问。其他的设置基本都可以选择默认。 设置完毕,服务器取一个名字,右键点击服务器,选择启动。现在服务器进本配置完毕。开始对发布系统进行相应测试与调试。软件信息发布系统的设计与实现35图5.4 IIS配置当运行IIS服务器。进行测试,出现如下图5.5示,以为代码没编好,无法调用,最后才发现是网站服务器没有启动,无法解析页面所导致的。图 5.5 错误提示页面最后把服务器启动后,页面运行成功。启动成功后进入软件添加页面如图 5.6 示软件信息发布系统的设计与实现36图5.6 软件添加页面在图5.6按要求输入相关信息,点击发布将会转移到软件发布页面如图5.7示。图5.7 软件发布页面软件信息发布系统的设计与实现37管理员登录界面设计相对简单些,就是用户名,和密码输入。如图5.8示:图5.8 管理员登陆页面管理员登陆成功后将会转移到管理员管理页面如5.9示,在这里为管理员提供了软件的测试和删除两个功能。图 5.9 管理员管理页面软件信息发布系统的设计与实现385.2 系统安全探讨对于信息系统,特别是基于web的信息系统而言,系统及其信息的安全至关重要,可以说没有系统及其信息的安全,就没有成功的信息应用。信息发布系统也不例外,虽然信息发布系统处理的大多是公共信息,但是也有少量保密信息,如管理员身份、审核员身份等信息。另外,由于信息发布完后,发布的人少,但浏览的人很多,所以信息的影响面很大,因此特别加强了信息的管理与控制,防止向信息系统发布假信息、垃圾信息甚至是恶意信息。因此,信息发布系统对安全的要求比较高,应该采用对windows 2000操作系统、Access数据库、Asp页面三个层面进行安全设置。安全问题是技术方面的,一般破坏者不一定是具高超编程技术的计算机天才,大部分黑客只是比一般的网络使用者更有耐心更细心,他们利用一般用户使用不到的功能或系统管理员的马虎对系统进行入侵。据CERT统计80%的安全问题出自于管理的漏洞,也就是说绝大部分安全漏洞是系统管理员的操作失误导致的(这种失误包括授予普通用户过多的权利和没有对自己的网络拓扑结构透彻地分析),而目前大多数安全方面的文章都是讨论防火墙的运用。所以首先要做好系统基本的安全设置,再制定一套完整的安全管理体制,防火墙是必须的。“防火墙”是一种形象的说法, 它是一种由计算机硬件和软件的组合, 使互联网与内部网之间建立起一个安全网关( scuritygatewa), 从而保护内部网免受非法用户的侵入,就是一个把互联网与内部网(通常这局域网或城域网)隔开的屏障18。防火墙如果从实现方式上来分,又分为硬件防火墙和软件防火墙两类,我们通常意义上讲的硬防火墙为硬件防火墙,它是通过硬件和软件的结合来达到隔离内、外部网络的目的,价格较贵,但效果较好,一般小型企业和个人很难实现;软件防火墙它是通过纯软件的方式来达到,价格很便宜,但这类防火墙只能通过一定的规则来达到限制一些非法用户访问内部网的目的。现在软件防火墙主要有天网防火墙个人及企业版,Norton的个人及企业版软件防火墙,还有许多原来是开发杀病毒软件的开发商现在也开发了软件防火墙,如KV系列、KILL系列、金山系列等。这些软件安全方面都比较好,如果服务器配置允许,选择Norton企业版是最佳的。软件信息发布系统的设计与实现39硬件防火墙如果从技术上来分又可分为两类, 即标准防火墙和双穴网关防火墙。标准防火墙系统包括一个UNIX工作站, 该工作站的两端各接一个路由器进行缓冲。其中一个路由器的接口是外部世界, 即公用网; 另一个则连接内部网。标准防火墙使用专门的软件, 并要求较高的管理水平, 而且在信息传输上有一定的延迟。双穴网关 (dual home gateway) 则是标准防火墙的扩充, 又称堡垒主机(bation host) 或应用层网关(applications layer gateway), 它是一个单个的系统, 但却能同时完成标准防火墙的所有功能。其优点是能运行更复杂的应用, 同时防止在互联网和内部系统之间建立的任何直接的边界,可以确保数据包不能直接从外部网络到达内部网络, 反之亦然。随着防火墙技术的发展, 双穴网关的基础上又演化出两种防火墙配置, 一种是隐蔽主机网关方式, 另一种是隐蔽智能网关( 隐蔽子网)。隐蔽主机网关是当前一种常见的防火墙配置。顾名思义, 这种配置一方面将路由器进行隐蔽, 另一方面在互联网和内部网之间安装堡垒主机。堡垒主机装在内部网上, 通过路由器的配置, 使该堡垒主机成为内部网与互联网进行通信的唯一系统。目前技术最为复杂而且安全级别最高的防火墙是隐蔽智能网关, 它将网关隐藏在公共系统之后使其免遭直接攻击。隐蔽智能网关提供 多了对互联网服务进行几乎透明的访问, 同时阻止了外部未授权访问对专用网络的非法访问。一般来说, 这种防火墙是最不容易被破坏的。因此经济情况选择适应的防火墙方案。采用双穴防火强和软件防火墙结合的方案是最适合的。5.3 系统性能优化5.3.1 IIS 优化Web的性能优化主要从数据库和服务器两个方面考虑,其实除了服务器端外,还和客户端的浏览器有关,但客户端情况各异,只能根据个人情况而定。IIS高速缓存是对IIS进行优化时要考虑的最重要的项目之一。服务器保留了一部分内存空间用作IIS高速缓存,为将来的请求存储对象,这样IIS就可从高速缓存中检索对象而不用从硬盘中检索。调整IIS高速缓存的容量需要修改注册表,按Win+R:输软件信息发布系统的设计与实现40入regedit 点击确定。展开HKEY_LOCAL_MACHINESystemCurrentControlSetInetInfParameters在其右边将项目MemoryCacheSize的范围设为从0道4GB,缺省值为3072000(3MB)。IIS通过高速缓存系统句柄、目录列表以及其他常用数据的值来提高系统的性能。这个参数指明了分配给高速缓存的内存大小。如果该值为0,那就意味着“不进行任何高速缓冲存储”。在这种情况下系统的性能可能会降低。要重新启动才能使新值生效。为了使IIS使用处理器时间最长。服务器的CPU处理器能力总是有限的。哪一个应用程序占用处理器的时间最长,谁的性能就能得到最大的提高。(1)在NT的控制面板中,双击系统图标。(2)单击性能标签。(3)在应用程序性能下将游标拖到None的位置,这样就可以使所有正在运行的服务,包括IIS,使用处理器的时间达到最大值。服务器属性设置。在服务器属性里有一项可以使网络应用程序的总处理能力最大的选项,你当然应该选择它(1)在桌面上右键单击网络邻居图标,然后选择属性选项。(2)单击“服务标签”。单击“服务器”,然后按“属性”。选择最大化网络应用程序的总处理能力。然后单击“OK”。提高硬件配置来优化IIS性能,当进行了上述的优化配置,IIS的性能仍然没有什么明显改善的话。当经济允许时可以考虑用更新硬件。处理器可以升级为速度更快的CPU,还可以再增加一个CPU。硬盘:硬盘空间被NT和IIS服务以如下两种方式使用:一种是简单地存储数据;另一种是作为虚拟内存使用。如果使用Ultra2的SCSI硬盘,可以显著提高IIS的性能。网络接口卡:如果服务器是在企业内部网上运行,那么可以考虑将他的网卡升级为100M网卡。这在网络带宽是瓶颈的情况下特别有效。内存:增加内存可能是升级系统最简单、最有效的方法。 优化IIS的注意事项,在安装IIS之时就应该注意到IIS的优化。:1为了提高性能和节约资源,应该只运行需要的协议。这一点很多管理员都没有注意,笔者曾见到在一台只作Web服务的机器上同时安装有NetBEUI、TCP/IP和IPX协议。显然这是不合理的。2应该将IIS服务器,设置为独立的服务器,不要让服务器去承受域控制器要求的额外负荷。服务器一边在响应用户的登录,一边还要提供IIS服务,性能多少都会有影响19。3可以把NT服务器的页交换文件分布到多个物理磁盘上,注意是多个“物理磁盘”,分布在多个分区上是无效的。另外,将页交换文件放在与WIndows NT引导软件信息发布系统的设计与实现41区相同的分区中。4使用磁盘镜像或磁盘带区集可以提高磁盘的读取性能。5关于日志的记录,应该采用文件记录而不是记录到ODBC数据源。此外,还可以在记录期间增加用来记录日志的内存缓冲区的容量来减少磁盘的活动。该缓冲区的缺省容量值为64KB。6最好把所有的数据都储存在一个单独的分区里。然后定期运行磁盘碎片整理程序以保证在存储Web服务器数据的分区中没有碎片。使用NTFS有助于减少碎片。使用Norton的Speeddisk,很快地整理NTFS分区。7虽然SSL可以提供相当可靠的加密传输。但是所需的额外开销会导致IIS服务器速度下降,尤其是在处理大型文件的时候。在安装Windows2000的时候,如果你选择了安装IIS,那么在安装的时候系统将会你的系统驱动%SystemDrive%里创建一个InetPub目录,而且还会在Inetpub目录下创建一个Scripts目录,IIS还会创建一个虚拟目录SCIPTS指向该目录,并且给这个目录执行权限20。5.3.2 Microsoft Access 数据库优化从硬件上来优化, 硬件是解决速度问题的根本,为了提高数据库程序的速度,提高数据库程序性能,程序所运行的硬件平台是其中最大的决定因素。显而易见,实现优化的第一条原则应该是较快的硬件=较快的数据库,对于CPU和RAM都有较高的要求,为了要达到一个令人满意的性能,需要8MB的RAM和一个奔腾以上的CPU。所以,要想提高其程序性能,首先必须要从硬件入手,可以说硬件是最关键。有效的磁盘访问也是一个重要的优化问题。在有一个令人满意的硬件配置下,对于数据库程序而言,影响其性能的第二位因素就是磁盘访问了。在执行过程中,对物理磁盘的访问总是一个速度的瓶颈(与访问存储在 RAM中的数据相比较而言),所以,应该尽量减少对磁盘的访问。然而,应用程序总是要和一些磁盘或其他一些物理设备打交道,所以,我们的目标应该是保证所有的磁盘访问都尽可能有效。要实现这一点就是经常整理你的磁盘数据碎片,整理你的数据库所在的磁盘驱动器以及所有你执行你的数据库程序时要涉及的磁盘驱动器,而且还应定期清理磁盘碎片,以此保证磁盘访问一直有效。这将最大程度地减少在对物理磁盘进行读写而花费的时间,尽管这些读写是不可避免的,同时优化了整个体系的性能。增加最大缓冲区的尺寸,首先对最大缓冲区尺寸的设置。最大缓冲区的尺寸指的软件信息发布系统的设计与实现42是Microsoft Access作为内部存储空间而保留的RAM的数目。存储空间越大,用户需求的数据能在RAM中找到可能性越大,同时减少了对物理磁盘的访问频率。Microsoft Access 需要的最小缓冲区是512KB,如果硬件系统有多于4MB的RAM,那么你就可以为Microsoft Access 多分配一些供其使用(这样也增加了系统的性能)。因此要在MSACCESS.INI(windows目录下)文件中增加对最大缓冲区的设置,使用记事本,在此文件中找到 Option 段,在其中加这样一句话:MaxBufferSize =4296,即将为Microsoft Access分配4MB的缓冲区空间)。其时这个有各自的设置要求,根据硬件配置进行设置,首先不能妨碍用户同时正在运行的程序,其次不会影响其自身底层操作系统的运行效率,对于 MSACCESS.INI文件的修改后只能在下一次Microsoft Access启动时才能奏效。 完成这些优化后,系统可以运行。经过多次运行测试,系统运行成功。并且运行稳定。软件信息发布系统的设计与实现43结束语信息发布系统是一个信息发布平台,其设计与实现均成功应用了当前成熟的信息技术、设计方法和管理概念,有较好的参考价值。因此本章对信息发布系统做了比较全面的总结,对综合信息发布系统今后的工作做了大致的展望。信息发布系统分为两期开发,一期为基本的设计计划。二期开发是在一期基础上进行的,是对一期工程的升级。 一期工程由于需求较简单,开发的信息发布系统功能较少,只有用户管理、栏目管理)、网址管理和调查管理几个主要功能。由于一期工程开发时基础知识有限和经验不足,造成一期开发的信息发布系统有很多问题。从功能上来看,一个栏目只能由一个部门来维护,系统只能添加文字不能添加表格,不能上传附件,而且只能添加一张固定位置的图片,缺少翻页功能:从设计结构上看,也是采用基于B/S的三层结构,但是,有些架构设计不好,每添加一篇文章就自动生成一个文件夹和动态页面,造成第一次访问的时候需要编译,响应很慢,而且也占用空间。二期工程是在一期工程基础上做了较大改进。从功能上来看,二期工程的信息发布系统有用户管理、栏目管理、文章管理和常规管理(包括网址管理、调查管理和弹出窗口管理)。二期工程主要是改进了在使用一期工程的信息发布系统过程中发现的许多问题,实现了基于B/S结构的图文混排功能,增加了分类显示功能,并且在形象上也加以了改进。从设计结构上来看,吸取一期工程的教训,采用了添加文章时只加内容不加页面的方法,提高了访问速度,节省了空间。综合信息发布系统采用基于B/S的三层结构,主要由浏览器客户端、前台网站、后台综合信息发布系统三部分组成。综合信息发布系统采用ASP技术、Access数据库技术进行系统设计与实现,除了具有良好的可扩展性、可维护性和可移植性外,还具有稳定性、实用性和开发成本低等特点。综合信息发布系统的具体实现综合软件信息发布系统适应了信息化的发展趋势,集合了软件添加,实现了信息的快捷有效发布,而且软件信息发布系统的设计与实现44信息来源广泛。这样信息来源广泛而且发布方便及时,一改原来由各个部分收集信息集中到网络中心发布的落后状况,达到了信息发布的高效率。此信息发布系统采用数据库优化技术。较大提高了系统运行速度、响应速度及运行效率,取得了较好的性能优化效果。为了实现信息的自动发布,发布系统基于ASP技术实现了信息自动发布技术。通过这次设计使我了解ASP技术、Access技术,熟悉了Window操作系统、IIS服务器配置、防火墙安全相关技术,还积累了开发信息发布系统的经验和技巧,并且熟悉了科学开发大型软件的具体过程,提高了分析和解决实际问题的能力。 软件信息发布系统的设计与实现45参考文献1章柏幸,杨作兴.软件发布方法M.北京:清华大学出版社.20022肖金秀.ASP 3.0 动态网页培训教程M.北京:冶金工业出版社.2000.83梁嘉超,卢山,夏运强 .ASP 后台数据库网站制作实例经典M.北京:冶金工业出版社,20014(英)DinoEsposito,程永译.ASP 数据访问技术研究J.软件学报.2001,NO.64975韩泽坤.Access 2003 公司数据库管理综合应用J.软件学报.2004,NO.1101376李春葆,曾平.Access 2000 数据库应用J.北京:清华大学出版社.程序员之家.2005.5,NO.45637余方,鞠光明,鞠仪静.数据库分析:Access 2003 版J.程序员之家.2004,(4):13208(英)John Carter,译者:张淮野,袁怡等.数据库设计与 ASP 编程J.程序员周刊.2004,NO.42:57899John Rodley,Web 开发指南M.北京:清华大学出版社.199710ZHU Qian-fei,GAO Mang.COM组件和ActiveX技术在B/S体系结构中的应用J.计算机工程与设计.第26卷 第3期.2005.311Jim Lewallen,王宏安等译.Intrant Web开发指南M.北京:清华大学出版社.200412(美)Stephen T.Albin,刘晓霞,郝玉洁译.软件体系结构的艺术J.程序员之家. 2001,50(10):586513 WANG Yi-bin,Li Xin-ke.Research on method of sotware carchitecture designJ.计算机工程与设计.第 26 卷 第 3 期.2005 年 3 月软件信息发布系统的设计与实现4614 Roger S. Pressman.软件工程实践者之路J.程序员开发指南.2001,NO.42:6492 15冯沃辉,黄智诚.中文 Dreamweaver MX 网页设计经典M.北京:冶金工业出版社,200316高国宏.Dreamweaver 4 网页设计实例教程M.北京:冶金工业出版社,200117Microsoft Corporation. Microsoft .NET 框架组件服务J.计算机学刊 2000, NO.425318Chris John Idzerda.COM+实现J.计算机工程与设计.2000 年 11 月19前导工作室.网络安全技术内幕J.计算机安全.2000,42(2):204220Gerry OBrien.实用技术:Microsoft IIS 管理技巧M.电子工业出版社.2003.7软件信息发布系统的设计与实现47致 谢 四年的大学学习,我完成了多次的论文设计,这一次的毕业论文可谓是最重要的一次,也是充分体现自己所学的一次。此次的毕业论文能得以顺利完成,首先要感谢此次的论文指导老师颜君彪教授的精心指导,颜教授严谨的治学态度、渊博的学识和对事业执着追求的精神,不得不让我敬佩。颜教授在整篇论文的设计与实现的过程中对我付出的辛勤劳动,给予了悉心的指导,对我的学业和工作严格要求,并且对我的生活给予了无微不至的关怀,我只能以尽可能优秀的论文报答老师的汗水,在将来的工作中以更优异的业绩让老师自豪。接着,要感谢四年来教育我的的老师,是这些老师让我在整个大学的学习中,冲破各种各样的困难,培养了热爱学习,注重实践的学习心态,为将来的工作打下了良好的基础。最后,还要感谢一直和我合作,一直鼓励我向前进,与我互相讨论,使我的技术和知识水平有明显提高的同学。软件信息发布系统的设计与实现48附 录软件信息发布页面文件:add.asp: 软件信息发布系统:!-function isok(theform)if (theform.txtname.value.length5) alert(您的姓名最少要1个字,最多5个字!);软件信息发布系统的设计与实现49 theform.txtname.focus(); return (false); if (theform.txtshowname.value.length30) alert(软件名称最多30个字!); theform.txtshowname.focus(); return (false); if (theform.txtshowname.value=) alert(软件名称您没有填写!); theform.txtshowname.focus(); return (false); if (theform.txttitle.value= | theform.txttitle.value.length1000) alert(简介不能为空 及 请少于1000汉字!
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:ASP+ACCESS软件信息发布系统设计(源代码+论文+开题报告+任务书+答辩PPT)
链接地址:https://www.renrendoc.com/p-438928.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知人人文库网,我们立即给予删除!