Je travaille sur une application qui est produite pour différents groupes de clients. Selon le client, les éléments de l'interface utilisateur du logiciel peuvent varier. Par exemple, un client peut avoir besoin de l'élément de menu X, tandis que l'autre client reçoit l'élément de menu Y.Stratégie de branchement pour logiciel configurable
Actuellement, toute la configuration de l'interface utilisateur se fait via XML (en grande partie avec le ressort). Pour les différents exemples d'options de menu, un fichier XML peut avoir une liste d'options de menu à afficher sur l'interface utilisateur. J'essaie de comprendre comment gérer au mieux le branchement du logiciel de sorte qu'ils puissent tous utiliser la même base de référence, et tous reçoivent des corrections de bogues, mises à jour, etc. La seule chose qui sera différente entre le branches est les fichiers de configuration XML.
Existe-t-il de bonnes pratiques/techniques pour gérer cela? Je ne suis pas tout à fait sûr que chaque client a besoin de différentes branches - c'était juste ma première pensée, donc je suis ouvert à d'autres suggestions. Mais toute aide concernant la meilleure façon de procéder serait appréciée.
Si elle aide à savoir, nous ne sommes pas en utilisant un système de contrôle de version distribué pour ce projet (en utilisant SVN).
grâce,
Jeff
@Ed, que pensez-vous des endroits où conserver les fichiers de configuration? Tous les fichiers clients dans un seul projet, comme suggéré par @mouviciel? Ou d'une autre manière? –