0% ont trouvé ce document utile (0 vote)
25 vues13 pages

Gestion des utilisateurs et projets

Ce document décrit la gestion du temps et des projets au sein d'une organisation. Il présente les différentes entités liées aux utilisateurs, projets, tâches et leur relation. Il décrit également les droits d'accès associés aux différents rôles.

Transféré par

nour rachdi
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
25 vues13 pages

Gestion des utilisateurs et projets

Ce document décrit la gestion du temps et des projets au sein d'une organisation. Il présente les différentes entités liées aux utilisateurs, projets, tâches et leur relation. Il décrit également les droits d'accès associés aux différents rôles.

Transféré par

nour rachdi
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Gestion de temps

1. Les Entités
1.1. Utilisateur
Il s’agit des utilisateurs de l’application.

Nom de l’entité : user

N° Champs Type Nul Remarques


l

1 id int(9) No automatique

2 firstName

3 lastName

4 email Identifiant

tel

5 password

6 enabled lors de l'inscription il faut valider l’utilisateur par


l’envoie de mail

7 blocked

8 avatar

9 token Pour la modification du mot de passe

10 tokenCreation Pour la validité du token

11 activationCod Pour la validation de l’utilisateur


e

12 color Si jamais un utilisateur sans avatar

13 roles ROLE_SUPER_ADMIN / ROLE_USER

14 created_at datetime No automatique

15 updated_at datetime No automatique

Relations
N Entité Relation Remarques
°

1 AccessTier OneToMan En tant que invité


y

2 AccessTier OneToMan En tant que hôte


y

3 AccessProject OneToMan En tant que invité


y

4 AccessProject OneToMan En tant que hôte


y

5 Task OneToMan
y

6 Comment OneToMan
y

7 Document OneToMan Il s’agit des captures d’écran de l’utilisateur


y

1.2. Tier

Il s’agit des sociétés qui vont utiliser cette application.

Nom de l’entité : tier

N° Champs Type Null Remarques

1 id int(9) No automatique

2 name No Raison sociale de la société

3 tel No

4 email

5 adresse

6 ville

7 pays

8 vat No Matricule fiscale

9 cr Yes Registre de commerce


10 firstResp Premier responsable

11 emailFirstRes Email du premier responsable


p

12 telFirstRespo Tél du premier responsable

13 logo

archived bool Yes Si archivé alors n’apparaît plus dans les différentes
listes et menus associés.

blocked bool Yes Si un tier est bloqué alors aucune des ses données
ne sont affichée au niveau de l’application

14 created_at datetime No automatique

15 updated_at datetime No automatique

Relations

N° Entité Relation Remarques

1 AccessTie OneToMany
r

2 Project OneToMany

1.3. Projet

Il s’agit des sociétés qui vont utiliser cette application.

Nom de l’entité : project

N° Champs Type Null Remarques

1 id int(9) No automatique

2 name No Raison sociale de la société

3 color No

4 archived bool Yes Si archivé alors n’apparaît plus dans les différentes
listes et menus associés.

14 created_at datetime No automatique

15 updated_at datetime No automatique


Relations

N° Entité Relation Remarques

1 AccessProject OneToMany

2 Tier ManyToOne

3 Section OneToMany

4 Task OneToMany

1.4. Accès tier

Il s’agit des accès par rapport à un compte tiers. Lorsqu’un utilisateur accède à un compte
tier, il accès automatiquement à toutes les entités enfant : projets, sections et tâches.

Nom de l’entité : accessTier

N Champs Type Null Remarques


°

1 id int(9) No automatique

2 status No pending / accepted / rejected / canceled / deleted

3 role No admin / user

14 created_at datetime No automatique

15 updated_at datetime No automatique

Relations

N Entité Relation Remarques


°

1 Tier ManyToOne

2 user ManyToOne en tant qu’invité

3 user ManyToOne en tant que hôte


1.5. Accès projet
Il s’agit des accès par rapport à un projet. Lorsqu’un utilisateur accède à un compte projet, il
accès automatiquement à toutes les entités enfant : sections et tâches.

Nom de l’entité : accessProject

N Champs Type Null Remarques


°

1 id int(9) No automatique

2 status No pending / accepted / rejected / canceled / deleted

3 role No admin / user

14 created_at datetime No automatique

15 updated_at datetime No automatique

Relations

N° Entité Relation Remarques

1 Project ManyToOne

2 user ManyToOne en tant qu’invité

3 user ManyToOne en tant que hôte

1.6. Section

Il s’agit de gérer les section des projets (les sous-projets)

Nom de l’entité : section

N° Champs Type Null Remarques

1 id int(9) No automatique

2 name

14 created_at datetim No automatique


e

15 updated_at datetim No automatique


e

Relations

N Entité Relation Remarques


°

1 Project ManyToOn
e

2 Task OneToMan
y

1.7. Tâche

Il s’agit de gérer les tâches

Nom de l’entité : task

N° Champs Type Null Remarques

1 id int(9) No automatique

2 name No

3 description No

4 status planned / in-progress / closed

5 date date prévisionnelle de réalisation

6 start Heure début de réalisation

7 end Heure fin de réalisation

8 duration Durée prévisionnelle

9 allTheDay Toute la journée

10 priority low / medium / high

14 created_at datetim No automatique


e

15 updated_at datetim No automatique


e
Relations

N° Entité Relation Remarques

1 Project ManyToOne

2 Task OneToMany il s’agit des sous-tâche (2 niveaux seulement)

3 Task ManyToOne il s’agit des sous-tâche (2 niveaux seulement)

4 User ManyToOne L’utilisateur auquel est affecté la tâche / responsable de


la tâche

5 Section ManyToOne

6 Document OneToMany

7 Commentair OneToMany
e

1.8. Document
Peut ne pas se trouver au niveau de la BDD. Il est juste lié à une tâche.Il peut être une
image ou un document autre qu’une image.

1.9. Commentaire
Peut ne pas se trouver au niveau de la BDD. Il est juste lié à une tâche. On retrouve les
informations suivantes :

 La date de création du commentaire


 L’utilisateur qui a créé le commentaire
 Le contenu du commentaire

1.9. Historique

Il s’agit d’enregistrer les actions liées à chaque tâche, par exemple :

 Création de la tâche
 Modification d’une tâche / ce qui a été modifié
 Qui a uploadé tel document
 Etc.

2. Droits d’accès
On distingue 3 rôles spécifiques pour les utilisateurs :
 Super Admin : il s’agit des utilisateurs internes qui accèdent à toutes les
fonctionnalités et données de l’application sans aucune restriction.

Pour les 2 autres types d’utilisateurs, ils sont relatifs à un compte client ou projet.
 Admin :
o Tier : l’admin accède à toutes les fonctionnalités et données liées à un tiers.
o Project : l’admin accède à toutes les fonctionnalités et données liées à un
projet.
 Utilisateur :
o Tier : un utilisateur a un accès limité à un tiers.
o Project : un utilisateur a un accès limité à un projet.

Globalement on distingue les limites suivantes au niveau des droits d’accès :

1. Un admin tiers (AT) peut tout faire sauf la gestion des tiers.
2. Un utilisateur tiers (UT) a le droit de l’AT sauf la gestion des utilisateurs des comptes
de tiers.
3. Un admin projet (AP) ne peut pas gérer les projets mais peut tout faire dans un projet
4. Un utilisateur projet (UP) ne peut pas gérer les utilisateurs dans projet et ne peut pas
supprimer des entités qui ne lui appartiennent pas.

Un utilisateur ne peut supprimer que les documents et commentaires qu’il a créés ou


uploadés.

Une personne peut être admin pour le compte d’un tiers et utilisateur sur un autre compte.

3. Desktop
La partie desktop est composée de 2 parties :

 web : Toutes les fonctionnalités de l’application sont accessibles à travers le web.


 systray : il aura 2 fonctionnalités principales :
o Afficher les notifications de l’application : nouveau commentaire / upload d’un
document sur une tâche, etc.
o Prendre des captures d’écran de l’utilisateur et les envoyer sur le serveur.

3.1. Web

3.1.1. Utilisateur

Code Désignation Utilisateur Remarque


1.1.1 Liste / recherche SA Liste des utilisateurs

1.1.2 Détail SA Détail d’un utilisateur

1.1.3 Ajout SA Ajouter un utilisateur

1.1.4 Modification SA Modifier un utilisateur

1.1.5 Suppression SA Supprimer un utilisateur

1.1.6 Inscription A/U Inscription

1.1.7 Validation code A/U Confirmation inscription à travers un code


secret envoyé par email

1.1.8 Mon profil A/U

1.1.9 authentification A/U

1.1.1 Mot de passe oublié A/U


0

1.1.1 changer mot de passe A/U


1

1.1.1 Captures A et UT Les captures d’écran des utilisateurs.


2

1.1.1 Mes captures A/U Les captures d’écran de l’utilisateur lui-


3 même.

1.1.1 Liste / recherche A/U Les utilisateurs connectés liés aux comptes
4 utilisateurs de projets et tiers.

1.1.1 Agenda A et UT L’agenda de chaque utilisateur


5

1.1.1 todo aujourd’hui A et UT La liste des tâches à faire chaque jour


6

 Si un utilisateur est bloqué alors il ne peut pas accéder à l’application.


 Lorsqu’un utilisateur s’inscrit au niveau de l'application, alors un email de validation
est envoyé à l’utilisateur.

Remarque : l’envoie des emails se fera à travers l'utilisation d’un service tiers en
l'occurrence Mailjet.

3.1.2. Tier

Code Désignation Utilisateur Remarque


1.2.1 Liste / recherche SA Liste des tiers

1.2.2 Détail SA Détail d’un tiers

1.2.3 Ajout SA Ajouter un tiers

1.2.4 Modification SA Modifier un tiers

1.2.5 Suppression SA Supprimer un tiers

1.2.6 Utilisateurs A et UT Liste des utilisateurs qui ont accès au tier avec
leurs rôle

1.2.7 Inviter utilisateur A et UT Envoyer une invitation à utilisateur pour gérer le


projet en tant que admin / utilisateur

1.2.8 Supprimer accès A et UT


utilisateur

1.2.9 Modifier accès A et UT Modifier le rôle d’un utilisateur


utilisateur

1.2.1 Renvoyer invitation A et UT Renvoyer l’invitation à un utilisateur.


0

3.1.3. Projet

Code Désignation Utilisateur Remarque

1.3.1 Liste / recherche A/U Liste des projets

1.3.2 Détail A/U Détail d’un projet

1.3.3 Ajout A Ajouter un projet

1.3.4 Modification A Modifier un projet

1.3.5 Suppression A Supprimer un projet

1.3.6 Statistiques A/U Statistiques liées au projet

1.3.7 Utilisateurs A et UT Liste des utilisateurs qui ont accès au projet avec
leurs rôle y compris les utilisateur du tiers auquel
le projet est affecté

1.3.8 Inviter utilisateur A et UT Envoyer une invitation à utilisateur pour gérer le


projet en tant que admin / utilisateur

1.3.9 Supprimer accès A et UT


utilisateur

1.3.1 Modifier accès A et UT Modifier le rôle d’un utilisateur


0 utilisateur

1.3.1 Renvoyer A et UT Renvoyer l’invitation à un utilisateur.


1 invitation

 Seul un utilisateur ayant un compte admin tiers peut créer ou modifier un projet.
 Si un utilisateur est admin de plusieurs comptes tiers, alors lorsqu’il va créer un
projet, le système lui affiche une fenêtre lui demandant quel tiers auquel le projet est
affecté.

3.1.4. Section

Il n’y a pas de vue proprement dit au section. La gestion des sections se fait à travers la vue
liste des tâches d’un projet. à travers cette vue l'utilisateur peut effectuer les fonctionnalité
suivantes :

Cod Désignation Utilisateur Remarque


e

1.4.1 Ajouter section A/U

1.4.2 Modifier le nom A/U


d’une section

1.4.3 Affecter une tâche à A/U Cliquer et glisser


une section

1.4.4 Supprimer une A/U Les tâches affectées à cette section ne sonr
section pas supprimée mais deviennent sans section

3.1.5. Tâche

Cod Désignation Utilisateur Remarque


e

1.5.1 liste / A/U


recherche

1.5.2 Détail A/U

1.5.3 Ajout A/U Pas de vue spécifique pour l’ajout d’une tâche. l’ajout
se fait à travers la liste des tâches

1.5.4 Modification A/U La modification se fait dans la vue détail

1.5.5 Suppression A La suppression d’une tâche implique la suppression


de l’historique, document et commentaires

 l’ajout d’une tâche se fait directement à partir de la liste des tâches.

 La vue “détail” d’une tâche est la vue la plus importante de l’application et ci-dessous
une description détaillée de cette vue et ses fonctionnalités.

L’affichage de la vue “détail” d’une tâche se fait à partir de la liste des tâches. Lorsqu’un
utilisateur clique sur une tâche dans la liste, alors un onglet à droite de l’écran est affiché.
L’écran est alors divisé en 2 parties : la partie de gauche on retrouve la liste des tâches et la
partie de droite on retrouve le détail de la tâche.

Important : lorsque l’utilisateur clique sur l’une des tâches dans la liste, l’URL dans le
navigateur doit être changée. Tout comme l’utilisateur ferme l’onglet détail tâche l’url
redevient celle de la liste des tâches.

Dans cette partie de droit on retrouve les informations suivantes et il est possible de faire les
actions suivantes :

1. Nom de la tâche (modifiable)


2. Description (modifiable)
3. Date (modifiable)
4. Heure début (modifiable)
5. Heure fin (modifiable)
6. Statut (modifiable)
7. Priorité (modifiable)
8. Projet (modifiable)
9. Section (modifiable)
10. Responsable de la tâche (modifiable)
11. Les sous-tâches
a. Ajout
b. Suppression
12. Lien vers la tâche parente
13. Historique des actions
14. Les fichiers
a. Upload de documents + images
b. Affichages des thumbs des images + lien vers les images d’origine
c. Liens des documents uploadés
d. Possibilité de supprimer un document
15. Les commentaires
a. Ajout
b. Modification
c. Suppression
d. Possibilité de taguer un utilisateur dans le commentaire

3.2. systray

Le systray aura les fonctionnalités suivantes :


1. Paramétrage : adresse du serveur
2. Authentification : login et mot de passe de l’utilisateur.
3. Afficher les notifications liées à l’activité au niveau de timesheet.
4. Prendre des captures d’écran de l’utilisateur et les envoyer vers le serveur.

4. Fonctionnalités Mobile
L’application mobile aura exactement les mêmes fonctionnalités que la partie web. En plus
de cela la partie mobile aura une partie des fonctionnalités du systray en outre :

1. Paramétrage : adresse du serveur


2. Authentification : login et mot de passe de l’utilisateur.
3. Afficher les notifications liées à l’activité au niveau de timesheet.

Vous aimerez peut-être aussi