SFA: Sales Force Automation. Nell'era dei dispositivi portatili, TRIZETA s.r.l. ha sviluppato un software con strumenti open source ottimizzato per dispositivi multi-touch, come tablet e smartphone, per la gestione della forza vendite
3. Obiettivi
Vincoli architetturali e funzionali guidano le
scelte tecnologiche.
Vogliamo:
● Multiplatform system
● Simplicity
● Effectiveness
● Extensibility
● Manteinability
● Testability
4. Tecnologie usate
● Google Web Toolkit come tecnologia lato
client
○ Puro Java compilato ed ottimizzato in JS
○ Asynchronous RPC
● Pattern MVP
○ Model-View-Presenter per disaccoppiare logica di
presentazione e view passiva
● EventBus
○ Molti componenti (presenter-view). EventBus per
comunicazione evitanto accoppiamento
6. MVP Pattern
● Componenti come coppie
di View-Presenter
● View passiva, notifica solo
eventi al Presenter
● Disaccoppiamento
attraverso Dependency
Injection
● Creazione di
compartimenti modulari
assegnabili a team diversi
7. EventBus
● Publish/Subscribe pattern
● Meccanismo per
○ Passare di eventi
○ Registrarsi e ricevere eventi di interesse
● Basato su HandlerManager
● Diminuisce accoppiamento
● Facilita i test
8. DataManager
In moduli diversi racchiude le logiche di
● Calcolo funzionale centralizzato
● Caching
● Bootstrap dell'app
● Comunicazione con il server
9. Service and Facade pattern
● Molti servizi RPC asincroni a disposizione
della webapp attraverso DataManager
● Si utilizza GWT-RPC
● AsyncCallback creata e gestita dai presenter
● Tutti i service comunicano con il backend
attraverso unica Facade
10. Analisi di usabilità
● Molto tempo speso per accurata analisi di
usabilità
○ Che dispositivi usare? Tablet
○ Che direzione di schermo? ....
● Raccolta ordini simile alla raccolta cartacea
● Forte sfruttamento del pollice durante la
navigazione
○ Menu circolari
○ Smooth scrolling
○ Coerenza degli eventi touch con movimenti naturali
delle dita