7 research outputs found

    Semantic annotation, publication, and discovery of Java software components: an integrated approach

    Get PDF
    Component-based software development has matured into standard practice in software engineering. Among the advantages of reusing software modules are lower costs, faster development, more manageable code, increased productivity, and improved software quality. As the number of available software components has grown, so has the need for effective component search and retrieval. Traditional search approaches, such as keyword matching, have proved ineffective when applied to software components. Applying a semantically- enhanced approach to component classification, publication, and discovery can greatly increase the efficiency of searching and retrieving software components. This has been already applied in the context of Web technologies, and Web services in particular, in the frame of Semantic Web Services research. This paper examines the similarities between software components and Web services and adapts an existing Semantic Web Service publication and discovery solution into a software component annotation and discovery tool which is implemented as an Eclipse plug-in

    Engineering Automation for Reliable Software Interim Progress Report (10/01/2000 - 09/30/2001)

    Get PDF
    Prepared for: U.S. Army Research Office P.O. Box 12211 Research Triangle Park, NC 27709-2211The objective of our effort is to develop a scientific basis for producing reliable software that is also flexible and cost effective for the DoD distributed software domain. This objective addresses the long term goals of increasing the quality of service provided by complex systems while reducing development risks, costs, and time. Our work focuses on "wrap and glue" technology based on a domain specific distributed prototype model. The key to making the proposed approach reliable, flexible, and cost-effective is the automatic generation of glue and wrappers based on a designer's specification. The "wrap and glue" approach allows system designers to concentrate on the difficult interoperability problems and defines solutions in terms of deeper and more difficult interoperability issues, while freeing designers from implementation details. Specific research areas for the proposed effort include technology enabling rapid prototyping, inference for design checking, automatic program generation, distributed real-time scheduling, wrapper and glue technology, and reliability assessment and improvement. The proposed technology will be integrated with past research results to enable a quantum leap forward in the state of the art for rapid prototyping.U. S. Army Research Office P.O. Box 12211 Research Triangle Park, NC 27709-22110473-MA-SPApproved for public release; distribution is unlimited

    System engineering and evolution decision support, Final Progress Report (05/01/1998 - 09-30-2001)

    Get PDF
    The objective of our effort is to develop a scientific basis for system engineering automation and decision support. This objective addresses the long term goals of increasing the quality of service provided complex systems while reducing development risks, costs, and time. Our work focused on decision support for designing operations of complex modular systems that can include embedded software. Emphasis areas included engineering automation capabilities in the areas of design modifications, design records, reuse, and automatic generation of design representations such as real-time schedules and software.U.S. Army Research OfficeFunding number(s): DSAM 90387, DWAM 80013, DWAM 90215

    System Engineering and Evolution Decision Support Interim Progress Report (01/01/2000-09/30/2000)

    Get PDF
    The objective of our effort is to develop a scientific basis for system engineering automation and decision support. This objective addresses the long term goals of increasing the quality of service provided complex systems while reducing development risks, costs, and time. Our work focused on decision support for designing operations of complex modular systems that can include embedded software. Emphasis areas included engineering automation capabilities in the areas of design modifications, design records, reuse, and automatic generation of design representations such as real-time schedules and software

    Functional and structural descriptors for software component retrieval

    Get PDF
    Identifying appropriate software components in a repository is an important task in software reuse after all, components must be found before they can be reused. Program source code documents written in a computer programming language has the possibility to be a software component. Program source code is a form of data, containing both structure and function it is therefore important to make use of this information in representing programs in a software repository. Existing approaches in software component retrieval systems focus on retrieving a component based on either its function or structure. Such an approach may not be suitable to users that require examples of programs that illustrate a particular function and structure, there is therefore a need for combining this information together. The objective of this research is to build a software repository of Java programs, to facilitate the search and selection of programs using the information about a program's function and structure. The hypothesis is that retrieval of program source code is better undertaken using a combination of functional and structural descriptors rather than using functional descriptors on their own. This thesis presents a program retrieval and indexing model which can be used in developing a source code retrieval system. The model reveals on how functional and structural descriptors are identified and combined into a single representation. The functional descriptors are identified by extracting selected terms from program source code and a weighting scheme is adopted to differentiate the importance of terms. As programs in the repository are from open-source applications, extracting information that does not rely on semantic terms would be beneficial, as these programs are written by various developers with different programming background and experience. Structural descriptors that comprise of information generated based on structural relationships, such as design patterns and software metrics, are extracted from a program to be added as the program descriptor. The functional and structural descriptors are combined into a single index, known as a compound index, which is used as a program descriptor. The degree of similarity between a given query and programs in a repository is identified using measurements undertaken based on vector model and data distribution based approaches. Lessons learned from the experiments undertaken reveals that programs retrieved using the proposed method are less complex and easy to maintain. Furthermore, it is suggested that programs from different application domains contain different trends in their software metrics
    corecore