Académique Documents
Professionnel Documents
Culture Documents
01/EBx
1. Introduction 3
1.1. Objet Du Document 3
1.2. Objectifs Du Projet 3
1.3. Contexte 4
1.4. Cadre Applicatif 4
1.5. Contenu Du Document 5
1.6. Convention 5
2. Exigences Fonctionnelles Et Opérationnelles 6
2.1. Définitions préalables 6
2.2. Généralités et missions du système 6
2.3. Rôle des utilisateurs 7
2.4. Module d’invitation 8
2.5. Module de rédaction d’avis 9
2.6. Module de questionnaire 11
2.7. Module de réponse 12
2.8. Visualisation et signalement des avis/réponses 14
2.9. Module de modération 15
2.10. Module d’alerte 17
3. Exigences Techniques 18
3.1. Architecture 18
3.2. APIs 19
3.3. Technologies 19
4. Exigences De Management 20
5. Jalons Et Livrables 25
1. Introduction
1.1. Objet Du Document
Le présent document décrit le contexte et le périmètre du projet proposé aux étudiants du
Master « Génie de l’Informatique Logicielle » pour l’année universitaire 2023-2024. Le projet
vise à simuler l’expérience de travail dans une entreprise qui vient de gagner une réponse à
appel d’offre. Les étudiants font partie de cette entreprise et doivent s’organiser pour
développer le système OllcAvis correspondant à l’appel d’offre gagné. Ce document
constitue le cahier des charges applicable au projet et sert de référence pour l’appel d’offres
remporté par la société fictive constituée des étudiants. La forme et la structure de ce CCTP
sont inspirées du code des marchés publics1. Il présente l'ensemble des exigences
fonctionnelles, de management et de qualités associées au projet. Il définit également la
liste des fournitures relatives au projet et le calendrier de livraison de ces fournitures.
● Le dépôt, par un client, d’avis sur l’un des commerçants ou sur les produits qu’il a
commandé
● La consultation des avis clients
● La modération manuelle, par des modérateurs, des avis ne répondant pas aux
conditions d’utilisation du système d’avis.
● La modération automatique des avis au moyens d’algorithmes
«OllcAvis» pourra être utilisé d’un PC, d’un smartphone ou d’une tablette.
Le système utilisé pour effectuer la démonstration sera désigné dans la suite du document
sous le nom de «OllcAvis» ou «système OllcAvis».
1.3. Contexte
Avec l'émergence des plateformes de vente en ligne comme Amazon, les habitudes de
consommation des utilisateurs ont évolué. En effet, ils ont intégré dans leur processus
d’achat, des étapes de sélection et de comparaison de produits de plus en plus longues et
1
www.marche-public.fr/Marches-publics/Definitions/Entrees/CCTP.htm
complexes. Rares sont encore les utilisateurs qui ne s’appuient que sur les conseils donnés
par les vendeurs pour faire leur choix en comparaison de ceux qui vont chercher, au travers
des différents avis laissés par les consommateurs sur internet, à se faire leur propre idée
d’un produit avant de passer à l’acte d’achat. Pour se faire, les acheteurs vont dépenser un
temps important sur des applications dédiées d’avis client comme Google Review, ou
Trustpilot mais également sur les plateformes de vente lorsque celles-ci disposent d’avis
clients. Une plateforme de vente disposant d’un système d’avis client performant,
c’est-à-dire disposant de nombreux avis jugés utiles et fiables par les acheteurs, voit donc
naturellement augmenter ses chances de ventes. L’enjeu à disposer d’avis clients positifs
est devenu tellement important que des entreprises dédiées à la production de faux avis se
sont développées, amenant les autorités de contrôle du commerce (DGCCRF, Afnor) à
mettre en place des normes dédiées pour garantir l'authenticité des avis et éviter les
fraudes. La mise en place de ces normes complexifient encore les systèmes de gestion
d’avis et nécessitent la mise en place d’équipes de modération humaines coûteuses. Afin de
limiter ces coûts de modération, des algorithmes d’aide à la modération sont désormais
attendus. C’est dans cet objectif de proposer un système de gestion d’avis dédié et
performant que le développement du système «OllcAvis» est attendu.
Chacune des fonctions «OllcAvis» fait l’objet d’une description dans laquelle sont exprimées
les exigences à satisfaire par le système «OllcAvis». Ce document définit ensuite les
1.6. Convention
Le présent CCTP a été rédigé en respectant les règles suivantes :
donnent leur avis sur les produits qu’ils ont achetés récemment ainsi qu’un module d’aide et
d’assistance à la modération manuelle.
E_ROL_40 L’accès aux fonctionnalités de réponse aux avis n’est possible que
pour les utilisateurs possédant le rôle commerçant et pour les avis qui concernent sa
boutique ou les produits qu’il vend.
E_ROL_50 L’accès aux fonctionnalités de rédaction d’avis n’est possible que pour
les utilisateurs qui sont des clients de la plateforme Ollca.
E_INV_10 Le système «OllcAvis» permet d’envoyer des invitations par mail aux
clients de la plateforme Ollca conformément aux règles suivantes :
● le client est sollicité pour donner un avis car lors de sa dernière commande, il
a commandé dans une boutique pour laquelle il n’a encore jamais donné son
avis
● le client est sollicité pour donner un avis car lors de sa dernière commande, il
a commandé un produit pour lequel il n’a encore jamais donné son avis
● l’invitation est envoyée dans un délai de 48h après la date de retrait / livraison
de la commande associée
E_INV_20 Le système «OllcAvis» permet d’envoyer des invitations par mail aux
clients de la plateforme Ollca conformément aux règles suivantes :
● le client a déjà été sollicité conformément à E_INV_10 mais n’a pas encore
rédigé d’avis
● L’invitation est envoyée dans un délai de 168h (7 jours) après la date de
retrait / livraison de la commande associée
● la date de la commande
● la description de la boutique évaluée (si avis boutique)
● la description du produit évalué (si avis produit)
● l’id de l’avis
● l’id du rédacteur
● le pseudonyme renseigné par le rédacteur ou, par défaut, ses initiales
● le label
● l’interval de note
● le type d’avis
● la catégorie produit (si applicable)
● le nombre de fois où cet élément de détail est sélectionné dans des avis
● note
● date de création
● auteur
● la commande liée
● l’état de la modération automatiquement (status, date de modération, résultat
de la modération, raison(s) si non conforme)
● l’état de la modération manuel (status, date de modération, modérateur,
résultat de la modération, raison(s) si non conforme)
● le lien vers sa réponse si elle existe
● le produit ou la boutique sujet de l’avis
● note
● date de création
● auteur
● statut de la modération effectuée (manuelle ou automatique)
● l’id de la réponse
● l’id de l’avis associé à la réponse
● le rédacteur de la réponse (commerçant)
● le contenu de la réponse (texte)
● l’état de la modération automatiquement (status, date de modération, résultat
de la modération, raison(s) si non conforme)
Lors d’un signalement, l’avis ou la réponse et son historique d'événement sont mis à jour et
sa visibilité est changée comme spécifié par E_MOD_80.
● l’auteur
● un extrait du contenu à modérer (texte)
● le type d’élément associé au contenu (avis ou réponse)
● la note et le type de l’avis associé (si contenu d’un avis)
● le lien vers l’avis associé à la réponse (si contenu d’une réponse)
● l’état de la modération automatiquement (status, date de modération, résultat
de la modération, raison(s) si non conforme)
● l’état de la modération manuel (status, date de modération, modérateur,
résultat de la modération, raison(s) si non conforme)
● la date de création du contenu
● si le contenu a été signalé manuellement comme non conforme et sa
justification
E_ALR_10 Le système «OllcAvis» envoie une alerte aux utilisateurs avec un rôle
de modérateur lorsque le délai de modération d’un contenu est expiré. Le mail contient le
détail de l’avis ou de la réponse associé au contenu ainsi qu’un lien permettant d’accéder au
module de modération pour ce contenu.
E_ALR_20 Le système «OllcAvis» envoie une alerte aux utilisateurs avec un rôle
de commerçant lorsqu’un avis concernant sa boutique ou ses produits a été rédigé. Le mail
contient le détail de l’avis associé au contenu ainsi qu’un lien permettant d’accéder à sa
visualisation.
E_ALR_30 Le système «OllcAvis» envoie une alerte aux utilisateurs avec un rôle
de modérateur lorsqu’un contenu est signalé comme non conforme par un utilisateur. Le
mail contient le détail de l’avis ou de la réponse associé au contenu signalé ainsi qu’un lien
permettant d’accéder au module de modération pour ce contenu.
3. Exigences Techniques
3.1. Architecture
Le système «OllcAvis» est basé sur une architecture orientée micro-service où chaque
service est indépendant et autonome. Les micro services sont réactifs, c'est-à-dire qu’ils
réagissent à des messages issus de flux de données ou à des appels à leurs APIs.
E_ARC_60 Les objets métiers échangés sur les flux de données respectent un
modèle d’échange commun. Ce modèle permet à chaque service de traiter si besoin les
objets métiers disponibles des flux de données gérés par les autres services.
3.2. APIs
Le système «OllcAvis» doit pouvoir s’intégrer facilement dans une plateforme existante.
Pour se faire, les différentes fonctionnalités mises en œuvre doivent être accessibles au
travers d’APIs web.
3.3. Technologies
E_TEC_10 Le système «OllcAvis» doit traiter des flux de données gérées au
travers d’un cluster Kafka.
4. Exigences De Management
L’approche retenue pour le développement repose sur un processus de livraison continu
(CD) au travers d’une méthodologie de type SCRUM. Cette méthodologie devra permettre la
mise en place de sprints conduisant à une amélioration progressive du document
d’architecture logiciel lors de la phase de LEAN, et de la couverture fonctionnelle lors de la
phase développement. Afin de suivre finement l’avancement du projet, des mêlées
quotidiennes seront organisées dès la phase de LEAN, au cours desquelles le client pourra
participer.
Lors de chaque sprint, des équipes de développement seront constituées et réaliseront les
tâches conformément à une liste priorisée (backlog). Le backlog sera constitué à partir de
scénarios d’utilisation du système (user story).
À la fin de chaque sprint, une revue de sprint sera organisée où sera faite une
démonstration du système permettant de valider les fonctionnalités du système mises en
place.
● Avoir la vision produit du système, c’est à dire connaître les besoins du client
et des utilisateurs
● Diffuser la vision produit à l’ensemble des équipes
● Prioriser les fonctionnalités à développer avec l’accord du client
● Aider les scrums masters à prioriser les éléments du backlog (tâches)
● Assurer que les fonctionnalités à développer soient correctement diffusées et
comprises par l’ensemble des équipes
● Planifier avec les scrums masters le contenu des sprints
E_MAN_70 Avant chaque sprint, des user stories sont identifiées pour ce sprint
par le Product Owner et validé par le Client. L’équipe de développement doit avoir validé la
faisabilité de ses user stories dans le temps imparti du sprint.
E_MAN_100 Pour chaque sprint, des scrum master propres à chacunes des
équipes sont identifiés.
E_MAN_140 Une réunion de cadrage est réalisée afin de créer une version initiale
du backlog. Cette réunion traite les thématiques suivantes :
Il n’est pas demandé de présenter la conception interne détaillée des composants dans ce
document (diagramme de classe ou d’activité interne à l’implémentation du composant) mais
les détails des méthodes des apis et des payload formalisés en JSON des I/O et des objets
métiers echangés seront eux détaillés précisement pour chaque service.
● Un plan de validation détaillée, rédigé par chaque équipe, qui décrira la stratégie de
test fonctionnelle mise en œuvre, les conditions de réalisation des tests, les
procédures de tests et les jeux de données utilisés, les résultats constatés ainsi
qu’une matrice de couverture établissant la correspondance entre les users stories et
les procédures de test visant à la vérifier, (il n’est pas demandé ici de décrire les
tests unitaires des composants mais bien les tests « manuels » fonctionnels
permettant de bien valider le système intégré),
● Une fiche de version du système livré décrivant les exigences couvertes par la
version de l’application, les évolutions prises en charge par la version, les limites
éventuelles et les anomalies résiduelles
● Un bilan de validation de la version du système mettant en avant les résultats de
l’exécution du plan de test ainsi que le taux de couverture et les résultats des tests
unitaires.
E_MAN_230 Un document détaillant l’ensemble des règles de codage ainsi que les
bonnes pratiques de réalisation et d’ingénierie est fourni. Sont décrit a minima dans ce
document :
5. Jalons Et Livrables
Le tableau ci-dessous donne la liste des livrables (a minima) et leur date de livraison
au plus tard au titre du présent projet. Ces dates sont données par rapport à la date
de notification du projet (T0) ; et la date du début du développement (T1).
Lean Startup
Scrum