Browsing by Author "Anslow, Craig"
Now showing 1 - 4 of 4
Results Per Page
Sort Options
- ItemOpen AccessAutomated Example Oriented REST API Documentation(2017) Sohan, S M; Maurer, Frank; Anslow, Craig; Wang, MeaAPI documentation presents both a problem and an opportunity for API usability. REST APIs provide interconnectivity between applications over HTTP. Documentation of a REST API is a key information source for API client developers. Most REST APIs are documented using a manual approach, which can be time consuming and error-prone. REST API developers need to efficiently document their APIs with qualities that make the API usable. In this research, I focused on the topic of automated REST API documentation to satisfy this need. In this thesis, I present and evaluate a novel technique to solve REST API documentation requirements. I present a set of REST API documentation requirements by studying the existing literature and the current industry practice. From this study, I observed that REST APIs evolve frequently, but used a manual or bespoke approach for generating and maintaining their documentation. I present, SpyREST, a reusable technique with a prototype implementation to automate the REST API documentation process with executable API usage examples. The technique involves the interception of example REST API calls from API test code using an HTTP proxy server to auto-generate an accurate and updated REST API documentation. I present an industrial evaluation of the proposed technique based on a period of eighteen months of production use. From this study, I found that it was feasible to leverage API test code to automatically generate an always-updated REST API documentation for evolving REST APIs with usage examples. To evaluate the impact of usage examples on REST API client developers, I performed a controlled study with experienced REST API developers. From this case study, I found that REST API client developers faced patterns of obstacles using REST APIs that can be reduced by including API usage examples in the API documentation, as suggested in the proposed technique. The findings of this research can be used as a guideline for practitioners to automatically generate REST API documentation with usage examples. Researchers can extend the novel concept of using interception to automatically document API usage examples for other forms of APIs.
- ItemOpen AccessDesigning Geovisual Analytics Application for Exploring Hydrological Data(2015-05-08) Marbouti, Mahshid; Bhaskar, Rahul; Shakeri, Zahra; Anslow, Craig; Jackson, Leland; Maurer, FrankThe ability to analyze and visualize large amounts of environmental and hydrological data on maps is difficult. Interaction and manipulation of data is crucial for decision making in natural disasters like floods. Hence, we present a Water Management Application (WMA), a geovisual analytics application to help analysts explore large amounts of hydrological data on web-based maps, create early flood warnings, and make strategic decisions in critical situations. With WMA we have provided monitoring and management of environmental resources which can help inform the design of future geospatial and geovisual analytics applications.
- ItemOpen AccessExploring a Process for Developing Usable Web APIs: A Case Study(2015-12-04) Bhaskar, Rahul Kamal; Maurer, Frank; Maurer, Frank; Anslow, Craig; Kowch, EugeneDeveloping a usable Application Programming Interface (API) is a complex and expensive task. Two major factors play important roles on the usability of an API: its design and the resources made available by designer (e.g. documentation, tutorials). Typically, developers evaluate the usability of an API after implementation, resulting in refactoring tasks that could be avoided if this evaluation were continuously conducted. This thesis explores a process for building usable APIs that combines concepts from an API usability evaluation method (Cognitive Dimensions) and an Agile development methodology (eXtreme Programming). Explored effectiveness of this process and the impact of different resources on usability, I implemented a web-based API and conducted a user study. Results from these two evaluations indicated that: the process was effective to design the API, but ignored some concerns around the resources; and usability was improved when functional examples with source code are provided.
- ItemMetadata onlyUser evaluation of polymetric views using a large visualization wall(ACM, 2010) Anslow, Craig; Marshall, Stuart; Noble, James; Tempero, Ewan; Biddle, RobertThere are few visualization techniques for displaying complex software systems with large numbers of packages and classes. One visualization technique is the System Hotspots View, whose effectiveness has yet to be validated by any empirical studies. We have conducted a user evaluation to see whether participants of our modified System Hotspots View using a large visualization wall can accurately identify key measurements and comparisons in the underlying software system. The results of our user evaluation indicate that participants were able to effectively use our modified System Hotspots View to explore the example domain: version 1.6 of the Java API. Our observations also indicate that there are issues around interacting with the visualization wall.