论文部分内容阅读
面向Web Services的构件信息收集工具的设计与实现软件构件库为软件开发人员查找合适的构件提供了便利。目前软件构件库主要采用由构件开发者发布的方式来收集构件。而构件开发者往往将发布构件视为一种额外的负担。因此,这种“被动”的构件收集方式限制了构件库发展的规模,使得构件资源数量不够庞大,影响了软件复用的广泛实施。随着Internet的发展,在互联网上出现了大量可以被复用的构件。但是这些构件并没有被有效地组织和管理起来,也就不能被有效地复用。这就需要构件库“主动”地从互联网上收集构件,为软件开发人员查找Internt上的构件提供便利。
本文首先对Internet上的构件资源的状况、当前的构件收集技术进行介绍和分析。在分析的基础上,本文以Web Services类型的构件为主要收集对象,初步研究了从Internet上收集构件信息过程中的技术问题,主要包括:构件信息发现、构件信息传输、构件描述信息提取、构件验证、构件发布。
本文在青鸟软件构件库管理系统(JBCLMS)的基础上,设计和实现了以收集Wleb Services类型构件为主的构件信息收集工具系统。系统当前主要从通用搜索引擎Google和Web Servcies发布网站(bindingpoint、XMethods、StrikeIron)上发现构件信息。系统采用URL提取的方法来解决URL标识的文件类型与内容不符的问题;采用多线程的方法,来提高构件信息传输的效率;采用缓冲队列的方法来避免对网站造成DOS攻击。系统采用的构件描述信息提取方法:提取WSDL文件中接口名和消息名,并对其进行切词。系统实现了对于绑定SOAP协议的web Services的当前状态的测试。系统采用调用JBCLMS的Wleb Services发布接口的方法,将从Internet上收集的Wleb Services发布到构件库中。该系统运行27个小时后,从Internet上收集了3435个WSDL文件,其中大部分WSDL文件是在系统运行后两个半小时内收集到的。
本文最后对从Internet上收集的3435个WSDL文件进行了手工统计,并分析了当前Internet上的Web Services的状况。