A university hack camp is a programme that allows students to work on real-world software projects with industry partners. It is a way to learn software engineering skills, apply agile methods, and collaborate with other students and clients.
In this hack camp the group was tasked by the company Fanatics with creating a single marketplace style website that would allow them to list their products, allowing fans easy access to purchase their products. The client is Fanatics. They are a global leader in licensed sports merchandise. They allow you to purchase from a collection of merchandise online, from your phone, in stores, in stadiums or at sporting events. They have a global customer base and have offices based around many locations in America, in Manchester and Europe.
The project was completed using an agile based methodology (SCRUM) and incorporated several agile techniques such as product backlogs, sprint backlogs, daily stand up meetings, sprint burndown charts, customer demonstration meetings, sprint retrospectives, use case diagrams/tables, and extensive testing.
Below are the 3 sprint retrospectives from this project.
The group members have completed their first sprint. There were zero issues between the group members about certain members not doing anything whilst other members were working hard. The members proactively looked at the product backlog and decided what they would work on after completing their original tasks. The sprint started by the group members asking the clients more questions to get a better understanding of the problem and later read through the brief so that they could generate a plan. A product backlog was created using a website called Trello. The group had frequently utilised the product backlog during their sprint to track the progression of their work. They carried out research on other websites that would be similar to the one that the clients were asking for to get some ideas on what they should do. A skills inventory of the group was created and submitted and use case diagrams for all the functions of the website were created. Databases were created using the information from the research carried out and it was connected to the code of the website. The group members filled the databases temporarily with mock-data using a website called Mockaroo to test if the databases worked as intended.
The group members have completed their second sprint. The members were able to focus on the few specific tasks that were required to do. In the first sprint there were many tasks that were required to do simultaneously which slowed the overall development process. As there are fewer tasks the team were able to complete the tasks quickly and used the extra time to work on sections of their documentation. The group managed to complete all the tasks that the client said they wanted within the second sprint. The group started by creating a user interface which would be used to add a new product to the list. The product database was utilised and allowed the products that the users wrote in the interface to be added onto the end of the database. Another feature that the clients wanted was to be able to enable or disable a product. The group members implemented this feature would enable sellers to remove or add a product temporarily in situations such as low stock. A graph was made on the seller dashboard which showed the stock of the products. It would show each product id and the quantity of stock left. It was arranged by ascending order so sellers would be able to view what the product with the lowest stock was first. The outcome of this second sprint was that the group members managed to successfully implement all the features that the clients had asked for during the last sprint retrospective
The proposed solution is to create a single web app that would allow for the addition and deletion of products. Additional functionality such as editing a product status, previewing a product, and viewing the product log is added to help the client. This web app is a complete package that can be tied into and existing custom store front that will allow for customers to purchase directly from Fanatics. The initial v1.0.0 release can be downloaded from the GitHub link above and is intended to be web hosted using any web hosting provider. This will allow for the system to be accessed from anywhere in the world giving the best access possible. It can also be locally hosted on a standalone machine if desired since the databases are cloud hosting so product data should be unanimous.
FIRST MAJOR RELEASE v1.0.0