已阅读5页,还剩68页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件信息发布系统的设计与实现 - 1 摘摘 要要 随着信息技术的迅速发展,通过数据库集成各种公共信息资源,统一管理,集中 发布,已成为信息发布平台的发展方向。基于Asp平台的信息发布系统适应信息化建设 和信息系统建设这一趋势,以公共信息的应用为核心,克服了原有信息发布系统发布 信息速度慢、质量差、信息难以管理和控制等缺点,构建了一个基于Internet的来源 通畅、发布快捷、资源丰富、安全可靠的综合信息发布系统平台。研究了信息发布系 统的结构,并详细介绍了信息发布系统的开发背景、开发意义、软件开发流程和系统 实现的一些技术细节,同时还对系统的安装与配置、系统的安全与性能优化等问题进 行了详细的阐述。最后对信息发布系统建设总结。 软件信息发布系统设计与实现是采用基于B/S结构的三层体系结构,采用ASP技术、 Access数据库技术进行设计与实现的,具有功能强大、性能优越、安装部署简单、安 全体系完备等优点,并具有良好的可扩展性、可移植性和可维护性,能集中管理各类 信息。 此信息系统提出并采用ASP技术实现了信息发布平台,管理员、用户登录密码认证, 采用数据库管理软件发布信息,为数据统计提供了方便。 关键字:信息发布,关键字:信息发布, ASPASP ,AccessAccess ,性能优化,性能优化 软件信息发布系统的设计与实现 2 AbstractAbstract Along with the quicdevelopment trend of information construction and information system construction, centered by the application of public information, overcomes the weakness of publishing information oflow speed, poor quality, and difficulty to manage and control which the original systems of information publishing has processed,and constructsa good-quaity, high-efficiency, plentiful-resources,safe anddependable platform of synthesized information publishing which is basedon Internet. The thesis fixes attention on the designing of structure of information publishing system,introduces indetail the developments background, the developments meaning, the process of developing software and some technique details of realizing of the system and explains in detail the installation and configure of the system,the safety and optimizing performance of the system. At last, the thesis has a more comprehensive summarization of the realization of the publishing information system to the Beijing University of Technology. The system of the information publishing, It has many advantages of mighty function, superior performance, simple deployment and complete safe construction. KeywordsKeywords: InformationInformation publishingpublishing, ASPASP, AccessAccess, OptimizingOptimizing performanceperformance 软件信息发布系统的设计与实现 3 引引 言言 软件工程早已确认在生存周期内软件必将经历反复的开发循环,如何加速这一循 环过程?从而有效地提高软件的进化能力,研究者已从软件设计方法学和软件开发环 境等角度进行了深入的探讨,但对于软件发布模式和打包发布的研究这一重要问题却 涉及尚少。该论文将介绍一种基于分布式处理和界面仓库的新型软件发布模式,探讨 其在软件开发中的具体作用和技术实现。并通过实例软件发布系统及发布安全问题表 明该模式的有效性。 基于 WEB 技术的管理系统,由于开发周期短;与用户平台无关;易于实现交互式 应用;能对信息进行快速、高效的收集、处理和发布,近几年来得到了迅速发展。而 ASP 技术由于其开发效率高、交互性好,安全性强等特点,逐渐成为开发管理系统的首 选工具。 许多基于 WEB 的应用都涉及文件上传操作,常见的信息发布大多是基于 VB(或 DELPHI 等编程语言)开发;基于数据库技术的等等。这些方法一般都需要编程者能同 时掌握 WEB 技术、数据库技术或 CGI 技术或组件技术,对编程者的要求较高。本文将 讲述软件开发的整个过程,并通过开发软件发布系统的整个过程来分析系统运用的技 术。 第一章 课题认识 1.1 课题背景 随着计算机及网络技术的飞速发展,Internet/ Intranet 应用在全球范围内日益 普及,当今社会正快速向信息化社会前进,信息自动化的作用也越来越大,并且信息 已成为世界三大资源之一,并成为我们日常生活中必不可少的部分,信息化已成为社 会发展的一个必然趋势,信息化水平也是科学技术水平和经济发展程度的重要标志。 软件信息发布系统的设计与实现 4 众所周知,信息管理活动从手工记录到计算机存储,从平面文件到关系型数据库,从 单机单用户数据库访问模式到客户/服务器模式,从客户/服务器模式到浏览器/服务器,信 息管理的技术越来越先进、科学和客观。同时,可管理的信息容量也越来越大,更适 应信息膨胀时代的要求。然而软件也应用于各个领域并在迅速的发展中,随着当今社 会信息化的日新月异的发展,计算机应用已经渗透到日常工作的许多方面无论是其自 身还是所发挥的作用,计算机都标志着一种高科技、高效率和高水平。在信息的海洋 中,软件信息在整个信息体系中起着举足轻重的作用。因此为了能让更多的软件使用 者能获得最全面的软件信息,能用上最好的软件,从而使我们从繁杂的事务中解放出 来,提高了我们的工作效率。为此,有必要介绍一下如何将软件信息发布,充分理解 软件信息发布系统设计意义。 1.2 软件发布系统简介与现状 1.2.1 软件发布模式 软件发布模式是指软件从开发阶段转入运行阶段的方式。传统的软件发布模式具 有一条非常明晰的分隔线,开发者编制完软件后,得到的只是自身能理解和使用的源 代码资源,必须通过编译、连接等过程生成可执行代码,以此做为最终产品提供给用 户1。这种模式存在以下问题:当开发者根据需求变化修改得到新的源码时,并不意 味着一个新的最终产品已经形成,必须通过编译和连接等手段才能得到可执行系统; 软件升级时,必须手工更新到每一个用户,对于企业级应用,这将是一种极其繁重的 高成本工作; 对于不同工作组的用户,一般是通过权限管理来控制对功能的访问,但由于软件 中包含了所有功能,恶意用户可能通过破解或者其它手段进行间接访问,导致安全漏 洞。由此可见,传统软件发布模式体现了开发者和使用者的产品形态,在需要变化频 繁的大型应用系统中,对于诸如瀑布式、叠代式和快速原型法等多种要求反复循环的 软件设计方法,他不可能提供良好的支持。 由于传统软件发布模式的弱点,使得基于 ASP 和 HTML 语言的 WWW 软件开发平台, 在诸如电子商务等因特网 B/S 这类可以看作是需求变化极端的应用开发中占居了主导 软件信息发布系统的设计与实现 5 地位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结构。 对于C/S结构,发布者在服务器运行服务器端软件,并保持其状态,而使用者需安 装软件发布商所提供的专用客户端,并按照发布商的说明完成客户机的设置工作。安 装和运行过程有所不便。 对于B/S结构,软件的发布可以有两种方式: (1)在服务器端发布,发布者制作组件并对组件注册,组件提供COM接口,供程序 调用,如ASP就可以在网页中对组件进行调用,使客户端浏览者通过服务器完成计算或 其他功能3。 (2)在客户端发布,通过访问企业网站,浏览者的浏览器自动下载已将ActiveX控 件和需要的功能链接库打包的数据文件,检查并登记软件发行企业的数字签名,然后 软件信息发布系统的设计与实现 6 解开该压缩包,根据包内的配置文件内脚本的安全性,自动完成客户端软件的安装和 设置,并在网页的相应位置显示ActiveX控件(企业软件界面)供用户操作。 以上B/S结构软件的两种发行方式可以混合使用,完成功能部件和ActiveX控件的 注册,最后,检查并完成网络交互的复杂功能。 1.2.3 软件信息化现状 计算机拥有率和网络覆盖率及网络传输技术水平提高,为企业系统集成、资源整 合、工作协同、信息共享,消除“信息孤岛”等,奠定了一定的物质技术基础。企业 接入网基本每百人拥有计算机 7 台,许多企业管理人员达到人均 1 台的水平,接近国 外先进水平;接入网络的计算机已占总数的 68.4;二是大多数企业建立了内部网、 外部网、企业门户网站。各类网络的覆盖率和业务应用范围加大,已支持到企业的各 个层面,尤其是企业的管理部门和核心业务;三是大多数企业的网络接入方式都达到 了一定的先进水平,带宽加大。77.7的企业内部网主干带宽都实现 100 兆至 1000 兆; 76.4的企业桌面带宽达到 10 兆至 100 兆;大多数企业外部网接入访问带宽在 1 兆以 上,达到高速传输通道水平。 信息优势是企业在未来市场竞争中生存和立足之本。所谓信息优势并不是指企业 拥有多少信息,而是指企业拥有多大的宣传商品信息、获取关键市场分析、经营状况 和决策支持以及新产品开发信息的能力。这些信息优势可以从以上各种不同的角度得 到,而网络为企业提供了一种全新的方式,谁运用得恰到好处,谁就有可能占据先机。 随着网络带宽的逐步扩大,网站已经成为企业信息系统中不可或缺的一个节点。 这个信息节点与众不同的地方就在于:它会成为企业信息释放与收集最有效的工具, 从而成为企业及产品对外的主要窗口。充分利用网站展示信息的能力,将企业的商务 信息有序化,通过网站有效地传播出去。同时,借助网站的互动能力广泛地收集受众 的反馈信息,并加以整理和分析。最后,与企业内部的业务流程紧密结合在一起,以 企业网与内部网隔开即(Extranet/Intranet)形式让信息自外向内再自内向外有序流 动,形成一个闭环的信息系统,真正起到辅助市场和管理决策的作用,从而为企业带 来利润的增长。 软件信息发布系统的设计与实现 7 Intranet/Extranet 可以实时连通企业各组织、各成员之间的联系,提高管理工作 的效率和信息反馈的速率。建立全面涉及企业内部产、供、销以及生产、经营、管理 等主要环节的网络信息系统 NIS,全面提高企业管理工作的质量和效率,这是建立企业 内部管理整体信息优势的措施,也是商务 e 化的关键所在。 如果将网站视为企业信息系统的前端,那么企业内部的 Intranet/Extranet 可以 算是企业信息系统的后端。显然,要使企业的信息系统发挥最大的效益,前端与后端 的无缝衔接是企业商务 e 化能否成功的关键。目前,很多企业对此缺乏足够的重视, 业务流程和业务人员与网站的衔接机制没有建立起来,信息流动没有形成闭环,造成 网站效能低下,直接表现就是网站内容枯燥乏味,严重缺乏交互机制,毫无经营模式 可言。究其原因,其一,基础数据管理水平比较低。这里所说的基础数据包括市场采 样调查数据,产、供、销和经营状态统计数据,产品及企业形象数据等等;其二,是 信息技术的应用水平比较低。具体体现在投入的力度非常不够。殊不知,这两点是建 立企业信息优势的关键和基础。 中国政府对软件产业的重视和版权维护的加强,中国的软件产业在近两年取得了 长足的发展,2001年,国内软件产品销售达到330亿元,比2000年增长38.7%。而在 2001年底的政府大规模软件采购开始进行之后,以金山为代表的国产软件企业在一个 良性的软件市场中逐渐取得了领导地位。中国IT业能够以30%左右的速度发展。 所以软件的快速发展,也带动了各个企业如何将自己的软件信息通过网络这一渠 道发布出去的兴起。就是在这样的一个环境下。开发本系统,系统集合各个软件发布 的优点,开发了一个功能齐全,易用的发布系统。 1.3 软件发布系统现状与研究意义 现在是信息化时代,进入E时代,不管是大的如房地产,小到一个小产品,您都可 以在网上找到。这些信息多得数不清,可以说你想知道某个事物。第一方法就是到网 上去寻找。可以说我们的生活已经离不开网络。 1.3.1 软件业现状 我国的软件产业从80年代中期开始发展,现已成为一个年销售额超过130 亿元的 软件信息发布系统的设计与实现 8 重要产业部门,是高新技术产业部门的主要生力军之一。 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 网与计算机的普 及极大地准动了中国软件产业的发展,政府大力推行的国民经济信息化建设为软件和 信息服务业带来良好的发展机遇,使国内计算机硬件市场高速发展,也造就了潜在的 软件市场。国家主导的信息化进程为中国软件业的发展创造了巨大的软件需求,成为 软件业发展的主要推动力量之一。 1.3.2 信息发布系统建设现状 软件发布系统是商家对外宣传和软件客户提供信息服务的重要窗口,因其重要性 己成为软件发布的一个重要不分。大多数信息发布系统只是一个小网站,其静态信息 的制作和动态信息的更新都是由网站管理员手工完成的,不仅信息发布效率低,而且 更谈不上信息的有效管理与保证信息的安全。少部分公司实现了基于数据库的带自动 软件信息发布系统的设计与实现 9 发布功能的信息发布系统,大大提高了信息发布的质量,但从这些信息系统的使用情 况来看。因此有必要来谈论一下信息发布站点的建设。 动态信息发布系统是针对企业内部与外部网站信息管理、信息发布和网站维护而 开发的基于Web交互模式的内容管理和发布应用系统。系统包括信息采集、整理、分类、 审核、发布和管理的全过程,具备完善的信息管理和发布管理功能,是企事业单位网 站、内部网站内容管理和维护的理想工具。应用该系统,政府等各部门可以随时方便 地提交需要发布的信息而无须掌握复杂的技术4。它的出现大大减轻了信息发布更新 维护的工作量,通过数据库的引用,将信息发布的更新维护工作简化到只需录入文字 和上传图片,从而使信息更新速度大大缩短,通过应用信息发布系统,信息快速更新 从而大大加快了信息的传播速度,也吸引了更多的长期用户群,时时保持活动力和影 响力。 1.3.3 网络发布信息优势 信息化是由计算机与互联网生产工具的革命所引起的工业经转向信息经济的一种 社会经济过程,网络信息化它能对多种信息进行比较对信息不断的进行更新和加工、 组合和整理,基于此知识重组。 通过表1.1的传统发布模式与现代信息发布模式的比较可以看出,运用网络对信息 进行发布软件的页面更新在多方面都有优势,尤其智能化方面。通过网络发布系统我 们可以对信息进行批量更新维护,而且更新时候可以通过数据库的更新,就可以对系 统进行全面的改变,工作效率高,这些都是传统信息发布方法所不能比拟的。因此, 我有必要研究运用网络发布信息。 表1.1 传统发布模式与现代发布模式比较 传统的信息发布信息发布系统 页面更新单独设计、更新、易产生错误连接按类型批量更新、自动验证分配访问地址 维护使用页面需要单独维护上传根据类型批量维护 软件信息发布系统的设计与实现 10 可扩展性单独设计制作仅需通过界面更新数据库 工作效率很烦琐高效 1.3.4 软件信息发布系统研究意义 随着社会的发展,行业竞争的日趋激烈,如何提高工作效率、降低管理成本、提 高服务水平和企业的竞争能力,是每一个企业管理者最为关注的问题。越来越多的管 理者认为实行计算机科学化管理是解决这一问题的关键。 软件产品开发企业由于行业特点,传统操作过程复杂,文件繁多,竞争日趋激烈。 越来越多的信息问题涌现出来,例如:一方面,要不断开发客户市场,对客户的基本 资料,软件需求分布情况有较为全面的了解,另一方面,要作好软件实时更新,升级。 以往通过简单的调查单的发布收集,显然是不可取的。必须采取更有效的解决办法。 同时收集处理信息的速度、信息的准确性、安全性,还影响到公司整体的管理水平和 决策层对整体业务的控制和协调。采用计算机软件管理信息是解决上述问题的一个行 之有效的办法。 软件发布管理软件,就是根据开发市场情况与本公司的发展趋势,软件开发情况 以及发布等方面的信息方便、快捷地管理与发布,提高公司在同行业中的知名度,增 强公司的竞争力。 在当今信息化时代的,我们要收集资料以及发布信息已经不是简简单单的打印几 张纸发发传单那么简单。鉴于目前现有的大多数企业信息发布难以管理与控制等缺点, 因此当前开发基于WEB的功能强大且安全可靠的信息发布系统就具有特别重要的意义。 信息发布系统是产品信息发布平台,它有以下几个优点: 首先,它能有效控制和管理各种信息的发布和管理。有以软件信息网上越来越多, 种类繁多,但是又不能有效控制,杂乱无章。为了能让用户及时找到自己需要的并且 将他下载使用。信息发布系统能实现信息的快速有序发布,大大提高信息发布效率与 质量。 网络将是今后企业信息系统必然要利用的重要工具,因为产品发布相当一部分要 通过网络来实现。例如:在企业/品牌宣传方面,可将原来用于企业形象宣传介绍和产 品/品牌广告的纸面印刷材料实时动态地移到网上,这样不仅节省了大量费用,而且网 软件信息发布系统的设计与实现 11 络主页的没有地理距离、24小时服务和动态双向开放企业和品牌最新信息的功能是传 统方式无法比拟的;在商品或原材料的供需和信息服务方面,可将原来的各类定货会 和商业供销过程移到网上,在广告策划方面以传统方式(如:电视、报纸、媒体、小礼 品等)宣传网址,而在网络主页中利用各种技术手段(如多媒体、动画、全方位的产品信 息分类、智能化的查询和促销方式等)宣传产品的详细信息;因此通过网络发布信息对 于企业产品的发布具有极其重要的意义。 第二章 发布系统的结构分析 信息发布系统是一个基于网络的软件,软件在正式编写程序代码前需要两个不可 软件信息发布系统的设计与实现 12 或缺的步骤:第一个是对业务逻辑的分析和定义,以形成业务逻辑结构,一般称为需求 分析阶段:第二个是根据业务逻辑结构设计软件结构,包括数据字典、数据处理方式、 编码结构等,一般称为架构设计阶段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技术,用通用浏览器就实现了原来需 要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构 造技术。随着Windows98/Windows 2000将浏览器技术植入操作系统内部,这种结构更 成为当今应用软件的首选体系结构。显然B/S结构应用程序相对于传统的C/S结构应用 程序将是巨大的进步。 B/S结构采用星形拓扑结构建立企业内部通信网络或利用Internet虚拟专网(VPN)。 前者的特点是安全、快捷、准确。后者则具有节省投资、跨地域广的优点。须视企业 规模和地理分布确定。企业内部通过防火墙接入Internet再整个网络采用TCP/IP协议。 B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有 一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再 由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司 软件信息发布系统的设计与实现 13 内部的安全认证(如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等。 2.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结构 软件信息发布系统的设计与实现 14 硬件环境 主要建立在广域网上,不必是专门的网络硬件 环境。信息自己管理。一般只要操作系统和浏 览器 一般建立在专用的网络上,小范围里 的网络环境,局域网之间再通过服务 器提供连接和数据交换服务 安全要求 对安全的控制能力相弱,面向不可知的用户群。一般面向相对固定的用户群,对信息 安全的控制能力很强。 程序架构 对安全以及访问速度的多重的考虑,建立在需 要更加优化的基础之上。比C/S有更高的要求。 可以更加注重流程,可以对权限多层 次校验,对系统运行速度可以较少考 虑。 软件重用 要求构件相对独立的功能。能够相对较好的重 用。 不可避免的整体性考虑,构件的重用 性不如在B/S要求下的构件的重用好。 系统维护 构件组成方面构件个别的更换,实现系统的无 缝升级。系统维护开销减到最小。 必须整体考察,处理出现的问题以及 系统升级。升级难。可能是再做一个 全新的系统口 处理问题 面向不同的用户群,分散地域,与操作系统平 台关系最小。 处理用户面固定,并且在相同区域, 安全要求高需求。 信息流信息流向可变化,B-B, B-C 一般是典型的中央集权的机械式处理, 交互性相对低。 通过表2.1对B/S结构与C/S结构的介绍和比较可以看出,B/S结构在很多方面都有 优越性,并且根据软件发布信息的发展趋势,B/S更适合本系统。 2.2 两层结构与三层结构 随着Internet的进一步普及和发展,基于网络的数据处理问题日益成为企业信息 化的中心环节。数据库的灵活性、安全性和可拓展性等成为数据处理技术焦点。以数 据处理结构为主线,回顾并展望基于网络的数据处理方式的演变。 软件信息发布系统的设计与实现 15 2.2.1 两层结构 在基于网络的数据处理中,客户机/服务器(Client/Server)二层计算模式具有里 程碑意义。这种模式在20世纪80年代后期开始引入业界。它为多用户系统提供了前所 未有的双向交流感和灵活性,革命性的改变了传统的应用设计和系统实现方式,很快 便在各种类型的软件系统设计与开发中获得了广泛应用,到20世纪90年代初期,这种 计算模式已成为业界的主流技术。客户机/服务器二层计算模式的基本结构是对客户端 提供用户界面、运行逻辑处理应用,数据服务器接受客户端SQL语句并对数据库进行查 询,然后返回查询结果。用一个形象的比喻来描述就是:服务器端像一个仓库,主要功 能是存储原材料和成品,但并不进行加工,而客户端就像最后的加工车间,完成从原 料到成品的整个制造过程,然后将成品存储到仓库。由于业务的处理逻辑主要在客户 端执行,因此这种结构也被成为胖客户(Fat client)结构。 我们可以看看这种两成结构的应用软件模型如图2.1所示,从中我们可以看到用户 界面和应用界面是集合在同一个客户机上的。然后通过SQL语句和数据库进行数据通信。 SQL 语言 客户机服务器 图2.1 两层结构应用软件模型 该结构最大的优点在于结构简单,开发和运行的环境简单。但也正是这种结构, 产生了其原生性的问题。当将这些部门级都成功应用逐渐推广到企业级的关键任务时, 这些小规模环境下运行就得到良好的应用,一旦进入大规模生产系统之后 ,性能呈几 何级数下降,以致影响到系统的可靠性;在系统开发完成后,整个系统的安装也非常繁 杂。在每一台客户机上不但要安装应用程序,而且必须安装相应的数据库连接程序, 还要完成大量的系统配置工作。 其次是系统的安全性问题。在二层结构下,大量代码化的企业业务流程驻留在客 户机上,给系统的安全性带来了极大的考验。同时随着用户数量的增加,这种业务逻 辑的维护成本也越来越高。 用户 逻辑 界面 界面数据库 软件信息发布系统的设计与实现 16 最后是系统间的通讯功能障碍。当二层计算模式从部门级应用拓展到企业级应用 时,二层结构的应用之间几乎没有交互性操作,因此很难实现分布系统的组件技术。 以上这些问题是两层结构本身的原生性问题,仅仅依靠对二层结构进行细枝末节 的修补和开发,无法很好解决。要真正解决这些问题,必须从根本上改变这种二层结 构设计。 2.2.2 三层结构 从上面的分析中可知,企业应用系统的不断扩充和新应用的不断增加,基于传统 的二层数据处理结构在系统拓展性、维护成本、数据安全性和应用间通讯功能障碍等 原生性问题的存在,在应用中已是捉襟见肘、力不从心。在这样的背景下,三层数据 计算结构应运而生。 三层结构就是将数据处理过程分为三部分:第一层是客户端(用户界面),提供用户 与系统的友好访问;第二层是应用服务器,专司业务逻辑的实现:第三层是数据服务器, 负责数据信息的存储、访问及其优化。由于业务逻辑被提取到应用服务器,大大降低 了客户端负担,因此也成为瘦客户(Thin Client)结构,如图2.2所示三层机构应用软 件模型。 自定义协议SQL语言 客户机应用服务器数据库服务器 图 2.2 三层机构应用软件模型 如图2.2所示可知,三层结构在传统的二层结构的基础上增加了应用服务器,将应 用逻辑单独进行处理,从而使得用户界面与应用逻辑位于不同的平台上,两者之间的 通信协议由系统自行定义。通过这样的结构设计,使得应用逻辑被所有用户共享,这 是两层结构应用软件与三层应用软件之间最大的区别。 这种三层结构数据处理的优势可以看成它在二层结构中间加了标准化的加工厂和 传输路线,从而可高效生产并传输客户端所需产品。具体而言主要有以下几点: 首先,通过将整个系统分为不同的逻辑块,大大降低了应用系统开发和维护的成 用户界面应用逻辑数据库 软件信息发布系统的设计与实现 17 本。 三层结构将表示部分和业务逻辑部分按照客户层和应用服务器相分离,客户端和 应用服务器、应用服务器和数据库服务器之间的通讯、异构平台之间的数据交换等都 可以通过中间件或者相关程序来实现。当数据库或者应用服务器的业务逻辑改变时, 客户端并不需要改变,反之亦然,大大提高了系统模块的复用性,缩短开发周期,降 低维护费用。 其次,系统的扩展性大大增强。 由于系统模块化,使得系统很容易在纵向和水平两个方向拓展:一方面可以将系统 升级为更大、更有力的平台,同时也可以适当增加规模来增强系统的网络应用。由于 摆脱了系统同构性的限制,使得分布的数据处理成为可能。 在技术和市场日新月异的信息时代,竞争的规则己从“大鱼吃小鱼”演变为“快 鱼吃慢鱼”,以中间件为基础,构建三层的数据处理结构,将会更快、更好的促进信 息化,提升竞争力,在激烈的市场竞争中赢得优势、脱颖而出。 本章分析了科学开发软件过程中应该考虑的问题,分析了基于网络的软件应该考 虑的B/S结构和C/S结构之间的区别,还分析了架构软件体系的两层结构和三层结构的 优缺点,最后介绍了软件开发流程。对于信息发布系统这样一个基于网络平台的软件, 根据其本身的特点,更适合采用B/S结构。在软件架构方面,三层结构的优势决定了信 息发布系统采用三层结构模式。 软件信息发布系统的设计与实现 18 第三章 相关技术应用 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程序可以使用 Perl,C,C+等语言编写,跨平台性能好,但CGI程序是服务器端的可执行程序与Web 服务器占据不同的进程,尤其是多用户访问时,会挤占服务器的系统资源,导致CGI程 序和Web服务器运行效率很低,开发数据库也没有统一标准。 (2) ASP (Active Server Pages)技术ASP技术是微软公司开发的一种类似 Html,script (脚本)与CGI的结合体。ASP的核心技术是对组件和对象技术的充分支持。 但ASP技术有很明显的缺陷。它的安全性与稳定性不好,跨平台性较差,很难提高程序 效率。 (3) PHP (Personal Home Page)技术PHP是一种易于学习和使用的服务器端脚本语 软件信息发布系统的设计与实现 19 言,它是嵌入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 可利用早期绑定、实时编译、本机优化 和盒外缓存服务。这相当于在编写代码行之前便显著提高了性能。 世界级的工具支持。ASP.NET 框架补充了 Visual Studio 集成开发环境中的大量 工具箱和设计器。WYSIWYG 编辑、拖放服务器控件和自动部署只是这个强大的工具所 提供功能中的少数几种。 威力和灵活性。由于 ASP.NET 基于公共语言运行库,因此 Web 应用程序开发人 员可以利用整个平台的威力和灵活性8。.NET框架类库、消息处理和数据访问解决方 案都可从 Web 无缝访问。ASP.NET 也与语言无关,所以可以选择最适合应用程序的语 言,或跨平台的多种语言分割应用程序。另外,公共语言运行库的交互性保证在迁移 软件信息发布系统的设计与实现 20 到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模式,最终客户将花最少的 钱,有机会接触到具有国际先进水平的IT技术,最有效地使用应用软件,集中精力做 他们业的核心业务。用户企业不必设立单独的IT部门,因为硬件系统较为耐用,软件 系统的维护和优化、开发由ASP公司承担服务,这样就可以降低大量的系统维护费用, 并去了后顾之忧11。同时,他们可将在IT上省下的资金投到他们具有最大竞争优势的 方面,加速企业的成长,并更快地走向成功。而且asp用户能够省投资。用户以较小的 投资。事实上,已经有60%的美国企业此刻正在享受专业的IT外包服务,而国内近年来 才开始兴起此项服务。将来IT服务的外包也会像企业租用电信的电话、传真,委托邮 局投递信函一样普遍。互联网本身就是沟通全球、促进协作的,IT技术的应用将紧密 软件信息发布系统的设计与实现 21 和互联网联系在一起才能发挥其跨越时空的优越性。目前,已有越来越多的企业在更 广泛的领域选择了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等特定 技术,方便地存储、检索和处理服务器平台上的关键信息,提供了灵活、可靠、安全 的客户/服务器解决方案12。Access可以接受多种格式的数据,从而方便了用户在不 同系统之间进行数据转换。 随着Internet网络应用的发展,Access还增加了使用信息发布Web向导和用HTML格 式导出对象的功能。 软件信息发布系统的设计与实现 22 3.3 系统开发流程图 为了让软件系统的开发严格按照开发流程图开发系统,要有软件工程理论的支持 和对软件项目的科学管理。软件系统的开发需要按照需求分析、概要设计、详细设计、 代码编写、测试等软件开发流程进行,就可以顺利实现。 一项计算机软件的筹划、研制及实现,构成一个软件开发项目。一个软件开发项 目的进行,一般需要在人力和自动化资源等方面作重大的投资。为了保证项目开发的 成功,最经济地花费这些投资,并且便于运行和维护,在开发工作的每一阶段,需要 编制一定的文件。这些文件连同计算机程序及数据一起,构成为计算机软件。文件是 计算机软件中不可缺少的组成部分,它的作用是:为开发人员在一定阶段内的工作成果 和结束标志;向管理人员提供软件开发过程中的进展和情况,把软件开发过程中的一 些“不可见的”事物转换成“可见的”文字资料13。以便管理人员在各个阶段检查开 发计划的实施进展,使之能够判断原定目标是否己达到,还将继续耗用资源的种类和 数量:记录开发过程中的技术信息,便于协调以后的软件开发、使用和修改;提供对 软件的有关运行、维护和培训的信息,便于管理
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 石河子大学《专业外语文献阅读与写作一》2021-2022学年第一学期期末试卷
- 石河子大学《药物分析家庭安全合理用药》2022-2023学年第一学期期末试卷
- 布草洗涤承包合同
- 石河子大学《食品分析实验》2023-2024学年第一学期期末试卷
- 老年病及预防教案中班
- 沈阳理工大学《三维工程软件实训》2021-2022学年期末试卷
- 沈阳理工大学《建筑结构选型》2022-2023学年第一学期期末试卷
- 2018年四川内江中考满分作文《我心中的英雄》3
- 沈阳理工大学《电工与电子技术》2023-2024学年期末试卷
- 光伏承包合伙合同与合伙协议书
- 2024年初级社会体育指导员(游泳)技能鉴定考试题库(含答案)
- 湖北省危险废物监管物联网系统管理计划填报说明
- Unit6ADayintheLife教学设计2024-2025学年人教版(2024)英语七年级上册
- 苏教版三年级上册数学期末考试试卷及解析答案
- 2024年个人劳务承包合同书
- 知道网课智慧《睡眠医学(广州医科大学)》测试答案
- 如果历史是一群喵课件
- 危大工程以及超过一定规模的危大工程范围
- 门诊导诊课件
- 网架吊装施工专项方案(技术方案)
- 上半年临床路径在妇产科的优化策略
评论
0/150
提交评论