998 resultados para Ballerina,Cloud Native,API,Linguaggio di Programmazione
Resumo:
Quando si parla di architetture di controllo in ambito Web, il Modello ad Eventi è indubbiamente quello più diffuso e adottato. L’asincronicità e l’elevata interazione con l’utente sono caratteristiche tipiche delle Web Applications, ed un architettura ad eventi, grazie all’adozione del suo tipico ciclo di controllo chiamato Event Loop, fornisce un'astrazione semplice ma sufficientemente espressiva per soddisfare tali requisiti. La crescita di Internet e delle tecnologie ad esso associate, assieme alle recenti conquiste in ambito di CPU multi-core, ha fornito terreno fertile per lo sviluppo di Web Applications sempre più complesse. Questo aumento di complessità ha portato però alla luce alcuni limiti del modello ad eventi, ancora oggi non del tutto risolti. Con questo lavoro si intende proporre un differente approccio a questa tipologia di problemi, che superi i limiti riscontrati nel modello ad eventi proponendo un architettura diversa, nata in ambito di IA ma che sta guadagno popolarità anche nel general-purpose: il Modello ad Agenti. Le architetture ad agenti adottano un ciclo di controllo simile all’Event Loop del modello ad eventi, ma con alcune profonde differenze: il Control Loop. Lo scopo di questa tesi sarà dunque approfondire le due tipologie di architetture evidenziandone le differenze, mostrando cosa significa affrontare un progetto e lo sviluppo di una Web Applications avendo tecnologie diverse con differenti cicli di controllo, mettendo in luce pregi e difetti dei due approcci.
Resumo:
Questa tesi riguarda la progettazione di un motore di ricerca semantico a partire dalla costruzione di un'ontologia pesata di token, possibile grazie ad un'elaborazione del linguaggio naturale dei testi ed all'utilizzo di altri strumenti per la descrizione dell'intorno semantico dei termini.
Resumo:
The aim of this dissertation is to analyze the language of evaluation in Italian, English and French sustainability reports in order to observe how firms build their corporate image and to investigate the kind of relationship they develop with their stakeholders. The analysis is carried out by applying Martin & White's Appraisal theory and corpus linguistics methods. For the purposes of this research, a multilingual specialized corpus of sustainability reports has been created, which is the result of two different levels of compilation. At the first level, three sub-corpora have been created with the aim of representing three different languages (Italian, English and French): at this level, the research on evaluative language will show that a standardization process of sustainability reports is underway. At the second level of compilation, each of the three sub-corpora has been split in two further sub-corpora, representative of two different business sectors: at this level, the research will show how the sector where firms operate directly influences the choice of the topics to be discussed. The first chapter of this dissertation introduces the concept of evaluative language, with a particular focus on the framework of Appraisal theory. The second chapter deals with corpus linguistics and describes different types of corpora, the search methods and the criteria for the compilation of corpora. The third chapter discusses the concepts of Corporate Social Responsibility and sustainability reports, focusing mainly on the reporting principles and the linguistic patterns of this genre, and provides an overview of the main guidelines and certifications for the reporting of sustainability actions. Chapter four is dedicated to the description of the methodology used for this research, while the last chapter presents and discusses the results of the analysis, in an attempt to draw generalizations on the use of evaluative language in this emerging genre.
Resumo:
Progettazione e realizzazione di un software gestionale web-based su piattaforma cloud
Resumo:
Il mondo di Internet ha vissuto un radicale e inarrestabile processo di rinnovamento nel corso dell'ultimo decennio. Nel giro di pochi anni, i siti che popolano il World Wide Web si sono evoluti divenendo vere e proprie applicazioni in grado di fornire un livello di interattività e di coinvolgimento fino ad allora impensabile. Il mondo del Web è mutato, e con esso quello dei browser, i quali assumono sempre più le conformazioni di "sistemi operativi nei sistemi operativi": si sono tramutati in complesse piattaforme di sviluppo in grado di fornire a programmatori e web designer potenti librerie e API relative a qualsiasi ambito, nonché avanzati strumenti di debugging. Numerosi standard che governano l'ecosistema di Internet hanno raggiunto la maturità in questo contesto: fra tutti HTML5, il quale ha arricchito enormemente le potenzialità di un browser introducendo nuovi strumenti orientati alla multimedialità e alla classificazione semantica delle risorse. Altri standard altrettanto importanti hanno visto la luce in questi anni, affermandosi e conquistando, nel giro di pochissimi anni, l'interesse di un'ampia platea di sviluppatori. E' il caso di WebGL, una potente e flessibile libreria grafica derivata dal mondo di OpenGL che ha aperto le porte al rendering di scene tridimensionali all'interno di un qualsiasi browser moderno. WebGL ha rappresentato un punto di svolta abbattendo un'ulteriore barriera tra il mondo del web che vive all'interno di un browser e la dimensione delle applicazioni native che popolano un sistema operativo, consolidando il già affermato concetto di web app che lentamente sta seppellendo l'idea di "sito" così come era stato concepito all'inizio del nuovo millennio. Scopo di questo elaborato è quello di fornire una panoramica delle principali funzionalità offerte dalla libreria WebGL (con una particolare attenzione per il supporto cross browser) e di analizzare le possibilità che essa offre, studiando e implementando i principali modelli di illuminazione e le tecniche di applicazione texture per definire un ambiente tridimensionale esplorabile e il più possibile realistico all'interno della dimensione del web.
Resumo:
Questo documento si interroga sulle nuove possibilità offerte agli operatori del mondo delle Reti di Telecomunicazioni dai paradigmi di Network Functions Virtualization, Cloud Computing e Software Defined Networking: questi sono nuovi approcci che permettono la creazione di reti dinamiche e altamente programmabili, senza disdegnare troppo il lato prestazionale. L'intento finale è valutare se con un approccio di questo genere si possano implementare dinamicamente delle concatenazioni di servizi di rete e se le prestazioni finali rispecchiano ciò che viene teorizzato dai suddetti paradigmi. Tutto ciò viene valutato per cercare una soluzione efficace al problema dell'ossificazione di Internet: infatti le applicazioni di rete, dette middle-boxes, comportano costi elevati, situazioni di dipendenza dal vendor e staticità delle reti stesse, portando all'impossibilità per i providers di sviluppare nuovi servizi. Il caso di studio si basa proprio su una rete che implementa questi nuovi paradigmi: si farà infatti riferimento a due diverse topologie, una relativa al Livello L2 del modello OSI (cioè lo strato di collegamento) e una al Livello L3 (strato di rete). Le misure effettuate infine mostrano come le potenzialità teorizzate siano decisamente interessanti e innovative, aprendo un ventaglio di infinite possibilità per il futuro sviluppo di questo settore.
Resumo:
La tesi, che si colloca all'interno di un progetto di esplorazione degli approcci alla programmazione multi-piattaforma tra Java e iOS, mira a proseguire ed ampliare lo studio del tool RoboVM, in particolare grazie allo sviluppo dell'applicazione iTuCSoN, porting del Command Line Interpreter contenuto in TuCSoN (http://tucson.apice.unibo.it/)
Resumo:
Negli ultimi anni si è imposto il concetto di Ubiquitous Computing, ovvero la possibilità di accedere al web e di usare applicazioni per divertimento o lavoro in qualsiasi momento e in qualsiasi luogo. Questo fenomeno sta cambiando notevolmente le abitudini delle persone e ciò è testimoniato anche dal fatto che il mercato mobile è in forte ascesa: da fine 2014 sono 45 milioni gli smartphone e 12 milioni i tablet in circolazione in Italia. Sembra quasi impossibile, dunque, rinunciare al mobile, soprattutto per le aziende: il nuovo modo di comunicare ha reso necessaria l’introduzione del Mobile Marketing e per raggiungere i propri clienti ora uno degli strumenti più efficaci e diretti sono le applicazioni. Esse si definiscono native se si pongono come traguardo un determinato smartphone e possono funzionare solo per quel sistema operativo. Infatti un’app costruita, per esempio, per Android non può funzionare su dispositivi Apple o Windows Phone a meno che non si ricorra al processo di porting. Ultimamente però è richiesto un numero sempre maggiore di app per piattaforma e i dispositivi presenti attualmente sul mercato presentano differenze tra le CPU, le interfacce (Application Programming Interface), i sistemi operativi, l’hardware, etc. Nasce quindi la necessità di creare applicazioni che possano funzionare su più sistemi operativi, ovvero le applicazioni platform-independent. Per facilitare e supportare questo genere di lavoro sono stati definiti nuovi ambienti di sviluppo tra i quali Sencha Touch e Apache Cordova. Il risultato finale dello sviluppo di un’app attraverso questi framework è proprio quello di ottenere un oggetto che possa essere eseguito su qualsiasi dispositivo. Naturalmente la resa non sarà la stessa di un’app nativa, la quale ha libero accesso a tutte le funzionalità del dispositivo (rubrica, messaggi, notifiche, geolocalizzazione, fotocamera, accelerometro, etc.), però con questa nuova app vi è la garanzia di un costo di sviluppo minore e di una richiesta considerevole sul mercato. L’obiettivo della tesi è quello di analizzare questo scenario attraverso un caso di studio proveniente da una realtà aziendale che presenta proprio la necessità di sviluppare un’applicazione per più piattaforme. Nella prima parte della tesi viene affrontata la tematica del mobile computing e quella del dualismo tra la programmazione nativa e le web app: verranno analizzate le caratteristiche delle due diverse tipologie cercando di capire quale delle due risulti essere la migliore. Nella seconda parte sarà data luce a uno dei più importanti framework per la costruzione di app multi-piattaforma: Sencha Touch. Ne verranno analizzate le caratteristiche, soffermandosi in particolare sul pattern MVC e si potrà vedere un confronto con altri framework. Nella terza parte si tratterà il caso di studio, un app mobile per Retail basata su Sencha Touch e Apache Cordova. Nella parte finale si troveranno alcune riflessioni e conclusioni sul mobile platform-independent e sui vantaggi e gli svantaggi dell’utilizzo di JavaScript per sviluppare app.
Resumo:
L'attuale processo di sviluppo del software è abbastanza lontano dai canoni di sistematicità e correttezza propri di altre aree dell'ingegneria. L'obiettivo di questa Tesi è quello di fornire metodologie e strumenti realmente ingegneristici per la costruzione del software, attraverso l'introduzione di linguaggi general purpose per l'analisi e la progettazione, di robustezza industriale e con semantica formalmente definita. A partire da frasi corrette in tali linguaggi, le quali costituiscono a tutti gli effetti modelli di sistemi software, ci si propone la completa generazione del codice corrispondente.
Resumo:
La stima della frequenza di accadimento di eventi incidentali di tipo random da linee e apparecchiature è in generale effettuata sulla base delle informazioni presenti in banche dati specializzate. I dati presenti in tali banche contengono informazioni relative ad eventi incidentali avvenuti in varie tipologie di installazioni, che spaziano dagli impianti chimici a quelli petrolchimici. Alcune di queste banche dati risultano anche piuttosto datate, poiché fanno riferimento ad incidenti verificatisi ormai molto addietro negli anni. Ne segue che i valori relativi alle frequenze di perdita forniti dalle banche dati risultano molto conservativi. Per ovviare a tale limite e tenere in conto il progresso tecnico, la linea guida API Recommended Pratice 581, pubblicata nel 2000 e successivamente aggiornata nel 2008, ha introdotto un criterio per determinare frequenze di perdita specializzate alla realtà propria impiantistica, mediante l’ausilio di coefficienti correttivi che considerano il meccanismo di guasto del componente, il sistema di gestione della sicurezza e l’efficacia dell’attività ispettiva. Il presente lavoro di tesi ha lo scopo di mettere in evidenza l’evoluzione dell’approccio di valutazione delle frequenze di perdita da tubazione. Esso è articolato come descritto nel seguito. Il Capitolo 1 ha carattere introduttivo. Nel Capitolo 2 è affrontato lo studio delle frequenze di perdita reperibili nelle banche dati generaliste. Nel Capitolo 3 sono illustrati due approcci, uno qualitativo ed uno quantitativo, che permettono di determinare le linee che presentano priorità più alta per essere sottoposte all’attività ispettiva. Il Capitolo 4 è dedicato alla descrizione della guida API Recomended Practice 581. L’applicazione ad un caso di studio dei criteri di selezione delle linee illustrati nel Capitolo 3 e la definizione delle caratteristiche dell’attività ispettiva secondo la linea guida API Recomended Practice 581 sono illustrati nel Capitolo 5. Infine nel Capitolo 6 sono rese esplicite le considerazioni conclusive dello studio effettuato.
Resumo:
Studio ed analisi delle principali tecniche in ambito di Social Data Analysis. Progettazione e Realizzazione di una soluzione software implementata con linguaggio Java in ambiente Eclipse. Il software realizzato permette di integrare differenti servizi di API REST, per l'estrazione di dati sociali da Twitter, la loro memorizzazione in un database non-relazionale (realizzato con MongoDB), e la loro gestione. Inoltre permette di effettuare operazioni di classificazione di topic, e di analizzare dati complessivi sulle collection di dati estratti. Infine permette di visualizzare un albero delle "ricondivisioni", partendo da singoli tweet selezionati, ed una mappa geo-localizzata, contenente gli utenti coinvolti nella catena di ricondivisioni, e i relativi archi di "retweet".
Resumo:
La tesi tratta la tematica delle web API implementate secondo i vincoli dello stile architetturale ReST e ne propone un esempio concreto riportando la progettazione delle API di un sistema di marcature realizzato in ambito aziendale.
Resumo:
Dall'inizio del nuovo millennio lo sviluppo di tecnologie nel campo del mobile computing, della rete internet, lo sviluppo dell'Internet of things e pure il cloud computing hanno reso possibile l'innovazione dei metodi di lavoro e collaborazione. L'evoluzione del mobile computing e della realtà aumentata che sta avvenendo in tempi più recenti apre potenzialmente nuovi orizzonti nello sviluppo di sistemi distribuiti collaborativi. Esistono oggi diversi framework a supporto della realtà aumentata, Wikitude, Metaio, Layar, ma l'interesse primario di queste librerie è quello di fornire una serie di API fondamentali per il rendering di immagini 3D attraverso i dispositivi, per lo studio dello spazio in cui inserire queste immagini e per il riconoscimento di marker. Questo tipo di funzionalità sono state un grande passo per quanto riguarda la Computer Graphics e la realtà aumentata chiaramente, però aprono la strada ad una Augmented Reality(AR) ancora più aumentata. Questa tesi si propone proprio di presentare l'ideazione, l'analisi, la progettazione e la prototipazione di un sistema distribuito situato a supporto della collaborazione basato su realtà aumentata. Lo studio di questa applicazione vuole mettere in luce molti aspetti innovativi e che ancora oggi non sono stati approfonditi né tanto meno sviluppati come API o forniti da librerie riguardo alla realtà aumentata e alle sue possibili applicazioni.
Resumo:
Si dice ministra, ministro o la ministro? Avvocata o avvocatessa? Un'analisi attraverso le indicazioni dei linguisti e un corpus di giornali e telegiornali per capire la situazione attuale e possibili future tendenze.
Resumo:
L'informatica e le sue tecnologie nella società moderna si riassumono spesso in un assioma fuorviante: essa, infatti, è comunemente legata al concetto che ciò che le tecnologie ci offrono può essere accessibile da tutti e sfruttato, all'interno della propria quotidianità, in modi più o meno semplici. Anche se quello appena descritto è un obiettivo fondamentale del mondo high-tech, occorre chiarire subito una questione: l'informatica non è semplicemente tutto ciò che le tecnologie ci offrono, perchè questo pensiero sommario fa presagire ad un'informatica "generalizzante"; l'informatica invece si divide tra molteplici ambiti, toccando diversi mondi inter-disciplinari. L'importanza di queste tecnologie nella società moderna deve spingerci a porre domande, riflessioni sul perchè l'informatica, in tutte le sue sfaccettature, negli ultimi decenni, ha portato una vera e propria rivoluzione nelle nostre vite, nelle nostre abitudini, e non di meno importanza, nel nostro contesto lavorativo e aziendale, e non ha alcuna intenzione (per fortuna) di fermare le proprie possibilità di sviluppo. In questo trattato ci occuperemo di definire una particolare tecnica moderna relativa a una parte di quel mondo complesso che viene definito come "Intelligenza Artificiale". L'intelligenza Artificiale (IA) è una scienza che si è sviluppata proprio con il progresso tecnologico e dei suoi potenti strumenti, che non sono solo informatici, ma soprattutto teorico-matematici (probabilistici) e anche inerenti l'ambito Elettronico-TLC (basti pensare alla Robotica): ecco l'interdisciplinarità. Concetto che è fondamentale per poi affrontare il nocciolo del percorso presentato nel secondo capitolo del documento proposto: i due approcci possibili, semantico e probabilistico, verso l'elaborazione del linguaggio naturale(NLP), branca fondamentale di IA. Per quanto darò un buono spazio nella tesi a come le tecniche di NLP semantiche e statistiche si siano sviluppate nel tempo, verrà prestata attenzione soprattutto ai concetti fondamentali di questi ambiti, perché, come già detto sopra, anche se è fondamentale farsi delle basi e conoscere l'evoluzione di queste tecnologie nel tempo, l'obiettivo è quello a un certo punto di staccarsi e studiare il livello tecnologico moderno inerenti a questo mondo, con uno sguardo anche al domani: in questo caso, la Sentiment Analysis (capitolo 3). Sentiment Analysis (SA) è una tecnica di NLP che si sta definendo proprio ai giorni nostri, tecnica che si è sviluppata soprattutto in relazione all'esplosione del fenomeno Social Network, che viviamo e "tocchiamo" costantemente. L'approfondimento centrale della tesi verterà sulla presentazione di alcuni esempi moderni e modelli di SA che riguardano entrambi gli approcci (statistico e semantico), con particolare attenzione a modelli di SA che sono stati proposti per Twitter in questi ultimi anni, valutando quali sono gli scenari che propone questa tecnica moderna, e a quali conseguenze contestuali (e non) potrebbe portare questa particolare tecnica.