Here is the use case diagram of my application:
Basically there are two kinds of user: the project leader and project’s partecipants. Who create a project becomes its leader so an user could be both leader or partecipant depending on the project instance.
The Leader manage a project by setting/editing the basic information (name, description,…) and by managing other users allowing them to join the project and eventually set them default share for expenses.
The Partecipant first has to join a project and wait for leader’s approval, then he can add expense to the project decide which project’s users take part to it. Partecipant can also consults there periodic report of the project (by month, year).
Clearly each user has to register to the application and then log-in to be authorized to perform operation on the system.