Verticale Smartphone¶
Vue d'ensemble¶
La verticale Smartphone est la première implémentation complète de l'architecture Platform.
Elle a servi de référence pour valider les principaux choix d'architecture de CMonChoix :
- séparation entre Domain Core et logique métier ;
- approche Identifier First ;
- Canonical Product Identity ;
- industrialisation par Read Services ;
- validation par KPI avant toute intégration.
Toutes les verticales développées par la suite s'appuient sur les enseignements tirés de cette première implémentation.
Objectifs¶
La verticale Smartphone poursuit plusieurs objectifs.
Elle doit permettre de :
- identifier correctement un modèle de smartphone ;
- distinguer les variantes commerciales ;
- regrouper les offres provenant de plusieurs marchands ;
- produire une projection stable destinée au Frontend.
Son rôle n'est pas de remplacer le Domain Core, mais de compléter son comportement avec des règles propres au domaine des smartphones.
Pourquoi une verticale dédiée ?¶
Le Domain Core est volontairement générique.
Il connaît des concepts tels que :
- Candidate ;
- Resolver ;
- Canonical Identity ;
- Projection.
En revanche, il ignore totalement des notions comme :
- capacité de stockage ;
- couleur commerciale ;
- mémoire vive ;
- génération d'un modèle ;
- compatibilité réseau.
Ces concepts appartiennent exclusivement à la verticale Smartphone.
Responsabilités¶
La verticale Smartphone est responsable de toutes les règles spécifiques à ce domaine.
Cela comprend notamment :
- les attributs métier ;
- les variantes d'un même modèle ;
- les heuristiques spécifiques ;
- les enrichissements propres aux smartphones ;
- les conflits métier.
Toutes ces règles sont confinées dans la verticale.
Relation avec le Domain Core¶
Le Domain Core fournit les mécanismes génériques de résolution.
La verticale Smartphone apporte les connaissances nécessaires à leur spécialisation.
La dépendance est toujours orientée dans le même sens.
Domain Core
│
▼
Verticale Smartphone
│
▼
Projection Smartphone
Le Domain Core ne dépend jamais de la verticale.
Attributs métier¶
Les smartphones possèdent des caractéristiques qui leur sont propres.
Parmi les principales :
- marque ;
- modèle ;
- génération ;
- capacité de stockage ;
- mémoire vive ;
- couleur commerciale ;
- connectivité ;
- état (neuf ou reconditionné selon le contexte métier).
Ces attributs complètent les informations génériques manipulées par le Domain Core.
Variantes¶
Un même modèle peut exister sous plusieurs variantes.
Par exemple :
- différentes capacités de stockage ;
- différentes couleurs ;
- différentes configurations matérielles.
La verticale est responsable de l'identification et de la normalisation de ces variantes.
Le Domain Core ne connaît pas leur signification.
Industrialisation¶
La verticale Smartphone est celle qui a servi à construire la méthode industrielle de la Platform.
Son développement a suivi un cycle systématique :
- création des Read Services ;
- audits ;
- simulations ;
- Virtual Patch ;
- validation des KPI ;
- intégration.
Cette méthode est désormais utilisée pour toutes les nouvelles verticales.
Validation¶
La verticale Smartphone a permis de valider plusieurs principes structurants.
Elle a démontré que :
- le Domain Core pouvait rester totalement indépendant du métier ;
- les règles spécifiques pouvaient être isolées dans une verticale ;
- les KPI constituaient un critère objectif de validation ;
- l'industrialisation progressive limitait fortement les régressions.
Elle constitue aujourd'hui la verticale de référence de la Platform.
Évolution¶
La verticale Smartphone continue d'évoluer au rythme des nouveaux appareils et des nouvelles règles métier.
Toutefois, son évolution doit toujours respecter les principes suivants :
- ne jamais déplacer une règle générique hors du Domain Core ;
- ne jamais introduire une règle spécifique dans le Core ;
- privilégier les évolutions incrémentales ;
- conserver la compatibilité avec les contrats de la Platform.