Software component and the semantic Web: An in-depth content analysis and integration history
Introduction
Component-based software engineering (CBSE) (Cai et al., 2000) has been a transition from the conventional development process to promote software development in an economical, effective and faster manner through the reuse and integration of software packages named as component or COTS (Commercial Off-The-Shelf). Ample amount of research has been done on the various aspects, phases, and characteristics of the CBSE process since its provenance in the industry. This is because of the numerous advantages (Debayan, 2011) that it has over the traditional methods of software development like reusability, replaceability, extensibility, context independence, minimal inter-component dependency, etc. all of which lead to the increased productivity and decreased cost of development.
Even though component development has vast benefits, component-based systems have been generally afflicted with different issues concerning system integration and composition, due to which it has not been able to achieve its full potential:
- •
Firstly, there is no clear protocol to specify a third-party component's description, configuration, integration, and modification, so that it can be accommodated within distributed development environments or within third-party system requirements (Crnkovic, 2001).
- •
Secondly, due to the absence of proper query methods and techniques, off-the-shelf component integration also involves the problem of locating and retrieving reusable components which fulfil the user's requirements (Vitharana, 2003).
- •
Lastly, there have been methods discussed in the literature that automatically build composite components. However, when there is an absence of pre-conditions and effects in the developer's requirements, the traditional techniques may generate composite components which contradict to the developer's needs (Rosa and Lucena Jr, 2011).
Thus, component-based development has still not been able to acquire its full capability as a result of these few major hurdles. A suitable solution to this lies in Semantic Web technologies (Cardoso, 2007) which “help machines comprehend additional information located on the Web to make them support automation of tasks and richer data discovery, data navigation and integration” . In other words, Semantic Web contains the ability to methodically express the intended semantics and aids in automated reasoning, supporting, sharing, integration and management of information from heterogeneous sources (Cardoso and Sheth, 2006). These capabilities of Semantic Web perfectly satisfy all those general requirements of exploring, retrieving and describing the source-code component relationships in large object-oriented reuse frameworks or libraries for the efficient working of the component-based development process.
This Systematic Literature Review (SLR) aims to describe the latest state-of-the-art Semantic Web technologies employed to ease and improve the process of CBSE. The systematic review conducted in this research work is performed in accordance with the guidelines proposed by Kitchenham, 2004. To identify the most important studies in accordance with relevance and quality, we have performed the search in four primary digital libraries. We posed certain research questions, stated in Section 3, which supported us to gather the essential information from the research articles in our review process.
The discussion proceeds as follows: the background of Semantic Web technologies is described in Section 2. Section 3 analyses the research method undertaken to perform the review process, stating the research questions formulated. Section 4 researches and reviews the status of Semantic Web in CBSE and explains the papers investigated in this study in a clear and concise tabular format. Section 5 discusses the findings of this paper in terms of results and attempts to answer the research questions stated in Table 1 of Section 3. Finally, Section 6 concludes the paper, stating the additions which could be made to the current scenario of research related to the area of concern.
Section snippets
Semantic Web: a brief background check
A brief overview of the basics of Semantic Web is presented in this section. Semantic Web was introduced by Tim Berners-Lee and was made popular with the help of the World Wide Web consortium (W3C). It was due to Semantic Web that computers could deal with the information on WWW, understand and couple it, to help humans find required knowledge.
This study does not attempt to reproduce precursory studies about the progression of Semantic Web. Nevertheless, in order to promote comprehension, only
Research methodology to perform the review process
Following are the steps undertaken to conduct the review process:
Literature survey: Semantic Web technology for component-based software engineering
This section examines how Semantic Web technologies have been employed in or experimented with the CBSE domain, having already gone through the basics of it in Section 2. To facilitate understanding, the literature survey is outlined along the categories of the various tasks of CBSE that Semantic Web has proved to be useful in. A brief summary of it is provided to comprehend the applicability of Semantic Web technologies in these groups. This exploration acts as a foundation to construct a
Results
This section constitutes of a discussion and an assessment of what has been addressed in this paper. This assessment will be performed from the component-based software engineering's perspectives and attempts to answer the points specified in Table 1.
Conclusion and future work
This paper reviewed and examined the usage history of Semantic Web technologies to achieve various tasks of the component-based software engineering process. 53 articles directly pertaining to the topic of research, published in conference proceedings and journals, were analysed to assess the advancement and direct future research on the employment of ontology, semantic web services and Linked Data technology in CBSE. The research articles were evaluated with a specific emphasis on types of
Loveleen Kaur received her B.Tech. degree in Computer Science and Engineering and M.Tech degree in Software Systems. She is currently working as a Ph.D. research scholar with the Department of Computer Science and Engineering, Thapar University, Patiala, India. Her main research interests include Component-based software engineering, Intelligent Computing Methods, and Semantic Web technologies.
References (105)
- et al.
Synthy: a system for end to end composition of web services
Web Semant.: Sci., Serv. Agents World Wide Web
(2005) - et al.
Kumbang: a domain ontology for modelling variability in software product families
Adv. Eng. Inf.
(2007) - et al.
The web service modeling framework WSMF
Electron. Commer. Res. Appl.
(2002) - et al.
Leveraging semantic web technologies for business component specification
Web Semant.: Sci., Serv. Agents World Wide Web
(2007) - et al.
Semantic web services: Standards, applications, challenges and solutions
J. Netw. Comput. Appl.
(2014) - et al.
Ontology-based user requirements decomposition for component selection for highly available systems
Comparison of ontology editors
eRAF J. Comput.
(2012)- et al.
Retrieving reusable software components using enhanced representation of domain knowledge
Recent Trends in Information Reuse and Integration
(2012) - et al.
Daml-s: semantic markup for web services
- et al.
The new challenges for e-learning: the educational semantic web
Educ. Technol. Soc.
(2004)
Triplify: light-weight linked data publication from relational databases
Owl: web ontology language
Encyclopedia of Database Systems
The semantic web
Sci. Am.
Ontology-supported quality assurance for component-based systems configuration
Linked data on the web (ldow2008)
The use of mediation and ontology technologies for software component information retrieval
Model-driven design and development of semantic web service applications
ACM Trans. Int. Technol. (TOIT)
Sesame: an architecture for storing and querying rdf data and schema information
Spinning the Semantic Web: Bringing the World Wide Web to Its Full Potential
Component-based software engineering: technologies, development frameworks, and quality assurance schemes
Semantic Web Services: Theory, Tools and Applications: Theory, Tools and Applications
The semantic web and its applications
Semantic Web Services, Processes and Applications
Jena: implementing the semantic web recommendations
Verifying the behavioural contracts among components by means of semantic web techniques
Towards a software domain metric based on semantic web techniques
Knowledge capitalization in a component-based software factory: a semantic viewpoint
Kgram versatile inference and query engine for the web of linked data
Component-based software engineering challenges in software development
Softw. Focus
Unraveling the web services web: an introduction to soap, wsdl, and uddi
IEEE Int. Comput.
Feature models are views on ontologies
Automatically generated layered ontological models for semantic analysis of component-based control systems
IEEE Trans. Ind. Inform.
Component-Based Development-Application in Software Engineering
Semantic analysis of software specifications with linked data
J. Theor. Appl. Inf. Technol.
Rdf support in the virtuoso dbms
Networked Knowledge-Networked Media
Semantic web enabled web services
Software reuse research: status and future
IEEE Trans. Softw. Eng.
Turning web services descriptions into quickcheck models for automatic testing
The semantic web framework: a component-based framework for the development of semantic web applications
A new approach for publishing workflows: abstractions, standards, and linked data
Semantic annotation of software components
The role of common ontology in achieving sharable, reusable knowledge bases
KR
Formal ontology and information systems
Integration of semantic web service and component-based development for e-business environment
Description of the racer system and its applications
Automatic component selection with semantic technologies
KOntoR: an ontology-enabled approach to software reuse
A comparison of rdf query languages
A semantic web approach to software maintenance
A novel software reuse method- an ontological approach
Int. J. Sci. Eng. Res.
Fortified web services contracts for trusted components
Extended software component model for testing and reuse
Cited by (0)
Loveleen Kaur received her B.Tech. degree in Computer Science and Engineering and M.Tech degree in Software Systems. She is currently working as a Ph.D. research scholar with the Department of Computer Science and Engineering, Thapar University, Patiala, India. Her main research interests include Component-based software engineering, Intelligent Computing Methods, and Semantic Web technologies.
Ashutosh Mishra received his Ph.D. degree in Computer Science and Engineering from Indian Institute of Technology (BHU), Varanasi, India. He is currently working as an Assistant Professor with the Department of Computer Science and Engineering, Thapar University, Patiala, India. His research interests include Software Engineering, Data Mining, Semantic Web technologies and Cognitive Computation. He is a member of various professional bodies and has published various research papers in national and international journals and conferences.