Skip to content

This repo was created to hold the "Something Fruity" project, part of the requirements of the Software Project Management module of the University of Essex Online's MSc in Computer Science.

Notifications You must be signed in to change notification settings

Something-Fruity/Something-Fruity.github.io

Repository files navigation

Something Fruity

Assignment Brief

You are tasked with supporting the end-to-end life cycle of developing the software that can be used in a child’s toy. In this role, you will be required to collect the requirements of the customer requesting the toy, execute the development of the software that will be used in the toy, and deliver the software product to the customer. The customer should have ability to interact with the toy through an interface, and the capabilities of the programmable element of the toy should be supported using data structures and an algorithm. The development produced may not accommodate all the customer’s requirements; interactions will take place with the customer at various stages throughout the SDLC.

Customer Requirements

  • The system should run on L/W/IOS.

  • Data must be stored in the most efficient way.

  • A player should be able to create a user profile.

  • A player should be able to create a persona.

  • It should be possible to create a multi-player game.

  • The device should be controllable via keyboard input.

  • Sounds should be able to be muted from the UI with a single keypress.

  • Additional languages should be available as free downloadable packs.

  • Angela is a 35 year old mum. She wants the game to keep her son busy.

  • Jenna is a 5 year old girl. She doesn’t want to have to ask mum for help.

How to Deploy the Project Using Docker

Docker Installation Guides

Docker Windows Installation Guide

Docker Ubuntu Installation Guide

Linux/MacOS Deployment Instructions

  1. Install Docker Environment

  2. Install Docker-Compose

  3. Clone repository:

    
    git clone https://github.com/Something-Fruity/Something-Fruity.github.io.git
    
    
  4. Change to the Project Directory

    
    cd Something-Fruity.github.io/
    
    
  5. Build Docker Services

    
    sudo docker-compose build --no-cache
    
    
  6. Start Docker Containers

    
    sudo docker-compose up
    
    
  7. Access the Application http://127.0.0.1:5000

Windows Deployment Instructions

  1. Install Docker Desktop Environment

  2. Clone Repository

    
    git clone https://github.com/Something-Fruity/Something-Fruity.github.io.git
    
    
  3. Change to the Project Directory

    
    cd .\Something-Fruity.github.io\
    
    
  4. Build Docker Services

    
    docker-compose build --no-cache
    
    
  5. Start Docker Containers

    
    docker-compose up
    
    
  6. Access the Application http://127.0.0.1:5000

How to Deploy the Project without Docker

  1. Clone repository

    
    git clone https://github.com/Something-Fruity/Something-Fruity.github.io.git
    
    
  2. Change to the Project Directory

    
    cd Something-Fruity.github.io/
    
    
  3. Create Python Virtual Environment virtual environment:

    • python3 -m venv venv
      
  4. Activate virtual environment

    • Linux/MacOS
    source venv/bin/activate
    
    • Windows
    venv\Scripts\activate.bat
    
  5. Install Python Requirements

    pip install -r flaskr\requirements
    
  6. Export Environment Variables

    • Windows
    set FLASK_APP = flaskr.app
    
    set FLASK_ENV=development
    
    • Linux/MacOS
    export FLASK_APP=flaskr.app
    
    export FLASK_ENV=development
    
  7. Start the Application

    • flask run

How to run the unit tests and check the code coverage

  1. Make sure the database is up and running. Linux: sudo service mariadb restart
  2. Run the unit tests. Linux: python3 -m coverage run -m unittest tests/unit/*.py
  3. Output the coverage report. Linux: python3 -m coverage report -m --omit=/usr/*

About

This repo was created to hold the "Something Fruity" project, part of the requirements of the Software Project Management module of the University of Essex Online's MSc in Computer Science.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published