1什么是用例?算法
在介始用例方法以前,咱们首先来看一下传统的需求表述方式-"软件需求规约"(Software Requirement Specification)。传统的软件需求规约基本上采用的是功能分解的方式来描述系统功能,在这种表述方式中,系统功能被分解到各个系统功能模块中,咱们经过描述细分的系统模块的功能来达到描述整个系统功能的目的。一个典型的软件需求规约可能具备如下形式:数据库
采用这种方法来描述系统需求,很是容易混淆需求和设计的界限,这样的表述实际上已经包含了部分的设计在内。由此经常致使这样的迷惑:系统需求应该详细到何种程度?一个极端就是需求能够详细到概要设计,由于这样的需求表述既包含了外部需求也包含了内部设计。在有些公司的开发流程中,这种需求被称为"内部需求",而对应于用户的原始要求则被称之为"外部需求"。浏览器
功能分解方法的另外一个缺点是这种方法分割了各项系统功能的应用环境,从各项功能项入手,你很难了解到这些功能项是如何相互关联来实现一个完成的系统服务的。因此在传统的SRS文档中,咱们每每须要另一些章节来描述系统的总体结构及各部分之间的相互关联,这些内容使得SRS需求更象是一个设计文档。服务器
1.1 参与者和用例网络
从用户的角度来看,他们并不想了解系统的内部结构和设计,他们所关心的是系统所能提供的服务,也就是被开发出来的系统将是如何被使用的,这就用例方法的基本思想。用例模型主要由如下模型元素构成:ide
参与者(Actor) 参与者是指存在于被定义系统外部并与该系统发生交互的人或其余系统,他们表明的是系统的使用者或使用环境。测试
针对咱们的这次项目分析:ui
管理者:搜索引擎
输入数据spa
对用户进行分类
输出数据
用例(Use Case) 用例用于表示系统所提供的服务,它定义了系统是如何被参与者所使用的,它描述的是参与者为了使用系统所提供的某一完整功能而与系统之间发生的一段对话。
针对咱们的这次项目分析:
管理者对教室的管理,根据教室的课程表的状况对数据库中的信息进行插入、删除、更新操做。
用户能够在注册界面进行注册或登入界面查找某天某个时间段空闲教室的状况。
通信关联(Communication Association) 通信关联用于表示参与者和用例之间的对应关系,它表示参与者使用了系统中的哪些服务(用例),或者说系统所提供的服务(用例)是被哪些参与者所使用的。
针对咱们的这次项目分析:
此项目为参与者提供查找空教室的相关信息,用户登入输入查找的信息管理者会经过用户所输入的信息把相关的数据输出到界面
1.2用例方法的优势
用例方法彻底是站在用户的角度上(从系统的外部)来描述系统的功能的。在用例方法中,咱们把被定义系统看做是一个黑箱,咱们并不关心系统内部是如何完成它所提供的功能的。用例方法首先描述了被定义系统有哪些外部使用者(抽象成为Actor),这些使用者与被定义系统发生交互;针对每一参与者,用例方法又描述了系统为这些参与者提供了什么样的服务(抽象成为Use Case),或者说系统是如何被这些参与者使用的。因此从用例图中,咱们能够获得对于被定义系统的一个整体印象。
与传统的功能分解方式相比,用例方法彻底是从外部来定义系统的功能,它把需求与设计彻底分离开来。在面向对象的分析设计方法中,用例模型主要用于表述系统的功能性需求,系统的设计主要由对象模型来记录表述。另外,用例定义了系统功能的使用环境与上下文,每个用例描述的是一个完整的系统服务。用例方法比传统的SRS更易于被用户所理解,它能够做为开发人员和用户之间针对系统需求进行沟通的一个有效手段。
在RUP中,用例被做为整个软件开发流程的基础,不少类型的开发活动都把用例做为一个主要的输入工件(Artifact),如项目管理、分析设计、测试等。根据用例来对目标系统进行测试,能够根据用例中所描述的环境和上下文来完整地测试一个系统服务,能够根据用例的各个场景(Scenario)来设计测试用例,彻底地测试用例的各类场景能够保证测试的完备性。
2系统概述
搜索引擎是根据用户的查询请求,按照必定算法从索引数据中查找信息返回给用户。为了保证用户查找信息的精度和新鲜度,搜索引擎须要创建并维护一个庞大的索引数据库。通常的搜索引擎由网络机器人程序、索引与搜索程序、索引数据库等部分组成。
系统结构图
3搜索引擎的构成
2.1网络机器人
网络机器人也称为“网络蜘蛛”(Spider),是一个功能很强的WEB扫描程序。它能够在扫描WEB页面的同时检索其内的超连接并加入扫描队列等待之后扫描。由于WEB中普遍使用超连接,因此一个Spider程序理论上能够访问整个WEB页面。
为了保证网络机器人遍历信息的广度和深度须要设定一些重要的连接并制定相关的扫描策略。
2.2索引与搜索
网络机器人将遍历获得的页面存放在临时数据库中,若是经过SQL直接查询信息速度将会难以忍受。为了提升检索效率,须要创建索引,按照倒排文件的格式存放。若是索引不及时跟新的话,用户用搜索引擎也不能检索到。
用户输入搜索条件后搜索程序将经过索引数据库进行检索而后把符合查询要求的数据库按照必定的策略进行分级排列而且返回给用户。
3 Web服务器
客户通常经过浏览器进行查询,这就须要系统提供Web服务器而且与索引数据库进行链接。客户在浏览器中输入查询条件,Web服务器接收到客户的查询条件后在索引数据库中进行查询、排列而后返回给客户端。
4搜索引擎的主要指标及分析
搜索引擎的主要指标有响应时间、召回率、准确率、相关度等。这些指标决定了搜索引擎的技术指标。搜索引擎的技术指标决定了搜索引擎的评价指标。好的搜索引擎应该是具备较快的反应速度和高召回率、准确率的,固然这些都须要搜索引擎技术指标来保障。
5.肯定用例
找到参与者以后,咱们就能够根据参与者来肯定系统的用例,主要是看各参与者须要系统提供什么样的服务,或者说参与者是如何使用系统的。