bonjour,
Combiner DNN et workflows est l'un des sujets de développement les plus critiques du moment.
Contrairement à d'autres CMS, DNN n'a pas été prévu à pour gérer nativement les workflows. La philosophie était plus de laisser aux développeurs de module le soin d'implémenter au besoin leurs propres solutions spécifiques. Le résultat est que peu de modules proposent une telle fonctionnalité.
Parmis ceux qui le font, on peu citer Engage Publish, Enterprise Forms ou encore le populaire NewsArticle même si ce dernier ne gère que les transitions d'état. Les workflows ici s'appliquent sur des contenus typés précis.
Proposer une solution de workflow à l'échelle de l'ensemble des modules et des contenus est une toute autre tâche. C'est l'une des principale fonctionnalité que le core team se propose d'intégrer dans le cadre de la prochaine version 5 ("Cambrian") de DNN. D'après les recentes annonce du team, on peut néanmoins s'attendre à ce que cette fonctionnalité ne soit pas disponible en version 5.0, mais qu'elle sera plutôt intégrée vers la fin de l'année.
D'ici là, nous proposons un module qui offre une fonctionnalité analogue:
il permet de rajouter à n'importe quel module DNN la fonctionnalité de Workflow par l'implémentation d'une interface matérialisant les flux de contenus. Il va sans dire que nous fournissons les implémentations pour la plupart des modules natifs, ainsi que certains modules tiers comme Engage Publish ou NewsArticle (pour ces derniers, il s'agissait d'enrichir l'existant). Notre module fonctionne en "encapsulant" un module existant, dans le but de pouvoir en gérer plusieurs versions correspondants aux états du worklow, pour n'afficher à un utilisateur que celles que lui permettent ses habilitations.
Quant à WWF, c'est le composant très puissant que Ms a sorti dans le cadre du framework 3.0 unifiant au sein d'un même paradigme les notions de workflows asynchrones à état et les workflows synchrones séquentiels à activité. Il est fondé entre autre sur un runtime interne encapsulant un moteur à compilation dynamique exploitant CodeDom.
L'avantage est qu'il est possible de redéfinir virtuellement n'importe quel type d'algorithme sous forme de workflow WWF. L'inconvénient est que son intégration sous ASP.Net est assez complexe du fait de la nature multithreadée et asynchrone des applis web. Il existe néanmoins un certain nombre de starter kits qui en illustrent les étapes.
Si l'objectif initial d'Aricie était l'intégration de WWF au sein de notre module, nous avons préféré partir dans un premier temps sur une solution à workflow statique, du fait que plusieurs dizaines de milliers de lignes de codes ont déjà été nécessaires à la mise en place d'une solution générique sous DNN.
Après stabilisation de cette première version, l'exploitation de WWF est désormais notre nouvel objectif pour 2008.
D'ici là, n'hésitez pas à jeter un oeil à notre module