Skip to content
Diana Cordun edited this page Jun 15, 2022 · 17 revisions

Welcome to the FindAStudyBuddy wiki!

On this wiki page you can find all the steps we've followed for the software development process as per below.

USER STORIES, BACKLOG CREATION: User Stories which can be also found on the backlog's Trello page alongside the general tasks that needed implementation in the project.

UML Use Case Diagram: The UML Diagram of FindAStudyBuddy WebApp can be found here.

SOURCE CONTROL: The full project can be found on the GitHub, and the branches can be seen on the main page - one for frontend and one for backend.

UNIT TESTS: We ran unit tests on the backend of the application in order to ensure that each individual part is working well and as it's supposed to. These tests can be found here.

BUILD TOOL USAGE: For the frontend we have used the package manager for JavaScript - npm, as for the backend we have used proprietary software framework developed by Microsoft - .net version 6.

BUG REPORTING: Bugs have been reported on the issues page on GitHub with the follow-up solution as a comment. Completed/resolved bugs are now found on the closed issues page.

DESIGN PATTERNS: The FindAStuddyBuddy WebApp uses an Entities-Models-Services-Controllers pattern.

  • Entities: represented dealing with the database, the tool that simplified mapping between objects in our software to the tables and columns of the relational database
  • Models: represented abstraction layer between the database and the services, the representation of the data being posted to the Controller, the data being worked on in a View
  • Services: contained all the interfaces and implementation, also the component that resided on a Web server and provided information and services to other network applications
  • Controllers: contained the flow control logic for the application, and determined what response to send back to a user when a user makes a browser request

REFACTORING, CODE STANDARDS: One of the refactoring steps we've done in our project was the transition from hosting the database and running the application locally to hosting the database and running the application online, using a service provided by Microsoft Azure. By using this step, the connection between the frontend and the backend was easier than usual and more effective, saving us more time. Moreover, the service mentioned above is an optimal solution (Azure blobs) for the data storage, especially for images which take a lot of space. This part of the project was achieved thanks to the following tutorials (1) and (2) which we have followed, and as well as the Microsoft documentation we have used (1) and (2).