Case Study: Pomodoro Timer Application

12 minute read

Published:

Preface

The Pomodoro Technique is a time management method developed by Francesco Cirillo in the late 1980s. The technique is designed to help improve focus, productivity, and overall work efficiency by breaking work into focused intervals, followed by short breaks. The name “Pomodoro” (Italian for “tomato”) was inspired by the tomato-shaped kitchen timer that Cirillo initially used to track his work intervals. In this post, I’ll investigate and add a feature to Pomodoro Timer Application.

What is the Pomodoro Technique?

The Pomodoro Technique is a time management method developed by Francesco Cirillo in the late 1980s. The technique is designed to help improve focus, productivity, and overall work efficiency by breaking work into focused intervals, followed by short breaks. The name “Pomodoro” (Italian for “tomato”) was inspired by the tomato-shaped kitchen timer that Cirillo initially used to track his work intervals.

Here’s how the Pomodoro Technique works:

  • Choose a Task: Select a task or project that you want to work on.

  • Set a Timer: Set a timer for a specific interval, traditionally 25 minutes, which is known as a “Pomodoro.” During this time, you focus solely on the chosen task and work on it with full concentration.

  • Work: Work on the task until the timer goes off. Avoid distractions and interruptions during this period.

  • Take a Short Break: Once the Pomodoro timer rings, take a short break of about 5 minutes. This break allows you to relax and recharge.

  • Repeat: After the break, start another Pomodoro by setting the timer again and continuing to work on the task.

  • Longer Break: After completing a set number of Pomodoros (usually four), take a longer break of around 15 to 30 minutes. This longer break helps prevent burnout and allows for deeper relaxation.

The Pomodoro Technique follows the cycle of focused work intervals followed by short breaks. The idea is to maintain high levels of focus and productivity during the work intervals, knowing that a break is coming up. This technique leverages the principles of time blocking and provides a structured way to manage your work time effectively.

Key benefits of the Pomodoro Technique include:

  • Improved focus and concentration.

  • Enhanced productivity and efficiency.

  • Regular breaks that can prevent burnout and mental fatigue.

  • Increased awareness of how time is spent on tasks.

  • The technique is adaptable and can be customized based on personal preferences and work habits.

While the traditional Pomodoro interval is 25 minutes, you can adjust the intervals to suit your working style and the nature of the tasks. Many digital tools and apps are available to help individuals implement the Pomodoro Technique and manage their work and breaks more efficiently.

Pomodoro Timer Product Review

The product is a very light and simple implementation for implementing the Pomodoro technique. In this section, we will review its features:

  1. Displaying the onboarding pages: As soon as the program is opened for the first time, 6 onboarding pages are displayed to the user as a slide. The purpose of displaying these pages is to familiarize with the Pomodoro technique.

  2. Timer display: This product contains 2 pages in total. On the first page (main page) the Pomodoro timer is shown and in the lower part of it, you can simply specify whether this timer is for a short, long break or to complete a task. The product timer, similar to the timer of other products, includes the functions of stopping and resetting.

  3. Settings: On another page of this product, the user can change the settings related to the product. As it was said in the introduction, this technique has the ability to be personalized and the reason why such a part is embedded will also be mentioned. The settings on this page generally include two categories of specific settings related to the Pomodoro technique and specific product settings, each of which I will explain:

    1. Time interval settings: In this section, the user can set the task timer, short break time, and long break time by setting a numerical value.

    2. Color theme: In this section, the user can set the background color theme of the application from among the predefined colors.

    3. Sound theme: In this section, the user can specify whether the sound played after the end of each timer is an alarm sound or a notification. By choosing each option, the sound of each one is also played so that the user can better choose an option depending on his taste. By default, the alarm sound is selected.

    4. Other settings: These settings include the following:

      1. Ability to set the number of pomodoros up to a long break (default is 4)

      2. Ability to set daily goal (default is 8)

      3. Ability to vibrate after each timer ends (default is active)

      4. Ability to automatically start breaks (default is enabled)

      5. Ability to automatically start pomodoros (default is disabled)

      6. Ability to display notifications (default disabled)

      7. Ability to keep the phone screen on (default is active)

    5. Other things: In the footer section of the program, there are 3 functions that are not related to the settings, but are included in this page:

      1. Rating the app (via Google Play or the internal stores of the mobile phone manufacturer)

      2. Ability to send comments via email

      3. Getting to know the program and how to use it (which shows the same onboarding pages)

Data Collection and Review to Understand the Quality of User Experience

The following data may be stored and reviewed in order to understand the quality of users’ experience. The use of each data is written in front of it:

  • User feedback: In order to understand the level of user satisfaction and their requested improvement points

  • Recorded crashes: in order to understand the stability of the program and fix problematic points

  • User preferences values: In order to optimize the default values

  • The number and length of user sessions: in order to understand the general usage habits of users and their level of engagement

  • Abandonment rate: In order to understand potential usability problems.

  • Number of Daily Goals Completed: To understand how productive users are

Investigating a Web tool for Analytical Data Collection and Analysis

In order to collect and analyze analytical data, the Google Analytics tool is recommended because it is both free and all the data from the previous section can be collected and checked with it. In general, the following 4 categories can be done with this tool, which are useful for understanding the user experience:

  • Event tracking: for example session exit rate, configuration values, timer start and end times

  • Duration of each session: It is done automatically in this tool

  • Setting goals and tracking conversions: You can set and monitor goals and conversions in this tool in a personalized way, for example, the number of completed Pomodoro sessions.

  • User behavior analysis: This is also done automatically in this tool. For example, demographic and user behavior flow reports

Analysis and Design of a Feature

According to the metrics mentioned in the second part, the following features can be added to the application. Most of these features are obtained by comparing competitors. The metric directly related to the feature is written:

  • Ability to create and share tasks with colleagues -> increase engagement and number of users

  • Ability to count user streaks and share them -> increase engagement

  • Ability to integrate with calendar or ToDo-List services -> increase engagement and number of users

  • Ability to view your statistics such as progress -> increase engagement and productivity

  • Ability to integrate with background sounds and songs -> increase engagement and productivity

  • Ability to define challenge and achievement in order to motivate the user -> increase engagement

Feature number 2 (counting user streaks and its sharing) has been selected for analysis and design. It should be noted that this feature can be analyzed and implemented both on a heavy scale, which requires the definition of the user concept and the implementation of the prerequisites on the service side, and it can also be considered on a light scale, which is only stored locally in the app. In this report, only the light scale is investigated.

  • Feature Name: Ability to record and share user streaks

  • Cause and Purpose: This gamification feature creates a sense of accomplishment and uses psychology to maintain habits. The visual display and sharing of this feature and its records helps maintain and increase streaks and gives a sense of satisfaction to the user. It also encourages users to use the app continuously and increases their engagement.

  • Target group: all application users

  • Feature Description: According to the following designs, both the home page and the settings will be changed, the description of which is as follows:

    • On the main page, the number of remaining daily goals is notified to the user, just according to the displayed text. No action is defined on this text and it only has a display aspect on the user’s side.

    • In the settings page, a general redesign is done and this page is changed from just displaying settings to a multi-user page. According to the design, in the first section, the amount of the daily goal is achieved and the user’s remaining as well as his maximum streak along with its historical period are displayed. The streak calculation method is that if the user completes his daily goals for 2 or more consecutive days, the start and end intervals are stored locally on the device, and if the number of days in a row increases, the stored end date is updated. The amount of the streak is also obtained in a simple way from the difference between the end date and the beginning date. If the user does not reach his daily goal in one day, that streak will end and the streak number will be zero. Now, if the terminated streak has more days than the previously terminated streak, that streak will be stored and displayed as the maximum streak recorded by the user.

    • If the user taps the max share button of the streak, an image matching the attached image is created and the user can share it. The panel that is displayed for sharing is the default panel of the operating system.

    • According to the explanations given regarding the redesign of the settings page, the settings items with the same categories as before are displayed in the new implementation in the form of expand & collapse. This task will not change the functional logic of any of the settings.

  • Designs: According to the explanations given in the previous section, the designs will be as follows:

Pomodoro Designs

It should be noted that the designs were designed with the style guide of the iOS platform, but they can be easily converted to the Android style guide.

  • Task estimate: The estimate for this feature is according to the following table:
SubTask TitlePlatformEstimate (in hours)
Display text on the main pageAndroid2
implementation of streak (logic and display)Android15
Ability to share the maximum streakAndroid12
Redesign application settingsAndroid20
Total49

It is noted again that the scope of changes of this feature has only been seen on the client side (Android) and the review and analysis on the scope service (backend) or other platforms has been avoided. It should also be noted that the above numbers are considered for a mid-level developer, and if you have a junior or senior developer, these numbers will be multiplied. It should be noted that these numbers are only a rough estimate of the product manager, and finally, the final numbers will be received and recorded from the developer in the estimation session before the start of the sprint. According to the total recorded estimates (49 hours), it is possible to implement and test this feature in a normal two-week sprint.

Conclusion

Considering that a user story must be INVEST, considering its independence, it can be said that the story analyzed in the settings section has many complications and can be considered as its negative point. If, for example, we have limited development resources or time to market, this feature can be enabled by placing a medal or trophy icon next to the settings icon and tapping on it will show the exact same productivity section in a popup. and so, in this way, the settings page remains unchanged.

Leave a Comment