2010-01-28 2 views
8

Il mio prossimo progetto è relativo al sistema di vendita, quindi uno dei requisiti principali è "l'utente può modificare la promozione da solo". Le promozioni sono diverse, me ne danno alcune.La maggior parte delle flessibilità regola il motore per .NET

  1. Buy 1 ottiene 1 libero, Acquista 2 ottenere 3.
  2. Uno per il 30%, due per il 50%, tre per l'80%
  3. Acquista il prodotto A sarà sconto del 30% per il prodotto B
  4. 20% di sconto per più di 20 $ per transazione

Conosco un po 'di motore di regole, per favore suggeriscimi un libro per imparare anche questo.

+0

Mi piacerebbe vedere come si progetta l'interfaccia utente con requisiti così diversi. Sospetto che sarà molto più difficile progettare l'interfaccia utente rispetto alla codifica di un motore di regole. – Kane

+1

Penso che l'interfaccia utente sia praticamente terminata: basta sostituire ciascuno dei numeri con una casella di testo e l'elenco numerato con i pulsanti di opzione. – Jay

+2

In una vita passata ho progettato siti di acquisti di alimentari. Posso dirvi che ci sono non meno di 170 varietà di promozione. Mente sconvolgente per non dire altro! – Jamiec

risposta

0

È possibile utilizzare BOO DSL funzionalità o utilizzare Rhino.DSL (stiamo usando come un motore di macro per il nostro progetto)

come per l'esempio controllare this collegamento

1

è possibile utilizzare un motore di regole commerciali per .Net come InRule o la versione .NET di IBM ILOG Rules o FICO Blaze Advisor. Tutti semplificano l'esposizione delle regole all'utente aziendale in modo tale da renderle sicure per consentirne la modifica, fornendo allo stesso tempo hook/API tecnici per facilitare l'integrazione del motore e dell'esecuzione delle regole.

+0

Esatto. I prodotti commerciali fanno il buon lavoro in questo settore. Un'altra opzione è [FlexRule] (http://www.flexrule.com/javascript) che consente di esporre le regole nell'interfaccia utente web e in ambiente di authoring basato su Windows. –