/oinkChat

Network-based multithreaded client-server chat app

Primary LanguageC#

Oink Chat

This is a network-based multithreaded client-server chat app we were asked to develop in the context of our first Software Engineering master’s year, in the C#/.NET course.

Tech

We opted for

  • .NET Core 3

Instructions

In this project, you are asked to create a network based multithreaded client-server chat app.

Chatters establish a connection with the server and can do the following :

  1. Create a profile (login, password) and save it
  2. Login
  3. List topics
  4. Create topics
  5. Join topics (only one - bonus : many at the same time)
  6. Send messages to all chatters on a specific topic
  7. Send private messages

You are free to add new functions to your app, but don't do that unless you've already implemented the ones given above. A graphical interface can be added to your app but this has to be the last phase in your project.

You should start this project by doing a full object oriented design of your desired app. This has to be documented in your report and presented to your supervisor (use UML diagrams for that purpose; use-case, sequence, state-transition, class diagrams).