Test 17
This project is a Java implementation of the DECIDE assignment detecting and intercepting ballistic threats.
The DECIDE program evaluates tracking date and parameters to determine whether or not an interceptor launch should be authorized
Given radar tracking points, parameters, and logical constraints, the program evaluates a set of Launch Interceptor Conditions as defined in the DECIDE manual. The conditions arelater used according to the Logical Connector Martix and Preliminary Unlocking Vector in order to know the relevant conditions. After this process, the program comes to a conclusion of whether or not to launch the interceptor.
- JDK 22 or higher installed
- Maven (version 3.9.8)
- Clone the repository:
git clone [email protected]:terahidro2003/save_the_world.git
- Compile project using Maven:
./mvnw clean install compile
- Run the tests to ensure everything is working:
./mvnw clean test- Run the application (Main class):
./mvnw exec:java -Dexec.mainClass="com.skarbalius.Main" ## License
This peoject is licensed under the BSD 2-Clause License. See the License file for more information.
Alberto Rayon (GitHub: AlbertoRayon): Helped in pair programming for the implementation of Launch Interceptor Conditions 0-2. Implemented LIC's 3 through 8 and wrote unit tests for each. After the conditions were met, worked on refactoring the LIC's. Also responsible for README file contents.
Juozas Skarbalius (GitHub: terahidro2003): Set up the initial project structure, including Maven configuration, input parsing, chain of responsibility design pattern, and the README. Implemented task handling logic, and contributed to refactoring as well as the implementation and testing of PUM and LCM functionality.
Adrian Grund (Github: gruendlich): Implemented Launch Interceptor Conditions 0, 1, 9, 10, 11, 12, 13, and 14 and wrote unit tests for these conditions. Contributed to refactoring and cleanup efforts, reorganized condition-related files, improved test structure, and managed project merges. Also completed the way of working assessment.
Jintong Jang: Implemented the PUMHandler and its associated unit tests, contributing to the logic responsible for combining condition evaluations.
Bahar Kimanos (Github: baharkim): Added the FUV and final decision handler tests and its respective tests. Refactrored the FUV handler to make some fixes.