This work is the result of an empirical activity conducted with an Italian start-up based in Milan and well established in Italy but aiming to cover a top spot in the international field of software testing solutions. It is an innovative start-up offering solutions of crowdtesting through two main assets: the crowd of real end users working as testers and a proprietary platform where enterprise customers hire the crowdtesters to conduct testing campaigns for their own software. In the Part 1 of the thesis we will focus on the internal improvement of the two main assets, crowd of testers and platform. Testers’ personal data and devices’ data registered on the platform are stored on an internal database; we initially worked in back-end to correct existing errors in the database due to misunderstanding, low attention and laziness of testers during the phase of registration, then we added new attributes when necessary and set-up new fail proof feeding techniques to prevent the recurrence of the same mistakes in the next future; after the database set-up on a third party tool (we did not work directly on the company infrastructure, we extracted the data from the real database and we created our own ER diagram with tables and attributes), we used the corrected and integrated infrastructure to create a front-end dashboard for crowd selection by demographics and devices’ characteristics. We also added to the database a table with the results of a particular testing campaign and we created the relative dashboard allowing a user to interact with the results of these kinds of campaigns that, since there are no bugs to be submitted due to the nature of the test, do not provide the customer with an interactive dashboard on his/her personal space on the platform. Passing from Part 1 to Part 2 the focus tends to shift from an internal to an external perspective but trying to make of the external opportunity a potential to become an internal strength on the proprietary platform: we created a new table of the database with testers attributes coherent with the requirements and needs of the highly growing market of chatbots. The attributes of the database have been fed with fake data assigned to each tester, so to create a demo of dashboard for testers selection by a customer requiring certain characteristics and willing to test his/her own chatbot with the proper end user. In the Part 2 of the thesis we will focus on the analysis of the chatbot itself and its relative market. A chatbot is defined by some peculiar characteristics determined both during the development and consumption phases: when developing a chatbot a company can choose among a list of many different agencies specialized in chatbot development, several developing platforms, and diverse technologies of development; when interacting with the user the chatbot could reach different levels of interaction, be available on multiple platforms and perform actions solving several issues depending on the category of application. It has been conducted an in-depth literature review of a still highly unstructured theoretical background to describe the variables related to the development phase; it has been conducted a statistical analysis of the actual market of chatbots to define the characteristics of around 5000 thousand of chatbots and the relative level of interaction with users, consumption platforms on which they work and categories of application. Finally, looking at three main Italian sectors (Utility, Media, Bank & Insurance) we found out the existing chatbots and interacted with each and all of them to understand the progress of the actual chatbot market.

Questo lavoro è il risultato di un'attività empirica condotta con una start-up italiana milanese e ben avviata sul territorio nazionale con forti ambizioni anche a livello internazionale nel campo del software testing. E' una start-up innovativa che offre soluzioni di crowdtesting attraverso due principali assets: il crowd di utenti finali realmente impegnati ed interessati all’utilizzo delle applicazioni testate, i quali lavorano come testers, e una piattaforma proprietaria, sviluppata in cloud, dove i clienti enterprise caricano il proprio software ed incontrano i testers disponibili ad eseguire uno sprint di test della loro applicazione. Nella prima parte della tesi ci concentriamo sul miglioramento dei due assets interni, crowd e piattaforma. I dati personali dei testers e dei relativi dispositivi registrati sulla piattaforma sono disponibili in un database interno aziendale; inizialmente, in back-end, correggeremo gli errori presenti sui propri dati personali caricati dai testers dovuti ad incomprensioni, poca attenzione e pigrizia durante la fase di compilazione del form in fase di registrazione, poi aggiungeremo nuovi attributi nel database quando necessario, infine andremo a creare nuove tecniche di feeding del database a prova di errore per prevenire il ricorso degli stessi errori verificatisi in passato in fase di registrazione. Dopo il set-up del database su un framework esterno (non lavoreremo infatti direttamente sull'infrastruttura aziendale, abbiamo estratto i dati dal database reale e creato il nostro diagramma ER con tabelle e attributi), useremo la nuova struttura del database corretto e integrato con i nuovi attributi per creare una dashboard in front-end che permetta di selezionare il crowd con le caratteristiche desiderate sia demografiche che di dispositivo. Al database è stato aggiunta anche una tabella con i risultati di una particolare campagna di test e abbiamo creato la dashboard relativa che permetta all'utente di interagire con i risultati di questa campagna che, tipicamente, non prevedeva l'interazione con i risultati dal momento che non è richiesto al tester di caricare dei bugs ma di fornire altri tipi di informazione al cliente. In una fase intermedia della tesi, tra la prima e la seconda parte, il focus passa sul mercato dei chatbots: si cerca di sfruttare l'opportunità del nuovo mercato chatbot offrendo a questo tipo di clienti una dashboard di selezione dei testers basato su attributi interessanti per aziende che hanno implementato un chatbot; gli attributi scelti per la selezione del crowd saranno coerenti con i risultati ottenuti dall'analisi del mercato chatbot esistente; una dashboard per la selezione dei testers è stata implementata popolando il database iniziale con i nuovi attributi. Nella seconda parte della tesi, ci si concentra sull'analisi del chatbot come software e sul relativo mercato. Il chatbot viene dunque definito da determinate caratteristiche sia in fase di sviluppo che in fase di utilizzo: durante la fase di sviluppo si può scegliere tra diverse agenzie specializzate nello sviluppo di questo tipo di software, diverse piattaforme di sviluppo e differenti tecnologie; durante la fase di utilizzo si può scegliere tra diversi livelli di interazione con l'utente, si può rendere il chatbot reperibile su diverse piattaforme di utilizzo e si possono svolgere diverse funzioni a seconda delle categorie di applicazione. E' stata condotta una analisi della letteratura, in un campo in cui la ricerca teorica è altamente destrutturata, al fine di individuare le variabili legate alla fase di sviluppo; è stata condotta una analisi statistica del mercato attuale dei chatbots, al fine di definire le caratteristiche di utilizzo di circa 5000 chatbots e il relativo livello di interazione con gli utenti, le piattaforme di utilizzo e le categorie di applicazione. Infine, osservando tre particolari settori in Italia (quello dei Media, quello elle Utilities e quello delle Banche & Assicurazioni) abbiamo cercato ed interagito con i principali chatbots esistenti sul mercato per capire il livello tecnologico raggiunto dall'attuale mercato italiano.

Crowdtesting for chatbots : a market analysis. Empirical activity with App-Quality srl

TRANI, ARCANGELO
2016/2017

Abstract

This work is the result of an empirical activity conducted with an Italian start-up based in Milan and well established in Italy but aiming to cover a top spot in the international field of software testing solutions. It is an innovative start-up offering solutions of crowdtesting through two main assets: the crowd of real end users working as testers and a proprietary platform where enterprise customers hire the crowdtesters to conduct testing campaigns for their own software. In the Part 1 of the thesis we will focus on the internal improvement of the two main assets, crowd of testers and platform. Testers’ personal data and devices’ data registered on the platform are stored on an internal database; we initially worked in back-end to correct existing errors in the database due to misunderstanding, low attention and laziness of testers during the phase of registration, then we added new attributes when necessary and set-up new fail proof feeding techniques to prevent the recurrence of the same mistakes in the next future; after the database set-up on a third party tool (we did not work directly on the company infrastructure, we extracted the data from the real database and we created our own ER diagram with tables and attributes), we used the corrected and integrated infrastructure to create a front-end dashboard for crowd selection by demographics and devices’ characteristics. We also added to the database a table with the results of a particular testing campaign and we created the relative dashboard allowing a user to interact with the results of these kinds of campaigns that, since there are no bugs to be submitted due to the nature of the test, do not provide the customer with an interactive dashboard on his/her personal space on the platform. Passing from Part 1 to Part 2 the focus tends to shift from an internal to an external perspective but trying to make of the external opportunity a potential to become an internal strength on the proprietary platform: we created a new table of the database with testers attributes coherent with the requirements and needs of the highly growing market of chatbots. The attributes of the database have been fed with fake data assigned to each tester, so to create a demo of dashboard for testers selection by a customer requiring certain characteristics and willing to test his/her own chatbot with the proper end user. In the Part 2 of the thesis we will focus on the analysis of the chatbot itself and its relative market. A chatbot is defined by some peculiar characteristics determined both during the development and consumption phases: when developing a chatbot a company can choose among a list of many different agencies specialized in chatbot development, several developing platforms, and diverse technologies of development; when interacting with the user the chatbot could reach different levels of interaction, be available on multiple platforms and perform actions solving several issues depending on the category of application. It has been conducted an in-depth literature review of a still highly unstructured theoretical background to describe the variables related to the development phase; it has been conducted a statistical analysis of the actual market of chatbots to define the characteristics of around 5000 thousand of chatbots and the relative level of interaction with users, consumption platforms on which they work and categories of application. Finally, looking at three main Italian sectors (Utility, Media, Bank & Insurance) we found out the existing chatbots and interacted with each and all of them to understand the progress of the actual chatbot market.
ING - Scuola di Ingegneria Industriale e dell'Informazione
3-ott-2017
2016/2017
Questo lavoro è il risultato di un'attività empirica condotta con una start-up italiana milanese e ben avviata sul territorio nazionale con forti ambizioni anche a livello internazionale nel campo del software testing. E' una start-up innovativa che offre soluzioni di crowdtesting attraverso due principali assets: il crowd di utenti finali realmente impegnati ed interessati all’utilizzo delle applicazioni testate, i quali lavorano come testers, e una piattaforma proprietaria, sviluppata in cloud, dove i clienti enterprise caricano il proprio software ed incontrano i testers disponibili ad eseguire uno sprint di test della loro applicazione. Nella prima parte della tesi ci concentriamo sul miglioramento dei due assets interni, crowd e piattaforma. I dati personali dei testers e dei relativi dispositivi registrati sulla piattaforma sono disponibili in un database interno aziendale; inizialmente, in back-end, correggeremo gli errori presenti sui propri dati personali caricati dai testers dovuti ad incomprensioni, poca attenzione e pigrizia durante la fase di compilazione del form in fase di registrazione, poi aggiungeremo nuovi attributi nel database quando necessario, infine andremo a creare nuove tecniche di feeding del database a prova di errore per prevenire il ricorso degli stessi errori verificatisi in passato in fase di registrazione. Dopo il set-up del database su un framework esterno (non lavoreremo infatti direttamente sull'infrastruttura aziendale, abbiamo estratto i dati dal database reale e creato il nostro diagramma ER con tabelle e attributi), useremo la nuova struttura del database corretto e integrato con i nuovi attributi per creare una dashboard in front-end che permetta di selezionare il crowd con le caratteristiche desiderate sia demografiche che di dispositivo. Al database è stato aggiunta anche una tabella con i risultati di una particolare campagna di test e abbiamo creato la dashboard relativa che permetta all'utente di interagire con i risultati di questa campagna che, tipicamente, non prevedeva l'interazione con i risultati dal momento che non è richiesto al tester di caricare dei bugs ma di fornire altri tipi di informazione al cliente. In una fase intermedia della tesi, tra la prima e la seconda parte, il focus passa sul mercato dei chatbots: si cerca di sfruttare l'opportunità del nuovo mercato chatbot offrendo a questo tipo di clienti una dashboard di selezione dei testers basato su attributi interessanti per aziende che hanno implementato un chatbot; gli attributi scelti per la selezione del crowd saranno coerenti con i risultati ottenuti dall'analisi del mercato chatbot esistente; una dashboard per la selezione dei testers è stata implementata popolando il database iniziale con i nuovi attributi. Nella seconda parte della tesi, ci si concentra sull'analisi del chatbot come software e sul relativo mercato. Il chatbot viene dunque definito da determinate caratteristiche sia in fase di sviluppo che in fase di utilizzo: durante la fase di sviluppo si può scegliere tra diverse agenzie specializzate nello sviluppo di questo tipo di software, diverse piattaforme di sviluppo e differenti tecnologie; durante la fase di utilizzo si può scegliere tra diversi livelli di interazione con l'utente, si può rendere il chatbot reperibile su diverse piattaforme di utilizzo e si possono svolgere diverse funzioni a seconda delle categorie di applicazione. E' stata condotta una analisi della letteratura, in un campo in cui la ricerca teorica è altamente destrutturata, al fine di individuare le variabili legate alla fase di sviluppo; è stata condotta una analisi statistica del mercato attuale dei chatbots, al fine di definire le caratteristiche di utilizzo di circa 5000 chatbots e il relativo livello di interazione con gli utenti, le piattaforme di utilizzo e le categorie di applicazione. Infine, osservando tre particolari settori in Italia (quello dei Media, quello elle Utilities e quello delle Banche & Assicurazioni) abbiamo cercato ed interagito con i principali chatbots esistenti sul mercato per capire il livello tecnologico raggiunto dall'attuale mercato italiano.
Tesi di laurea Magistrale
File allegati
File Dimensione Formato  
Crowd testing for chatbots - A market analysis.pdf

accessibile in internet per tutti

Descrizione: Testo della tesi
Dimensione 9.3 MB
Formato Adobe PDF
9.3 MB Adobe PDF Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/136361