Abbiamo un servizio web che accetta diversi tipi di messaggi. La funzione del webservice è semplicemente scrivere in un database il contenuto dei messaggi. C'è circa una tabella (con chiavi esterne per gli altri) per ogni tipo di messaggio.
Ci è stato chiesto di trasformare il servizio web in un prodotto configurabile utilizzando un motore di regole aziendali. Per avere la piena configurabilità, un collega ha suggerito che il modo migliore potrebbe essere trasformare il webservice da uno che accetta molti tipi di messaggi a uno che accetta un tipo di messaggio, ma nel contenuto del messaggio c'è un campo che indica il tipo di il contenuto. In questo modo, ci sarebbe solo una tabella per i messaggi (più altre tabelle per le informazioni statiche), e sarebbe più configurabile usando i motori delle regole di business.
Qual è il modo migliore per affrontare questa situazione?
Aggiornamento: per i motori delle regole aziendali è molto probabile che utilizzeremo un'implementazione del Rete Algorithm , come Drools