/
Software Architecture Update Sprint 3

Software Architecture Update Sprint 3

Back end (Finalised and Completed in Sprint 1-2)

https://unswseng.atlassian.net/l/c/n1RmSeTy

 

Final choice

NodeJS

We chose to use NodeJS as it’s a very well supported and commonly used runtime. NPM allowed us to easily install further frameworks and libraries which made development much easier.

NextJS

NextJS was chosen as it adds a fairly easy to use the framework to work with that Joshua had some experience with. None of its more advanced rendering features was used however it allowed for a fairly easy to understand format for the frontend development.

React

React was used as a library to enable interactive and reactive parts of the site.

Front end

Name

Type

Current team member knowledge of frameworks

Difficulty of frameworks to learn

How well the framework is documented

Availability / pricing of platforms

Additional Notes

Name

Type

Current team member knowledge of frameworks

Difficulty of frameworks to learn

How well the framework is documented

Availability / pricing of platforms

Additional Notes

Express

Nodejs framework

Team has no experience

 -Medium level

 -Well documented

Free + open source

 N/A

Next.js

Nodejs framework

Joshua has minimal experience.

-Easy to use simply

-Some parts like different rendering types can be more complicated

-Fairly well documented

-Can find some debugging more difficult due to differences between frameworks

Free + open source

 N/A

Boot strap

CSS Framework

Team has no experience

 -Easy to use however can be more complicated then simple plain javascript however easier for better looking designs

 -Well documented with lots of support

 Free + open source

 Adds extra visual flair

React

Library

Joshua has minimal. Rest of team has no experience

-Fialry easy to learn, has some advance features

-Easy to get started with

 -Very well documented as very commonly used

Free + open source

Pro: Reuse HTML code anywhere in the app to build other components

Con: not as in depth documentation

Cons : limits team size

Angular

Javascript framework

Team has no experience

-Quite difficult to learn in comparison to React

-Steep learning curve.

 -Well documented however less common then react

Free + open source

-Clean code : compiles JS and will point out errors

-Server performance : improved in app

-Issues : complex to understand , migrating from old version to new Angular 8 version can slow down project

Vue

Javascript framework

Team has no experience

-Challenging to debug

 -Well documented however can be harder to find correct help

Free + open source

 Flexibility - write both HTML and JS in the template

-Fast and lightweight

-Reuse into existing apps

Issues : potential for issues / errors in the codebase for teams working on a big project

Vanilla

 Plain javascript

 Team has minimal expeirence

 -Very simple

-Lack of features means doing some things can escelate quickly

-Extremely well documented as used within all other options

Free

 N/A

NodeJS

 JavaScript runtime enviorment

Joshua has minimal experience

  • Farily easy to learn

    • Different frameworks and libraries have different dificulties

 Very well documented as extremely commonly used

Free + open source

Allows integration of other libraries and frameworks easily

Related content

FrontEnd
FrontEnd
Read with this
Stand Ups
Stand Ups
Read with this
Application - Requirements Sprint 3
Application - Requirements Sprint 3
Read with this
Project Management & Communications
Project Management & Communications
Read with this
API Lifecycle Sprint 3
API Lifecycle Sprint 3
Read with this
Sprint Retrospective
Sprint Retrospective
Read with this