Technologies

Microsoft Visual Studio IDE

Visual Studio is a product of Microsoft and will be a tool used by our team by client recommendation. Visual Studio is an integrated development environment with compatibility and easy implementation of the C# language and .NET 5 APIs necessary for development in our project.

C#

The C# language will be used in all components of our system. It is effective in general programming, abstracting complex tasks, developing web user interfaces, and it is the desired language by the client. C# will be necessary for any front-end and back-end development. It is also a dependency for multiple other tools that are to be used in this project.

.NET 5

.NET 5 is the latest version of the .Net development platform. This latest released version of .NET centralizes all of the previously separate packages for .NET. This provides a one-stop shop platform for the run-time environment, every API and library which the tool offers. Usage of this open-source platform will provide the capability of delivering necessary functionality and structure without the hassle of creating code from scratch. .NET 5 is also integrated with Microsoft Visual Studio meaning our team can perform cohesively and efficiently.

Blazor

The Blazor framework is utilized with .NET for creating client-side web interfaces. This framework, because it is an asset of .NET, will benefit from the integration with Microsoft Visual Studio and .NET's features. Blazor is component based with all components being based on .NET's C# classes meaning it is integrated nicely with .NET, C#, and Microsoft Visual Studio.

MySQL

A database will be necessary for establishing a manageable structure to contain all of the data acquired by the SWAPR devices. Long-term storage and management is necessary to utilize all planned features of our system. With a database, queries to create, retrieve, and delete data will be available for the web server. To view ranges of datasets and produce graphs as well as to view newly generated SWAPR data, a database will be the necessary system to use by implementing these queries.

GitHub & Git

GitHub and Git together provide a clear, traceable, and shareable system. GitHub will hold the repository we develop for our entire system with features such as: commit history, commit comments, issues, and branching. Being capable of following the commit history will help in providing a traceable history of commits made by any member of the repository. The issues will also allow our team members to track the completion of bug fixes and features. Branching will be necessary to produce development versions of the code base as well as a "release ready" version of the code base. Git allows the team to efficiently commit changes to the code base and utilize the features of GitHub. Using these two tools will give our team excellent productivity and make every members life a little easier when it comes to writing code.

Trello

Trello is a straight-forward and simplistic tool for recording tasks. Trello lets users create cards and place them in different categories on a board to provide a visualization of the status of tasks. These tasks can fall outside of anything programmatic whether it be submission of documents or acquiring information on a subject. Trello acts as a board of sticky notes for all users to view and manage as a team basically. Using this will allow our team to track tasks whether they be small or large and stay up to date on each members activity.