Part IV: Experimentation and Research summary
8 Chapter : Research Conclusion
8.3 Addressing Research Objectives
This section reflects on the research and outlines answers to the questions addressed in this research. The main research question was how a usable Mashup tool that targets novice users can be developed. The research was completed using the following main research hypothesis:
Semantically enriched web tool to discover transform and compose web contents of public APIs (disparate service) can improve usability of SOA service for novice users.
With the main research question being stated, the following sections addresses how each sub research questions together with sub research objectives was accomplished.
What impedes the usability of Mashup tools?This research question was answered by the
identification of usability shortfalls of the currently existing Mashup tools. Different
tools were compared in terms of their design, visualization and composition model. The design referred to their architecture style, for instance client architecture or server architecture. The visualization comprised of how the data was presented to end-users. Lastly, composition model entailed workflow processes and how the composition was done. From the pre-evaluation analysis model in (Section 4.3.2.1.), the findings showed that the users were not happy with the user interface design of the existing Mashup tools. Six usability metrics were formulated using the observed weaknesses of the current Mashup tool. Based on the mentioned issues the first research question was answered. Research method like SUS and focus group were used. The next question discusses how the identified issues were addressed in the design of the proposed Mashup tool.
What are the different techniques for Mashup tool service composition? This research
question was answered by investigating service composition using Graphical Users Interface. Using the comparative analysis of the existing Mashup tools (Section 4.3.2.1.), it
110
remix web contents. The review of literature showed that there were three techniques used when integrating web contents (Latih et al., 2011) namely: Visual Mashup editor, Browser extension application and Web portal Mashup tools. A visual Mashup editor is a tool that lets users create a Mashup application by manipulating program elements graphically rather than by specifying them textually, for instance Yahoo Pipes let users to develop Mashup applications via a visual editor by selecting a few modules and wire them together. This research adopted the visual Mashup editor since novice users find these tools easy if they are using graphics. Visual Mashup tool are the easiest type of tools and they involve users throughout the process of service composition. This research question was answered through the design and the implementation of the Mashup tool, which was presented in (Chapter 5 and Chapter 6), respectively. In the proposed architecture different modules were encompassed to attain a usable Mashup tool (as dicussed in Section 5.1). Lastly, design principles were also used as guidelines to attain a simple and intuitive Mashup tool.
As stated in the previous research question that most tools used widgets. The integration of services contained web contents from different web resources to create new services according to user‘s requests, by refining and combining only the necessary data. This process depends on the support offered by Mashup tool, some Mashup tools are automated and some are semi-automated. Literature shows that semi-automated composition was developed to support End User Development of Mashup applications. EUD paradigms provide programming capabilities for everyone by pushing on different aspects of computing technologies. One of the EUD paradigms employed was wiring or dataflow. Dataflow paradigm is where several selected widgets that support particular functions are connect together for example in Yahoo Pipes. Each widget represents a particular function, users just select it for use and they get response for example tools like iGoogle and Netvibes. The use of widgets was appealing to users as the results showed from the focus group in (Section 7.4.1.2.)
This research question was answered by incorporating semi-automatic manner in the proposed tool, since it supported widgets, which were used in the Mashup editor for designing Mashup applications.
How can annotation and discovery of APIs be implemented, to achieve a smooth composition? This question was answered by investigating a semantic technique to
match, select and annotate services. Most of the approaches that have been used to annotate
111
services that better fit a certain context. The use of SWS mitigates such challenges by providing semantic annotations of services to support the application of automated machinery to be able to reason about the functional and non-functional characteristics of services. Literature mentioned semantic annotation of services, which deals with universal description amongst different services can result in a smooth integration of services. Service composition using SWS included the following steps namely: service description, service discovery, service publication and service invocation, as discussed in (Section 2.3.1). These steps can be summarized into selection and matching of appropriate services. The semantic approach of the proposed tool is referred to as the homogenization layer and is presented in (Chapter 3). The SerPro API editor was designed and implemented as discussed in (Section 5.3.). SerPro API editor was used as a semantically annotating tool and Sesame repository was used as a local discovery repository for the proposed tool. In (Chapter 3) different service description, selection, and matching approaches were discussed, as a result, the API editor used SPARQL to select and match services in the local Sesame server. The ontology to semantically annotate REST web APIs was defined and created, and it can be found in (Appendix C).
How can semantic web technologies be utilized to improve usability of Mashups? This
question was answered by the implementation of API Editor and evaluating its
effectiveness. After integrating the API editor to the proposed tool there was an improving
although the composition process of the proposed tool was not that smooth, since the discovery process was still manual and complex to novice users, nevertheless the SUS score increased from 60.83 to 72.08 as discussed in (Section 5.1). Furthermore in (Section 7.4.1.1.), interview question number two (i.e., Q2), showed that 60% of the user could not discover REST web APIs whilst 40% of the users were able to discover API, this signifies that the discovery of web APIS was a key component in determining the usability of Mashups. Moreover interview question number three (i.e., Q3), showed that 57% of users were happy with semantic annotation process and only 43% of users found the annotation tool unnecessary complex.
In (Section 3.5), the semantic annotation tools requirements were reviewed from the literature namely; usability, interoperability, annotation storages and support offered for annotation process. This research semantic annotation tools (SAE) was interoperable in the sense that it used RDF and Owl, which are semantic ontologies that construct data and services that are machine-readable. The storage for annotated document is Sesame server, which is triple store database that can store and query RDF data. Furthermore, the SAE offered manual support
112
for the process of annotating API documentation. As the previous paragraph outlined that 57% of the users enjoyed the semantic annotation tool, although there were challenges encountered. This question was answered and showed that semantic web technologies to discover and annotate web APIs can improve usability of SOA services for novice users, on the bases that they are autonomous and support EUD.
The next section addresses some of the limitations and challenges encountered during the research process.