Project Guidelines 3
Project Guidelines 3
PROJECTS....................................................................................................................................................... 2
1. Online Banking System (with ATM) ................................................................................................... 2
2. Package Tracking Platform ................................................................................................................ 2
3. Online Chess Platform ....................................................................................................................... 3
4. Virtual log book and course hours tracking ...................................................................................... 3
5. Video Projector Management (case of IAI) ....................................................................................... 4
6. Tailor’s measurements app ............................................................................................................... 4
7. Past exams questions and answers ................................................................................................... 5
8. WeFit, an online fitness platform ...................................................................................................... 5
9. A flight management system ............................................................................................................ 6
10. A library management system ...................................................................................................... 6
11. A blog platform ............................................................................................................................. 6
12. A location tracking system ............................................................................................................ 7
GROUPS AND PROJECT ASSIGNMENTS ......................................................................................................... 7
REQUIREMENTS AND GUIDELINES .............................................................................................................. 10
PROJECT LEVELS OF COMPLETION AND EVALUATION METRICS ................................................................. 11
PROJECTS
There are a wide variety of projects. I created some of these projects from real-world scenarios and
problems faced by us at AICS and schools in general. If you do good enough work on them, you can use it
for your June defense. That being said, below is the list of projects.
• Employees interact with the system. All the employees are allowed to register clients, and
register clients’ transactions (i.e. deposit or withdrawal)
• Clients make transactions in the system. The transactions are either a deposit or withdrawal.
• Each transaction can have 0 or more documents attached to it (i.e. the ID cards, forms, etc.)
• Deposits can only be made at the bank through an employee.
• Withdrawals can be made either from the bank or using the ATM.
• For each transaction carried out, we need to know the time of the transaction and the
employee that registered it (if it was registered by an employee).
• The clients have cards through which they can make withdrawals at the ATM. A client can
have 0 or more cards but a card belongs to only one client.
• When a transaction is done using the ATM, we want to know
o Which ATM it was carried out at
o The card that issued the transaction
o The amount withdrawn
Technical requirements
• A client ships one or more packages and a package is shipped by only one client. The
shipping could simply be the client ordering something online and asking to have it
delivered to an address.
• We need to keep track of the package’s current location. When the order is placed, the
package is initially at the store where it is ordered from.
• The package is then moved from one warehouse to another until it gets to the destination.
• Anytime the package arrives at a warehouse, an employee logs (using the application) that
the package has arrived at the warehouse.
• We need to keep track of which employee scanned which package
• We also need to keep track of the different warehouses a package has passed through
• When a client places an order, they are given a tracking id which they use to track their
packages in real-time.
• When they open the client portal of the app, they see a map and a search box where they
paste their tracking id.
• Once the tracking id is pasted, the map shows them the current location of their package,
when it arrived there and also the different other warehouses it has been to.
• Look into Mapbox.
• A user/guest can create one or more games and a game is created by a single user/guest. If the
game is created by a guest.
• A user can invite another user to play the game either through the application or by sending
them an invitation link.
• Users and guests can play games alike but only users can get invited. If you want to play as a
guest, you need to use an invitation link sent to you by the creator.
• For each game, we need to store
o The duration of the game
o The winner
o The moves made during the game
• Each game can also be watched while the players are playing using a link to watch the game.
o Each time a move is made, the player’s opponent as well as the spectators see the move
that has been made.
o We don’t need to keep track of who viewed a particular game
• The website also permits the downloading of games played in PGN format.
• Look into socketio for Python and JavaScript.
• It has a wide variety of workouts which fall into 1 or more of the following categories
o Upper body
o Lower body
o Core
o Full body
o HIIT (High Intensity Interval Training)
• A category can have one or more workouts under it, a workout can belong to one or more
categories
• Each workout has 1 or more exercises, an exercise can belong to 1 or more workouts.
• Each exercise under a workout is either timed (e.g. pushups for 45 seconds) or has a number of
repetitions (e.g. pushups for 45 seconds)
• Each exercise has a short video demonstrating it (about 3 seconds).
• Users can do one or more workouts, a workout can be done by 0 or more users
• We need to keep track of the amount of time it took a user to complete a workout.
• We also need to keep track of some information about users such as their weight, height, age
and sex.
• We’ll put the social media aspect as perspectives.
• User registration/login
• Blog posting (a blog is made up of only text). A user can also choose to edit or delete their own
post after creating it.
• Blog comments, users can comment under 0 or more blogs, a blog can have 0 or more
comments.
• A user can like 0 or more blogs, a blog can have 0 or more likes.
• For likes/comments, we need to know who liked/commented a blog and when.
• Save locations that they come across. The app is supposed to automatically get the current
location of the user at the time of saving the location. The user can also submit an image of the
place along with a name and a category (e.g. bar/restaurant, hotel, clothes shop, etc.)
• The users can then view the locations of the places they have visited on a map along with the
names they saved. They can also search for a particular place by name or filter by location (e.g.
Nkolbisson, Awae, etc.)
• A user can modify the location of a place they have saved along with its details.
The tests specified below refer to the automated tests that you will write in the app. Postman tests are
COMPULSORY, if there are no Postman tests I will consider the work as not done.
NB: for the groups with just one member, their maximum mark for Tiers 1, 2, 3, 4, and 5 are 13, 16, 17,
18.5, and 20 respectively.