• January 03, 2019

    PacTrans Technology Transfer Success Story 2018 #12: Developing a User-Friendly RAI Software Application

    Over the past several years, PacTrans has been supporting a team of researchers investigating critical slopes and rockfall. There have been many meaningful outputs, outcomes, and impacts from this work. One output was the development of a Rockfall Activity Index (RAI). The research team has implemented (as C++ code) the various components necessary to determine the RAI as a computationally efficient executable that requires one to edit parameters and settings in text files and to run the program within the command prompt. Over the past year, state Departments of Transportation (DOT) in the Pacific Northwest and across the nation (including several agencies on the east coast) have expressed significant interest in adopting the RAI system in their respective regions. However, in its original form, the software environment is burdensome and not appropriate for use by non-experts. Thus the team sought PacTrans success story technology transfer funds to support the transition of the current prototype RAI processing software into a robust, user-friendly software application for use by DOTs and their consultants, thus promoting the use of the RAI system across the United States and beyond.

    Thus the research team worked with a software team at APL (Applied Physics Laboratory)  to evaluate strategies for improving the usability of the prototype Rockfall Activity Index (RAI) application. Primary areas of focus were the best type of application model (stand-alone or plug-in) for the software, improving user understanding and ability to modify parameters, and how best to reorganize the application workflow to make the various features easier for users to comprehend.

    The initial version of RAI was developed as a windows-based C++ console (command prompt) application. Other development models were considered to provide broader access and integration with compatible applications for analyzing the point-cloud output from RAI. One consideration was toconvert RAI from a stand-alone application into a plug-in for an existing point-cloud application. Given the complexity of RAI features and little overlap with appropriate applications, transitioning RAI to a plug-in architecture would require many of the same development challenges of a stand-alone application, with the added challenges of having to ensure the codebase was compatible with the host application and maintaining compatibility over time as the host application is patched and updated. The limitations and added complexity of a plug-in architecture made it clear that such an approach was not viable. An alternate architecture that was considered was to migrate RAI to a web-based open-source platform. As a web-based application, RAI would have a simpler distribution model, and the underlying server framework would be independent of client machines. However, by making such a significant change in the application architecture would require rewriting virtually all of the software, and require an entirely new application stack. Also, tests have shown that interacting with high-resolution point cloud visualizations over web interfaces fail to provide a responsive enough interactive experience for users. While moving to a web-based model might be appropriate in the future, at this time, web functionality is too limiting for the RAI. As a result, the decision was made to maintain RAI as a windows-based application and to investigate ways of improving its workflow and usability.

    Many of the usability issues raised with RAI pertain to how the application is launched and how to manage the multitude of parameters required to assess rockfall hazards. The current prototype requires users to have expert knowledge of how files are named, organized, and modified. Starting RAI involves the execution of command-line statements or dragging the appropriate files onto the RAI executable. To run different aspects of RAI, users must know which file types to call/drag at the appropriate time. Requiring users to process and create RAI files manually creates usability issues as their uncertainty about where to start, or what actions to take, prevents them from accessing the functionality that RAI has to offer. To address these issues, it is recommended to develop a GUI for RAI that serves to simplify how users set parameters and perform actions within RAI. Additionally, an organizational schema was developed for the many output files. The GUI also allows the users to save different parameter files based on their preferred configurations and modes of running the analysis software. Initial work has already begun on designing a GUI for RAI based on some supplemental funding provided by the Oregon Department of Transportation (SPR-809). Several screenshots from this GUI are provided below.