The idea for our app originated out of a conversation with a local gardening project. It is an approach to a rather recent question: How do you make spending time in nature more appealing to children and adolescents who grew up on smartphones and other mobile devices?
Our supervisor, Prof. Dr. Lenz approached us with his initial idea for a mobile application which already laid out most of the core features that the final version of Strollr incorporates, like the ability to take photos and visualize walks with a map.
During a brainstorm session, we collected our own input and came up with a design concept.
With that in mind, our first mockups were created.
Idea
Development
After agreeing on Flutter as our development framework, we briefly familiarized ourselves with it, while researching plugins and APIs that would be helpful in implementing the planned features.
Going into the development period, we separated the group into three teams, concerned with the general UI, map visualization and database design. This way, we could focus on different tasks while maintaining communication within the group and making use of agile techniques like pair programming and code review. Maintaining our source code with Git allowed us to simultaneously implement different features on their respective branches and avoid conflicts when integrating them.
We manifested a biweekly rhythm for the big team meetings with our supervisor in which we reviewed our recent progress, collected feedback and set goals for the following two-week period. Additional weekly calls with the core team helped us to stay current on each other’s progress and resolve potential issues.
Throughout the development phase, we continuously updated our Backlog of ideas, collectively taking on the role of a product owner. Making use of project management tools, we constructed user stories and arranged them in a Story Map, thereby identifying and refining the most important features.
Going into the development period, we separated the group into three teams, concerned with the general UI, map visualization and database design. This way, we could focus on different tasks while maintaining communication within the group and making use of agile techniques like pair programming and code review. Maintaining our source code with Git allowed us to simultaneously implement different features on their respective branches and avoid conflicts when integrating them.
We manifested a biweekly rhythm for the big team meetings with our supervisor in which we reviewed our recent progress, collected feedback and set goals for the following two-week period. Additional weekly calls with the core team helped us to stay current on each other’s progress and resolve potential issues.
Throughout the development phase, we continuously updated our Backlog of ideas, collectively taking on the role of a product owner. Making use of project management tools, we constructed user stories and arranged them in a Story Map, thereby identifying and refining the most important features.
Reflection
We look back on a project that for many of us posed the first opportunity to experience the development of a software product from start to finish.
Besides our advancement in cross-platform application development, creating Strollr taught us a great deal about planning and managing larger software projects.
While communication can be a bit challenging in a team of 8, we never experienced any major misconceptions or disagreements. Naturally, we faced a few technical hurdles when writing our code, such as conflicting Flutter plugins or problems with the cross-platform compatibility of certain features. However, determination and mutual help within the team resolved all the issues at hand.
While communication can be a bit challenging in a team of 8, we never experienced any major misconceptions or disagreements. Naturally, we faced a few technical hurdles when writing our code, such as conflicting Flutter plugins or problems with the cross-platform compatibility of certain features. However, determination and mutual help within the team resolved all the issues at hand.