Pineapple Platform Application
Quick Links: GitHub Repo
Table of Contents:
Introduction:
This was my final project for a Software Engineering course, where the goal was to develop a software product with a back-end database to store and display user scores. The key question was how to effectively store, retrieve, and display this data while ensuring a smooth player experience.
Goal: Design and build a platform game where user scores are stored in a cloud database and displayed on a leaderboard accessible via a locally hosted website.
Key Questions:
How should user data be stored securely?
How can I ensure seamless integration between the application and database?
How will I display the data effectively on a web-based leaderboard?
Process:
Tools: C#, HTML, JavaScript, Unity, GitHub for version control, cloud-hosted database.
Methodology: Followed the Waterfall methodology to streamline the project stages from planning to deployment with my team.
Personal Contributions to Development:
Designed and built the game using Unity and C#, handling character movement, interactions, and levels.
Connected a cloud-hosted database to store and retrieve user scores, which was seamlessly integrated into the game.
Employed GitHub to centralize and track the project’s progress.
Discussed progress frequently with team to ensure timely movement through development stages.
Results:
Developed a fully functional game application with a dynamic leaderboard that displayed user scores in real-time and scored 100% on the project, reflecting successful execution and high-level technical proficiency.
Insights:
While this project was not designed to gather insights on any data source, some insights can still be drawn from the project experience.
Effective data management and integration between game and database improved user experience.
Implementing a centralized repository (GitHub) ensured the project remained organized and streamlined.
Learnings:
Before this project, I had no experience in software development. This project challenged me in many ways, and I am always grateful for opportunities to grow.
Gained practical experience in Unity for game development and using databases for the first time.
Broadened technical skills in full-stack development (C#, HTML, JavaScript), database management, and version control.