Skip to content

Latest commit

 

History

History
332 lines (214 loc) · 16.8 KB

P2.md

File metadata and controls

332 lines (214 loc) · 16.8 KB

ES20 P2 submission, Group 18

Feature PPA

Subgroup

  • Daniel Serafim, ist189428, dserafim1999
  • Tomás Inácio, ist189553, tomas1999set

Pull requests associated with this feature

The list of pull requests associated with this feature is:

Web services definition

Controllers

Feature testing

Each subgroup member defined one reading test and one writing test. The direct links to these are:

Screenshots of Results Trees and DB cleanup

Create Submission

Response body Summary report DB Cleanup

Create Review

Response body Summary report DB Cleanup

Get Submission Status

Response body Summary report DB Cleanup

Load testing

Each subgroup member defined one reading test and one writing test. The direct links to these are:

Screenshots of Summary Reports and DB cleanup

Create Submission

Summary report DB Cleanup

Create Review

Summary report DB Cleanup

Get SubmissionStatus

Summary report DB Cleanup

Service profiling

We used the Async Profiler.

Screenshots of summary reports

Create Submission

Profiling percentages Profiling graphs Profiling heap

Create Review

Profiling percentages Profiling graphs Profiling heap

Get Submission Status

Profiling percentages Profiling graphs Profiling heap

Discussion of findings

We concluded that searching for users and questions in the database took up most of the time when performing the tests, and therefore we thought best not to optimize our service.


Feature DDP

Subgroup

  • Daniel Matos, ist189429, DMaxter
  • João Paquete, ist189477, jpaquete14

Pull requests associated with this feature

The list of pull requests associated with this feature is:

Web services definition

Controllers

Feature testing

Each subgroup member defined one reading test and one writing test. The direct links to these are:

Screenshots of Results Trees and DB cleanup

Create Discussion

Response body Summary report DB Cleanup

Create Reply

Response body Summary report DB Cleanup

Get Reply

Response body Summary report DB Cleanup

Load testing

Each subgroup member defined one reading test and one writing test. The direct links to these are:

Screenshots of Summary Reports and DB cleanup

Create Discussion

Summary report DB Cleanup

Create Reply

Summary report DB Cleanup

Get Reply

Summary report DB Cleanup

Service profiling

We used the Async Profiler.

Screenshots of summary reports

Create Discussion

Profiling percentages Profiling graphs Profiling heap

Create Reply

Profiling percentages Profiling graphs Profiling heap

Get Reply

Profiling percentages Profiling graphs Profiling heap

Discussion of findings

By the analysis of the graphs of each test, we concluded that most of the time wasted in the tests was searching JPA for Questions and Users which is something that we can't optimize.


Feature TDP

Subgroup

Pull requests associated with this feature

The list of pull requests associated with this feature is:

Web services definition

Controllers

Feature testing

Each subgroup member defined one reading test and one writing test. The direct links to these are:

Screenshots of Results Trees and DB cleanup

GetTournaments

Response body - GetTournaments Summary report - GetTournaments DB Cleanup - GetTournaments

CreateTournament

Response body - CreateTournament Summary report - CreateTournament DB Cleanup - CreateTournament

GetOpenTournaments

Response body - GetOpenTournaments Summary report - GetOpenTournaments DB Cleanup - GetOpenTournaments

GetTournamentParticipants

Response body - GetTournamentParticipants Summary report - GetTournamentParticipants DB Cleanup - GetTournamentParticipants

JoinTournament

Response body - JoinTournament Summary report - JoinTournament DB Cleanup - JoinTournament

Load testing

Each subgroup member defined one reading test and one writing test. The direct links to these are:

Screenshots of Summary Reports and DB cleanup

GetTournaments

Response body - GetTournamentsLoad DB Cleanup - GetTournamentsLoad

CreateTournament

Response body - CreateTournamentLoad DB Cleanup - CreateTournamentLoad

GetOpenTournaments

Response body - GetOpenTournamentsLoad DB Cleanup - GetOpenTournamentsLoad

GetTournamentParticipants

Response body - GetTournamentParticipantsLoad DB Cleanup - GetTournamentParticipantsLoad

JoinTournament

Response body - JoinTournamentLoad DB Cleanup - JoinTournamentLoad

Service profiling

We used the Async Profiler.

Screenshots of summary reports

CreateTournament

Profiling percentages - CreateTournament Profiling graphs - CreateTournament Profiling heap - CreateTournament

GetOpenTournaments

Profiling percentages - GetOpenTournaments Profiling graphs - GetOpenTournaments Profiling heap - GetOpenTournaments

JoinTournament

Profiling percentages - StudentJoinTournament Profiling graphs - StudentJoinTournament Profiling heap - StudentJoinTournament

Discussion of findings

We decided to otimize the tournament class, allowing us to store the courseExecution of the tournament topics. Therefore we are avoiding unecessary searches everytime we need the courseExecution. Issue: #99