Minions (Create Your Own Challenge)

Near Earth Object - Asteroids' Risk Analyzer

High-Level Project Summary

This project is aimed at displaying particular parameters related to the risk of Near Earth Objects and the risk of impact. The application uses the available data/information on the Near Earth Objects and displays them in a user friendly fashion and enables them to see several parameters depending on date or other factors depending on the data collected on each object at different periods of time.

Detailed Project Description

What exactly does it do?


When you run the application, a UI window will pop up that will show you a list of known threats to our planet and different data about them according to NASA's data and allows you to display different information.


How does it work?


The application will run a JavaFX UI app to interact with the data/information and will fetch all the details required depending on your selections by making REST API calls to NASA's APIs for the concerned threat/object.


What benefits does it have?


This tool enables both researchers and non-researchers to quickly/conveniently access data on the NEO and see different parameters/risks associated with those objects as well as help them analyze the risks.


What do you hope to achieve?


We hope to simplify and enable ease of access to the data about those objects such as the asteroids to the public as well as interested astronomers and researchers on the topic and to help educate regarding the potential impact of those objects in case of any possible collisions or their absence.


What tools, coding languages, hardware, or software did you use to develop your project?


We have used the following open-source solutions/technologies:


  1. OpenJDK 17
  2. Spring Boot
  3. JavaFX
  4. Apache Tomcat

Space Agency Data

We have used the following API from NASA in order to fetch the details and enable our UI to display the corresponding information to the users:

https://ssd-api.jpl.nasa.gov/doc/cad.html

Hackathon Journey

How would you describe your Space Apps experience?


We believe it was a great experience, since we feel happy to contribute even if partially towards a high value goal for the sake of mankind; and we believe that even if we don't win in this competition, it's still definitely a win-win by the end of the day as we grow and learn.


What did you learn?


We learned a lot about astrophysics and many of the common terms used such as Astronomical Units, Parallax, understanding a bit about distances between objects/planets in our solar system.


Aside from the above, it helped us be better at team collaboration, identifying problems/risks early on and focusing on the appropriate flow such as first focusing on the main problem, testing and then optimizing. Finally, finding a way to resolve conflicts.


What was your approach to developing this project?



  1. Identifying a challenge and the problem.
  2. Brainstorming and planning high level solutions with UMLs.
  3. Testing our assumptions on the approach before diving into implementation.
  4. Asking domain experts regarding the topic or challenge we are trying to solve.
  5. Breaking down our implementation into tiny milestones with priorities.
  6. Implementing the core functionality.
  7. Optimizing and improving upon our core functionality once we have achieved the Minimum Viable Product goals.


How did your team resolve setbacks and challenges?



  1. Communication.
  2. Setting pride and personal preferences aside.
  3. Studying each point of view and picking what's suitable for the time.



Is there anyone you'd like to thank and why?


We would like to thank everyone from the local events' team as well as our team members for their great and amazing effort at achieving the final goal.


Special thanks to Jan Spratek for putting the time and effort with us to explain to use the domain problem and helping us with his background knowledge on astrophysics.

References

  1. OpenJDK 17
  2. Spring Boot
  3. JavaFX

Tags

#asteroids,#neo,#risk,#impact