软件体系结构大作业模板

合集下载

软件体系结构大作业

软件体系结构大作业

软件体系结构大作业学院:计算机软件学院班级: B120407 学号: Q12010223 姓名:林杨腹有诗书气自华一、简述软件体系结构的性质、研究意义和目标是什么? (不少于300字)答软件体系结构的性质:软件体系结构是具有一定形式的结构化元素,即构件的集合,包括处理构件、数据构件和连接构件。

处理构件负责对数据进行加工,数据构件是被加工的信息,连接构件把体系结构的不同部分组组合连接起来。

这一定义注重区分处理构件、数据构件和连接构件,这一方法在其他的定义和方法中基本上得到保持。

(1)软件体系结构是软件设计过程的一个层面,是相对独立的、有价值的软件设计方法的总结,可作为软件开发指导性的策略和途径。

(2)强调设计过程,而非分析的过程。

分析的目标是理解和表示,设计的目标是实现。

(3)非用户的观点及非功能的观点。

对于用户,结构是软件系统功能的组合。

对于设计者,结构是为特定目标而设立的软件成分以及成分之间的关系。

研究意义:软件体系结构是软件工程的重要研究领域,通过对基本软件结构和经典设计风格的学习和研究,掌握软件体系结构设计的基本原则和技术途径;能够拓宽软件方法和技术的知识面,提高软件的设计能力;软件体系结构的重要作用体现在以下三个方面:1.体系结构是风险承担者进行交流的手段,软件系统的各个风险承担者都关心着系统的各个不同的方面,这些方面都受体系结构的影响。

腹有诗书气自华2.体系结构是早期设计决策的体现,软件体系结构体现的这些早期的约束比起后续的开发、设计、编码、运行服务以及维护工作更为重要。

3.软件体系结构是可传递和可重用的模型。

目标:软件体系结构是一系列决策和基本原理的集合,这些决策的目标在于开发高效的软件体系结构。

在体系结构设计中所强调的基本原理是系统的可理解性、可维护性和可扩展性。

以一些恰当的形式汇集一定数量的体系结构元素满足系统的主要功能和性能的需求,另外还能同时表示出一些非功能性需求。

开发出合理的、高效的、高质量的软件体系结构,重点解决系统开发过程中的总体结构问题。

软件设计模式与软件体系结构实验报告

软件设计模式与软件体系结构实验报告

软件设计模式与软件体系结构实验报告《软件体系结构》大作业(1)学院:软件学院课程名称:软件体系结构专业班级:学生姓名:学号:学生姓名:学号:指导教师:完成时间:年月日评分表1、叙述各小组成员完成本题目的分工协作情况。

小组中的每个成员都先理解题目要求及涉及的设计模式,并一起完成代码编写。

另外,组长负责文档制作。

2、评分表作业正文需要包括以下内容:1、作业题目内容的详细描述。

2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的软件体系结构名称及画出相应的体系结构图。

3、画出完成本题目所设计程序的设计类图;如还有其它图,也一并画出。

4、完成本题目所设计的程序代码。

5、程序运行的典型界面截图1、作业题目内容的详细描述。

【作业2.1-1】例2.3为使用工厂方法模式设计的汽车保险管理应用程序实例。

现在需要扩展例2.3的设计图,添加一个名为LuxuryCarInsurance 的类,而且需要编写此类和其它需要添加的类的代码,详细要求参见光盘的相应作业部分。

【作业 2.1-1】在例 2.4中,设计而且实现了豪华(Super)和中等(Medium)别墅(House)与公寓(Condo)的查询。

要求在该设计的基础上,增加一个新的类SemiDetacher(半独立式楼宇),而且编写代码,实现相应的查询功能,详细要求参见光盘的相应作业部分。

2、完成本题目所采用的软件设计模式名称及画出相应的类图,或者是所采用的软件体系结构名称及画出相应的体系结构图。

【作业2.1-1】采用的是工厂方法模式【作业2.1-2】采用的是抽象方法模式3、画出完成本题目所设计程序的设计类图;如还有其它图,也一并画出。

【作业2.1-1】采用的是工厂方法模式。

软件体系结构作业

软件体系结构作业

软件体系结构作业姓名:蒋妮学号:S1124 W174第1章软件体系结构概论一、基于构件的软件开发方法能够有效提高开发效率,简述在实际的项目中有哪些方式获得构件、如何管理以及重用构件?1)构件获取有多种不同的途径:1.从现有构件中获得符合要求的构件,直接使用或作适应性修改,得到可重用的构件;2.通过遗留工程,将具有潜在重用价值的构件提取出来,得到可重用的构件;3.从市场上购买现成的商业构件,即COTS(Commercial Off-The-Shell)构件;4.开发新的符合要求的构件。

2)构件的管理:它包括四个部分:1.构件描述:构件模型是对构件本质的抽象描述,主要是为构件的制作与构件的重用提供依据;从管理角度出发,也需要对构件进行描述,例如:实现方式、实现体、注释、生产者、生产日期、大小、价格、版本和关联构件等信息,它们与构件模型共同组成了对构件的完整描述。

2.构件分类与构件库组织:构件分类方法包括三类:关键字分类法:基本思想是根据领域分析的结果将应用领域的概念按照从抽象到具体的顺序逐次分解为树形或有向无回路图结构,每个概念用一个描述性的关键字表示,不可分解的原子级关键字包含隶属于它的某些构件。

刻面分类法:主要思想来源于图书馆学。

定义若干用于刻画构件特征的‘面’,每个面又通过若干概念表述构件在面上的特征。

如描述构件执行的功能、被操作的数据、应用的语境或任意其它特征。

超文本组织法:基本思想是所有构件必须辅以详尽的功能或行为说明文档;说明中出现的重要概念或构件以网状链接方式相互链接;3. 商业化构件分类。

如果把软件系统看成是构件的集合,从构件的外部形态看,构成一个系统的构件可分为:独立而成熟的构件;有限制的构件;适应性构件;装配的构件;可修改的构件;4.人员及权限管理。

构件库系统是一个开放的公共构件共享机制,任何使用者都可以通过网络访问构件库。

一般来讲,构件库系统可包括五类用户,即注册用户、公共用户、构件提交者、一般系统管理员和超级系统管理员。

软件体系结构作业(完整版)

软件体系结构作业(完整版)

第一章:1•根据自己的经验,谈谈对软件危机的看法软件危机是指软件生产方式无法满足迅速增长的计算机需求,开发和维护过程出现的一系列问题。

以下几个原因导致:(1)软件自身特点(2)开发人员的弱点(3)用户需求不明(4)缺乏正确理论指导(5)开发规模越来越大(6)开发复杂度越来越高可以通过软件生命周期的模型和软件工具的使用来缓解危机,通过程序自动化和软件工业化生产的方法实现软件标准化的目标,进一步缓解软件危机带来的影响。

软件危机有利有弊,除了带来许多麻烦,也给我们带来许多挑战,克服危机的过程,我们在技术上和创新上都有了一个提升,也算是间接为软件产业的发展做了贡献。

2•什么是软件重用,软件重用的层次可以分为哪几个级别?软件重用:是指在两次或多次不同的软件开发过程中重复使用相同或相似软件元素的过程。

可以分为三个层次:(1 )代码重用(2)设计结果重用(3)分析结果重用3•什么是可重用构件?相对于普通的软件产品,对可重用构件有何特殊要求?可充用构件表示软件重用过程中,可重用的软件构件元素可重用构件的特殊要求:(1)可重用构件应该具有功能上的独立性与完整性;(2)可重用构件应该具有较高的通用性;(3)可重用构件应该具有较高的灵活;(4)可重用构件应该具有严格的质量保证;(5)可重用构件应该具有较高的标准化程。

4•基于构件的软件开发的优势是什么?基于构件的软件开发面临哪些挑战和困难?优势:基于构件的软件将软件开发的重点从程序编写转移到了基于已有构件的组装,更快地构造系统,减轻用来支持和升级大型系统所需要的维护负担,从而降低了软件开发的费用困难和挑战:没有可依据的参考,可用资源和环境缺乏,开发难度高,而各方面需求增长速度与日剧增,更新和升级的跟进是一个不小的挑战•此外,在同一系统采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中所要面对的一个严峻的问题挑战和困难:(1)在同一系统采用多个开发商提供的构件,它们之间的兼容性可能是开发过程中所要面对的一个严峻的问题;(2)采用随处可以购买到的构件可能会使开发出来的软件产品丧失技术上的独创性和市场上的竞争力;(3)第三方的构件开发商可能歇业,这会使购买的构件失去维护服务。

软件体系架构课程-期末大作业-整合版

软件体系架构课程-期末大作业-整合版
(3)在移动端也能使用
性能
(1)平台能自动生成相关数据报表与数据分析结果
(2)平台能根据相关数据报表与数据分析结果提供智能化决策建议
(3)平台能统一管理各种数据库信息
可测试性
(1)测试人员能对系统的代码部分,设计和整个系统进行测试
(2)
2.请你阐述为了实现这些质量属性,而采用的具体战术与架构模式。
1.可用性技术。当系统不再提供与其规范一致的服务时,故障就发生了;该系统的用户可以观察到这个故障。错误可能会导致故障的发生。可用性战术将会阻止错误发展成故障,至少能够把错误的影响限制在一定范围内,从而使修复成为可能。
(4)检测攻击:系统应该检测到恶意攻击。
(5)从攻击中恢复:应该审计和跟踪用户的行为。
可变性
(1)支持修改用户个人信息。
(2)支持对冗余数据库的修改和删除
(3)支持数据库平台的变更
(4)支持对使用平台的变更。
易用性
(1)不用重复填写个人信息
(2)统一平台能够办理全部业务,不用根据特定的需求登陆特定的系统
(1)错误检测(2)错误恢复-检测和修复(3)错误恢复-重新引入(4)错误预防
2.可修改性战术。控制可修改性的战术,其目标是控制实现、测试和部署变更的时间和成本。
(1)局部化变更(2)防止连锁反应(3)推迟绑定时间
3.性能战术。性能战术的目标就是对在一定的时间限制内到达系统的事件生成一个响应。到达系统的可以是单个事件,也可以是事件流的形式,它是请求执行计算的触发器。它可以是消息的到达、定时器到时、系统环境中重要的状态变化的检测,等等。系统对事件进行处理并生成一个响应,性能战术控制生成响应的时间。等待时间是事件到达和对该事件生成响应之间的时间。
4.安全性战术。击中恢复有关的战术。

软件体系结构课程-期末大作业报告范例1

软件体系结构课程-期末大作业报告范例1
3.易用性:系统面向所有市民,用户交互需要尽量简洁,使得市民能简单地使用这个系统。
4.可用性:由于系统包含了众多日常需要用到的功能,需要保证系统能长时间无故障运行
5.性能:系统会被多人同时使用,因此需要保证速度,吞吐量,以及持续高速性。
6.移动性:能够在移动端使用。
7.分区容错性:以实际情况而言,分区是对通信的时限要求。
解释:AP wihtout C:要高可用并允许分区,则需放弃一致性。现在众多的NoSQL都属于此类。
架构模式:
1.层次模式。
为了降低软件的耦合性,更便于软件的维护,把软件分为几个不同的层次,分成:展示层,业务层,持久层,和数据库。用部件之间进行的小交互来单独开发和发展模块,支持可移植性、可修改性和重用。
《软件体系结构》作业报告
(2017 -2018)学年第1学期
学生小组成员:(曹佳瑶)
完成作业内容
题目2:请你阐述为了实现这些质量属性,而采用的具体战术与架构模式。
战略:
1.互操作性:系统需要与其它系统共享数据,数据库之间需要交互。
2.安全性:对包含个人信息的数据库系统的安全性特别加强,使其不被恶意攻击导致信息泄露。
3.SOA架构模式。
由于软件会需要多重服务的要求,通过SOA架构使服务之间通过配合组成一系列功能。使单独的一个服务通常以独立的形式存在于操作系统进程中。服务之间通过网络调用,而非采用进程内调用的方式进行通信。支持软件运行在不同平台和不同语言实现,由不同的组织提供,并分布在互联网的分布式组件的互操作性。
4.Map-reduce,所以使用map-reduce模式。用map-reduce模式模式提供了一个框架,用于分析一组大型分布式的数据。map执行提取和转换部分分析,reduce执行结果的加载。

软件工程大作业模板

软件工程大作业模板

软件工程大作业模板1. 引言本文档旨在为软件工程大作业提供一个模板,以帮助学生们更好地完成项目。

该模板包含项目的基本要求、项目结构和组织、开发流程等内容,可根据实际项目需求进行适当调整。

2. 项目背景在此部分,对项目的背景和目标进行简要描述,包括项目所解决的问题、项目的价值和意义等。

3. 项目需求在此部分,列出项目的具体需求,包括功能性需求和非功能性需求。

可以使用表格、列表等方式进行展示。

3.1 功能性需求ID需求描述F1用户可以进行注册和登录F2用户可以创建新的任务F3用户可以查看任务列表3.2 非功能性需求•用户界面必须简洁、直观、易于使用。

•系统响应时间必须在1秒内。

4. 项目结构和组织在此部分,描述项目的整体结构和组织方式,包括模块划分、数据流、接口定义等。

可以使用图表、图示等方式进行展示。

5. 开发流程在此部分,介绍项目的开发流程,可以根据具体项目需求列出相应的开发阶段和任务。

5.1 需求分析阶段在需求分析阶段,需完成以下任务:•与用户进行沟通,明确需求。

•编写需求规格说明书。

5.2 设计阶段在设计阶段,需完成以下任务:•设计系统的架构和模块。

•编写详细设计文档。

5.3 编码与测试阶段在编码与测试阶段,需完成以下任务:•根据设计文档,进行编码工作。

•编写单元测试用例,并进行单元测试。

•进行集成测试。

5.4 验收与发布阶段在验收与发布阶段,需完成以下任务:•进行系统验收测试。

•修复问题和缺陷。

•发布正式版本。

6. 项目管理在此部分,介绍项目的管理方式和工具,包括项目计划、人员分工、进度跟踪等。

7. 总结本文档提供了一个软件工程大作业模板,包含项目的基本要求、项目结构和组织、开发流程等。

希望能对学生们的项目开发提供一定的指导和帮助。

以上是一个软件工程大作业模板的示例,可以根据实际需求进行适当调整和修改。

编写文档时,建议使用Markdown文本格式,便于编辑和分享。

希望本模板能为你的项目开发工作提供一定的帮助。

软件体系结构大作业

软件体系结构大作业

课程名称:软件体系结构姓名:班级:软件132学号:20130040606 指导老师:伍轶明一、电子政务是什么:电子政务是指运用计算机、网络和通信等现代信息技术手段,实现政府组织结构和工作流程的优化重组,超越时间、空间和部门分隔的限制,建成一个精简、高效、廉洁、公平的政府运作模式,以便全方位地向社会提供优质、规范、透明、符合国际水准的管理与服务。

二、电子政务的建设意义:建设电子政务平台,目的是为了提高政府办公效率和效益和改进公共服务水平等,。

主要体现在以下几方面:1.能够降低办公费用,提高工作效率。

如众所周知,政府每年用在文件印刷的费用是巨大的。

如果这些文件在内部网站上可以查到,那么就不必花太多的钱在纸上,这样又可以保护宝贵的森林资源。

随着政府采用数字系统,软件将改造政府的工作方式,从而节约成本。

2.可以更高效地给社会公众提供服务,有利于和谐社会的建设。

电子政务通过推进政府部门办公自动化、网络化、电子化、全面信息共享等工作进程,从而营造运用信息及通信技术打破行政机关的组织界限的电子化虚拟机关,实现广泛范围意义的政府机关间及政府与社会各界之间经由各种电子化渠道进行相互沟通,并依据人们的需求、人们可以使用的形式、人们要求的时间及地点,提供人们各种不同的针对个性的服务选择。

电子政务能够加快政府职能的转变,扩大对外交往的渠道,密切政府和人民群众的联系,提高政府工作效率。

这样就有利于政务公开,人民群众随时可以详细地知晓政府政务,从而有助于减少政府及其官员腐败,化解矛盾,有利于和谐社会的建设。

3.电子政务在实现“以信息化促进工业化、现代化”的发展战略中具有重要的意义。

政府通常是一国内最大的“企业”,如果它带头使用技术,就会自动地提高本国的技术技能,并推动全国转移到信息市场去。

政府靠行政命令或提供诱因能带动所有跟它合作业务的公司。

从而推进全社会的信息化、工业化、现代化。

4.提高政府决策理性和公共政策的品质。

政府信息化可使政府运用所获取和掌握的国家政治、经济、社会发展诸领域的准确可靠的信息,对制定正确的决策,做出理性与科学的判断,采取有针对性和见实效的行为,进而提高政府决策和公共政策的水准和质量。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件体系结构大作业题目:管道-过滤器模型专业班级: 13 软件工程1班学生姓名:马潇霄学号: 120132416042015年 10月 20 日目录1.问题背景 (3)2.相关综述: 管道-过滤器模型 (3)3. 设计内容/方案:管道-过滤器的设计原型 (6)4. 总结 (8)参考文献 (9)1.问题背景摘要软件体系结构设计给出了大规模软件复用,特别是领域复用的重要设计模式。

体系结构描述了软件系统的整体组织结构与风格,对软件的性能和质量有直接的影响。

管道-过滤器模式是一种面向数据流的软件体系结构。

该文对这种体系结构做了深入的讨论,并结合一个具体应用给出了设计原型。

关键词管道-过滤器模型管道过滤器随着软件系统规模和复杂性的增加,系统总体结构设计的重要性已远远超过特定算法和数据结构的选择,良好的体系结构是保证系统成功的关键。

基于软件体系结构的过程开发是现代软件开发的基本途径,也是软件工程成熟的标志。

软件体系结构的风格或模式包括客户-服务器模式的体系结构,管道-过滤器模式的体系结构,层次式体系结构,面向对象的体系结构等。

管道-过滤器模式的体系结构是面向数据流的软件体系结构。

它最典型的应用是在编译系统。

一个普通的编译系统包括词法分析器,语法分析器,语义分析与中间代码生成器,优化器,目标代码生成器等一系列对源程序进行处理的过程。

人们可以将编译系统看作一系列过滤器的连接体,按照管道-过滤器的体系结构进行设计。

此外,这种体系结构在其它一些领域也有广泛的应用。

因此它成为软件工程和软件开发中的一个突出的研究领域。

2.相关综述: 管道-过滤器模型2.1 模型的结构与特征管道-过滤器模型的基本部件都有一套输入输出接口。

每个部件从输入接口中读取数据,经过处理,将结果数据置于输出接口中,这样的部件称为“过滤器”。

这种模型的连接者将一个过滤器的输出传送到另一个过滤器的输入,该文把这种连接者称为“管道”。

在这种模型中,过滤器必须是独立的实体,每一个过滤器的状态不受其它过滤器的影响。

并且,虽然人们对过滤器的输入输出有一定的规约,但过滤器并不需要知道向它提供数据流的过滤器和它要提供数据流的过滤器的内部细节。

过滤器的基本结构如图 1。

3图1管道-过滤器中的基本单元:过滤器管道-过滤器模式的系统构架如图 2。

图 2管道-过滤器模式的系统构架2.2模型的优点管道-过滤器模型有如下的优点:(1)设计人员将整个系统的输入输出行为理解为单个过滤器行为的叠加与组合。

这样可以将问题分解,化繁为简。

(2)任何两个过滤器,只要它们之间传送的数据遵守共同的规约就可以相连接。

每个过滤器都有自己独立的输入输出接口,如果过滤器间传输的数据遵守其规约,只要用管道将它们连接就可以正常工作。

(3)整个系统易于维护和升级:旧的过滤器可以被替代,新的过滤器可以添加到已有的系统上。

软件的易于维护和升级是衡量软件系统质量的重要指标之一,在管道-过滤器模型中,只要遵守输入输出数据规约,任何一个过滤器都可以被另一个新的过滤器代替,同时为增强程序功能,可以添加新的过滤器。

这样,系统的可维护性和可升级性得到了保证。

(4)支持并发执行:每个过滤器作为一个单独的执行任务,可以与其它过滤器并发执行。

过滤器的执行是独立的,不依赖于其它过滤器的。

2.3模型的缺点及其改进4管道-过滤器模型有如下的缺点:(1)交互式处理能力弱:管道-过滤器模型适于数据流的处理和变换,不适合为与用户交互频繁的系统建模。

在这种模型中,每个过滤器都有自己的数据,这些数据或者是从磁盘存储器中读取来,或者是由另一个过滤器的输出导入进来,整个系统没有一个共享的数据区。

这样,当用户要操作某一项数据时,要涉及到多个过滤器对相应数据的操作,其实现较为复杂。

由以上的缺点,可以对每个过滤器增加相应的用户控制接口,使得外部可以对过滤器的执行进行控制。

改进的过滤器如图 3。

图 3 带有用户控制接口的过滤器(2)数据的打包与解包:有时,系统中的过滤器需要有一个数据转换器来对输入输出数据进行解包打包。

这样会降低系统性能,增加实现过滤器的复杂性。

2.4与面向对象的体系结构的比较面向对象的体系结构就是应用面向对象的方法建立系统的体系结构。

其主要思想是:对问题域中客观存在的各项事物建立相应的对象,对象的属性与方法分别描述事物的静态特征与动态行为,对象间的交互通过对其方法的调用进行。

面向对象方法的优点是它封装了对象的属性和行为,实现了“信息隐蔽”。

同时,对象内部行为的修改不影响外部对它的调用。

面向对象的体系结构的一个明显的缺点是:当一个对象通过过程调用与其它对象交互时,它必须知道其它对象的标识。

而当一个对象的标识改变时,需要对所有调用这一方法的对象进行修改。

而在管道(过滤器这种体系结构中,过滤器与其它过滤器相连接时不必知道系统中的其它过滤器。

而且当某个过滤器发生改变时,不需要对其他过滤器进行改动。

5在实际应用中,可以将这两种体系结构结合起来。

例如,先按照管道(过滤器的思想建立系统的体系结构,然后应用面向对象的方法设计和实现过滤器及管道。

3. 设计内容/方案:管道-过滤器的设计原型3.1问题域下面举一个简单的例子说明管道-过滤器的应用与实现。

需求描述:假设有一批实时的二维坐标点数据需要变换(即对点的横、纵坐标进行缩放),并在屏幕上进行显示,要求外部要能设置变换规则(如缩放倍数)和显示规则(如显示模式和显示颜色)。

3.2体系结构建模这是一个对坐标点的数据流进行顺序处理的过程,可以应用管道(过滤器体系结建模。

将这个系统分为两个过滤器,一个为坐标点数据流变换过滤器,另一个为坐标点数据流实时显示过滤器。

其中,坐标点数据流变换过滤器有一个外部控制接口对变换规则如缩放倍数进行设置,坐标点数据流实时显示过滤器有一个外部控制接口对显示规则如显示模式和显示颜色进行设置。

整个系统的体系结构如图4。

图4坐标点变换与显示的体系结构3.3过滤器的设计可以将过滤器用状态转换图表示。

过滤器有如下状态:停止状态,工作状态,等待状态,休眠状态。

停止状态:表示过滤器处于待启动状态,当外部启动过滤器后,过滤器处于处理状态;处理状态:表示过滤器正在处理输入数据队列中的数据;6等待状态:表示过滤器的输入数据队列为空,此时过滤器等待,当有新的数据输入时,过滤器处于处理状态;休眠状态:表示过滤器已经启动,但被挂起。

挂起的原因可能是由于外界用户要设置过滤器的控制参数,这样暂时将过滤器挂起但不中止它,当控制参数设置完毕后再将过滤器还原,继续运行。

这样,实现了较高的效率。

图5为过滤器的状态转换图。

图5过滤器状态转换图(1)收集文档(Gathering Document);(2)建立索引(Indexing);(3)传递索引(Transferring Index)。

以上过程是顺序执行的。

一般来说,收集文档所占用的时间最长,其次是创建索引,最后是传递索引。

LSE在访问文档时,主要采用三种方法:(4)直接访问:直接通过NFS来访问文件;(5)档案访问:由CGI 对多个文件建立档案,然后再传递这些档案文件;(6)HTTP访问: 每次访问时,每个文件都通过HTTP进行传递。

在这三种搜集文档的方法中,直接访问最快,其次是档案访问,最后是HTTP 访问。

为了检查上面哪种方法比较适用,CSE使用CGI,又称为探测器,来探测Web Server所处的状态。

此外,CGI还通过ServerRoot和Web服务器上的User 表为每个用户创建自己的档案文件,然后将这些档案文件传送给搜索引擎。

3.4协作式搜索引擎(CSE)的特征(1)CSE采用分布式机器人(Robot)增加并行性,从而可以同时搜集多个文档。

(2)CSE 主要是由多个彼此间相互协作的本地元搜索引擎构成,本地元搜7索引擎是本地搜索引擎与存储服务器进行通信的接口。

(3)CSE的更新周期较短,因为每个Web站点上的索引代理是通过直接访问Web文文件来建立索引的,而不是通过HTTP访问来建立索引的。

(4)采用“下10个”搜索方法,提高用户获取信息的效率。

“下10个”搜索方法是指搜索引擎先将搜索到的与查询条件相匹配的10 个文文件显示给用户,而且每个页面仅显示10 个,用户在浏览这10 个文文件的同时,搜索引擎仍在后台不停地搜索。

这样就减少了用户查询信息所发费的时间,提高用户获取信息的效率。

(5)根据与查询条件相关联的程度对文件划分等级。

CSE可以根据与查询谓词相关联的程度把文档划分为不同的等级,这也是一种减少更新周期的方法。

这是因为一个搜索引擎即使可以搜索到包含指定关键词的所有文文件,但是如果搜索的页面太多,搜索引擎就不能够从中选择出最重要的页面。

所以可以采用计分的方法来划分不同等级的文文件,分数越高,该文档与查询谓词的关联程度就越大。

在对文档进行分级的所有方法中,tf*idf方法是最流行的一种,其中tf是文档中某条目所出现的频率,idf是某条目的稀疏度。

根据公式(1)可以计算出idf 的值:Idf=log(N/n)其中N是所有文档的数量,n是包含某条目文档的数量。

在CSE系统中,idf值的计算是被分配到搜索过程中与搜索过程并行执行的。

4. 总结该文描述了一种新的分布式搜索引擎,叫作协作式搜索引擎(CSE),介绍了它的框架、搜索和更新过程。

CSE通过元搜索引擎将多个本地搜索引擎集成在一起协调工作,多个本地搜索引擎能够协调工作是由于元搜索引擎隐藏、屏蔽了本地搜索引擎的不同。

在CSE中,通过直接访问和档案访问,每个本地搜索引擎能够快速更新web站点上的文档,从而CSE克服了目前的分布式搜索引擎(如Harvest,Google)不能协调利用本地搜索引擎、收集文件时间过长以及本地搜索引擎之间响应不一致的问题。

因此,CSE能够真正实现收集快速、更新及时、定位准确。

8参考文献[1] 王继成,杨晓江,基于元资料与Z39.50的分布协作式Web信息检索[J].软件学报,2001:12(4)[2] C Mic Bowman. Peter B Danzig, Darren R Hardy et al. The Harvest InformationDiscorvery and Access System./SDG/IT94/Procedings/Searching/Schwartz.ha rvest/schwartz.harvest.html[3] Ingrid./[4] Google./9。

相关文档
最新文档