A repository for component-based embedded software development
The rapid growth in the demand for embedded systems and the increased complexity of embedded software pose an urgent need for advanced embedded software development techniques. Software technology is shifting toward semi-automated code generation and integration of systems from components. Component-based development (CBD) techniques can significantly reduce the time and cost for developing software systems. Furthermore, effective component retrieval is a fundamental issue in CBD. In this paper, we address the issues in designing software repositories for embedded software components. We develop an On-line Repository for Embedded Software (ORES) to facilitate component management and retrieval. ORES uses an ontology-based approach to facilitate repository browsing and effective search. To allow easy browsing of ORES, we analyze the typical ontology relations for software components and develop a Merging and Echoing technique to convert the ontology into a hierarchy suitable for browsing, but without the loss of any critical semantic information contained in the ontology. We also develop an algorithm for grouping search results based on the ontology. Thus, we can display search result groups to avoid having to display a large number of search results or having to prune the results and risk reducing the recall factor. Another important aspect in embedded software is the set of nonfunctional requirements and properties. In ORES, we develop an XML-based specification method to capture nonfunctional properties as well as functional characteristics of components and enable retrieval of relevant components based on these specifications.
embedded software ontology nonfunctional requirements component-based software engineering component repository browsing and search