(2) 技术可行性。网页信息采集技术在互联网上已经存在很多的成功案例,并且有较多的参考资料。
(3) 时机可行性。为了提高学C#编程研管理能力,改变以往传统的管理方法,考虑使用效率更高、技术更先进的管理方式。在这种环境下,开发该系统有非常大的实际意义和可行性。
2.2 功能需求分析
在软件工程中,需求分析指的是在建立一个新的或改变一个现存的电脑系统时描写新系统的目的、范围、定义和功能时所要做的所有的工作。需求分析是软件工程中的一个关键过程。在这个过程中,系统分析员和软件工程师确定顾客的需要。只有在确定了这些需要后他们才能够分析和寻求新系统的解决方法。 在软件工程的历史中,很长时间里人们一直认为需求分析是整个软件工程中最简单的一个步骤,但在过去十年中越来越多的人认识到它是整个过程中最关键的一个过程。
2.2.1 系统功能说明
(1) 分析页面数据提取URL
该功能通过用户输入的URL地址,获取这个URL的整个页面数据。获取成功后,通过相关的字符串匹配或者正则表达式查找出页面中的所有的URL链接。系统设计时可以把正则表达式交给用户去输入,这样即可以实现查找页面中URL链接,用户也可以查找自己感兴趣的网页内容,比如邮箱地址等等。分析成功后,要在界面中进行显示,要求显示的时候不是分析完成之后一起显示,而是分析完成一条就显示一条网页链接的形式。分析可以分为两个步骤,第一次分析的只是粗略的抓取到页面中的链接,不对链接进行任何处理;第二次分析的时候要求对已经分析到的链接进行去空格等符号后面内容的过滤,展示在另一个地方,由此可以比较两个分析得到的结果的不同之处以及相似之处。
(2) 制作一个友好的前端界面展示搜索信息
该功能要求程序的界面要求具有易操作性,方便用户能够快速准确的操作程序,快速的得到自己想要的结果。界面的设计是整个系统能否迅速被用户使用的关键之一,设计的时候要求系统要有菜单界面,并且可以迅速的查找符合自己要求的项目信息或者链接信息。界面的设计原则要以简洁、方便、美观为原则进行设计,使得用户可以迅速的掌握系统的使用方法。
(3) 实现单线程和多线程两种方式对比
该功能首先提供两种处理数据的方式:单线程方式和多线程方式,用户可以分别运行这两个,可以体现多线程在信息处理中的优点。实现单线程和多线程的时候需要做的工作有:网页中是否含有关键字的判定、链接对应端口是否打开的判定,将处理得到的信息整合,然后存储到数据库中,方便进行日志查询,最终实现链接查询的目的。在单线程执行的过程中要展示需要处理的链接数目,处理万层要给予相应的提示。在多线程处理的工程中要显示参加数据处理的线程数目以及要处理的链接数目。在同样数目的链接的情况下,用户可以体验单线程处理数据和多线程处理数据所带来的不同的感受。当然,两种方式的处理都要展示处理得到的结果,并且提示处理是否已经完成。
(4) 日志模块实现
该功能将记录用户所分析处理过的网页链接信息,以一个一个web项目的方式进行管理,分析得到的链接都将存储在数据库中,使得用户可以方便的查找之前操作过的web的所有的链接信息。日志模块是系统中进行项目和链接管理中的重要组成部分,因此系统实现的时候必要首先考虑实现日志模块以及如何利用日志模块对系统进行管理。日志模块同时也是用户进行分形和处理得到的数据的直接展示,如果日志模块没有做好将不能很好的反馈给用户所需要的信息,系统的可用性将会大打折扣。 多线程并行搜索在信息处理中的应用(4):http://www.youerw.com/jisuanji/lunwen_7926.html