Bonjour,

Je souhaite faire une application desktop qui se divise en deux parties.
- Le FrontOffice qui sera utilisé par la majorité des personnes.
- Le BackOffice qui sera utilisé par les managers ou administrateurs (paramétrage, configuration, statistiques, ....)

Ma question est la suivante :
Vaut-il mieux gérer le tout dans un seul projet et gérer les deux aspects a l'aide des packages ou faire 3 projets distincts ?

A savoir que je prévois que le backoffice peut-être lancé seul ou lancé via le FrontOffice si l'utilisateur a les droits nécessaires.

Solution 1 Projet :
monproj.common.entity
monproj.common.service
monproj.common.utils
monproj.backoffice.service
monproj.backoffice.model
monproj.backoffice.gui
monproj.frontoffice.service
monproj.frontoffice.model
monproj.frontoffice.gui

Solution 3 projets
ProjMain
¦- common.entity
|- common.service
|- common.util

ProjBackOffice
|- backoffice.entity
|- backoffice.service
|- backoffice.model
|- backoffice.gui

ProjFrontOffice
|- frontoffice.entity
|- frontoffice.service
|- frontoffice.model
|- frontoffice.gui

Quels sont les avantages et les inconvénients de chaque solution d'après votre expérience ?

Si je me trompe pas, dans la solution multi-projet, j'aurai 3 jar a la sortie, est-ce un avantage ?

N'y a t'il pas plus de risque de travailler en 3 projets distincts au point de vue impact d'un projet sur un autre ?

Si je fais une mise a jour de la partie backoffice, dois-je regénérer et déployer les 3 projets ou puis-je uniquement déployer le jar du backoffice?


Merci beaucoup