Font Size: a A A

Ontology-based Component Description And Design And Realization Of Component Library Using Jena Framework

Posted on:2010-01-26Degree:MasterType:Thesis
Country:ChinaCandidate:Y HuangFull Text:PDF
GTID:2178360272997026Subject:Software engineering
Abstract/Summary:PDF Full Text Request
The traditional methods of software development usually based on feasibility study and requirements analysis, then system design, program detail design, programming, testing and last system go live. The component-based development can avoid the drawbacks of the traditional software development. It uses the existing components to make up a system or an application system that satisfy some specific requests. Its high cohesion and low coupling reach the supreme goal of software engineering design. Besides, reuse high-quality components that have already been developed can avoid errors caused during the new development, thereby improving the quality of software.In order to realize component-based development, re-user should be able to find the required components quickly and accurately. Retrieval methods of the traditional information science such as keyword retrieval and Facet-based retrieval play important role in promoting the retrieval of components. Faceted classification is the most common method; it can greatly improve the efficiency of retrieval and help users to understand the components. Facet-based classification retrieval technology is based on the attributes of components, and retrieval methods use the value of Facet to retrieval and matching components. However, there are some disadvantages by using Facet-based retrieval, such as the relationship among components like coordination collaboration, invoke and be invoked, include and be included cannot be reflected. In addition, the relationships among terms such as synonymous don't be reflected either.We found that the difficulty of resources searching among components is somehow same as the difficulty of searching resource in the Internet. So is that possible we learn from the way that the Semantic Web solves the problem - adding a layer to the exiting web to describe the semantic. The answer is yes. In order to better provide the prerequisite for component retrieval, we can describe the components by the existing methods and additionally use ontology technology to describe semantic information that both people and machine can understand. ontology is an explicit formal specification of a shared conceptualization and provide a common understanding to a specific domain and methods to knowledge representation, acquisition and sharing. Through defining and sharing domain knowledge, ontology makes people and machine understand knowledge.Therefore, the concrete solution is: bringing forward an ontology-based component description method that bases on the faceted-based method. Generally speaking, describe components in three major aspects: general information, facet information, and interface information. Every aspect contains the concrete information: the general information contains providers'personal information and components'document information; the facet information record components from four aspects - application domain facet, application environment facet, functionality facet and conformation facet; the interface information contains signature of the components'interfaces, interfaces'methods, the methods'parameters, as well as the parameters'names and types. To build the component's ontology model, the paper uses the latest ontology language - Ontology Web Language that W3C organization recommends and the ontology modeling tools - protege3.4 that Stanford University develops. The process of building the component'ontology model are divided into six steps. The first step, ascertaining ontology professional domain and categories; the second step, defining classes and relationships among the classes; the third step, defining property, we can express six relationships among components - version relations, collaboration relations, invoking relations, including relations, inheritance relationship, refinement relations and three relationships among terms - hyperonymy, hyponym, synonym; the fourth step, determining restrictions on the properties; the fifth step, creating individuals; the last step, formal coding , the results of this step is owl file. During the period of building the ontology model of component library, ontology development and refinement are repeated iterative process, and this process can be understood as the evolution of ontology and we know more knowledge about a specific field.Based on the ontology model built above, this thesis designed and implemented a component library prototype system on which based ontology using Jena framework. The system applies B/S architecture and composes of view layer, logic layer and data layer according as J2EE hierarchical structure. The system implements the following functions: component uploading, component retrieval, component displaying and component managing. The main technologies applying in the system include: Using JSP and Struts2 tags to control the way of data displaying at view layer; Designing a set of POJO (Plain Ordinary Java Object) for the data interaction between browser side and server side; Using APIs of Jena framework to load the OWL file of ontology definition and the RDF file of individual data in order to create the ontology inference model and operate the model. This inference model includes the information that has already been known and the implied information that can be inferred by ontology. The component retrieval is the most important function of the system. The process of component retrieval contains several steps. First, users input the retrieval contents. Second, finding individuals of facet content (terms) of component library ontology which matches the retrieval contents that user inputs. Third, doing semantic extension according to the properties that have defined in the ontology of terms. Fourth, retrieving components by the extension of terms. Fifth, getting extension of components according to the properties that have defined in the ontology of components. Sixth, sorting the result from high to low of the suited degree between result and retrieval contents and return the final result. SPARQL is used during terms extending, component extending and component retrieving. The system ensure the recall ratio by semantic extending and the precision ratio by suited degree.This thesis puts particular emphasis on: (1) researching and analysising advantages and disadvantages of traditional and existing methods of describe component, bringing forward an new description method that base on the faceted-based method - using ontology technology to describe component. This thesis builds the ontology model of component library by using the latest ontology language - Ontology Web Language that W3C organization recommends and the ontology modeling tools - protégé3.4. (2) studying a variety of ontological knowledge and realizing effect that ontology impacts on information retrieval in a deepgoing way; mastering key technique of implementing ontology-based component library under the Jena framework: how to choose suitable inference engine and load the inference engine under the Jena framework, Jena's SPARQL query engine; Jena's primary API. (3) according to thinking of J2EE hierarchical structure, finish building a demonstrational system of ontology-based component library using B/C architecture under Jena framework. This system can upload component, retrieval component, display component and manage component.
Keywords/Search Tags:ontology, Component Description, OWL, Jena, Component Library
PDF Full Text Request
Related items