概要设计说明书1.引言1.1编写目的本概要设计说明书是针对网络信息体系结构的课程作业而编写。
目的是对该项目进行总体设计,在明确系统需求的基础上划分系统的功能模块,进行系统开发的分工,明确各模块间的接口,为进行后面的详细设计和实现作准备。
本概要设计说明书的预期读者为本项目小组的成员以及对该系统感兴趣,在以后想对系统进行扩展和维护的人员。
1.2背景a.待开发的系统的名称:Lyra Resource Platform;b.本项目的任务提出者: 赵东,成富,陈良,窦文敏开发者:赵东,成富,陈良,窦文敏用户:所有对该项目感兴趣,并想通过该项目的产品提高资源检索速度和质量,方便的进行资源检索,预览,上传及下载的用户。
2.总体设计2.1需求规定2.1.1系统功能● FTP的文件上传及下载功能:类似于普通ftp的文件上传和下载功能。
◆用户输入ftp的服务器ip及用户名,密码,连接服务器并上传或下载用户指定的文件。
◆如果用户不输入用户名,密码则默认为匿名登录。
◆可以以列表的形式显示服务器连接信息,以表格的形式显示正下载文件的信息。
◆具有站内搜索功能。
●资源实时检索功能:提供一个强大的搜索引擎功能,用户只需提供关键字和需要检索的资源的类型,就能检索到上面所述四种子平台上的所有相关资源,并且列出来的资源都是可使用的。
●资源预览功能:对于服务器上的某些资源,用户可以选择预览,以确定是否下载。
●资源统计信息的功能:包括最近更新的资源,网上评论较热门的资源等。
提供一个详细的列表,方便用户浏览。
2.1.2系统性能2.1.2.1时间特性要求系统的速度要在用户可接受的范围内,但考虑到需要实时检测服务器的可用性,对资源实时搜索的速度可以有较低的要求。
ftp的文件上传和下载速度要尽量的接近于普通ftp的速度。
2.1.2.2可靠性系统要有较高的可靠性,可恢复性。
2.1.2.3灵活性系统要有良好的接口,以适应增加资源平台,增加资源类型,增加相关的资源获取功能的需求;并留有服务器接口,适应对以后实现服务器功能的需要;同时系统还需要具有跨平台功能。
2.1.3输入输出要求于ftp和资源实时检索功能系统的输入数据分为两种类型,如果用户已知服务器ip,用户名,密码,则输入数据为服务器ip,用户名,密码;如果用户只知道需要的资源名称和类型,则输入需要的资源名称和类型。
系统输出为用户需要的资源列表。
并下载用户选择的文件。
对于预览功能,用户需要选择要预览的文件,系统输出该文件的一部分或全部内容,如果用户选择保存预览内容,则保存。
2.1.4数据管理能力要求系统需要记录用户最近连接过的ftp的地址,用户名,密码及该站点的文件列表。
2.1.5故障处理要求具有一定的容错能力,能检测用户的错误输入并给出错误提示,能检测资源的可用性错误并输出结果。
能进行系统故障恢复。
2.1.6其他专门要求因为本系统是一个普遍使用的工具,所以要求界面友好,使用方便,并要求系统具有高稳定性,可扩充性和运行环境的可转换性。
2.2运行环境2.2.1设备普通pc机,互联网。
2.2.2支持软件操作系统:windows或linux其它软件:jdk 1.42.2.3接口该系统早期会使用北大天网FTP搜索引擎和其他的文件搜索系统如百度的功能实现资源的检索,但是在后期时间允许的情况下会开发自己的检索部分。
2.3基本设计概念和处理流程系统的用况图如下:图1 系统的用况图活动者:用户,即使用系统进行资源上传下载,站内搜索,资源实时检索,资源预览和资源统计信息的人。
用况说明:●用况名称:上传参与者:用户主要事件流:1. 用户输入ftp的ip及用户名,密码。
2. 系统连接ftp。
3. 用户选择资源并选择上传功能。
4. 系统运行上传功能,并显示资源上传信息。
异常事件流:1. 用户输入的ftp无法连接。
2. 显示ftp无法连接,并提示原因,如无法找到此ftp,用户名或密码错误,ftp连接人数已满等等。
异常事件流:1. 资源上传出错。
2. 显示资源上传错误,并提示原因,如无上传权限,ftp空间已满等等。
●用况名称:下载参与者:用户主要事件流:1. 用户输入ftp的ip及用户名,密码。
2. 系统连接ftp。
3. 用户选择资源并选择下载功能。
4. 系统运行下载功能,并显示资源下载信息。
异常事件流:1. 用户输入的ftp无法连接。
2. 显示ftp无法连接,并提示原因,如无法找到此ftp,用户名或密码错误,ftp连接人数已满等等。
异常事件流:1. 资源下载出错。
2. 显示资源下载错误,并提示原因,如无下载权限,用户磁盘空间已满等等。
●用况名称:站内搜索参与者:用户主要事件流:1. 用户输入需要搜索的资源名称关键字。
2. 系统进行站内搜索并显示搜索结果。
●用况名称:资源实时搜索参与者:用户主要事件流:1. 用户输入需要搜索的资源名称关键字,选择需要的资源类型。
2. 系统进行实时检索。
3. 输出检索结果。
4. 用户在检索结果中选择需要的资源。
5. 系统连接用户选择的资源,并显示。
异常事件流:1. 实时检索出错。
2. 显示错误。
●用况名称:预览参与者:用户主要事件流:1.用户选择需要预览的资源并选择预览功能。
2.系统显示资源的内容。
3.用户选择保存预览资源。
4.系统将该资源保存到用户选择的目录。
异常事件流:1. 预览出错。
2. 系统显示出错信息。
●用况名称:统计资源信息参与者:用户主要事件流:1. 用户输入需要统计信息的资源类型。
2. 系统统计资源的信息。
3. 显示资源的统计信息。
异常事件流:1. 统计资源信息出错。
2. 系统显示出错信息。
系统的主要使用流程:2.4结构系统物理结构图:BT服务器图2 系统物理结构图系统模块图图3 系统模块图●ui:系统界面部分,负责接受用户输入,显示系统输出,负责其他模块功能的协调调用,并含有站内搜索功能,即在用户指定的已打开的ftp站点中搜索用户需要的资源。
ui 部分调用common部分的功能读取xml文件中保存的界面元素属性信息,用户最近访问过的10个ftp信息,用户选择的下载的ftp内容列表及其他需要通过xml文件保存的信息。
●client:实现ftp客户端的功能,ftp连接,ftp上传及下载:上传或下载用户指定的资源,并返回相应的信息。
●search:资源实时检索部分,根据用户输入的资源名称关键字,资源类型和选择的检索方式检索用户需要的资源,并验证资源的可用性,返回可用资源及其大小,速度等相关信息。
●preview:资源预览部分,显示用户选择的资源的部分内容,以使用户决定是否需要该资源。
preview部分调用common部分读取属性文件的内容以设置预览资源内容的显示格式。
3.接口设计3.1用户接口1.用户:用户需要浏览的ftp的ip,用户名,密码。
系统:打开该ftp,根据用户的选择上传,下载或预览资源。
2.用户:用户需要实时检索的资源的名称关键字和资源类型。
系统:实时检索用户需要的资源,显示可用资源的列表。
3.用户:输入需要统计信息的资源类型系统:统计资源信息并显示。
3.2外部接口调用天网的文件检索功能:参数:需要检索的资源名称关键字,返回:与该关键字匹配的所有资源的url。
调用百度的搜索功能:参数:需要检索的资源名称关键字,返回:与该关键字匹配的所有资源的url。
3.3内部接口[说明本系统之内的各个系统元素之间的接口的安排。
]ui与client间的接口:输入:ftp地址,用户名,密码,需上传的资源,上传到的目录。
输出:上传速度,其它相关信息。
输入:ftp地址,用户名,密码,需下载的资源,下载的目录。
输出:下载速度,其它相关信息。
ui内部界面与资源站内搜索间的接口:输入:ftp地址,需搜索资源的名称关键字。
输出:搜索结果列表。
ui与search间的接口:输入:需搜索资源的名称关键字,需搜索资源的种类。
输出:搜索结果列表。
ui与preview间的接口:输入:需预览资源的地址及类型。
输出:需预览资源的内容。
ui与统计资源信息界的接口:输入:需统计信息的资源类型。
输出:资源统计信息。
4.运行设计4.1运行模块组合ftp上传功能:系统界面模块,ftp上传模块。
ftp下载功能:系统界面模块,ftp下载模块。
资源站内搜索功能:系统界面模块,站内搜索模块。
资源实时检索功能:系统界面模块,资源实施检索模块。
资源预览功能:系统界面模块,预览模块。
统计资源信息功能:系统界面模块,统计资源信息模块。
4.2运行控制ftp上传:输入ftp的ip,用户名,密码。
连接ftp,显示ftp的内容。
浏览ftp选择要上传到的目录。
选择需要上传的资源并选择上传功能。
执行上传操作。
显示上传速度及相关信息。
Lyra Resource Platform文档概要设计说明书ftp下载:输入ftp的ip,用户名,密码。
连接ftp,显示ftp的内容。
浏览ftp选择要下载资源所在的目录。
选择需要下载的资源并选择下载功能。
执行下载操作。
显示下载速度及相关信息。
资源站内搜索:输入需要搜索的资源名称关键字。
搜索用户指定的资源。
返回搜索结果。
资源实时搜索:输入需要搜索的资源名称关键字及资源类型。
进行资源实时搜索。
显示可用资源列表。
执行其他所需的操作如下载。
资源预览:选择需要预览的资源并选择预览功能。
显示资源的部分内容。
决定是否保存该资源。
统计资源信息:输入需统计信息的资源类型。
执行统计资源信息功能。
显示结果。
5.系统数据结构设计5.1逻辑结构设计要点主要的逻辑结构如下:serversinfor:ftp服务器信息。
属性:name(服务器名称或url)port(端口号)username(用户名)password(密码)。
NetResource:实时检索到的资源。
属性:fileURL(文件资源的URL,包括协议、主机字符串、路径、文件名)fileDate(天网将它编入索引的日期)fileSize(文件的大小)responseTime(以毫秒计算的响应时间)。
5.2物理结构设计要点用户最近访问的ftp服务器信息使用xml文件保存。
用户最近访问的ftp服务器的内容使用xml文件保存,每个ftp的内容存为一个xml 文件。
系统中对资源分类的类型使用xml文件保存。
系统界面的显示属性,如字体属性等使用xml文件保存。
系统界面中使用的相关图片需要保存在客户端机器上。
11。