Following the Scrum agile methodology, Kiteflite was designed and developed in four weeks during a Software Engineering Studio course at Texas A&M University.
Kiteflite is a mashup web application that gets the user to the most ideal destination to fly a kite.
My team of three students was tasked to create a mashup web application in four weeks during a Software Engineering Studio course at Texas A&M University in the Fall of 2019. The web application had to incorporate three separate APIs.
With a small team of three students (Ryan Cohen, Priyanka Paul, and myself), we each played an important role throughout the design process and full stack of development.
Often times the weather conditions outside are not optimal to fly a kite. People that are stuck in bad weather a frustrated that they are unable to fly their kite. The underlying problem is that avid kite-flyers do not have the ability to fly their kite at their current location.
With this problem, people need a resource that enables them to have the opportunity to fly a kite regardless of the current weather locations where they are. We decided to come up with a simple and accessible web application to serve as a resource to get people flying their kite.
In order to develop an impactful and usable web application, we needed to first understand our users and stakeholders. After conducting interviews with a sample of our target users, we developed user stories to outline user needs that our product will fill.
With these discoveries in mind, I decided to come up with a central mission statement for the product.
Provide resources to enable users to fly a kite regardless of the current weather conditions.
In order to achieve this mission statement, I created three goals that I would focus on:
Now that we know what the problem is and how we are going to tackle it, we can start the design and development process.
We started by writing a high-level design proposal of our product where we discussed our goal of desired functionality, stretch goals, and fallback goals. We developed a sprint backlog that we would refer to when delegating and accomplishing tasks throughout each Scrum sprint. Lastly, I created an initial interface wireframe that we used to visualize our end product.
With our basic interface implemented, we conducted a series of user studies to understand how our target users interact with our product and make improvements based on what we observe.
The first was an online survey in which users interacted with our interface and rate statements based on how much they agreed with them on a 1-5 scale. They also had an option to input qualitative feedback on changes they would like to see.
The second was a series of contextual interviews that we conducted with 5 users. We started by asking questions about the user’s background, pain points, frustrations, goals, and needs associated with our product. Then, we observed the users as they interacted with our interface.
From our user studies, we concluded that we needed to address accessibility of our product for users that are visually impaired or colorblind. We also found that we needed to streamline the user’s journey by making it obvious what information was needed and what had to be clicked in order for a result to appear.
Once we determined our functionality and usability goals through user research, we were able to start the development process. Following the Agile Scrum methodology, we split our development timeline into three Sprints in which we would have a product launch and Sprint retrospective at the end of each.
We used OpenWeatherMap API to gather current weather data from cities around the United States, and we determined the most ideal city to fly a user-inputted kite type based on optimal weather conditions. Next, we utilized Skyscanner API to find same-day flight itinerary from the user’s current location to the calculated destination. Lastly, the Yelp API was used to find a highly rated park and café in that destination.
When the back-end was complete, we refined our front-end interface based off the conclusions of our user research. We implemented more instructions on what information is required from the users as well as an option for dark mode for higher accessibility.
All of the code is available on GitHub!
Great, not perfect. Always room for improvement.
Staying on top of our deadlines, we launched a functional product that is accessible to many users. Our team successfully presented, demonstrated, and answered questions about our project and process in front of 100+ students and professors.