top of page



Cram is a startup vocabulary app created for professionals and students who learn new vocabulary because of their work and studies. It is an app, connected with a dictionary, where a user can upload their vocabulary and adjust it according to their needs to learn and memorize it systematically. 

My Role

My Tasks

UX Research

User Research

User Interviews
Competitive Analysis (SWOT)

Task Analysis & User Flows

Usabilty Testing





Adobe Illustrator


Paper & Pencil



Defining a problem

Problem Statement

Young professionals need an effective way to memorize a work and study related vocabulary. They also want to find similar words and phrases to already learnt vocabulary to improve their communication skills. We will know this to be true when we see users start to relearn the saved vocabulary in-app and engage with various games to memorize the words. 

Possible solution

We propose the development of a comprehensive vocabulary app Cram, which can store the learnt vocabulary, is connected to a dictionary, and offers a variety of learning methods together with the organization of the vocabulary. We believe that we will address the needs of young professionals seeking an effective way to memorize work and study-related vocabulary while also improving their communication skills. 


Competitive analysis

Competitive analysis was conducted on three competitors on the market - Duolingo, Flexilize Flashcards and Each of these competitors had different features our users were seeking in one application. Duolingo was visually compelling and had visually compelling gamification. Flexilize had a great flashcard system for memorizing new vocabulary and had an external vocabulary connected to an app, so a user could search for the meaning of the words but also synonyms and antonyms. Each of these apps contributed to crafting possible future features of Cram and to think what is the best design format for our potential users. 

Duolingo SWOT

Engaging User Experience

  • ​In-depth customization options during the onboarding of an app.

  • A visually playful and engaging interface.

Convenient Navigation

  • Direct access to language lessons - when opening the app it shows the previous learning process.

  • The option to choose between different topics for study - for example food, travel, entertainment.

Varied Learning Methods

  • Multiple ways to learn vocabulary (visual, audio, reading, kinesthetic) cater to different learning preferences.

  • Emphasis on gaining new vocabulary makes tasks straightforward and engaging. 



Initial Setup Barrier

  • A long onboarding process may deter users seeking quick access to the app.

  • Post-sign-up promotional emails may be seen as intrusive.

Navigation Challenges

  • The lack of a simple unit selection menu might make it inconvenient for users to navigate through unlocked tasks.

  • Ambiguity in button design complicates user interaction and understanding.

Unclear Features

  • Some features like hearts and streak freeze lack a clear explanation.

  • Punitive measures like long waiting times to be able to continue with the tasks or the need to purchase allowance to continue with the tasks after making mistakes may frustrate users.

Expanded Target Audience

  • Targeting language learners seeking supplementary tools for more structured courses.

  • Separating grammar and vocabulary for users who need to learn language in depth and be able to differentiate between the tasks. 

Enhanced User Education

  • Offering tutorials or tooltips within the app can help users navigate effectively and maximize their learning experience.



Competition from Structured Learning Apps

  • Language apps with more comprehensive grammar and topic coverage may attract users seeking a structured approach.

  • Professional language courses offered by educational institutions or online platforms present formidable competition to Duolingo's casual and playful learning model.

User Frustration

  • Negative experiences such as confusion over features or punitive measures for mistakes may lead to user dissatisfaction.

  • Over-the-top gamification in an app could make it seem to be more of a game than a serious tool for learning a new language.

Lexilize Flashcards SWOT

Efficient Launch Experience

  • Quick introductory questions during the onboarding process make it more user-friendly with a customized app.

  • A clear introduction of the features during the onboarding process helps users to navigate between the features

Simple Navigation

  • The straightforward interface focuses on essential elements, emphasizing vocabulary categories and customization.

  • Easy transition from the home page to the settings.

Minimalistic Design

  • Minimal buttons and a clean design contribute to a clutter-free user interface.

  • A clear focus on vocabulary learning without distractions.

Diverse Learning Exercises

  • A variety of exercises, including word pairing, typing, and listening, offer users multiple ways to engage with vocabulary.

Improved Notification Management

  • Implementing a more user-friendly approach to notification requests - for example offering an option to customize notification preferences.

Enhanced Personalization

  • Introducing subtle personalization features, such as customizable themes or avatars, can make the app more appealing.

  • Reintroducing the mascot within the app interface could add character and personality.

Streamlined Vocabulary Input

  • Implementing a recommendation feature for translated words during vocabulary input.

  • Integration with a dictionary or translation service.





Intrusive Notifications

  • Repeated requests for notification permissions during app launch may annoy users.

  • Randomly timed pop-up windows with recommendations and questions could interrupt user tasks, leading to frustration.

Lack of Personalization

  • While minimal design promotes focus, it may lack a personalized touch to keep users engaged for a longer time.

Commercial Placement Issues

  • Advertisement placement at the bottom of the screen close to a button to add new vocabulary risks accidental clicks, potentially causing user annoyance.

Manual Data Entry

  • The requirement to manually input both native and target language words when adding new vocabulary items may be time-consuming and tedious for users.

Competitive Learning Apps

  • Language learning apps offer more visually enriched environments and personalized experiences.

User Frustration and Abandonment

  • Persistent interruptions from pop-up windows and intrusive notifications may lead to user frustration and abandonment of the app.

  • A lack of visual features and personalization options may result in reduced long-term user engagement and retention. SWOT

Comprehensive Dictionary Access

  • provides extensive word definitions, including sample sentences and usage variations.

  • External sample sentences sourced from books add credibility and offer inspiration for vocabulary expansion through reading.

User-Friendly Navigation

  • Easy navigation with clear buttons and a recognizable layout.

  • Settings on the home page allow for convenient customization of the user information.

Descriptive Learning Materials

  • Detailed word definitions aid in visualizing word meanings, while combining visuals, text, and sounds helps learning tasks.

Improved Onboarding Experience

  • Implementing a more inviting sign-up process, allowing users to explore the app before providing personal details.

  • Offering customization options based on user preferences, such as learning level and preferred learning methods.

Enhanced Collaborative Features

  • Increasing the amount of user-generated lists, especially on diverse topics like "healthcare", "design," etc. can foster community engagement and improve the collaborative learning experience.

  • Introducing features for users to create and share customized word lists based on their interests.





Challenging Launch Experience

  • Mandatory insertion of sensitive personal data during sign-up may deter users.

  • Lack of customization options during an onboarding process.

Limited Collaborative Features

  • Access to other user-generated lists is hindered by their limited availability.

  • Inadequate customization options for word lists restrict users from personalizing their learning experience to match their interests.

Technical Issues

  • Bugs during the sign-up process and unclear UX navigation pathways detract from the overall usability of the app.

  • Mandatory reading of word definitions, even if the user already knows the word, adds unnecessary friction to the learning process.

Competitive Learning Platforms

  • Vocabulary apps that have similar features and offer a more seamless user experience.

  • Inadequate customization options and limited collaborative features may lead to user dissatisfaction.

User Disengagement

  • Technical issues and a challenging initial experience may result in user frustration and abandonment of the app.

  • A lack of diverse and engaging content, such as user-generated lists on specific topics, may limit long-term user engagement.


Defining users needs & problems

To understand users needs and problems, I conducted user interviews with potential users. The aim of the interviews was to understand their key challenges, behaviours and goals while learning new languages. All of the interviewees were active employees, who faced new vocabulary daily because of their profession. They had learned also several languages through in-face language courses but also through various mobile apps. 

User persona

Based on the interviews I was able to take away the key elements from each interviewee and implement it in our persona.

Desktop - 1.png

Key findings

  • Users want to have a structured overview of grammar. 

  • Users need various learning methods - visual, audio, reading, and kinesthetic.

  • Users want to be able to categorise the learnt vocabulary in various ways to learn the different contexts of the word. 

  • Users need a motivational push to start using the learnt vocabulary in real-life situations. Some of the tasks could be assigned for users to complete in real-life scenarios.

  • When learning new vocabulary all of my interviewees admitted that they need to physically write down the words to remember them through body-mind connection. Therefore an app should encourage a user to write down the notes and vocabulary on paper. 


Information Architecture

Based on the background of our persona, I created 2 task analysis and wireframes for the key features of an app. Firstly adding a word to a vocabulary and secondly reorganizing the pre-created vocabulary based on individual preferences. 

Task analysis


User Goal: Add a word to a vocabulary
Entry Point: Splash screen
Success Criteria: A word is added to a users
vocabulary and displayed on homepage.


  • Open an app on a splash screen

  • Fill in login details or create an account

  • Homepage

  • Click on add a new word

  • Autofill suggestions

  • Add a meaning of a word

  • Autofill suggestions

  • Add another word or add a word to a category

  • Create a category or choose from preexisting category

  • Review a category or return to homepage


User Goal: Change how words are placed in
different categories (for example verbs, adjectives,
nouns or by labels like food, travel, design etc.)
Entry Point: Splash screen
Success Criteria: Words are placed into a new


  • Open an app on a splash screen

  • Fill in login details or create an account

  • Homepage

  • Open a pre-existing category or create a new category

  • View a category

  • Make a new category

  • Review new categories

  • Make another category, add new words to a new category or return back tohomepage

Wireframing & prototyping



Usability Testing

Usability tests for main features were performed with mid-fidelity wireframes. I created both - direct and scenario tasks to see how users navigation through each task.


I conducted 3 remote tests through Teams and Zoom and the users navigation was recorded via screen share. Each session was 10-15 minutes long.

All the findings and observations were analysed through Jacobs Nielsens severity scale, based on which I created a spreadsheet for future iterations. 

Direct tasks 

1. Sign up and onboarding

2. Log in

3. Add a new word to an app and
create a category for it

4. Reorganise pre-made category

Scenario tasks


1. You downloaded Cram vocabulary app because you need to
memorize lots of new vocabulary in the cooking courses you are
taking. Before using it you need to sign up and complete a basic

2. You have downloaded Cram app and completed the sign-up
process, now you need to log in to start using it.

3. You just learned the word “pasta” at the cooking course and you
want to add it to your vocabulary together with a meaning of a
word. After adding the word you will also create a new category
for it, named “food”.

4. You want to reorganize your pre-made category named “food”
and create a new category named pasta. From the list of words,
you want to add different pastas to a new category.

Usability test report


Task 1

Task 2

Task 3



Task 4

One user didn’t notice the option for the introduction.

Log-in went smoothly for all 3 users. When wanting to move forward to the next page then 2 users clicked on the wrong place a couple of times or clicked when they had not finished the task yet.

The new category didn’t show on the home page.



When users typed the new word or meaning the suggestions were not logical. A user wanted to add a subcategory to a main category.














To make an introduction of an app more noticeable.

Create a thought through UI design.





To change the position of a tick sign. To go over the forward and back sign - forward sign would
appear if they have created all necessary steps.

Change the hierarchy of buttons on the home page.
Change the order of the buttons at the menu bar according to the importance of the buttons.
Change the options of “add a word” sign for different pages. As an “add a new word” is one primary action, to make it as a separate options on the home page. In the suggestions bar by default suggest the closest word a user is typing but then leave an option for a user to type it by themself as well.
Create subcategories as well.

Prototype iterations



Project conclusion

Even though the language app market is already really competitive, the user interviews and competitor analysis revealed that there is still room for new language app in the market, but it should be tailored for a specific user base. 


Our main users are young students or professionals who want to learn new vocabulary related to their studies or profession. 

Users were missing structured grammatical systems in many apps nowadays and liked to write new vocabulary through by hand. They also found that the existence of the vocabulary database is necessary to find antonyms and synonyms. Browsing through databases also gave them a sense of creative control over their studies, which eventually helped to balance other strict study methods like learning by heart and doing repetitive tasks. 

These user needs can be translated into the key features of an app - which in a balanced combination of clear information and simple gamification will prove to be the successful base for attracting students and professionals who want and need to learn vocabulary daily. An app also should include tasks which encourage users to practice language in real-life settings and use kinesthetic tasks - like writing words on cards by hand. 

Even though tasks in usability tests were straight forward it helped to identify several pain points for users, which I had a chance to improve and eventually prove to enhance the user engagement.

The next steps would be to create the wireframes for all the necessary features and develop the UI of an app. 

Personal learnings

As for me, Cram was my first UX research project. I found it immensely interesting how user research can be implemented in a visual design and I was glad to learn the methodological approach for conducting competitive analysis, user interviews and tests. And even though the interviews and tests will provide a solid starting point - every user's journey is different.


In the end, the main goal was to create the most optimal application for our users based on the persona while aligning it with the project brief.

bottom of page