Come funziona la nuova matrice in Ketch.UP, la libreria di web components

libreria-web-components

La nuova matrice è un componente grafico sviluppato per Ketch.UP, una libreria di Web Components che, nel tempo, diverranno la base front-end di Sme.UP ERP.

I Web Components sono degli elementi personalizzati e riutilizzabili, sviluppati con una tecnologia standard e usati in applicazioni web.

L’ approccio utilizzato permette alla matrice di sfruttare tutti i vantaggi di una nuova tecnologia di sviluppo e di esaltare al meglio, grazie alle sue caratteristiche, i pregi di Ketch.UP.

I componenti web sviluppati in Ketch.UP non si limitano a definire esclusivamente la grafica ma possiedono anche informazioni che amplificano il componente e che permettono interazioni più specifiche tra l’utente e il software che utilizza la libreria.
Un esempio di utilizzo: prendendo in considerazione una matrice di clienti, nel momento in cui decidiamo di voler aggiungere una nuova colonna, troviamo delle proposte di colonne aggiuntive suggerite in base al contenuto della matrice stessa. In parole povere, il software, sfruttando le informazioni dei componenti Ketch.UP, è a conoscenza del fatto che i dati che stiamo trattando sono relativi a dei clienti, per cui ci propone delle colonne inerenti al contenuto che potrebbero esserci utili nella gestione delle informazioni relative a un cliente, come l’indirizzo, la ragione sociale e via discorrendo.

Figura 1 – Esempi di Matrice nello Showcase Ketch.UP

La nuova matrice, essendo un Web Component, offre diversi vantaggi:

  • Compatibilità: Essendo basata su una tecnologia standard web, la matrice può essere usata su qualsiasi applicazione web e da qualsiasi framework. Questo garantisce alla libreria Ketch.UP anche una durabilità superiore garantendo, teoricamente, la possibilità di utilizzo anche con framework web futuri. In sostanza, col passare degli anni, potremmo dover riscrivere il programma con framework più moderni. La libreria standard Ketch.UP rimarrà compatibile anche con i framework web nuovi.
  • Open Source: Essendo Ketch.UP una libreria di componenti standard e non essendo necessariamente legata a Sme.UP ERP, Il progetto è open source; utilizzabile e ampliabile da chiunque.
  • Prestazionale: si ridisegna in modo molto più rapido; aumenta la velocità degli ordinamenti delle colonne e dei raggruppamenti.

Essendo le prestazioni molto importanti, soprattutto in un software gestionale, vale la pena sottolineare questo vantaggio con dei numeri.

Sono stati effettuati dei test per stabilire la differenza di tempistiche di rendering tra la nuova matrice e la sua vecchia rappresentazione con tecnologia JSF.
I tempi sono stati calcolati utilizzando il tool integrato in Google Chrome.
La scheda usata è la seguente:

F(EXD;*SCO;) 1(;;) 2(MB;SCP_SCH;WETEST_EXB) 4(;;PERTST) 5(;;) 6(;;) P() INPUT()

I dati rappresentano un’anagrafica enti con 165 campi e 10000 record per un totale di 1 milione e 650 mila celle.

Come mostrato in Figura 2 il tempo di rendering durante il caricamento della matrice Ketch.UP è pari a 2227ms, mentre con la vecchia tecnologia richiede 5138ms. La nuova matrice, solo nella fase di caricamento permette già di abbassare il tempo di disegno del 22%.

Figura 2 – Differenza dei Tempi di Rendering tra JSF e Ketch.UP

Il miglioramento è ancora più marcato durante la fase di ridisegno del componente, che avviene, per esempio, quando vengono effettuati degli ordinamenti o dei raggruppamenti.

La Figura 3 mostra come, il tempo di rendering, durante 1 solo raggruppamento, per la matrice JSF è pari a circa 20 secondi (19833ms) mentre la matrice Ketch.UP impiega solo poco più di un secondo (1260ms).

Figura 3 – Differenza dei Tempi di Rendering dopo un raggruppamento

In questo caso, la matrice Ketch.UP, è del 93,6% più efficiente rispetto a quella JSF.

Inoltre, sfruttando la tecnologia alla base della libreria Ketch.UP, le operazioni di ridisegno avvengono direttamente all’interno del componente, senza necessariamente interpellare il server. Questo significa un enorme risparmio di tempo durante l’operazione totale di raggruppamento, come mostrato in Figura 4.

Figura 4 – Differenza di tempo dopo un raggruppamento

Il grafico mostra come il tempo totale dell’operazione, utilizzando Ketch.UP, è meno di 9 secondi (8819ms). Utilizzando la vecchia tecnologia, il tempo totale dell’operazione, è più di 2 minuti (124952ms).

Tutto questo indica un risparmio del 93% e significa che l’utente deve attendere molto meno per ottenere il risultato, aumentando di molto l’usabilità del programma.


Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *