Skip to content

Requirements and Specifications

MMking7 edited this page Dec 7, 2025 · 25 revisions

Document Revision History

Date Version Details
2025/10/05 v1.0 Initial documentation
2025/10/19 v2.0 Add user acceptance criteria, update wireframe
2025/11/03 v2.1 Update story UI wireframe
2025/11/16 v3.0 Update UI requirements (UI revision & new features)
2025/11/26 v4.0 Update non-functional requirements
2025/11/26 v4.1 Update competitive landscape
2025/12/07 v4.2 Apply minor changes(story -> moment)

Project Abstract

We live in an era where recent developments of smartphones make capturing countless moments effortless but finding them later increasingly difficult. Existing AI photo search tools provide simple filters such as date, location, or object recognition but often fail when users search with personalized contextual queries like “escape room photos.” To bridge this gap, we propose MomenTag, an intelligent photo search system that combines natural language processing with personalized tag-based learning. Users can attach tags to selected photos, and the system leverages these examples to recognize and group similar images, effectively adapting to each individual’s unique contexts. This tag-driven few-shot learning enables the AI to continuously improve, while natural language queries provide an intuitive way to retrieve memories such as “trip with friends” or “birthday dinner.” To reduce the effort of manual labeling, the system also suggests relevant tags, helping users organize collections more efficiently. By combining computer vision, NLP, and personalized recommendations, our application goes beyond a simple image recognition to deliver context-aware photo retrieval that fits personal needs.

Customer

In general, the target customer of MomenTag includes people who take a lot of photos and want an easier way to organize them easliy or find specific moments quickly. More specifically, we target frequent camera users who wants to organize their photos in a more personalized way and search more efficiently. (persona)

Competitive Landscape

Criteria Google Photo Samsung Gallery PicFind Ours(MomenTag)
Photo Tagging
NL Search ⚠️
NL-Tag Mixed Search
Tag Recommendation
Image Recommendation
  • Google photo provides basic metadata filtering, photo tagging via short description, and natural language search on images. However, its date filter only work on explicit form (e.g., Sep-2024), and its search terms tend to be too broad.
  • Samsung gallery supports numerous features, including natural language search and automatic tag recommendations. However, it suggests the most recently used tags rather than the most contextually appropriate ones, meaning it falls short on few-shot personalization.
  • PicFind offers local image search using on-device AI. Nevetheless, it lacks metadata filter or tagging features, which means it fulfills only one criterion of our research.

Functional Requirements

User Stories

Authentication

  • User story

    As a first-time user,
    I can sign up and sign in using username and password,
    so that I can use MomenTag's features.

  • User acceptance criteria

    Given MomenTag's sign up screen,
    when the user touches "sign up" with valid username and password,
    then new account is registered and the user is signed in with the account.

Image upload

  • User story

    As an authorized user,
    I can upload my images to the service,
    so that I can search uploaded images later.

  • User acceptance criteria

    Given pop-up for image permission request,
    when the user selects images to allow access,
    then selected images are uploaded, and appear on later search.

Natural language photo search

  • User story

    As an user with a large photo collection,
    I can search photos using natural language,
    so that I can quickly find the images I want.

  • User acceptance criteria

    Given search bar for text query,
    when the user enters natural language query and touches "search" button,
    then uploaded images are shown, in decreasing order of relevance.

Personalized tags

  • User story

    As an user enjoying room escape,
    I can mark my photos taken after each room escape with tag "room escape",
    so that I can group my photos, and search later with "room escape".

  • User acceptance criteria

    Given a detailed screen of an image,
    when I touch "+" on tag and enter personal keyword,
    then I can add tag to the image, and the image can be searched using the tag.

Tag recommendation

  • User story

    As an user enjoying room escape,
    I can accept automatically generated tag "room escape" for my new escape room photos,
    so that I can add tag to images effortlessly.

  • User acceptance criteria

    Given a detailed screen of an image,
    when I touch "+" on recommended tag,
    then the tag is added to the image.

Image recommendation

  • User story

    As an user who wants to add new tag for selected images,
    I can also select recommended images which are similar to images already selected,
    so that I can add tag to similar images easily.

  • User acceptance criteria

    Given a screen of adding new tag,
    when I touch one of the recommended images in suggestion panel,
    then I can add such image to selection.

Moment feature

  • User story

    As a photo-heavy user,
    I can skim through recommended images,
    so that I can find forgotten photos and add tags to them.

  • User acceptance criteria

    Given A recommended photo and four tags,
    when the user taps the tags to add to the photo.,
    then the tags are added to the photo and see the next recommended photo.

Non-functional Requirements

Aspect Requirement Description / Metric
Response Latency Search & Tagging Natural language search queries and tag recommendations should complete in a few seconds; under normal conditions, results should start showing within ≤ 3 seconds. Specifically, P50 (median response time): 1.0-1.5 seconds, P95 (95th percentile): ≤ 3 seconds.
Scalability Photos per User MomenTag must handle at least 50K photos per user without breaking search or tag recommendation features.
Reliability Core Features Core flows (sign in, image upload, search, tag/Moment feature) should work reliably during demos and evaluations, with graceful error messages instead of crashes on failure.
Security & Privacy User Data Access Each user can only access their own photos, tags, and search results; no cross-user data leakage must be possible through API or UI.

User Interface Requirements

Initial settings

initial-setting Users can sign up to service with username and password. Signing in requires username and password, users should allow permission to access images in their devices and users should upload their photos.

Create First Tag Album

add-tag-guide

Users can create a first tag album by naming it, selecting photos from their uploaded photos or 'Suggestions', and finalizing the process.

Main Page

main-pages

Users can sort their tag albums on the main screen, and then entering an album to long-press photos, which enables a selection mode for sharing or creating a new tag.

Natural Language Search

NL-Search

Users can search with a natural language query (e.g., 'Happy SWPP'), selecting photos from the results, and then proceeding to create a new tag album with those selected images.

Tag-Aware Search

tag-aware-search-example

Users can search either filter tags in real-time (e.g., '#ho') or execute a scoped query (e.g., '#hobby is SWPP') to find photos matching a natural language description within a specific tag.

Pic Detail Pages

image

users can tap the top-left menu icon to 'Sort' their tag albums by criteria like name or date. Users can also 'Long-Press' an individual tag (e.g., 'Photolsm') to bring up a modal and 'Edit its name'. The UI also shows that tapping multiple tags enables a selection mode for batch operations.

Tag Album

Tag-album

Users can view an existing tag album ('JJang9'), activating 'AI recommend' to get suggestions, and then selecting and adding those new photos to the album.

Tag Management

image

When creating a new tag, users can select photos to add new tag. MomenTag also recommends images similar with selected photos.

Moment feature

image

MomenTag's Moment feature lets you easily organize your forgotten memories. You can scroll down to conveniently select recommended tags, or create and add your own custom tags by tapping the '+' button. This feature helps you find and manage your old photos effortlessly