Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Genesi di una tecnologia, dalla ricerca all'industria...
1. ALMA
MATER
STUDIORUM
UNIVERSITA'
DI
BOLOGNA
Genesi
di
una
tecnologia,
dalla
ricerca
all’industria
….
Maurizio
Gabbrielli
DISI
(DiparDmento
di
InformaDca
–
Scienza
e
Ingegneria)
FOCUS
Team
INRIA
EIT
Digital
3. 3 Maurizio Gabbrielli MOM 2016
Innovazione:
-‐ The implementa:on of a new or significantly improved product, or
process, a new marke:ng method, or a new organisa:onal method
in business prac:ces, workplace organisa:on or external rela:ons1
-‐ scope beyond science and technology, involving investments in a
wide range of knowledge based assets that extend beyond R&D.
Social and organisa:onal innova:ons, are increasingly important
1 OECD/European Communi:es (2005). Oslo manual — Guidelines for collec:ng and interpre:ng
innova:on data.
2 OECD (2015). Innova:on Strategy 2015 an Agenda for Policy Ac:on
4. 4 Maurizio Gabbrielli MOM 2016
L’innovazione
è
essenziale
per
la
crescita
…
• From 1995 to 2013, about 0.35 percent. points of annual average
GDP growth can be aYributed to investment in ICT capital alone
• From 1995 to 2007:
• about 0.5 percent. points of annual average GDP growth in
EU, and 0.9 in US was due to business investment in KBC
• About 0.7 percent. points (or 1/3 of total) of GDP growth
in OECD countries was due to mul:factor produc:vity
growth, linked to process innova:ons.
Source: OECD (2015). Innova:on Strategy 2015 an Agenda for Policy Ac:on.
5. 5 Maurizio Gabbrielli MOM 2016
These, and other technological changes in fields like bio- and nano-technology and the associated
advanced materials, will lead to ongoing transformations in the nature of production, jobs, the location of
economic activity, and the respective roles of different sectors in the economy (OECD, 2015a).
Figure 1. Contributions to GDP growth
Total economy, annual percentage point contribution, 1995-2013
Source: OECD (2015b), OECD Compendium of Productivity Indicators, 2015, based on OECD Productivity Database, January 2015.
7. Such technological changes and related non-technological innovations are an important driver of
growth. Empirical analysis shows that innovation, in its various forms, contributes to growth through
several channels:
-1
0
1
2
3
4
5
ITA JPN DNK DEU FRA PRT BEL NLD AUT CHE GBR ESP FIN SWE USA CAN NZL AUS IRL KOR
Multifactor productivity Non-ICT capital ICT capital Labour input
6. 6 Maurizio Gabbrielli MOM 2016
Ingredien: di base per l’innovazione
1. Good research
2. Capacity of understanding societal an market needs
3. Tools for facilita:ng the technological transfer, e.g.
EIT (European Ins:tute of Technology)
• An independent body of the European Union set up in 2008 to
spur innova:on and entrepreneurship across Europe.
• A budget of several hundred of million Euros a year
(75 Millions of EIT funding for ICT in 2017)
7. 7 Maurizio Gabbrielli MOM 2016
A (micro)service-‐oriented
programing language … for innova:on!
8. 8 Maurizio Gabbrielli MOM 2016
Why Service Oriented Programming
iComposi:onality is fundamental in all aspect of computer
science
• Hardware: complex systems built on top of simpler ones
• Soeware: Monolithic vs. Modular. This is even more
important in the context of concurrent and distributed
applica:ons where a lot of things can go wrong:
• Race condi:ons
• Communica:ons
• Heterogenous systems
• Faults
• …
9. 9 Maurizio Gabbrielli MOM 2016
Service composi:on
In principle everything could be
done by using a Turing machine …
But things can be simplified by
hiding lower level details.
Two main approaches
• New library/tools/framework
for exis:ng programming languages;
• New programming language.
Facebook
Videos Gallery Media/Exh.Home Blog Team In Depth
vue_globale-1image 1 of 10
10. 10 Maurizio Gabbrielli MOM 2016
Service-‐Oriented Programming
3 Commandments
• Everything is a service;
• A service is an applica:on
that offers opera:ons;
• A service can invoke
another service by calling
one of its opera:ons.
11. 11 Maurizio Gabbrielli MOM 2016
Service-‐Oriented Programming
• Everything is a service;
• A service is an applica:on
that offers opera:ons;
• A service can invoke another
service by calling one of its
opera:ons.
Services Objects
Operations Methods
Service-Oriented Object-Oriented
Recalling the
Object-Oriented creed
12. 12 Maurizio Gabbrielli MOM 2016
Micro services
Le tre micro-‐virtù
• Services are small -‐ fine-‐
grained to perform a single
func:on
• Automa:on of deployment
and tes:ng
• Loose coupling and high
cohesion
13. 13 Maurizio Gabbrielli MOM 2016
Why Jolie for innova:on ?
Ricordiamo gli ingredien: per l’innovazione
1. Good research
2. Capacity of understanding societal an market needs
3. Tools for facilita:ng the technological transfer
14. 14 Maurizio Gabbrielli MOM 2016
Why Jolie for innova:on?
1) Formal founda:ons from Academia ….
Taught
also in:
15. 15 Maurizio Gabbrielli MOM 2016
SSO2006 Guidi et al.
Claudio Guidi, Roberto Lucchi, Roberto Gorrieri, Nadia Busi, Gianluigi ZavaYaro:
SOCK: A Calculus for Service Oriented Compu:ng. ICSOC 2006.
16. 16 Maurizio Gabbrielli MOM 2016
SOCK
• Developed in the context of the European project SENSORIA, in
the style of the process calculi (CCS, Milner, 1980; Pi Calculus,
Milner et al. 1992)
• Using loca:ons rather than channels (Ambient Calculus, Cardelli
and Gordon, 1998)
• Inspired also by WS-‐BPEL (OASIS 2004): ports and workflows
• Simplifica:on of approaches a la BPEL. Three levels:
Workflows, Processes, and Network
17. 17 Maurizio Gabbrielli MOM 2016
Jolie (Montesi et al. 2007)
2006 Proof of concept:
• Inspired by SOCK (SOS style seman:cs helpful!).
• Communica:ons (O-‐W e R-‐R) implemented in a different way
2007 Evolu:on:
• Protocols, Correla:on, Data and Ports
2008 Web integra:on and architectural composi:on operators:
• Support for HTTP, first web server in Jolie
• Embedding, aggrega:on, redirec:on
Fabrizio Montesi, Claudio Guidi, Roberto Lucchi, Gianluigi ZavaYaro:
JOLIE: a Java Orchestra:on Language Interpreter Engine. ENTCS 2007.
18. 18 Maurizio Gabbrielli MOM 2016
Jolie from a broad perspec:ve
2008
• Crea:on of italianaSoeware
2013
• Release of Jolie 1.0
• Jolie Enterprise
2016
• Jolie team reaches 60 contributors
• Jolie reaches 3000 commits
22. 22 Maurizio Gabbrielli MOM 2016
Legend
City Bus
Operator
User
MaaS
Operator
Crowdsourcing
Operator
Bus DelaysDBBusiness
Policies
Bus GPS
Positioning
Payment Timetables
Real-time
Position
In-house
services
Real-time
Position
Pub/Sub
Service
Timetable
Proxy
eTicketing
System
DB
Car Hailing
Proxy
Car Hailing Company
Hailing
Service
Route Network
Disruption Notifier
Journey
Planner
SMAll
SMAll
SMAll
Service
SMAll
Helper
Service
Service
SMAll
Compliant
Service
Federation
Timetables
Timetable
Proxy
external
invocation
Bus GPS
Proxy
Trip
Handler
Service
Registry / Discovery
National Train
Operator
plan
trip
forward
request
subscription
Dispatcher
orchestrate
services
eTicketing
Analysis
Service
…. attaccked by using Jolie:
EIT SmAll project (2016)
23. 23 Maurizio Gabbrielli MOM 2016
3. Technology transfer tools used
for Jolie
• Associazione Innovami, Imola
(incubatore di iS)
• UniBo (“incubatore” SOCK)
• Programma SPINNER di Regione ER
• INRIA
24. 24 Maurizio Gabbrielli MOM 2016
Summarizing … why Jolie?
• A live open source project with con:nuous
updates and a well documented codebase
• Comprehensive and ever-‐growing documenta:on
and Standard Library.
hYps://github.com/jolie/jolie
hYp://docs.jolie-‐lang.org
“This
is
the
programming
language
you
are
looking
for”
25. 25 Maurizio Gabbrielli MOM 2016
The future
Claudio, Saverio and others will say more
today on the future of Jolie and microservices
however ….
26. 26 Maurizio Gabbrielli MOM 2016
L’innovazione è difficile da prevedere ….
“There is no reason anyone would want a computer in their home.”
Ken Olson, DEC co-‐founder, 1987
“The problem of viruses is temporary and
will be solved in two years.”
John Mac Affee, 1988
“The Internet? We are not interested in it.”
Bill Gates, 1993
27. 27 Maurizio Gabbrielli MOM 2016
Don’t feel bad if you cannot predict the future ..
• The predic:on performance of experts is not beYer
than random guessing.
• Correct predic:ons are oeen way off in :ming
Based on a study of Philip Tetlock on 27,450 predic:ons by 284
experts in many fields.
Don’t Feel Bad if You Can’t Predict the Future, Peter J. Denning, CACM vol 55 No
9, September 2012