SlideShare uma empresa Scribd logo
1 de 49
Baixar para ler offline
Progettazione di Applicazioni Web
corso del Master in Web Technology
a.a. 2017-2018
https://app.schoology.com/course/1511186315/
Henry Muccini
Università degli Studi dell’Aquila
1. Introduzione al Corso
MWT– Progettazione di Applicazioni Web Henry Muccini
2
Copyright Notice
Il materiale riportato in queste slide puo’ essere
riutilizzato, parziale o totalmente, a patto che le fonti
e gli autori vengano citati
Henry Muccini
MWT– Progettazione di Applicazioni Web Henry Muccini
3
Benvenuti!
Prima di iniziare:
– Presentazioni
• Mio Profilo
• Vostri profili
– Schoology:
https://app.schoology.com/course/1511186315/
MWT– Progettazione di Applicazioni Web Henry Muccini
4
My profile
Professore in Informatica
 Ingegneria del Software
Tematiche di interesse:
 Ingegneria del Software
 Architetture Software
 Model Driven Engineering
 Mobile Computing
Teaching:
 Modellazione UML per il Web @Master in Web Technology (2004-oggi)
 Ingegneria del Software (2006-oggi)
 Architetture Software (2006-oggi)
 Advanced Software Architecture (2010-oggi)
MWT– Progettazione di Applicazioni Web Henry Muccini
5
Henry Muccini (academics)
On developing methods and tools for
architectures
On developing methods and tools for
the analysis and design of software
architectures
Interoperable and Multi-view Software Architecture Description
Architecting Situational Aware Cyber Physical Systems
Group Decision Making in Software Architecting
Collaborative Modeling in MDE
MWT– Progettazione di Applicazioni Web Henry Muccini
6
Henry Muccini (industrial)
spin-off of the University of L’Aquila
Crowd management Indoor | outdoor
Queue forecast and avoidance
Multi-site crowd management
Digital Booking and Ticketing
MWT– Progettazione di Applicazioni Web Henry Muccini
7
Vostri profili
Vostri Profili
MWT– Progettazione di Applicazioni Web Henry Muccini
8
Obiettivi del Corso
 Come e Cosa Progettare e Documentare
 Come Pianificare il Lavoro
 Come Comunicare
MWT– Progettazione di Applicazioni Web Henry Muccini
9
Indice
• Motivazione sulla progettazione
• Documentazione dei servizi dell'applicazione
• Documentazione della UI
• Documentazione dei dati
• Sequence diagram per gli scenari
• Design decisions
• Project planning in pratica
• Communication tools
MWT– Progettazione di Applicazioni Web Henry Muccini
10
Pianificazione lezioni
MWT– Progettazione di Applicazioni Web Henry Muccini
11
Pianificazione lezioni
MWT– Progettazione di Applicazioni Web Henry Muccini
12
Gestione del Corso
Metodo di insegnamento:
– Slide, lavagna, interazione diretta, uso di PC
Piu’ domande fate, piu’ impariamo insieme
Esempi:
– Diversi esempi d’uso verranno proposti
Esercitazioni:
– Da verificare a lezione
Perche’ progettare applicazioni
Web?  Compessità dei sistemi moderni
 Fallimenti del software
 Necessita’ di Quality
1. I Sistemi moderni sono Complessi
MWT– Progettazione di Applicazioni Web Henry Muccini
15Complexity in Lines of Code
http://www.informationisbeautiful.net/visualizations/million-lines-of-code/
MWT– Progettazione di Applicazioni Web Henry Muccini
16
Complexity in Requirements
Sometimes,
systems must run
reliably for
99.9999 % of the
time
MWT– Progettazione di Applicazioni Web Henry Muccini
17
Complexity
MWT– Progettazione di Applicazioni Web Henry Muccini
18
Complessita’ nella applicazioni Web
3+ key factors to consider:
- Servizi di backend
- E-commerce
- Security
- Servizi di Social networking
- …
https://worthwhile.com/blog/2016/03/21/website-development-web-applications/
MWT– Progettazione di Applicazioni Web Henry Muccini
19
Complessita’ nella applicazioni Web
“Project Environment
The first source is the project environment itself. This mainly includes the availability
of resources (e.g. people, money, knowledge) and the management style of the
project manager and customer. Some project managers truly believe that when a
developers estimates a piece of work at 1 week, that the sentence “I’ll give you 3
days” will actually do good to the project on the long term. Although an interesting
topic, it is not the type of complexity I want to deal with in this post.
Technical Complexity
Another aspect influencing complexity is the technical environment of the project.
What are the frameworks and platforms used in the development and deployment
of the software. As with any technology, it is important to know the powers and
limitations of each framework. If a framework requires expert knowledge to interact
with it, then try to abstract that knowledge away into separate modules.
….
Business Complexity
The third aspect is the one I will be focusing on in this post: the business domain. It
is the sum of the knowledge, rules and activities of your customer that makes them
survive. Solving the problems in this domain is often highly complex, but not
unsolvable.”
https://blog.trifork.com/2009/10/20/battling-complexity-in-large-web-applications/
Henry Muccini | Universita’ degli Studi dell’Aquila & nExpecto S.r.l.
20
Esempio 1: NdR 2017
► UnivAq Street Science
& SHARPER
► 114 eventi
► Un solo giorno
► Un’unica app
Henry Muccini | Universita’ degli Studi dell’Aquila & nExpecto S.r.l.
21
Esempio 2: Uffizi
2) I sistemi software falliscono, e…
MWT– Progettazione di Applicazioni Web Henry Muccini
23
Examples of «Badly» Engineered Software
Therac-25 safety failure:
•approximately 100 times the intended dose of radiation
•3 people died, and 6 got injured
see article at: http://sunnyday.mit.edu/papers/therac.pdf
Factors:
•Overconfidence in
Software
•Confusing reliability
with safety
•Lack of defensive Design
•Failure to eliminate
fault causes
•Inadequate software
engineering practices
•…
MWT– Progettazione di Applicazioni Web Henry Muccini
24http://www.devtopics.com/20-famous-software-
disasters/
MWT– Progettazione di Applicazioni Web Henry Muccini
25
Testing & QA (3) - Failures
1994 1996 1998 2000 2002 2004 2009
Succeeded 16% 27% 26% 28% 34% 29% 32%
Failed 31% 40% 28% 23% 15% 18% 24%
Challenged 53% 33% 46% 49% 51% 53% 44%
 See more at: http://www.projectred.org/latest-
news/190-software-project-failure-costs-billions-
better-estimation-planning-can-help.html
Standish Findings By Year Updated for 2009
MWT– Progettazione di Applicazioni Web Henry Muccini
26http://www.wired.com/software/coolapps/news/200
5/11/69355?currentPage=all
MWT– Progettazione di Applicazioni Web Henry Muccini
27
Fallimenti «Web» (June 2012)
Il sistema del MIUR per le prove di maturità:
“La maturità 2.0 parte con un flop. Il sistema «commissione web», la novità
dell’esame di Stato 2012, non ha funzionato. Il software, messo a punto per
consentire alle commissioni di comunicare in tempo reale col cervellone centrale
del Miur tutte le attività connesse con gli esami, è andato in tilt ancora prima di
partire. Nelle scuole di Firenze le commissioni non sono riuscite ad inserire online
i verbali delle riunioni di insediamento che si sono tenute questa mattina. ”
 http://corrierefiorentino.corriere.it/firenze/notizie/cronaca/2012/18-giugno-
2012/maturita-20-partenza-flop-201657781657.shtml
Prenotazioni Trenitalia:
 “Il nuovo sistema di Ferrovie dello Stato è un disastro: c'è chi non riesce più a
usare il proprio codice ma non può cancellarsi perché per farlo occorre usare il
codice.
Dalle 1 alle 3 di notte non funziona, perché fanno la manutenzione, ma mica te lo
dicono …”
 http://righedidiomira.blogspot.it/2012/01/sempre-trenitalia-sempre-piu-
disservizi.html
Fineco, pagamento IMU F24:
Con la detrazione prima casa, il mio imponibile va sotto zero e il sistema va in tilt.
MWT– Progettazione di Applicazioni Web Henry Muccini
28
Cause di fallimento
1. Gestione non disciplinata dei requisiti
2. Comunicazione ambigua ed imprecisa
1. Cambiamento requisiti
3. Architetture instabili
4. Complessità ingestibile
5. Incoerenze tra requisiti, progettazione e
implementazione
6. Test insufficienti
Project Management
Tempo
3) Necessita’ di Sistemi di Qualita’
MWT– Progettazione di Applicazioni Web Henry Muccini
30
Investment in QA
> $50 billion/year on applications testing and quality assurance
[World Quality Report 2013-2014]
[1191 respondents]
«Right first time» apps
[Top six trends to drive market for software
testing in 2012,” TechJournal, citing Pierre Audoin
Consultants, Nov 2011]
18%
23%
28%
0% 5% 10% 15% 20% 25% 30%
1
IT budget allocated to QA
2015 2013 2012
MWT– Progettazione di Applicazioni Web Henry Muccini
31
Testing Mobile App
Taken from [World Quality Report 2013-2014], page 27
MWT– Progettazione di Applicazioni Web Henry Muccini
32
Testing Mobile App
Taken from [World Quality Report 2013-2014], page 27
Must be «right first time»
Even «for free» apps
Must get into the market
«first»
MWT– Progettazione di Applicazioni Web Henry Muccini
33
Progettazione: Quando
Field of computer science dealing with software systems
that are:
• large and complex =complex? large?
• built by teams =people!, communication, …
• exist in many versions=version control
• last many years =engineered to be sustainable
• Undergo changes =evolves
MWT– Progettazione di Applicazioni Web Henry Muccini
34
Common issues to be avoided
o The final Software doesn´t fulfill the needs of the
customer
o Hard to extend and improve:
if you want to add a functionality later is mission impossible
o Bad documentation
o Bad quality: frequent errors, hard to use, ...
o More time and costs than expected
o Social aspects of teamwork
MWT– Progettazione di Applicazioni Web Henry Muccini
35
MWT– Progettazione di Applicazioni Web Henry Muccini
36
Riassumendo:
Necessita’ di Web Engineering per…
 Creare sistemi web di grandi dimensioni e complessità
 In modo sistematico e disciplinato
 Creare sistemi con maggior qualita’
 Creare sistemi che possano essere mantenuti nel tempo
MWT– Progettazione di Applicazioni Web Henry Muccini
37
Fasi Principali
Collezione di Informazioni
Pianificazione
Progettazione
Sviluppo
Testing e Deployment
Manutenzione
MWT– Progettazione di Applicazioni Web Henry Muccini
38
Fasi Principali
 Incrementale
 Massimizzandone
l’utilita’
 Minimizzandone i
costi
Contesto: Applicazioni Web e
loro architetture
MWT– Progettazione di Applicazioni Web Henry Muccini
40
Applicazioni Web (Complesse)
Browser Web server
Richiesta
Documento
Application server
Pagine HTML Base di dati
MWT– Progettazione di Applicazioni Web Henry Muccini
41
Web Application
Web site  Web application
Web application =
– web site con business logic
– client che invia input che vengono eseguiti dall’esecuzione
di un modulo
Presenza di un Application Server che permette di
gestire business logic
Chi esegue tale computazione???
MWT– Progettazione di Applicazioni Web Henry Muccini
42
Architettura minimale: Client-Server
MWT– Progettazione di Applicazioni Web Henry Muccini
43
Limiti dell’Approccio C/S
Ben presto ci si accorge che il modello
architetturale C/S e’ inadatto ad applicazione di tipo
Web
Nel modello C/S, l’interfaccia utente è totalmente
implementata sul client, il database management è
totalmente allocato sul server mentre il process
management è in un qualche modo suddiviso tra
client e server!
Cosa accade se vogliamo toccare la grafica senza
modificare la logica (o viceversa)?
 Tutto e mischiato e non sappiamo come muoverci
MWT– Progettazione di Applicazioni Web Henry Muccini
44
Soluzione: Tre livelli concettuali
Livello Presentazione:
– si occupa di ricevere le GET e le POST dal server, per ottenere l’input
del programma
– costruisce i documenti HTML che costituiscono l’output del programma
Livello Logico:
– calcola l’output a partire dall’input e dai dati memorizzati nel terzo
livello
– definisce la funzione del programma
Livello Dati:
– costituito tipicamente da un database, mette a disposizione
dell’applicazione un supporto per memorizzare le informazioni
MWT– Progettazione di Applicazioni Web Henry Muccini
45
MWT– Progettazione di Applicazioni Web Henry Muccini
46
Vantaggi
Maggiore scalabililtà e modificabilità, dal momento
che, cambiando la business logic, non si devono
modificare tutti i clients
Clients leggeri, che forniscono soltanto funzionalità
per la rappresentazione di dati e l’interazione
dell’utente con il sistema
Possibilità di implementare logiche aggiuntive,
estremamente interessanti
MWT– Progettazione di Applicazioni Web Henry Muccini
47
Perche’ modellare una applicazione Web,
allora?
Per Aiutare la progettazione:
– Documentare i Requisiti
– Documentare i Servizi
– Documentare i Vincoli
Per Riusare
Per Manutenere
Per Analizzare
Per Testare
MWT– Progettazione di Applicazioni Web Henry Muccini
48
Caso di Studio
Introdurre il caso di studio
MWT– Progettazione di Applicazioni Web Henry Muccini
49
NOTE:
Problema identificato: gestione dei tempi!
1. Il cliente cambia i requisiti!!
• Imp: meeting con «tutti» i clienti
• Imp: vincolare il cliente a quanto e’ stato scritto ed approvato
2. I tempi tecnici di sviluppo non corrispondono con i tempi
stimati
Principio: definire il «criterio» usato per guidare la design
decision
Principio: sviluppo incrementale, con identificazione dei
task prioritari
Principio: Dipendenze tra task

Mais conteúdo relacionado

Semelhante a Web Engineering L1: introduction to Web Engineering (1/8)

GianlucaBonifacioCV_ITA_240117
GianlucaBonifacioCV_ITA_240117GianlucaBonifacioCV_ITA_240117
GianlucaBonifacioCV_ITA_240117Gianluca Bonifacio
 
Reti sociali e dinamiche di collaborazione nelle PMI toscane: processi, model...
Reti sociali e dinamiche di collaborazione nelle PMI toscane: processi, model...Reti sociali e dinamiche di collaborazione nelle PMI toscane: processi, model...
Reti sociali e dinamiche di collaborazione nelle PMI toscane: processi, model...materiamedia
 
Siti web, portali e Rich Internet Applications: tendenze e controtendenze
Siti web, portali e Rich Internet Applications: tendenze e controtendenzeSiti web, portali e Rich Internet Applications: tendenze e controtendenze
Siti web, portali e Rich Internet Applications: tendenze e controtendenzeDiego La Monica
 
Studio C Group - il partner tecnologico che hai sempre cercato
Studio C Group - il partner tecnologico che hai sempre cercatoStudio C Group - il partner tecnologico che hai sempre cercato
Studio C Group - il partner tecnologico che hai sempre cercatoAndrea Cacciatori
 
Smau Milano 2014 - Mario Massone
Smau Milano 2014 - Mario MassoneSmau Milano 2014 - Mario Massone
Smau Milano 2014 - Mario MassoneSMAU
 
Com pa 05nov2009_7
Com pa 05nov2009_7Com pa 05nov2009_7
Com pa 05nov2009_7Argentea
 
La presenza sul web delle organizzazioni non profit: esperienze e lezioni app...
La presenza sul web delle organizzazioni non profit: esperienze e lezioni app...La presenza sul web delle organizzazioni non profit: esperienze e lezioni app...
La presenza sul web delle organizzazioni non profit: esperienze e lezioni app...Roberto Polillo
 
Microservices power by unikernels
Microservices power by unikernelsMicroservices power by unikernels
Microservices power by unikernelsGabriele Baldoni
 
Rete competenze per l’economia digitale - Digital for Job
Rete competenze per l’economia digitale - Digital for JobRete competenze per l’economia digitale - Digital for Job
Rete competenze per l’economia digitale - Digital for JobCultura Digitale
 
Il futuro degli ingegneri (2012)
Il futuro degli ingegneri (2012)Il futuro degli ingegneri (2012)
Il futuro degli ingegneri (2012)Stefano Palumbo
 
Presentazione review it_20min
Presentazione review it_20minPresentazione review it_20min
Presentazione review it_20minFabrizio Straccia
 
Lezioni 1 e 2 del 31 gennaio e del 2 febbraio 2012 - DAL SOCIAL WEB ALLA CONS...
Lezioni 1 e 2 del 31 gennaio e del 2 febbraio 2012 - DAL SOCIAL WEB ALLA CONS...Lezioni 1 e 2 del 31 gennaio e del 2 febbraio 2012 - DAL SOCIAL WEB ALLA CONS...
Lezioni 1 e 2 del 31 gennaio e del 2 febbraio 2012 - DAL SOCIAL WEB ALLA CONS...Gianluigi Cogo
 
Presentazione e-SUAP Forum PA - Roma - Palazzo dei congressi - 29 Maggio 2014
Presentazione e-SUAP Forum PA - Roma - Palazzo dei congressi - 29 Maggio 2014Presentazione e-SUAP Forum PA - Roma - Palazzo dei congressi - 29 Maggio 2014
Presentazione e-SUAP Forum PA - Roma - Palazzo dei congressi - 29 Maggio 2014Sabino Labarile
 
Private cloud computing in organizzazioni complesse
Private cloud computing in organizzazioni complessePrivate cloud computing in organizzazioni complesse
Private cloud computing in organizzazioni complesseLuca Garlaschelli
 

Semelhante a Web Engineering L1: introduction to Web Engineering (1/8) (20)

GianlucaBonifacioCV_ITA_240117
GianlucaBonifacioCV_ITA_240117GianlucaBonifacioCV_ITA_240117
GianlucaBonifacioCV_ITA_240117
 
Reti sociali e dinamiche di collaborazione nelle PMI toscane: processi, model...
Reti sociali e dinamiche di collaborazione nelle PMI toscane: processi, model...Reti sociali e dinamiche di collaborazione nelle PMI toscane: processi, model...
Reti sociali e dinamiche di collaborazione nelle PMI toscane: processi, model...
 
Welcome
WelcomeWelcome
Welcome
 
Progetto Euridice
Progetto EuridiceProgetto Euridice
Progetto Euridice
 
Siti web, portali e Rich Internet Applications: tendenze e controtendenze
Siti web, portali e Rich Internet Applications: tendenze e controtendenzeSiti web, portali e Rich Internet Applications: tendenze e controtendenze
Siti web, portali e Rich Internet Applications: tendenze e controtendenze
 
Conclusioni del corso
Conclusioni del corsoConclusioni del corso
Conclusioni del corso
 
Studio C Group - il partner tecnologico che hai sempre cercato
Studio C Group - il partner tecnologico che hai sempre cercatoStudio C Group - il partner tecnologico che hai sempre cercato
Studio C Group - il partner tecnologico che hai sempre cercato
 
Smau Milano 2014 - Mario Massone
Smau Milano 2014 - Mario MassoneSmau Milano 2014 - Mario Massone
Smau Milano 2014 - Mario Massone
 
Com pa 05nov2009_7
Com pa 05nov2009_7Com pa 05nov2009_7
Com pa 05nov2009_7
 
La presenza sul web delle organizzazioni non profit: esperienze e lezioni app...
La presenza sul web delle organizzazioni non profit: esperienze e lezioni app...La presenza sul web delle organizzazioni non profit: esperienze e lezioni app...
La presenza sul web delle organizzazioni non profit: esperienze e lezioni app...
 
Iuavcamp - Building Brain
Iuavcamp - Building BrainIuavcamp - Building Brain
Iuavcamp - Building Brain
 
Microservices power by unikernels
Microservices power by unikernelsMicroservices power by unikernels
Microservices power by unikernels
 
Rete competenze per l’economia digitale - Digital for Job
Rete competenze per l’economia digitale - Digital for JobRete competenze per l’economia digitale - Digital for Job
Rete competenze per l’economia digitale - Digital for Job
 
Il futuro degli ingegneri (2012)
Il futuro degli ingegneri (2012)Il futuro degli ingegneri (2012)
Il futuro degli ingegneri (2012)
 
Presentazione review it_20min
Presentazione review it_20minPresentazione review it_20min
Presentazione review it_20min
 
Presentazione e-Suap - Forum PA 2014
Presentazione e-Suap - Forum PA 2014 Presentazione e-Suap - Forum PA 2014
Presentazione e-Suap - Forum PA 2014
 
Lezioni 1 e 2 del 31 gennaio e del 2 febbraio 2012 - DAL SOCIAL WEB ALLA CONS...
Lezioni 1 e 2 del 31 gennaio e del 2 febbraio 2012 - DAL SOCIAL WEB ALLA CONS...Lezioni 1 e 2 del 31 gennaio e del 2 febbraio 2012 - DAL SOCIAL WEB ALLA CONS...
Lezioni 1 e 2 del 31 gennaio e del 2 febbraio 2012 - DAL SOCIAL WEB ALLA CONS...
 
Mobile 2.0
Mobile 2.0Mobile 2.0
Mobile 2.0
 
Presentazione e-SUAP Forum PA - Roma - Palazzo dei congressi - 29 Maggio 2014
Presentazione e-SUAP Forum PA - Roma - Palazzo dei congressi - 29 Maggio 2014Presentazione e-SUAP Forum PA - Roma - Palazzo dei congressi - 29 Maggio 2014
Presentazione e-SUAP Forum PA - Roma - Palazzo dei congressi - 29 Maggio 2014
 
Private cloud computing in organizzazioni complesse
Private cloud computing in organizzazioni complessePrivate cloud computing in organizzazioni complesse
Private cloud computing in organizzazioni complesse
 

Mais de Henry Muccini

Human Behaviour Centred Design
Human Behaviour Centred Design Human Behaviour Centred Design
Human Behaviour Centred Design Henry Muccini
 
How cultural heritage, cyber-physical spaces, and software engineering can wo...
How cultural heritage, cyber-physical spaces, and software engineering can wo...How cultural heritage, cyber-physical spaces, and software engineering can wo...
How cultural heritage, cyber-physical spaces, and software engineering can wo...Henry Muccini
 
La gestione dell’utenza numerosa - dalle Segreterie, ai Musei, alle Segreterie
La gestione dell’utenza numerosa - dalle Segreterie, ai Musei, alle SegreterieLa gestione dell’utenza numerosa - dalle Segreterie, ai Musei, alle Segreterie
La gestione dell’utenza numerosa - dalle Segreterie, ai Musei, alle SegreterieHenry Muccini
 
Turismo 4.0: l'ICT a supporto del turismo sostenibile
Turismo 4.0: l'ICT a supporto del turismo sostenibileTurismo 4.0: l'ICT a supporto del turismo sostenibile
Turismo 4.0: l'ICT a supporto del turismo sostenibileHenry Muccini
 
Sustainable Tourism - IoT and crowd management
Sustainable Tourism - IoT and crowd managementSustainable Tourism - IoT and crowd management
Sustainable Tourism - IoT and crowd managementHenry Muccini
 
Software Engineering at the age of the Internet of Things
Software Engineering at the age of the Internet of ThingsSoftware Engineering at the age of the Internet of Things
Software Engineering at the age of the Internet of ThingsHenry Muccini
 
The influence of Group Decision Making on Architecture Design Decisions
The influence of Group Decision Making on Architecture Design DecisionsThe influence of Group Decision Making on Architecture Design Decisions
The influence of Group Decision Making on Architecture Design DecisionsHenry Muccini
 
An IoT Software Architecture for an Evacuable Building Architecture
An IoT Software Architecture for an Evacuable Building ArchitectureAn IoT Software Architecture for an Evacuable Building Architecture
An IoT Software Architecture for an Evacuable Building ArchitectureHenry Muccini
 
Web Engineering L8: User-centered Design (8/8)
Web Engineering L8: User-centered Design (8/8)Web Engineering L8: User-centered Design (8/8)
Web Engineering L8: User-centered Design (8/8)Henry Muccini
 
Web Engineering L6: Software Architecture for the Web (6/8)
Web Engineering L6: Software Architecture for the Web (6/8)Web Engineering L6: Software Architecture for the Web (6/8)
Web Engineering L6: Software Architecture for the Web (6/8)Henry Muccini
 
Web Engineering L3: Project Planning (3/8)
Web Engineering L3: Project Planning (3/8)Web Engineering L3: Project Planning (3/8)
Web Engineering L3: Project Planning (3/8)Henry Muccini
 
Collaborative aspects of Decision Making and its impact on Sustainability
Collaborative aspects of Decision Making and its impact on SustainabilityCollaborative aspects of Decision Making and its impact on Sustainability
Collaborative aspects of Decision Making and its impact on SustainabilityHenry Muccini
 
Engineering Cyber Physical Spaces
Engineering Cyber Physical SpacesEngineering Cyber Physical Spaces
Engineering Cyber Physical SpacesHenry Muccini
 
I progetti UnivAq-UFFIZI, INCIPICT, e  CUSPIS
I progetti UnivAq-UFFIZI, INCIPICT, e  CUSPISI progetti UnivAq-UFFIZI, INCIPICT, e  CUSPIS
I progetti UnivAq-UFFIZI, INCIPICT, e  CUSPISHenry Muccini
 
Exploring the Temporal Aspects of Software Architecture
Exploring the Temporal Aspects of Software ArchitectureExploring the Temporal Aspects of Software Architecture
Exploring the Temporal Aspects of Software ArchitectureHenry Muccini
 
EasyLine: call4ideas_2016
EasyLine: call4ideas_2016EasyLine: call4ideas_2016
EasyLine: call4ideas_2016Henry Muccini
 
The role of MDE in Software Architecture Descriptions
The role of MDE in Software Architecture DescriptionsThe role of MDE in Software Architecture Descriptions
The role of MDE in Software Architecture DescriptionsHenry Muccini
 
Euroweb+ meeting at the University of L'Aquila, Italy
Euroweb+ meeting at the University of L'Aquila, ItalyEuroweb+ meeting at the University of L'Aquila, Italy
Euroweb+ meeting at the University of L'Aquila, ItalyHenry Muccini
 
On the Use of Component-Based Principles and Practices for Architecting Cyber...
On the Use of Component-Based Principles and Practices for Architecting Cyber...On the Use of Component-Based Principles and Practices for Architecting Cyber...
On the Use of Component-Based Principles and Practices for Architecting Cyber...Henry Muccini
 
1ST DISIM WORKSHOP ON ENGINEERING CYBER-PHYSICAL SYSTEMS
1ST DISIM WORKSHOP ON ENGINEERING CYBER-PHYSICAL SYSTEMS1ST DISIM WORKSHOP ON ENGINEERING CYBER-PHYSICAL SYSTEMS
1ST DISIM WORKSHOP ON ENGINEERING CYBER-PHYSICAL SYSTEMSHenry Muccini
 

Mais de Henry Muccini (20)

Human Behaviour Centred Design
Human Behaviour Centred Design Human Behaviour Centred Design
Human Behaviour Centred Design
 
How cultural heritage, cyber-physical spaces, and software engineering can wo...
How cultural heritage, cyber-physical spaces, and software engineering can wo...How cultural heritage, cyber-physical spaces, and software engineering can wo...
How cultural heritage, cyber-physical spaces, and software engineering can wo...
 
La gestione dell’utenza numerosa - dalle Segreterie, ai Musei, alle Segreterie
La gestione dell’utenza numerosa - dalle Segreterie, ai Musei, alle SegreterieLa gestione dell’utenza numerosa - dalle Segreterie, ai Musei, alle Segreterie
La gestione dell’utenza numerosa - dalle Segreterie, ai Musei, alle Segreterie
 
Turismo 4.0: l'ICT a supporto del turismo sostenibile
Turismo 4.0: l'ICT a supporto del turismo sostenibileTurismo 4.0: l'ICT a supporto del turismo sostenibile
Turismo 4.0: l'ICT a supporto del turismo sostenibile
 
Sustainable Tourism - IoT and crowd management
Sustainable Tourism - IoT and crowd managementSustainable Tourism - IoT and crowd management
Sustainable Tourism - IoT and crowd management
 
Software Engineering at the age of the Internet of Things
Software Engineering at the age of the Internet of ThingsSoftware Engineering at the age of the Internet of Things
Software Engineering at the age of the Internet of Things
 
The influence of Group Decision Making on Architecture Design Decisions
The influence of Group Decision Making on Architecture Design DecisionsThe influence of Group Decision Making on Architecture Design Decisions
The influence of Group Decision Making on Architecture Design Decisions
 
An IoT Software Architecture for an Evacuable Building Architecture
An IoT Software Architecture for an Evacuable Building ArchitectureAn IoT Software Architecture for an Evacuable Building Architecture
An IoT Software Architecture for an Evacuable Building Architecture
 
Web Engineering L8: User-centered Design (8/8)
Web Engineering L8: User-centered Design (8/8)Web Engineering L8: User-centered Design (8/8)
Web Engineering L8: User-centered Design (8/8)
 
Web Engineering L6: Software Architecture for the Web (6/8)
Web Engineering L6: Software Architecture for the Web (6/8)Web Engineering L6: Software Architecture for the Web (6/8)
Web Engineering L6: Software Architecture for the Web (6/8)
 
Web Engineering L3: Project Planning (3/8)
Web Engineering L3: Project Planning (3/8)Web Engineering L3: Project Planning (3/8)
Web Engineering L3: Project Planning (3/8)
 
Collaborative aspects of Decision Making and its impact on Sustainability
Collaborative aspects of Decision Making and its impact on SustainabilityCollaborative aspects of Decision Making and its impact on Sustainability
Collaborative aspects of Decision Making and its impact on Sustainability
 
Engineering Cyber Physical Spaces
Engineering Cyber Physical SpacesEngineering Cyber Physical Spaces
Engineering Cyber Physical Spaces
 
I progetti UnivAq-UFFIZI, INCIPICT, e  CUSPIS
I progetti UnivAq-UFFIZI, INCIPICT, e  CUSPISI progetti UnivAq-UFFIZI, INCIPICT, e  CUSPIS
I progetti UnivAq-UFFIZI, INCIPICT, e  CUSPIS
 
Exploring the Temporal Aspects of Software Architecture
Exploring the Temporal Aspects of Software ArchitectureExploring the Temporal Aspects of Software Architecture
Exploring the Temporal Aspects of Software Architecture
 
EasyLine: call4ideas_2016
EasyLine: call4ideas_2016EasyLine: call4ideas_2016
EasyLine: call4ideas_2016
 
The role of MDE in Software Architecture Descriptions
The role of MDE in Software Architecture DescriptionsThe role of MDE in Software Architecture Descriptions
The role of MDE in Software Architecture Descriptions
 
Euroweb+ meeting at the University of L'Aquila, Italy
Euroweb+ meeting at the University of L'Aquila, ItalyEuroweb+ meeting at the University of L'Aquila, Italy
Euroweb+ meeting at the University of L'Aquila, Italy
 
On the Use of Component-Based Principles and Practices for Architecting Cyber...
On the Use of Component-Based Principles and Practices for Architecting Cyber...On the Use of Component-Based Principles and Practices for Architecting Cyber...
On the Use of Component-Based Principles and Practices for Architecting Cyber...
 
1ST DISIM WORKSHOP ON ENGINEERING CYBER-PHYSICAL SYSTEMS
1ST DISIM WORKSHOP ON ENGINEERING CYBER-PHYSICAL SYSTEMS1ST DISIM WORKSHOP ON ENGINEERING CYBER-PHYSICAL SYSTEMS
1ST DISIM WORKSHOP ON ENGINEERING CYBER-PHYSICAL SYSTEMS
 

Último

Giornata Tecnica da Piave Servizi, 11 aprile 2024 | ALBIERO Andrea
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | ALBIERO AndreaGiornata Tecnica da Piave Servizi, 11 aprile 2024 | ALBIERO Andrea
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | ALBIERO AndreaServizi a rete
 
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | DISCIPIO Antonio
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | DISCIPIO AntonioGiornata Tecnica da Piave Servizi, 11 aprile 2024 | DISCIPIO Antonio
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | DISCIPIO AntonioServizi a rete
 
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | ROMANO' Davide
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | ROMANO' DavideGiornata Tecnica da Piave Servizi, 11 aprile 2024 | ROMANO' Davide
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | ROMANO' DavideServizi a rete
 
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | DI DOMENICO Simone
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | DI DOMENICO SimoneGiornata Tecnica da Piave Servizi, 11 aprile 2024 | DI DOMENICO Simone
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | DI DOMENICO SimoneServizi a rete
 
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | RENZI Daniele
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | RENZI DanieleGiornata Tecnica da Piave Servizi, 11 aprile 2024 | RENZI Daniele
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | RENZI DanieleServizi a rete
 
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | CADEI Giovanni
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | CADEI GiovanniGiornata Tecnica da Piave Servizi, 11 aprile 2024 | CADEI Giovanni
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | CADEI GiovanniServizi a rete
 
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | SERRA Giorgio
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | SERRA GiorgioGiornata Tecnica da Piave Servizi, 11 aprile 2024 | SERRA Giorgio
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | SERRA GiorgioServizi a rete
 

Último (7)

Giornata Tecnica da Piave Servizi, 11 aprile 2024 | ALBIERO Andrea
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | ALBIERO AndreaGiornata Tecnica da Piave Servizi, 11 aprile 2024 | ALBIERO Andrea
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | ALBIERO Andrea
 
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | DISCIPIO Antonio
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | DISCIPIO AntonioGiornata Tecnica da Piave Servizi, 11 aprile 2024 | DISCIPIO Antonio
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | DISCIPIO Antonio
 
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | ROMANO' Davide
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | ROMANO' DavideGiornata Tecnica da Piave Servizi, 11 aprile 2024 | ROMANO' Davide
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | ROMANO' Davide
 
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | DI DOMENICO Simone
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | DI DOMENICO SimoneGiornata Tecnica da Piave Servizi, 11 aprile 2024 | DI DOMENICO Simone
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | DI DOMENICO Simone
 
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | RENZI Daniele
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | RENZI DanieleGiornata Tecnica da Piave Servizi, 11 aprile 2024 | RENZI Daniele
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | RENZI Daniele
 
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | CADEI Giovanni
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | CADEI GiovanniGiornata Tecnica da Piave Servizi, 11 aprile 2024 | CADEI Giovanni
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | CADEI Giovanni
 
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | SERRA Giorgio
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | SERRA GiorgioGiornata Tecnica da Piave Servizi, 11 aprile 2024 | SERRA Giorgio
Giornata Tecnica da Piave Servizi, 11 aprile 2024 | SERRA Giorgio
 

Web Engineering L1: introduction to Web Engineering (1/8)

  • 1. Progettazione di Applicazioni Web corso del Master in Web Technology a.a. 2017-2018 https://app.schoology.com/course/1511186315/ Henry Muccini Università degli Studi dell’Aquila 1. Introduzione al Corso
  • 2. MWT– Progettazione di Applicazioni Web Henry Muccini 2 Copyright Notice Il materiale riportato in queste slide puo’ essere riutilizzato, parziale o totalmente, a patto che le fonti e gli autori vengano citati Henry Muccini
  • 3. MWT– Progettazione di Applicazioni Web Henry Muccini 3 Benvenuti! Prima di iniziare: – Presentazioni • Mio Profilo • Vostri profili – Schoology: https://app.schoology.com/course/1511186315/
  • 4. MWT– Progettazione di Applicazioni Web Henry Muccini 4 My profile Professore in Informatica  Ingegneria del Software Tematiche di interesse:  Ingegneria del Software  Architetture Software  Model Driven Engineering  Mobile Computing Teaching:  Modellazione UML per il Web @Master in Web Technology (2004-oggi)  Ingegneria del Software (2006-oggi)  Architetture Software (2006-oggi)  Advanced Software Architecture (2010-oggi)
  • 5. MWT– Progettazione di Applicazioni Web Henry Muccini 5 Henry Muccini (academics) On developing methods and tools for architectures On developing methods and tools for the analysis and design of software architectures Interoperable and Multi-view Software Architecture Description Architecting Situational Aware Cyber Physical Systems Group Decision Making in Software Architecting Collaborative Modeling in MDE
  • 6. MWT– Progettazione di Applicazioni Web Henry Muccini 6 Henry Muccini (industrial) spin-off of the University of L’Aquila Crowd management Indoor | outdoor Queue forecast and avoidance Multi-site crowd management Digital Booking and Ticketing
  • 7. MWT– Progettazione di Applicazioni Web Henry Muccini 7 Vostri profili Vostri Profili
  • 8. MWT– Progettazione di Applicazioni Web Henry Muccini 8 Obiettivi del Corso  Come e Cosa Progettare e Documentare  Come Pianificare il Lavoro  Come Comunicare
  • 9. MWT– Progettazione di Applicazioni Web Henry Muccini 9 Indice • Motivazione sulla progettazione • Documentazione dei servizi dell'applicazione • Documentazione della UI • Documentazione dei dati • Sequence diagram per gli scenari • Design decisions • Project planning in pratica • Communication tools
  • 10. MWT– Progettazione di Applicazioni Web Henry Muccini 10 Pianificazione lezioni
  • 11. MWT– Progettazione di Applicazioni Web Henry Muccini 11 Pianificazione lezioni
  • 12. MWT– Progettazione di Applicazioni Web Henry Muccini 12 Gestione del Corso Metodo di insegnamento: – Slide, lavagna, interazione diretta, uso di PC Piu’ domande fate, piu’ impariamo insieme Esempi: – Diversi esempi d’uso verranno proposti Esercitazioni: – Da verificare a lezione
  • 13. Perche’ progettare applicazioni Web?  Compessità dei sistemi moderni  Fallimenti del software  Necessita’ di Quality
  • 14. 1. I Sistemi moderni sono Complessi
  • 15. MWT– Progettazione di Applicazioni Web Henry Muccini 15Complexity in Lines of Code http://www.informationisbeautiful.net/visualizations/million-lines-of-code/
  • 16. MWT– Progettazione di Applicazioni Web Henry Muccini 16 Complexity in Requirements Sometimes, systems must run reliably for 99.9999 % of the time
  • 17. MWT– Progettazione di Applicazioni Web Henry Muccini 17 Complexity
  • 18. MWT– Progettazione di Applicazioni Web Henry Muccini 18 Complessita’ nella applicazioni Web 3+ key factors to consider: - Servizi di backend - E-commerce - Security - Servizi di Social networking - … https://worthwhile.com/blog/2016/03/21/website-development-web-applications/
  • 19. MWT– Progettazione di Applicazioni Web Henry Muccini 19 Complessita’ nella applicazioni Web “Project Environment The first source is the project environment itself. This mainly includes the availability of resources (e.g. people, money, knowledge) and the management style of the project manager and customer. Some project managers truly believe that when a developers estimates a piece of work at 1 week, that the sentence “I’ll give you 3 days” will actually do good to the project on the long term. Although an interesting topic, it is not the type of complexity I want to deal with in this post. Technical Complexity Another aspect influencing complexity is the technical environment of the project. What are the frameworks and platforms used in the development and deployment of the software. As with any technology, it is important to know the powers and limitations of each framework. If a framework requires expert knowledge to interact with it, then try to abstract that knowledge away into separate modules. …. Business Complexity The third aspect is the one I will be focusing on in this post: the business domain. It is the sum of the knowledge, rules and activities of your customer that makes them survive. Solving the problems in this domain is often highly complex, but not unsolvable.” https://blog.trifork.com/2009/10/20/battling-complexity-in-large-web-applications/
  • 20. Henry Muccini | Universita’ degli Studi dell’Aquila & nExpecto S.r.l. 20 Esempio 1: NdR 2017 ► UnivAq Street Science & SHARPER ► 114 eventi ► Un solo giorno ► Un’unica app
  • 21. Henry Muccini | Universita’ degli Studi dell’Aquila & nExpecto S.r.l. 21 Esempio 2: Uffizi
  • 22. 2) I sistemi software falliscono, e…
  • 23. MWT– Progettazione di Applicazioni Web Henry Muccini 23 Examples of «Badly» Engineered Software Therac-25 safety failure: •approximately 100 times the intended dose of radiation •3 people died, and 6 got injured see article at: http://sunnyday.mit.edu/papers/therac.pdf Factors: •Overconfidence in Software •Confusing reliability with safety •Lack of defensive Design •Failure to eliminate fault causes •Inadequate software engineering practices •…
  • 24. MWT– Progettazione di Applicazioni Web Henry Muccini 24http://www.devtopics.com/20-famous-software- disasters/
  • 25. MWT– Progettazione di Applicazioni Web Henry Muccini 25 Testing & QA (3) - Failures 1994 1996 1998 2000 2002 2004 2009 Succeeded 16% 27% 26% 28% 34% 29% 32% Failed 31% 40% 28% 23% 15% 18% 24% Challenged 53% 33% 46% 49% 51% 53% 44%  See more at: http://www.projectred.org/latest- news/190-software-project-failure-costs-billions- better-estimation-planning-can-help.html Standish Findings By Year Updated for 2009
  • 26. MWT– Progettazione di Applicazioni Web Henry Muccini 26http://www.wired.com/software/coolapps/news/200 5/11/69355?currentPage=all
  • 27. MWT– Progettazione di Applicazioni Web Henry Muccini 27 Fallimenti «Web» (June 2012) Il sistema del MIUR per le prove di maturità: “La maturità 2.0 parte con un flop. Il sistema «commissione web», la novità dell’esame di Stato 2012, non ha funzionato. Il software, messo a punto per consentire alle commissioni di comunicare in tempo reale col cervellone centrale del Miur tutte le attività connesse con gli esami, è andato in tilt ancora prima di partire. Nelle scuole di Firenze le commissioni non sono riuscite ad inserire online i verbali delle riunioni di insediamento che si sono tenute questa mattina. ”  http://corrierefiorentino.corriere.it/firenze/notizie/cronaca/2012/18-giugno- 2012/maturita-20-partenza-flop-201657781657.shtml Prenotazioni Trenitalia:  “Il nuovo sistema di Ferrovie dello Stato è un disastro: c'è chi non riesce più a usare il proprio codice ma non può cancellarsi perché per farlo occorre usare il codice. Dalle 1 alle 3 di notte non funziona, perché fanno la manutenzione, ma mica te lo dicono …”  http://righedidiomira.blogspot.it/2012/01/sempre-trenitalia-sempre-piu- disservizi.html Fineco, pagamento IMU F24: Con la detrazione prima casa, il mio imponibile va sotto zero e il sistema va in tilt.
  • 28. MWT– Progettazione di Applicazioni Web Henry Muccini 28 Cause di fallimento 1. Gestione non disciplinata dei requisiti 2. Comunicazione ambigua ed imprecisa 1. Cambiamento requisiti 3. Architetture instabili 4. Complessità ingestibile 5. Incoerenze tra requisiti, progettazione e implementazione 6. Test insufficienti Project Management Tempo
  • 29. 3) Necessita’ di Sistemi di Qualita’
  • 30. MWT– Progettazione di Applicazioni Web Henry Muccini 30 Investment in QA > $50 billion/year on applications testing and quality assurance [World Quality Report 2013-2014] [1191 respondents] «Right first time» apps [Top six trends to drive market for software testing in 2012,” TechJournal, citing Pierre Audoin Consultants, Nov 2011] 18% 23% 28% 0% 5% 10% 15% 20% 25% 30% 1 IT budget allocated to QA 2015 2013 2012
  • 31. MWT– Progettazione di Applicazioni Web Henry Muccini 31 Testing Mobile App Taken from [World Quality Report 2013-2014], page 27
  • 32. MWT– Progettazione di Applicazioni Web Henry Muccini 32 Testing Mobile App Taken from [World Quality Report 2013-2014], page 27 Must be «right first time» Even «for free» apps Must get into the market «first»
  • 33. MWT– Progettazione di Applicazioni Web Henry Muccini 33 Progettazione: Quando Field of computer science dealing with software systems that are: • large and complex =complex? large? • built by teams =people!, communication, … • exist in many versions=version control • last many years =engineered to be sustainable • Undergo changes =evolves
  • 34. MWT– Progettazione di Applicazioni Web Henry Muccini 34 Common issues to be avoided o The final Software doesn´t fulfill the needs of the customer o Hard to extend and improve: if you want to add a functionality later is mission impossible o Bad documentation o Bad quality: frequent errors, hard to use, ... o More time and costs than expected o Social aspects of teamwork
  • 35. MWT– Progettazione di Applicazioni Web Henry Muccini 35
  • 36. MWT– Progettazione di Applicazioni Web Henry Muccini 36 Riassumendo: Necessita’ di Web Engineering per…  Creare sistemi web di grandi dimensioni e complessità  In modo sistematico e disciplinato  Creare sistemi con maggior qualita’  Creare sistemi che possano essere mantenuti nel tempo
  • 37. MWT– Progettazione di Applicazioni Web Henry Muccini 37 Fasi Principali Collezione di Informazioni Pianificazione Progettazione Sviluppo Testing e Deployment Manutenzione
  • 38. MWT– Progettazione di Applicazioni Web Henry Muccini 38 Fasi Principali  Incrementale  Massimizzandone l’utilita’  Minimizzandone i costi
  • 39. Contesto: Applicazioni Web e loro architetture
  • 40. MWT– Progettazione di Applicazioni Web Henry Muccini 40 Applicazioni Web (Complesse) Browser Web server Richiesta Documento Application server Pagine HTML Base di dati
  • 41. MWT– Progettazione di Applicazioni Web Henry Muccini 41 Web Application Web site  Web application Web application = – web site con business logic – client che invia input che vengono eseguiti dall’esecuzione di un modulo Presenza di un Application Server che permette di gestire business logic Chi esegue tale computazione???
  • 42. MWT– Progettazione di Applicazioni Web Henry Muccini 42 Architettura minimale: Client-Server
  • 43. MWT– Progettazione di Applicazioni Web Henry Muccini 43 Limiti dell’Approccio C/S Ben presto ci si accorge che il modello architetturale C/S e’ inadatto ad applicazione di tipo Web Nel modello C/S, l’interfaccia utente è totalmente implementata sul client, il database management è totalmente allocato sul server mentre il process management è in un qualche modo suddiviso tra client e server! Cosa accade se vogliamo toccare la grafica senza modificare la logica (o viceversa)?  Tutto e mischiato e non sappiamo come muoverci
  • 44. MWT– Progettazione di Applicazioni Web Henry Muccini 44 Soluzione: Tre livelli concettuali Livello Presentazione: – si occupa di ricevere le GET e le POST dal server, per ottenere l’input del programma – costruisce i documenti HTML che costituiscono l’output del programma Livello Logico: – calcola l’output a partire dall’input e dai dati memorizzati nel terzo livello – definisce la funzione del programma Livello Dati: – costituito tipicamente da un database, mette a disposizione dell’applicazione un supporto per memorizzare le informazioni
  • 45. MWT– Progettazione di Applicazioni Web Henry Muccini 45
  • 46. MWT– Progettazione di Applicazioni Web Henry Muccini 46 Vantaggi Maggiore scalabililtà e modificabilità, dal momento che, cambiando la business logic, non si devono modificare tutti i clients Clients leggeri, che forniscono soltanto funzionalità per la rappresentazione di dati e l’interazione dell’utente con il sistema Possibilità di implementare logiche aggiuntive, estremamente interessanti
  • 47. MWT– Progettazione di Applicazioni Web Henry Muccini 47 Perche’ modellare una applicazione Web, allora? Per Aiutare la progettazione: – Documentare i Requisiti – Documentare i Servizi – Documentare i Vincoli Per Riusare Per Manutenere Per Analizzare Per Testare
  • 48. MWT– Progettazione di Applicazioni Web Henry Muccini 48 Caso di Studio Introdurre il caso di studio
  • 49. MWT– Progettazione di Applicazioni Web Henry Muccini 49 NOTE: Problema identificato: gestione dei tempi! 1. Il cliente cambia i requisiti!! • Imp: meeting con «tutti» i clienti • Imp: vincolare il cliente a quanto e’ stato scritto ed approvato 2. I tempi tecnici di sviluppo non corrispondono con i tempi stimati Principio: definire il «criterio» usato per guidare la design decision Principio: sviluppo incrementale, con identificazione dei task prioritari Principio: Dipendenze tra task