Mi è stato affidato il compito di creare un'applicazione web che fornisca agli utenti finali un flusso di lavoro di autoaiuto, ponendo loro domande e saltando in un'altra parte del flusso di lavoro a seconda delle risposte fino alla fine.
Questo va bene, e stavo considerando la creazione di un'applicazione basata sui dati che gli amministratori potevano creare e salvare di nuovo i nuovi flussi di lavoro. Questo sarebbe basato sulle seguenti tabelle DB:
- Categorie
- Flussi di lavoro
- I passaggi
- Le risposte
Tuttavia, mi è stato ora detto che questi flussi di lavoro conterrebbero alcuni passaggi di controllo automatici, come il controllo di un valore in un DB o un valore della chiave di registro sulla workstation degli utenti o un valore LDAP da Active Directory (adinifinitum annuncio ) contro un valore noto / desiderato (che in alcuni casi sarebbe dinamico). Questo getta completamente una chiave inglese nel lavoro, perché ora sembra che dovrò inserire tutti i flussi di lavoro nell'applicazione, cosa che speravo di evitare.
C'è un modo in cui potrei avvicinarmi a ciò che non vedo, che mi consentirà di continuare a rendere l'applicazione (in qualche modo) guidata dai dati? O è OK / standard per codificare in modo rigido questi tipi di flussi di lavoro in un'app? Il cliente vorrà aggiungere regolarmente nuovi flussi di lavoro, mi viene detto.
Per informazioni, lo svilupperò in C # poiché siamo un negozio di MS.