Case Study: How I Designed and Published My First App
Ranked #2 in Google Play’s Lifestyle Category
My LDS Temples app for Android achieved the following:
- 10,000+ active users
- 300+ reviews averaging a 4.8/5.0 star rating
- No. 2 in Google Play’s Lifestyle category (September 2016)
The following is a case study of how I designed, developed, and published my first app.
This was a personal project to build my skills as a UX designer, product manager, and developer. Did I feel ready? Nope! But performing all three roles allowed me to gain insights on the perspectives of each role.
My UX Process
There is no “one process to rule them all.” Whether I have two hours, two weeks, or two months to deliver a solution, my process adapts. I use other processes as guidelines (research, analyze, design, prototype, test, etc…), but my ultimate process is adapt and iterate.
What Does It Mean To Adapt and Iterate?
- Adapting means using the right tools, at the right time, to solve the right problems.
- Iterating means learning from my peers and users, and improving on my current design.
My UX Design Tool Box:
The following are design tools I use, or am learning to use. I select tools from this tool set depending on the project, and iterate through them until my solution solves my users’ and business’ needs.
My Design Approach
My UX process takes a center-balanced approach between business, technology, and design in order to innovate solutions that solve user pain points.
Project Objectives Based on Business Goals
Although this project was not a business, I prioritized my project objectives as if they were business goals. My project objectives were to:
- Build personal branding for my portfolio
- Gain experience with UX design and Android development
- Help members of my religious community set and reach their personal temple attendance goals
I set a time constraint of 2 months to design, develop, and publish the app.
The 15 million members of the Church of Jesus Christ of Latter Day Saints (LDS) are encouraged to set personal goals for how often they attend one of the 150+ temples around the world.
Temples differ from regular meetinghouses and weekly services. More information on temples can be found here.
When I started this project in July 2016, there were only two direct competitors in the Google Play App Store:
Interviews with users, online reviews, and app store ratings revealed that these apps had limited functionality and offered poor user experience.
The common alternatives to using an app for tracking personal attendance included spreadsheets, calendars, and journals.
Using my social network and personal contacts, I was able to quickly recruit users that matched my target audience (LDS members that attend the temple).
I started out by interviewing users, doing usability tests with competitor’s apps, posting online surveys, and conducting focus groups.
Personas were created based off my research. Using personas allowed me to acquire user empathy and make targeted design decisions.
User stories were gathered from my interviews. They helped me focus on solving actual user needs as opposed to just building random features. User stories included the following:
- “I want a better way to keep track of my temple attendance so I can see how I’m doing with my personal goals.”
- “I want a quick way to look up temple schedules so I can plan my visits.”
- “I want a world map with all the temples so I can see how and where the Church is growing.”
- “I want a visual way to keep track of the temples I have visited so I can plan trips to the ones I haven’t visited.”
Information Hierarchy: Card Sorting
Card sorting helped me see patterns in how my users organize and group information.
Sketching allowed me to rapidly generate ideas and solutions.
Visual Layout: Wireframes
Wireframes helped me to focus on navigation, structure, and allocation of space. I first created frames on paper, then I used Sketch to create higher fidelity.
Interaction: Low-Fidelity Prototype
Using InVision, I stitched my frames together to create a low-fidelity prototype. This allowed me to focus on interaction, flow, and navigation.
Check out my wireframe prototype made with InVision.
I conducted 20 minute tests with my prototype that involved several tasks and open-ended questions such as, “Where would you look to find directions to a temple you want to visit?”
During testing, I discovered several flaws in my design. For example, when users were asked to log a recent visit, they would navigate to the attendance page or a specific temple’s info page. This insight led to providing the “log a visit” functionality on both pages.
Re-occurring problems identified during testing informed my design. I did multiple iterations, cycling through design and testing, until my prototype matched my users’ expectations.
InVision, Marvel, and other prototyping tools did not offer a convenient way to test user interaction with the temple map or animations such as collapsing toolbars. These limitations left me with unanswered questions.
I decided to use Android Studio, Google Map’s API, and other open source code to quickly create a high-fidelity prototype.
Screen shots of my high-fidelity prototype using code:
More Usability Testing
I conducted additional usability testing with my high-fidelity prototype, and discovered new design flaws.
For example, recording ordinances performed using the keyboard was awkward and discouraged users from recording visits. Since my personas typically only record 1–5 ordinances per visit, I solved this issue by replacing the text input fields with incremental/decremental buttons.
It was a small change, but the change eliminated frustration and nearly doubled the amount of users that would actually finish the task of recording a visit.
After several iterations, my design was ready for implementation.
“Hand off to the developers” is not an event, but a process of communication from project inception.
Transition from Design to Code
Because my high-fidelity prototype was created using code, most of that code was used in the final implementation. In addition, the app was designed with existing API’s, libraries, and components in mind, so the transition from design to code was fast and efficient.
Constraints and Prioritization
I was, however, new to Android development, and I encountered problems and errors that I was learning to solve. In order to adapt, I considered my users’ needs, project objectives, and developer resources in order to re-prioritize features and deliver an MVP on time.
You can view or download the app in the Google Play App Store.
Find any Mormon Temple, explore the world map, log visits, set goals, and more!play.google.com
With my app published, it was time to promote awareness, analyze analytics, and respond to users. I landed an interview with LDSLiving, a news and blog source that targets my same user group. They published an article about my app, and within a few days I had 1,000 new users.
Since then, the app has continued to grow and eventually ranked as No. 2 in Google Play’s Lifestyle category in the United States.
Today the app supports 10,000+ active users with a 4.8/5.0 average star rating from 300+ reviews.
A Work In Progress
My design approach is iterative, not linear.
Although the results have been very positive, I am still receiving user feedback, analyzing analytics, and updating the app according to my project objectives and users’ needs.
In addition, I am always exploring new methods and tools, including A/B testing, to improve my product and design process.
What I Learned
- Understanding my users’ needs and doing essential research was the key to making my app successful.
- Communicating and collaborating with developers from the beginning leads to greater efficiency overall.
- Fixing mistakes during the prototyping stage is much easier than fixing mistakes during production.
- Finding a balance between project objectives and user needs is tough, but necessary and achievable.
The Most Important Takeaway:
UX design is so much fun! I enjoy the processes of developing empathy, making discoveries, learning from my mistakes, and innovating to create solutions that solve problems.
Thank you for your time reviewing this case study.
I would love to hear your feedback so I can keep learning and improving. :)
Sincerely, Mitch Clements
P.S Do you hate doing laundry? Discover how I’m combining both design and technology to solve a laundry pain point.
When I’m not designing, innovating, or coding, you will find me hanging in a hammock, driving around in my Jeep, listening to a Coldplay song, hunting for a geocache, or playing expert pro drums on Rockband.