Table des matières

Increase

Présentation de la situation professionnelle

e4_antoine_clavel_increase.pdf

Contexte

Une société de développement (Web, mobile, applications…) souhaite disposer en interne d'un outil permettant :

L'application sera accessible en interne (Intranet destiné aux équipes de développement) mais aussi en externe, pour permettre au client commanditaire d'un projet de consulter l'avancement de celui-ci.

Développement

Outils utilisés

Langages utilisés :

Equipe TripleA :

Règles de gestion

Dictionnaire des données

Nom Table Type de données Longueur Clef primaire Clef étrangère
libelle Role text
commentaire tache text
commentaires Ressources text
date tache date
date COMMENTER datetime
description Actions text
ID_action Actions int X
ID_action ACL int X X
ID_msg COMMENTER int X
ID_projet COMMENTER int X
ID_projet Use_case int X
ID_projet Projet int X
ID_ressources ACL int X X
ID_ressources Ressources int X
ID_role Role int X
ID_role Utilisateur int X
ID_role ACL int X X
ID_tache tache int X
ID_uc tache int X
ID_uc Use_case int X
ID_utilisateur tache int X
ID_utilisateur Use_case int X
ID_utilisateur COMMENTER int X
ID_utilisateur Projet int X
ID_utilisateur Utilisateur int X
mail Utilisateur char(50) 50
message COMMENTER text
nom Ressources text
nom Actions text
Nom Utilisateur char(20) 20
nom_projet Projet varchar(50) 50
pourcentage_avancement Use_case decimal
prenom Utilisateur char(20) 20
Rôle Use_case text
tel Utilisateur char(10) 10



Modèle Conceptuel de Données (MCD)



Modèle Physique de Données (MPD)



Modèle Logique de Données (MLD)



Script de création

/*==============================================================*/
/* Nom de SGBD : MySQL 5.0
/* Date de création : 16/03/2015 17:17:53
/*==============================================================*/

drop table if exists acl;

drop table if exists actions;

drop table if exists commenter;

drop table if exists projet;

drop table if exists ressources;

drop table if exists role;

drop table if exists tache;

drop table if exists useCase;

drop table if exists utilisateur;

/*==============================================================*/
/* Table : acl
/*==============================================================*/

create table acl (

 idRole               int not null,
 idRessources         int not null,
 idAction             int not null,
 primary key (idRole, idRessources, idAction)

);

/*==============================================================*/
/* Table : actions
/*==============================================================*/

create table actions (

 idAction             int not null auto_increment,
 nom                  text not null,
 description          text,
 primary key (idAction)

);

/*==============================================================*/
/* Table : commenter
/*==============================================================*/

create table commenter (

 idMsg                int not null auto_increment,
 idUtilisateur        int not null,
 idProjet             int not null,
 date                 datetime not null,
 message              text not null,
 primary key (idMsg)

);

/*==============================================================*/
/* Table : projet
/*==============================================================*/

create table projet (

 idProjet             int not null auto_increment,
 idUtilisateur        int not null,
 nomProjet            varchar(50) not null,
 primary key (idProjet)

);

/*==============================================================*/
/* Table : ressources
/*==============================================================*/

create table ressources (

 idRessources         int not null auto_increment,
 nom                  text not null,
 commentaires         text,
 primary key (idRessources)

);

/*==============================================================*/
/* Table : role
/*==============================================================*/

create table role (

 idRole               int not null auto_increment,
 libelle              text not null,
 primary key (idRole)

);

/*==============================================================*/
/* Table : tache
/*==============================================================*/

create table tache (

 idTache              int not null auto_increment,
 idUc                 int not null,
 idUtilisateur        int not null,
 date                 date,
 commentaire          text,
 primary key (idTache)

);

/*==============================================================*/
/* Table : useCase
/*==============================================================*/

create table useCase (

 idUc                 int not null auto_increment,
 idUtilisateur        int not null,
 idProjet             int,
 role                 text not null,
 pourcentageAvancement decimal not null,
 primary key (idUc)

);

/*==============================================================*/
/* Table : utilisateur
/*==============================================================*/

create table utilisateur (

 idUtilisateur        int not null auto_increment,
 idRole               int not null,
 nom                  char(20) not null,
 prenom               char(20) not null,
 mail                 char(50) not null,
 tel                  char(10) not null,
 primary key (idUtilisateur)

);

alter table acl add constraint FK_ACL foreign key (idAction)

    references actions (idAction) on delete restrict on update restrict;


alter table acl add constraint FK_ACL foreign key (idRessources)

    references ressources (idRessources) on delete restrict on update restrict;


alter table acl add constraint FK_ACL foreign key (idRole)

    references role (idRole) on delete restrict on update restrict;


alter table commenter add constraint FK_COMMENTER foreign key (idUtilisateur)

    references utilisateur (idUtilisateur) on delete restrict on update restrict;


alter table commenter add constraint FK_POUR foreign key (idProjet)

    references projet (idProjet) on delete restrict on update restrict;


alter table projet add constraint FK_COMMANDER foreign key (idUtilisateur)

    references utilisateur (idUtilisateur) on delete restrict on update restrict;


alter table tache add constraint FK_ASSIGNER foreign key (idUtilisateur)

    references utilisateur (idUtilisateur) on delete restrict on update restrict;


alter table tache add constraint FK_COMPORTER foreign key (idUc)

    references useCase (idUc) on delete restrict on update restrict;


alter table useCase add constraint FK_CONTENIR foreign key (idProjet)

    references projet (idProjet) on delete restrict on update restrict;


alter table useCase add constraint FK_TRAVAILLER_SUR foreign key (idUtilisateur)

    references utilisateur (idUtilisateur) on delete restrict on update restrict;


alter table utilisateur add constraint FK_EST foreign key (idRole)

    references role (idRole) on delete restrict on update restrict;