Overview

Challenges

Our development process involved a lot of trial and error, as well as research. We took advice from industry experts and our teacher advisor to further our progress throughout the process.

Moon Image

Project Management

The process of creating the app was both challenging and rewarding. Apart from technical challenges like selecting sites, terrain generation, and path finding highlighted before, we also encountered other challenges. No one in the team had prior experience working on a project of similar complexity and scale, and in the first two weeks each member was trying to do everything. That experience made us realize that we needed to use a methodical goal oriented approach. We referred to the K-12 Computer Science Framework to collaborate around computing and identified multiple work streams led by an owner and that could run in parallel. We defined computational problems that we needed to solve - dealing with large data, creating moon texture and visualization, identifying and optimizing path finding, defining user interface and user options, identifying landing and destination sites, and choosing our coding platform. This led us to creating a storyboard that guided and organized the team to start collaborating to build the app.

Development Considerations

Early on, we realized the traditional front-end/back-end approach wouldn't work for our problem. After watching the LVC from Ben Weno and Billy Young from Johnson Space Center, we opted for a gaming engine solution and explored Unity and Ursina. Despite our team's C# and Python coding experience, we lacked gaming engine knowledge. To bridge the gap, we enlisted help from an industry mentor. After 8-10 days with both engines, we chose Ursina as Unity's complexity made it challenging. Ursina, with simpler code, direct game object control, and seamless integration with Python libraries like Numpy for handling large datasets, proved to be a better fit for our project.