This web application will provide an interface for the image
processing pipeline that will run on the University of Alabama's
HPC. With this software, users will be able to run batches,
view batch progress, and create and edit scripts by using the
intuitive interface. Upon the completion of jobs,
the software will fetch the resulting files and provide access to
them through the interface. This way, researchers and other
employees working with the MRI Center, who may have little to no
programming experience, won't have to write code or submit
batches themselves.
Additionally, the MRI Center will be able to manage
their image processing jobs with greater ease. In the web
application, a dashboard will provide the user with a simple way
to view, cancel, and track the progress of SLURM jobs.
Abstracting the interaction with remote computational resources is key for efficienct analysis. By reducing the time spent on studying the documentation of the job scheduler, fixing errors, and implementing scripts, more time can be spent doing productive calculations and analysis of the processed images. An intuitive interface will ensure ease of use for users with varying HPC experience.
Since this project will fall into the hands of the client after the semester, it is imperative that the software requires little to no maintenance upon completion. After the minimum viable product is complete, additional functionality to increase flexibility will be developed. This includes the ability to create, edit, copy, and import new scripts. If new requirements for the software arise, we will have provided thorough documentation to allow the software to be updated as needed. Additionally, through providing robust documentation and tutorials, the user experience is beginner friendly and clear to maintain.
Frontend | Backend | ||
---|---|---|---|
Tool | Use | Tool | Use |
Node.js | Engine |
Java 17 (Eclipse Temurin) |
Java JDK/JRE |
React | Interface Library | Maven | Build System |
TypeScript | Compilation | Spring Boot | Framework |
React Router | Routing | PostgreSQL | Database |
styled-components | Interface Components | Liquibase | Database Management |
material-ui | Interface Components | Lombok | Boilerplate Reduction |
Yarn | Package Manager | OpenAPI Generator | API Entity Generation |
Step-By-Step Explanation of User Experience
Example Scenario
An example scenario for the use of this project is if a user wishes to run a script for processing MRI images. Instead of needing to go through the process of logging onto the UAHPC and running the scripts from there, they are instead able to fill out one user friendly form after logging in using only their myBama credentials. Once this form is complete, the user is able to see the progress of a batch run, in addition to information about each job included in the batch. They will be notified when the batch is complete and will be able to view the run details and results. This tool functions as a sort of one-stop-shop for image processing scripts, assisting researchers in analyzing results of MRI scans.
Name | CWID | Email Address |
---|---|---|
Cara Cannarozzi | 11970792 | cacannarozzi@crimson.ua.edu |
Madeline Moore | 11884126 | mcmoore11@crimson.ua.edu |
Noah Overcash | 11907775 | ncovercash@crimson.ua.edu |
Peter Zhang | 11861641 | pwzhang@crimson.ua.edu |