Skip to content

Requirements & Specifications

Yenah Cho edited this page Oct 21, 2023 · 28 revisions

Table of Contents

Document Revision History

version 1.0 (2023/10/5): initial version

Project Abstract

"LittleStudio" is an innovative drawing application designed for children aged 5-8 and their parents. It creates a collaborative platform where families can jointly produce a unique piece of artwork in their mobile systems. The app employs generative AI, which acts as a magical art assistant that draws in a kid-friendly style. The application ensures user safety by moderating AI-generated content and offers supplementary features like animated GIF creation and voice recordings to augment the value of user’s artwork. This is not just about drawing; it is about building shared memories and artworks, all while ensuring the content remains suitable and safe for young eyes.

Customer

General Audience

  • Families with children aged 5-8

Specific Customer Types

  • Children who likes to draw and play on digital devices
  • Parents who want to make and save special memories with their children
  • Tech-savvy parents who want to introduce AI to their children safely

Competitive Landscape

Though there were number of children drawing mobile applications, introduction of AI technology in this field is not widely used yet. Therefore we will compare our product with other apps in the markets which have our desired ability partially.

Service LittleStudio SketchAI 어린이 미술놀이
Drawing targeting children O X O
Real-Time collaboration across different devices O X X
AI-enhanced artwork O O X
Safety mechanism O X X

어린이 미술놀이: This application induces children to participate only on coloring of a partially completed artwork. In this way children could be more satisfied than doing their own artwork, since the quality of the artwork is provided from the original sketch that is provided. LittleStudio intends to extend that experience to various areas such as selection of thesis, and overall drawing process.

SketchAI: Other AI drawing in the market has some hazardous point that is not appropriate to kids' emotion. LittleStudio intends to prevent those cases and make AI drawing into a meaningful family work.

Functional Requirements

Use Cases

1. Sign Up Page

Goal Allow new end users to create an account and access LittleStudio’s services
Actor End user
Pre-conditions The end user is not registered
Trigger The end user clicks on the “Sign Up” button
Main scenario i. The end user navigates to the Sign Up page
ii. The system displays the Sign Up form with fields for ID, full name, password, password confirmation, type of user (child or parent), and gender (male, female, or other)
iii. The end user enters the aforementioned information required to sign up
iv. The system validates the input, checking for the uniqueness of the ID
v. If validation is successful, the system creates a new user account
vi. The system registers and logs the end user in and the end user is redirected to the user main page
Extensions (error scenarios) i. The username already exists
          a. Display error message prompting the end user to correct the fields
ii. The password and password confirmation input do not match
          a. Display error message prompting the end user to correct the fields
iii. End user has not filled in all fields
          a. Display error message

2. Login Page

Goal Allow registered end users to create an account and access LittleStudio’s services
Actor End user
Pre-conditions The end user is already registered/has an account
Trigger The end user clicks on the “Login” button
Main scenario i. The end user navigates to the Login page
ii. The end user enters their registered email address and password
iii. The end user clicks on the "Login" button
iv. The system verifies the provided credentials, checking for the correct password associated with the ID
v. If verification succeeds, the system logs the user in
vi. The end user is redirected to the main page
Extensions (error scenarios) i. Invalid login attempt(s): the login credentials (ID and/or password) are incorrect (including non-existent ID)
          a. Display error message

3. Main Gallery Page (Draw Feature)

Goal Allow registered end users to create a collaborative artwork and access past artworks
Actor End user
Pre-conditions The end user has logged in
Trigger The end user has logged in
Main scenario i. The end user logs in and the gallery page is displayed
ii. The end user clicks on the “plus” button via the menu bar
          a. “Create” option: end user is the owner of the artwork
          b. “Join” option: end user joins another family member’s drawing workspace via the invitation code provided by the owner for a collaborative artwork creation
iii. The end users simultaneously draw on the canvas using the undo icon, redo icon, finish button, and pencil, eraser, and coloring pencils
iv. If the end user is the creator of the artwork, they can:
          a. Invite other family members by sharing the invitation code
          b. (Upon completion of the drawing) Click the “Finish” button
Extensions (error scenarios)

4. Voice Recording / Loading Page

Goal Voice record a finished drawing to provide context and narration for the artwork
Actor End user
Pre-conditions The end user is the owner of the artwork
Trigger The end user clicks the “Finish” button
Main scenario i. The end user navigates to the voice recording page
ii. The end user voice records via the record icon
iii. The end user adds a title in the “Title” field
iv. If the “Submit” button is clicked, the end user is redirected to the loading page
v. The loading page displays a message asking the end user to wait for ten seconds while the AI artwork is generating
Extensions (error scenarios)
Variations (alternative scenarios) i. The end user has not added a title 
          a. Display alert message (required field)
ii. The end user has clicked on a button leading to another screen midway 
          a. Display alert message to notify of unsaved changes. The message prompts the end user to confirm whether they indeed wish to exit the current screen, ensuring they are aware of potential data loss

5. Artwork Page

Goal View artwork
Actor End user
Pre-conditions The end user finished a drawing, added a title, and voice recorded
Trigger The end user has added a title and voice recorded (the artwork page comes after the loading page)
Main scenario i. After loading, the end user is redirected to the final artwork screen, which displays the following:
          a. the original collaborative drawing
          b. an AI-generated artwork inspired by the submitted drawing
          c. an animated GIF with intermediary checkpoints 
          d. the title of the artwork
          e. the voice recording (if none exists, display record button)
          f. a  list of collaborators who contributed to the artwork
Extensions (error scenarios)

User Stories

  1. As an end user, I want to sign up, so that I can access and make use of the services provided by LittleStudio.
  • Scenario: The end users clicks on the “Sign Up” button
    • Given: The end user is in the sign up page
    • When: The end user completes the registration process
    • Then: The end user should login and be redirected to the user main page
  1. As an end user, I want to login, so that I can access and make use of the services provided by LittleStudio.
  • Scenario: The end user clicks on the “Login” button
    • Given: The end user is in the login page
    • When: The end user inputs the correct credentials
    • Then: The end user should login and be redirected to the user main page
  1. As an end user, I want to jointly produce a unique piece of artwork, so that I can build shared memories and artworks.
  • Scenario: The end user is in the main gallery page
    • Given: The end user has successfully logged in
    • When: The end user clicks on the “plus” button via the menu bar to either create a new drawing or join a drawing
    • Then: The end users should be able to simultaneously draw on the canvas
  1. As an end user, I want to add a title and voice record, so that I can provide context and narration for my artwork.
  • Scenario: The end user should be able to add context to their artwork
    • Given: The end user has finished a drawing
    • When: The end user has added a title and voice recorded
    • Then: The end user should be redirected to the artwork page
  1. As an end user, I want to view my artwork in various versions, so that I can appreciate its evolution and creativity.
  • Scenario: The end user should be able to see their artwork in three different formats
    • Given: The end user has finished a drawing, added a title, and voice recorded
    • When: The app has finished loading
    • Then: The end user should be able to see their artwork in three formats: the original collaborative drawing, an AI-generated artwork inspired by the submitted drawing, and an animated GIF with intermediary checkpoints

Non-functional Requirements

Availability: The application should have an uptime of 99.9%.

Real-time Latency: The concurrent drawing strokes from other users will be displayed within 10 seconds to support seamless collaboration.

User Interface Requirements

image

image

image
Clone this wiki locally