[[TOC]]
- Install Composer from https://getcomposer.org. Verify it's installed by typing
composer --versionin Terminal/Command Prompt - Clone this repository
git clone https://campus.cs.le.ac.uk/gitlab/co2201-2023/group-24/. - Open the folder in VSCode or PHPStorm
- Open terminal in the project root and run the following commands:
Install PHP dependancies:
composer install
Generate local configuration file:
cp .env.example .env
Generate application key:
php artisan key:generate
Run database migrations and seed with sample data:
Make sure you change the MySQL server details in .env before running this command (default database name is 'laravel')
php artisan migrate:fresh --seed
Run localhost development server:
php artisan serve
- Jack Trafford
- George Rogers
- Raihaan Azam
- Hemal Patel
- Darren Wu
- David Igandan
- Tharidhu Angodage
- Suraj Cheema
- Week 1: Jack Trafford
- Week 2: Darren Wu
- Week 3: Suraj Cheema
- Week 4: Tharidhu Angodage
- Week 5: George Rogers
- Week 6: Hemal Patel
- Week 7: David Igandan
- Week 8: Raihaan Azam
- [User Manual](/User Manual)
- Screenshots
- Users Folder
- Definition of Done
- Initial User Stories
- Questions for Project Supervisor/Client
- Group Rules
| User Story | Description | Weight | Priority | Assigned Team Members |
|---|---|---|---|---|
| Navigation Bar |
As a user, I want to navigate around the website via a side navigation bar, So that I am able to efficiently navigate to different pages on the platform |
1 | 1 | Raihaan Azam, Hemal Patel |
| Login Page |
As a user, I want to enter my credentials into a login form, So that I can be granted secure access to the platform |
3 | 2 | George Rogers, Jack Trafford, Suraj Cheema |
| Landing Page |
As a user, I want to be presented with an entry point for the platform, So that I can view a summary of what the platform does and navigate to a login page |
2 | 3 | Darren Wu, David Igandan, Jack Trafford |
| Dashboard Page Template |
As a user, I want to access the platform's dashboard, So that I can view data specific to my user profile |
3 | 4 | Tharidhu Angodage |
| User manual |
As a user, I want to be able to view a comprehensive user manual, So that I have somewhere to go when I am unsure about how to do something on the platform |
1 | 5 | Suraj Cheema |
| User Story | Description | Weight | Priority | Assigned Team Members |
|---|---|---|---|---|
| Dashboard Page Template |
As a user, I want to access the platform's dashboard, So that I can view data specific to my user profile |
3 | 1 | Tharidhu Angodage |
| Admin Import CSV Sample Data |
As a website admin, I want to import sample data via CSV, So that this data can be analysed and presented to users on the platform |
5 | 2 | George Rogers, Tharidhu Angodage, Suraj Cheema |
| Generating new user accounts |
As a website admin, I want to register new user accounts, So that I can provide users with details to login to the site with |
5 | 3 | Darren Wu, Raihaan Azam, Hemal Patel |
| Brand Page |
As a user, I want to be able to describe my brand, So that I can be presented with data that is relevant to me |
3 | 4 | Tharidhu Angodage |
| Reset Password |
As a user/website admin, I want to be able to reset my password, So that I am able to regain access to my account if I forget my password |
2 | 5 | David Igandan, Jack Trafford |
| User Story | Description | Weight | Priority | Assigned Team Members |
|---|---|---|---|---|
| Admin Import Consumer Data |
As a website admin, I want to import sample consumer data via CSV, So that the consumer data can be linked with product data in order to generate user personas |
5 | 1 | Tharidhu Angodage, David Igandan |
| Set Password on Initial Login |
As a user, I want to be forced to set my own individual password upon account creation, So that I cannot use my account until I have secured it |
2 | 2 | George Rogers |
| Admin View Imported Users |
As a website admin, I want to be able to view all the existing users on the system, So that I can check what users has been previously created without having to query the database manually |
3 | 3 | Darren Wu |
| Admin Manage Users Page |
As a website admin, I want to be able to manage current users of the system, So that I can modify their details without having to do so manually through the database |
3 | 4 | Darren Wu |
| Admin View Imported Product Data |
As a website admin, I want to be able to view currently imported product data, So that I can check what data has been previously uploaded without having to query the database manually |
3 | 5 | Raihaan Azam, Hemal Patel |
| Generate Dashboard Data |
As a user, I want to be able to view a summary of my companies market segment, So that I can be informed about the specific demographics my company should be targeting |
8 | 6 | Jack Trafford |
| Table of Contents for User Manual |
As a user/website admin, I want to be able to easily navigate the user manual via a Table of Content located on the sidebar, So that I don't have to spend time scrolling through the entire user manual to find the topic I am looking for |
2 | 7 | George Rogers, Suraj Cheema |
| Save Sidebar State |
As a user/website admin, I want the state of my sidebar to remain the same as I navigate between pages on the site, So that I don't need to keep toggling it every time I navigate to a new page |
2 | 8 | Suraj Cheema |
| User Story | Description | Weight | Priority | Assigned Team Members |
|---|---|---|---|---|
| Admin Generate Sample User Data |
As a website admin, I want to be able to generate a sample user data CSV, So that I don’t need to use real user data if I want to setup the platform for demonstration purposes |
13 | 1 | Jack Trafford, George Rogers, Raihaan Azam, Hemal Patel |
| My Personas Page |
As a user, I want to be able to view user personas that have been generated on a ‘My Personas Page’ So that I am able to make informed marketing decisions when taking on new strategies for my company |
5 | 2 | Jack Trafford, David Igandan |
| Filter Dashboard Data |
As a user, I want to be able to filter data shown via graphs on the dashboard, So that I am able to understand the data I am presented with more easily |
8 | 3 | Tharidhu Angodage |
| Mobile Responsiveness |
As a user/website admin, I want to be able to easily access and navigate around the platform on mobile, So that I can still access the same functionality as I can on a desktop computer |
3 | 4 | Darren Wu, Suraj Cheema |
| Dark Mode |
As a user/website admin, I want to be able to switch between a dark/light mode, So that I can customise the platforms colour scheme to my own preference |
2 | 5 | Darren Wu |
| Logout button on landing page |
As a user/website admin, I want to be able to logout of the site from the landing page, So that I do not have to navigate to a authenticated page before I am able to click logout |
1 | 6 | Darren Wu |
- Completed first meeting in person with all 8 group members present
- Created a DoD
- Came up with some initial user stories
- Setup GitLab labels
- Set group rules
- Setup each members laptops for Laravel development
- Demo of Laravel's routing system, handling form submission and a brief intro to database setup
- Initial screenshot of scum board for Sprint 1 taken
- Modified some user stories to ensure they communicated a 'clear benefit'
- Completed higher priority user stories however a user story was left incomplete. User manual didn't include all user stories. Complete remaining user stories in next sprint.
- Started and completed landing and login page
- Completed and implemented Navigation Bar on Landing Page.
- Started Dashboard Page Template
- Completed User Manual for sprint 1
- Planned content for sprint 1 demo recording
- Recorded demo for sprint 1
- Planning and assigning for sprint 2
- Completed Dashboard Template Page from sprint 1
- Started and completed Brand Page
- Started Admin Import CSV Sample Data
- Finished Admin Import CSV Sample Data
- Started and finished Reset Password
- Completed all user stories and successfully documented in user manual.
- Completed User Manual for sprint 2
- Planned content for sprint 2 demo recording
- Recorded demo for sprint 2
- Planning and assigning for sprint 3
- Started and finished Admin Import Consumer Data
- Started and finished Setting Password on Initial Login
- Started amd finished Admin View Imported Users
- Started and finished Admin Managing Users Page
- Started and finished Admin Viewing Imported Product Data
- Started and completed Generating Dashboard Data
- Started and completed Saving Sidebar State
- Completed all user stories efficiently, laptop for a group member stopped working.
- Completed table of contents for User Manual
- Completed User Manual for sprint 3
- Planning and assigning for sprint 4
- Started Admin Generate Sample User Data
- Started My Personas Page
- Finished Admin Generate Sample User Data
- Continued My Personas Page
- Finished Mobile Responsiveness
- Finished Dark Mode
- Started and Finished Logout button on landing page
- Started Filter Dashboard Data
- User stories were too heavy, could've been broken into smaller stories.
- Finished My Personas Page
- Finished Filter Dashboard Data
