Challenge Overview
Challenge Objectives
- SwiftUI / Swift 5 iOS app development targeting Catalyst (iPad and macOS)
- This challenge will fix some bugs that have been found in the version 1 of the app, as well as ensure that the code runs on the latest macOS and iOS versions.
Project Background
HATTB (Human-Autonomy Teaming Task Battery) is intended to provide a simplified version of the real-world tasks performed by remote operators monitoring and controlling vehicles with varying levels of automation (a.k.a. pilots controlling drones). The primary use case for HATTB is a psychology researcher studying the performance of participants as they complete specific defined Scenarios. In the future, the application could be extended to many use cases outside of drone operation.
There are a number of tasks defined in the app currently, including:
- Legacy MATB task
- Search task
- MAP task
Researchers will be able to setup experiments for various scenarios.
Technology Stack
- SwiftUI
- Swift 5
- Catalyst targeting iPadOS and macOS
- SpriteKit
- Multi-peer connectivity
Note that third party libraries / CocoaPods are not allowed unless they are approved by the client explicitly. The goal is to not have to use any third party libraries in the final application.
Functional overview
A functional overview document will be provided in the forum, in the "docs" folder of the provided code.
Code access
The existing code for the application will be available in Gitlab, and access will be granted through a link in the forum.
Challenge requirements
This challenge will fix a couple of issues that have been raised by the client. The list is below, and Gitlab access can be achieved by requesting it in the forum.
- https://gitlab.com/topcoder-consulting/nois2-033-hattb/HATTB/-/issues/540
- https://gitlab.com/topcoder-consulting/nois2-033-hattb/HATTB/-/issues/538
Orientation
Note that this app will run on both iPadOS and macOS. Please ensure that the contents scale appropriately on both.
Deployment guide and validation document
Please include an updated README.md that describes how to run the app. This shouldn't change much from what's already there, but if any specific setup steps are required for testing or running the above steps, please make sure that's covered
Validation
You must also provide a Validation.md document, with information about how to properly validate the fixes above. No video is required.
What To Submit
- Git patch against a recent commit in git (anything 6423398242b66c16af8433c603d39d61612cf460 or later) Make sure to test your patch file and document the commit the reviewers have to use!
- Updated README.md
- Validation.md