Project Progress - Hazeman99/ConcurrrentProgramming GitHub Wiki

Progress of Project

(27/04/2020 - 8/05/2020)

We formed our group of 5 members. We conducted our first meeting online to discuss the requirements of the projects. By the end of week 8 all group members had fully understood the concurrent problem given and we got a clear idea about the project requirements.

(18/05/2020 - 22/05/2020)

We divided roles and responsibilities of each member in the group based on their expertise and preference. We have agreed on the tools that will be used for both the development, collaboration and wiki reports. We have created a GitHub repository and we wrote our first wiki report for the interim assessment with the group formation details, responsibilities and contribution of each member, initial project planning and selection of development tools.


(28/05/2020 – 2/06/2020)

At this stage we started analyzing the project requirements and designing for the first phase of development. We have researched and decided on the best data structure and algorithms to be used. We choose to store the points coordinates and edges in arraylists. For the thread creation we decided to use ExecutorService with a fixed thread pool of t. We have also decided on the software development methodology that will be used to develop this project. We agreed that the first phase will include taking the user input, creating the n points and storing them in an array list with no duplication allowed and lunching the t threads. We wrote the pseudocode for the first phase as well as designing the flowchart of the whole system.

(3/06/2020 – 12/06/2020)

We started developing the first phase and implementing the agreed requirements above. We committed our first push to GitHub. Then testing was carried as well as errors and bugs reporting to the developers. Some modification was made to fix those errors. The wiki was updated adding more information to the project planning, progress of project, program design with the pseudocode and issues encountered and solutions. The second interim assessment was then submitted.

(13/06/2020 – 19/06/2020)

The designing for the final phase of development was carried out. We designed a class diagram for the system as well as writing the pseudocode for the whole system. The implementation of the final phase has started. The implementation of the final phase includes validation of user inputs, combining the coordinates to create edges, check the thread failure attempts, game termination after m seconds, displaying the points and created edges and GUI. 


(20/06/2020 – 23/06/2020)

The testing for the developed game has started and some modifications were applied to fix the errors. We made sure that the project repository was updated on GitHub, the wiki was also updated with the pseudocode for the whole system. The class diagram was also added to the wiki as well as more information in the issues encountered section. The progress of the project was also updated accordingly. We then started working on the slide’s presentation and video demo of the game.