Front-end First: sopravvivere con il testing in JavaScriptCodemotion
"Front-end First: sopravvivere con il testing in JavaScript" by Michele Aponte.
Le moderne applicazioni web ormai spostano la logica di interfaccia lato client, rendendo JavaScript assoluto protagonista dello sviluppo. Si rende quindi necessario poter testare in maniera automatica questa componente e in questa sessione vedremo, con un approccio molto pratico, tools e tecniche per farlo in maniera sostenibile. Partiremo dai principali framework di testing confrontando l'approccio TDD e BDD; analizzeremo framework e tecniche di mocking; vedremo come rendere testabile codice già scritto e come AngularJS semplifichi notevolmente gli scenari di test.
Agile Testing e UX: come ottenere il massimo da QA e DesignStefano Trojani
Un'analisi sulla sinergia che si genera lavorando fianco a fianco tra Agile Tester e UX.
Dopo una breve presentazione del ruolo dell'Agile Tester (che non è il vecchio tester del "waterfall") analizziamo quali sono le competenze condivise (es: personas, scenari, usability test...) e dimostriamo, con un esempio sul campo, che lavorando insieme possiamo analizzare il prodotto in ogni sua parte raggiungendo qualità superiore.
Conferenza OpenGeoData 2016 - SAS for OpenData: una soluzione per migliorare ...giovanni biallo
Nella sessione "Strumenti, software e servizi per l'elaborazione e la gestione dei dati" della Conferenza OpenGeoData Italia 2016, Alessandro Greco della Sistemi Territoriali ed Erasmo D'Eramo del SAS Institute hanno presentato la relazione "SAS for OpenData: una soluzione per migliorare la qualità, la quantità ed il riuso dei dati aperti".
Front-end First: sopravvivere con il testing in JavaScriptCodemotion
"Front-end First: sopravvivere con il testing in JavaScript" by Michele Aponte.
Le moderne applicazioni web ormai spostano la logica di interfaccia lato client, rendendo JavaScript assoluto protagonista dello sviluppo. Si rende quindi necessario poter testare in maniera automatica questa componente e in questa sessione vedremo, con un approccio molto pratico, tools e tecniche per farlo in maniera sostenibile. Partiremo dai principali framework di testing confrontando l'approccio TDD e BDD; analizzeremo framework e tecniche di mocking; vedremo come rendere testabile codice già scritto e come AngularJS semplifichi notevolmente gli scenari di test.
Agile Testing e UX: come ottenere il massimo da QA e DesignStefano Trojani
Un'analisi sulla sinergia che si genera lavorando fianco a fianco tra Agile Tester e UX.
Dopo una breve presentazione del ruolo dell'Agile Tester (che non è il vecchio tester del "waterfall") analizziamo quali sono le competenze condivise (es: personas, scenari, usability test...) e dimostriamo, con un esempio sul campo, che lavorando insieme possiamo analizzare il prodotto in ogni sua parte raggiungendo qualità superiore.
Conferenza OpenGeoData 2016 - SAS for OpenData: una soluzione per migliorare ...giovanni biallo
Nella sessione "Strumenti, software e servizi per l'elaborazione e la gestione dei dati" della Conferenza OpenGeoData Italia 2016, Alessandro Greco della Sistemi Territoriali ed Erasmo D'Eramo del SAS Institute hanno presentato la relazione "SAS for OpenData: una soluzione per migliorare la qualità, la quantità ed il riuso dei dati aperti".
O ‘que é o Crowdfunding | Financiamento coletivoLimancini
Crowdfunding, traduzindo ao pé da letra, significa financiamento por uma multidão ou financiamento coletivo como é chamado no Brasil. Se você tem uma ideia ou um projeto e necessita de dinheiro para lançá-lo, deve criar uma campanha de crowdfunding e contar com a contribuição de dezenas, centenas ou até milhares de pessoas para transformá-lo em realidade. Não há uma quantia fechada, cada um contribui com o valor que se sentir confortável (lembrando que toda plataforma possui um valor mínimo de contribuição que pode ser de R$10,00, R$20,00 ou outro valor).
Até pouco tempo, era necessário pedir uma grande quantia ao banco ou para investidores. Mas com crowdfunding é diferente, você entra em contato com milhares de potenciais contribuidores de seu projeto. E, para divulgar sua campanha, basta usar as mídias sociais, amigos, familiares e contatos de trabalho, além de outras formas de divulgação que sua ideia permitir. Existem 4 tipos diferentes de campanhas de crowdfunding: doação, recompensa, equity crowdfunding e debt crowdfunding.
S.O.S. Vendas desenvolvido para Sales2U. Um material 100% focado no resultado e com base no funil de vendas, através de uma metodologia própria que transforma informação em um kit de suporte comercial para os vendedores fecharem mais negócios.
PASS Virtual Chapter - Unit Testing su SQL ServerAlessandro Alpi
Con quanto segue andremo ad approfondire il concetto di unit test e, nella fattispecie, del testing tramite il framework free tSQLt, utilizzando t-sql e SQL Server Management Studio.
TYPESCRIPT, ANGULAR E BOOTSTRAP ASSIEME PER APPLICAZIONI REAL WORLDDotNetCampus
La recente affermazione in ambito web delle applicazioni rich basate su HTML5 e Javascript è diventato sorgente di una serie di librerie innovative e di strumenti che, se usati correttamente, possono semplificare enormemente lo sviluppo. In questa sessione sarà illustrato come sfruttare Typescript, in concomitanza con Angular e Bootstrap per realizzare applicazioni che sfruttino al massimo le possibilità dei browser e diano un feedback il più possibile simile alle applicazioni desktop.
UAT Toolkit: collaudo di sistemi software complessiNiccolò Avico
Nello sviluppo di sistemi software complessi i test effettuati dal fornitore, orientati a testare la robustezza del software e corretta esecuzione delle singole funzionalità, non sono sempre sufficienti per garantire al Cliente il rispetto delle specifiche e la coerenza con i propri di Business,
Considerando il caso di un sistema IT complesso, un collaudo effettuato verificando la correttezza delle principali transazioni lascerà inevitabilmente scoperti moltissimi scenari reali d'uso del sistema.
UAT Toolkit è un framework per il collaudo di sistemi, utilizzato nel caso di progetti medio-grandi, anche pluriennali e rilasciati per fasi.
In questa presentazione UAT Toolkit viene introdotto nelle sue caratteristiche principali e ne viene esemplificato l'uso in un caso d'esempio descritto.
UAT Toolkit valorizza il lavoro di tutta la squadra di progetto. Consente di massimizzare le sinergie tra committenza, fornitore, esperti del dominio di business e utenti finali, coinvolgendo tutte queste figure nel processo di Quality Assurance.
La struttura documentale organizzata per Deliverable, analitici ma snelli e senza componenti superflue, permette di pianificare e tracciare le attività di test, gestendo anche i collaudi differenziati di parti di progetto. UAT Toolkit fornisce già i template di tutti i Deliverable, pronti per essere adattati allo specifico progetto.
I Deliverable prodotti nel processo documentale di UAT Toolkit sono compatibili con i sistemi di Test Management e ne costituiscono l'input principale, qualora un tale sistema di supporto del testing sia disponibile per la fase di collaudo del sistema.
La struttura del processo di produzione dei Deliverable di UAT Toolkit innesca un circolo virtuoso per quanto riguarda il miglioramento continuo delle specifiche del sistema.
Taluni Deliverable prodotti da UAT Toolkit possono essere riutilizzati, dopo la conclusione positiva del progetto, anche nell'ambito della misurazione dei KPI e degli SLA contrattuali, qualora il Cliente preveda l'outsourcing di una o più Servizi (es. Contact center, amministrazione dei sistemi, ecc.) di supporto dell'esercizio.
UAT Toolkit affida a un facilitatore il ruolo di coordinamento delle attività preparatorie del collaudo. Il facilitatore ha il compito di ridurre i tempi di acquisizione del Toolkit da parte dello staff del Cliente, tramite formazione e coaching sul posto. Inoltre studia le specifiche di sistema e si mette a disposizione del cliente per la scelta degli scenari di test, nonchè per rendere sempre più autonomo e consapevole lo staff aziendale.
O ‘que é o Crowdfunding | Financiamento coletivoLimancini
Crowdfunding, traduzindo ao pé da letra, significa financiamento por uma multidão ou financiamento coletivo como é chamado no Brasil. Se você tem uma ideia ou um projeto e necessita de dinheiro para lançá-lo, deve criar uma campanha de crowdfunding e contar com a contribuição de dezenas, centenas ou até milhares de pessoas para transformá-lo em realidade. Não há uma quantia fechada, cada um contribui com o valor que se sentir confortável (lembrando que toda plataforma possui um valor mínimo de contribuição que pode ser de R$10,00, R$20,00 ou outro valor).
Até pouco tempo, era necessário pedir uma grande quantia ao banco ou para investidores. Mas com crowdfunding é diferente, você entra em contato com milhares de potenciais contribuidores de seu projeto. E, para divulgar sua campanha, basta usar as mídias sociais, amigos, familiares e contatos de trabalho, além de outras formas de divulgação que sua ideia permitir. Existem 4 tipos diferentes de campanhas de crowdfunding: doação, recompensa, equity crowdfunding e debt crowdfunding.
S.O.S. Vendas desenvolvido para Sales2U. Um material 100% focado no resultado e com base no funil de vendas, através de uma metodologia própria que transforma informação em um kit de suporte comercial para os vendedores fecharem mais negócios.
PASS Virtual Chapter - Unit Testing su SQL ServerAlessandro Alpi
Con quanto segue andremo ad approfondire il concetto di unit test e, nella fattispecie, del testing tramite il framework free tSQLt, utilizzando t-sql e SQL Server Management Studio.
TYPESCRIPT, ANGULAR E BOOTSTRAP ASSIEME PER APPLICAZIONI REAL WORLDDotNetCampus
La recente affermazione in ambito web delle applicazioni rich basate su HTML5 e Javascript è diventato sorgente di una serie di librerie innovative e di strumenti che, se usati correttamente, possono semplificare enormemente lo sviluppo. In questa sessione sarà illustrato come sfruttare Typescript, in concomitanza con Angular e Bootstrap per realizzare applicazioni che sfruttino al massimo le possibilità dei browser e diano un feedback il più possibile simile alle applicazioni desktop.
UAT Toolkit: collaudo di sistemi software complessiNiccolò Avico
Nello sviluppo di sistemi software complessi i test effettuati dal fornitore, orientati a testare la robustezza del software e corretta esecuzione delle singole funzionalità, non sono sempre sufficienti per garantire al Cliente il rispetto delle specifiche e la coerenza con i propri di Business,
Considerando il caso di un sistema IT complesso, un collaudo effettuato verificando la correttezza delle principali transazioni lascerà inevitabilmente scoperti moltissimi scenari reali d'uso del sistema.
UAT Toolkit è un framework per il collaudo di sistemi, utilizzato nel caso di progetti medio-grandi, anche pluriennali e rilasciati per fasi.
In questa presentazione UAT Toolkit viene introdotto nelle sue caratteristiche principali e ne viene esemplificato l'uso in un caso d'esempio descritto.
UAT Toolkit valorizza il lavoro di tutta la squadra di progetto. Consente di massimizzare le sinergie tra committenza, fornitore, esperti del dominio di business e utenti finali, coinvolgendo tutte queste figure nel processo di Quality Assurance.
La struttura documentale organizzata per Deliverable, analitici ma snelli e senza componenti superflue, permette di pianificare e tracciare le attività di test, gestendo anche i collaudi differenziati di parti di progetto. UAT Toolkit fornisce già i template di tutti i Deliverable, pronti per essere adattati allo specifico progetto.
I Deliverable prodotti nel processo documentale di UAT Toolkit sono compatibili con i sistemi di Test Management e ne costituiscono l'input principale, qualora un tale sistema di supporto del testing sia disponibile per la fase di collaudo del sistema.
La struttura del processo di produzione dei Deliverable di UAT Toolkit innesca un circolo virtuoso per quanto riguarda il miglioramento continuo delle specifiche del sistema.
Taluni Deliverable prodotti da UAT Toolkit possono essere riutilizzati, dopo la conclusione positiva del progetto, anche nell'ambito della misurazione dei KPI e degli SLA contrattuali, qualora il Cliente preveda l'outsourcing di una o più Servizi (es. Contact center, amministrazione dei sistemi, ecc.) di supporto dell'esercizio.
UAT Toolkit affida a un facilitatore il ruolo di coordinamento delle attività preparatorie del collaudo. Il facilitatore ha il compito di ridurre i tempi di acquisizione del Toolkit da parte dello staff del Cliente, tramite formazione e coaching sul posto. Inoltre studia le specifiche di sistema e si mette a disposizione del cliente per la scelta degli scenari di test, nonchè per rendere sempre più autonomo e consapevole lo staff aziendale.
Lo stato dell' arte sulla documentazione dei progetti ICTMatteo Gentile
Ogni progetto informatico è sicuramente incompleto fino a quando non viene corredato da una documentazione esauriente. In un progetto informatico la documentazione è presente in tutte le fasi, dalla raccolta dei requisiti, passando per la documentazione di analisi e tecnica di implementazione, fino ad arrivare alla documentazione per l’utente finale.
Quali documenti è opportuno generare in un progetto ?
La documentazione di progetto va generata all’inizio o alla fine ?
Come fare a tenere sempre aggiornata la documentazione quando i requisiti o le implementazioni cambiano ?
Che standard usare per creare una buona documentazione di un progetto informatico ?
Recentemente c’è stata un'ampia diffusione delle metodologie Agili. E’ vero che non è prevista documentazione ?
Questo evento nasce per rispondere a queste domande e per mostrare attraverso un esempio pratico come introdurre la documentazione in un progetto che usa le metodologie Agili.
CruiseControl.net in un progetto realeDotNetMarche
La Continuous Integration è una pratica di sviluppo fondamentale per migliorare la qualità del software: CruiseControl.NET è una suite open-source per gestire questo processo in modo trasparente al team di sviluppo. Il relatore mostrerà i vantaggi derivati dall'uso di tale metodologia in un caso pratico, ovvero nello sviluppo della piattaforma di blogging Subtext, di cui è membro del team di sviluppo, nonché Build Manager.
Similar to Progettare applicazioni con il modeling project di Visual Studio 2010 (20)
Intelligenza artificiale nel mondo front-end - CodeGen2021Michele Aponte
Le applicazioni dell'intelligenza artificiale sono tantissime e ci permettono di andare a risolvere specifici problemi per dare valore alle nostre soluzioni: proviamo a immaginare una nuova User eXperience per le nostre applicazioni business che vada oltre pagine e forms e che sfrutti nuove tipologie di interazioni rese possibili dalle applicazioni della IA.
DevDayNapoli - Blazor: Creare Single Page Application con .NET e WebAseemblyMichele Aponte
Se sei uno sviluppatore .NET e JavaScript è il tuo incubo, Blazor è la soluzione per te: ti permette di usare C# nel browser grazie alla specifica WebAssembly, utilizzando tutta la potenza del framework .NET Core. Alte performance, forte tipizzazione, formato binario e un SDK davvero completo sono solo alcune delle caratteristiche di questo approccio. In questa sessione vedremo come sia semplice realizzare un Single Page Application enterprise con Blazor e WebAssembly, e come implementare gli scenari tipici di questa tipologia di applicazioni.
DevDayBenevento - Blazor: Creare Single Page Application con .NET e WebAseemblyMichele Aponte
Se sei uno sviluppatore .NET e JavaScript è il tuo incubo, Blazor è la soluzione per te: ti permette di usare C# nel browser grazie alla specifica WebAssembly, utilizzando tutta la potenza del framework .NET Core. Alte performance, forte tipizzazione, formato binario e un SDK davvero completo sono solo alcune delle caratteristiche di questo approccio. In questa sessione vedremo come sia semplice realizzare un Single Page Application enterprise con Blazor e WebAssembly, e come implementare gli scenari tipici di questa tipologia di applicazioni.
Da Silverlight a angular senza toccare il backend: fatto!Michele Aponte
Un bel giorno ci chiama un cliente e ci chiede se è possibile migrare la loro applicazione da Silverlight a una soluzione web moderna senza toccare il database SqlServer e il backend WCF, in modo che nella transizione fossero disponibili entrambe le applicazioni. Ah, dimenticavo, la UI è dinamica e lo XAML è salvato sul db. Ecco come ci siamo riusciti con Angular e WebApi!
3. Cominciamo dalle domande!
Per alzata di mano:
• Quanti di voi conoscono UML?
• Quanti di voi odiano UML?
• Quanti di voi conoscono il
Modeling Project di VS2010?
• Quanti di voi pensano che si fa
prima a svilupparla
un’applicazione che a
progettarla?
4. Perché progettare?
• Per aiutarti a visualizzare il sistema
che vuoi
• Per permetterti di specificare la
struttura o il comportamento del
sistema
• Per avere una «guida» nella
costruzione del sistema
• Per documentare le decisioni che
vengono prese
6. Attori dell’ALM
Tutto comincia dalla raccolta dei requisiti…
• Individuazione degli stackholder
• Interviste
• Risoluzione dei requisiti in contrasto
• Documento di Vision
• Approvazione della Vision
• Documento dei requisiti (anche UML)
• Prototipizzazione statica
• Prototipizzazione dinamica
Chi lo fa? L’ Analista!
Analisi
7. Attori dell’ALM
L’architetto recepisce i requisiti e:
• Divide il sistema in isole funzionali
• Ipotizza le varie soluzioni architetturali possibili
• Sceglie l’architettura che meglio risponde ai
requisiti funzionali e non funzionali
• Prende la difficile decisione di non fare
necessariamente tutto da zero…
• Respinge in tutti i modi possibili la sua indole da
programmatore
• Redige le specifiche per i programmatori usando,
se pensa che sia necessario, anche UML
Analisi Design
8. Attori dell’ALM
Il project manager:
• Segue lo sviluppo assicurandosi che tutto proceda come
previsto
• Aggiorna la documentazione di avanzamento lavori
• Gestisce le risorse a disposizione
• Pianifica le milestone
• Gestisce eventuali intoppi durante lo sviluppo
• Verifica che siano rispettati gli standard interni
Gli sviluppatori:
• Recepiscono le specifiche
• Sviluppano la parte a loro assegnata
• Mettono in evidenza eventuali problemi tecnici
• Verificano che quanto da loro realizzato rispecchi le
specifiche
• Si lamentano
Analisi Design Sviluppo
9. Attori dell’ALM
I Tester
• Eseguono i test funzionali indicati nei
documenti di testing
• Aggiornano i documenti di test con i
risultati dei test effettuati
• Segnalano anomalie riscontrate nel
funzionamento del sistema
Quando Tester == Cliente:
• Verificano problemi di User Experience
• Verificano la corrispondenza con le loro
esigenze
• Si lamentano
Analisi Design Sviluppo Testing
10. Attori dell’ALM
Sviluppatori e Tester entrano in
“ciclo” per correggere le
anomalie riscontrate:
• I tester segnalano l’anomalia
• Gli sviluppatori verificano
l’anomalia e la risolvono
debuggando il codice e/o
sviluppando eventuali parti
mancanti
Analisi Design Sviluppo Testing
Debug
11. Attori dell’ALM
Gli addetti al deploy:
• Configurano l’ambiente per
l’installazione dell’applicazione
• Installano l’applicazione per il
suo utilizzo
• Verificano il corretto
funzionamento
dell’applicazione
Analisi Design Sviluppo Testing
Debug
Deploy
12. Attori dell’ALM
Sono coinvolti in questo ciclo quindi:
• Analista
• Architetto
• Project Manager
• Developer
• Devigner
• Tester
• Sistemisti
• Gli stackholders / cliente
13. Tutto sotto controllo!
Microsoft mette a disposizione una piattaforma
completa di strumenti per ogni fase e per ogni
attore dell’ALM:
14. VS2010 Modeling Project
Con Visual Studio 2010 Ultimate
vengono forniti dei nuovi tool per la
progettazione delle applicazioni.
15. VS2010 Modeling Project
Con Visual Studio 2010 Ultimate
vengono forniti dei nuovi tool per la
progettazione delle applicazioni.
16. VS2010 Modeling Project
Ci permette di creare 5 tipologie di
diagrammi UML (2.1.2):
• Use Case Diagram
• Activity Diagram
• Sequence Diagram
• Class Diagram
• Component Diagram
17. VS2010 Modeling Project
Ci offre inoltre:
• Layer Diagram, utilissimo per la
definizione dei layer applicativi e per
la «validazione» degli stessi.
• Dependency Graph, per esplorare le
relazioni e l’organizzazione di una
code base esistente
18. … e per la serie un esempio vale
più di mille parole…
DEMO TIME!!!!