Architettura SW Definizione e Notazioni
|
|
- Fabiana Beretta
- 8 anni fa
- Visualizzazioni
Transcript
1 Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A Stili Architetturali E. TINELLI
2 Architettura SW Definizione e Notazioni Definizione ANSI/IEEE Std Std L organizzazione basilare di di un un sistema, rappresentato dalle dalle sue sue componenti, c dalle dalle relazioni che che esistono tra tra di di loro loro e con con l ambiente l circostante, e dai dai principi che che governano la la sua sua progettazione e evoluzione I sistemi più grandi sono eterogenei e non seguono un singolo stile uno stile è dominante Gli elementi architetturali (descritti generalmente come rettangoli) non sono mai degli oggetti sono piuttosto dei macro-oggetti caratterizzati da: un nome/riferimento un interfaccia pubblica (che descrive i servizi che offre) un implementazione privata E. TINELLI Ingegneria del Software A. A
3 Pattern Architetturale Uno stile (o pattern) architetturale esprime una schema per l organizzazione strutturale fondamentale di sistemi software Descrive il modello organizzativo strutturale di un sistema software in termini di: 1) sottosistemi e loro responsabilità; 2) linee guida per organizzare le relazioni tra tali sotto sistemi. Ciascun pattern architetturale può essere descritto in termini di contesto applicativo, soluzione proposta, discussione dei punti di forza e svantaggi. N.B. - I pattern SW non sono tra loro indipendenti alcuni sono alternativi, altri sinergici utile ragionare anche sulle relazioni tra pattern Un pattern language (linguaggio di pattern) è una famiglia di pattern correlati che risultano specifici per la progettazione di certi tipi di sistemi o per certi tipi di requisiti E. TINELLI Ingegneria del Software A. A
4 Un possibile catalogo di Pattern dal fango alla struttura per sostenere una decomposizione controllata del sistema complessivo (decomposizione di un sistema in sottosistemi) Layers, Pipes-and-Filters, Blackboard, Shared Repository, Database Access Layers (DAL), Domain Object sistemi distribuiti per fornire un infrastruttura per applicazioni distribuite Client-server, Broker sistemi interattivi per strutturare sistemi software che prevedono un interazione uomomacchina Model-View-Controller (MVC), Boundary-Control-Entity (BCE), BCE- DbInterface (BCED) sistemi adattabili per sostenere l adattamento del sistema a fronte dell evoluzione della tecnologia e/o dei requisiti funzionali Reflection, Microkernel E. TINELLI Ingegneria del Software A. A
5 Layers Si applica a grandi sistemi che si occupano della gestione di diversi aspetti e richiedono modificabilità e portabilità Partiziona il sistema in una gerarchia di strati verticali: Ogni strato ha una responsabilità distinta e specifica Uno strato può comunicare solo con lo strato sottostante uno strato fornisce servizi allo strato superiore e richiede servizi allo strato inferiore Uno strato potrebbe essere: Un modulo la comunicazione tra strati avviene come chiamate di procedure (locali) Un processo - la comunicazione tra strati avviene utilizzando protocolli e formati specifici (es. RPC, RMI, ecc) Diversi criteri di partizionamento: Astrazione (presentazione, logica applicativa, dati persistenti); Granularità (processi, servizi, moduli); Distanza dall HW; Tasso di cambiamento atteso E. TINELLI Ingegneria del Software A. A
6 Layers - Conseguenze Prestazioni funzionalità sono spesso implementate attraverso più strati: possono essere richiesti diversi cambiamenti di contesto, penalizzando le prestazioni in alcuni casi è possibile migliorare le prestazioni associando un diverso thread di esecuzione a ciascun evento che deve essere elaborato dal sistema Può essere difficile stabilire la granularità/il numero/il livello di astrazione degli strati Manutenibilità può essere alta se le dipendenze sono localizzate ma dipende da come i cambiamenti si ripercuotono sul sistema i cambiamenti dovrebbero essere localizzati in singoli componenti/strati se le funzionalità del sistema non sono state organizzate rispetto ad alcuni cambiamenti attesi, altri cambiamenti potranno riguardare molti strati con un effetto domino Possibilità di riusare strati Sicurezza è possibile inserire strati che introducono opportuni meccanismi di sicurezza ad es., autenticazione, autorizzazioni, crittografia,... E. TINELLI Ingegneria del Software A. A
7 Object Model Guida la decomposizione di elementi architetturali più grandi (ad es., uno strato di un architettura secondo Layers) usando come criteri base il Principio di Separazione degli Interessi e la Modularità La decomposizione può essere guidata da un modello del dominio (casi d uso, requisiti non funzionali, requisiti informativi, ecc.) Incapsula ciascuna responsabilità funzionale distinta di un sistema in un elemento auto-contenuto un oggetto di dominio ciascun elemento deve essere internamente coeso e debolmente accoppiato agli altri elementi ciascun elemento deve avere un interfaccia separata dalla sua implementazione le collaborazioni tra gli elementi devono avvenire solo sulla base della loro interfaccia E. TINELLI Ingegneria del Software A. A
8 Shared Repository Usato per applicazioni data-intensive in cui le interazioni tra le componenti del sistema non sono guidate da processi specifici ma possono essere coordinate sulla base dei dati condivisi su cui operano Mantiene i dati in un repository centrale condiviso da tutti i componenti funzionali del sistema e fa guidare e coordinare il flusso di controllo della logica applicativa dalla disponibilità qualità e stato dei dati nel repository L accesso ai dati gestiti dal repository condiviso dovrebbe essere opportunamente sincronizzato È un punto d accesso a dati condivisi ( es. un database relazionale, una collezione di oggetti in memoria, ecc.) E. TINELLI Ingegneria del Software A. A
9 Database Access Layer (DAL) Guida la connessione tra elementi architetturali sviluppati con tecnologia orientata agli oggetti e una base di dati relazionale Introduce uno strato separato per l accesso alla base di dati (database access layer) tra l applicazione e la base di dati relazionale questo strato fornisce all applicazione un interfaccia per l accesso ai dati stabile ed orientata agli oggetti (operazioni CRUD - Create, Read, Update, Delete) Il DAL traduce operazioni CRUD in istruzioni SQL e si occupa di altri aspetti quali concorrenza, transazioni, caching, accesso a DBMS diversi, ecc. E. TINELLI Ingegneria del Software A. A
10 Pipe-and and-filters Usato per un sistema che deve elaborare un flusso di dati (es. compilatore) in cui l elaborazione può essere organizzata in una sequenza di trasformazioni: Filtro consuma ed elabora dati in modo incrementale e svolge una singola unità di elaborazione, è possibile avere più sorgenti dati Pipe (tubo) collegano flussi di uscita con flussi di ingresso consecutivi quindi definendo un preciso formato per i dati che possono attraversarle connettono i filtri Conseguenze: La ricombinazione di filtri esistenti può portare alla definizione di nuove pipeline di elaborazione È possibile l elaborazione parallela e non sono necessari (ma possibili) file intermedi Passi non consecutivi non condividono informazioni difficile la gestione degli errori, la condivisione di informazioni di stato Possibile overhead nella trasformazione dati inter-filtro E. TINELLI Ingegneria del Software A. A
11 Client - Server Organizza un sistema come un insieme di servizi ciascun servizio è caratterizzato da un interfaccia definisce protocollo e formato dei messaggi scambiati, meccanismi di connessione tramite protocolli e porte un insieme server i server sono processi che erogano servizi un insieme di client i client sono processi fruitori di servizi i client sono attivi i server reattivi un server può servire concorrentemente molti client Permette la condivisione di risorse, la centralizzazione dell elaborazione ma può verificare overhead della comunicazione E. TINELLI Ingegneria del Software A. A
12 Architetture Client Server e Livelli Esistono diversi tipi di architetture client/server (C/S) le architetture C/S sono normalmente organizzate a livelli un livello (tier) corrisponde ad un nodo o gruppo di nodi di calcolo su cui è distribuito il sistema punto vista del deployment il sistema è organizzato come una sequenza di livelli ciascun livello funge da server per i suoi chiamanti nel livello precedente ciascun livello funge da client per il livello successivo i livelli sono comunemente organizzati in base al tipo di servizio (responsabilità) che forniscono Si tratta di un interpretazione particolare del pattern Layers in cui gli strati corrispondono all allocazione di server (processi) su nodi fisici: nella vista funzionale, il sistema adotta un architettura a strati in cui gli strati sono organizzati in base al livello di astrazione nella vista deployment, sistema adotta un architettura a livelli in cui i livelli sono organizzati in base al tipo di servizio (responsabilità) che forniscono ciascun livello è spesso internamente organizzato a strati E. TINELLI Ingegneria del Software A. A
13 Client Server a 2 livelli thin client -Maggior carico di comunicazione ma buona portabilità, possibili buone prestazioni perché logica applicativa ed acceso ai dati non sono separati, l eventuale potenza di calcolo non viene sfruttata fat client -Meno carico sul servente ma scarsa portabilità, possibilità di distribuire il carico di elaborazione. E. TINELLI Ingegneria del Software A. A
14 Client Server a 3 livelli consente una migliore distribuzione del carico di elaborazione architettura più scalabile se aumenta il carico è possibile aggiungere nuovi server mentre il livello intermedio può essere realizzato come un cluster di calcolatori Presenta una maggiore complessità dell architettura e un maggior overhead nella comunicazione E. TINELLI Ingegneria del Software A. A
15 Architettura ad oggetti distribuiti - Broker Costituisce un infrastruttura di comunicazione che rende trasparenti all applicazione (ed al programmatore) alcune complessità della distribuzione Introduce un componente broker per avere un miglior disaccoppiamento tra client e server che offre mediante delle API funzionalità per registrare servizi e richiedere l esecuzione degli stessi il broker incapsula i dettagli dell infrastruttura di comunicazione definisce un modello di programmazione distribuita in cui i client possono richiedere servizi remoti come se fossero servizi locali. In questo modo, i dettagli della comunicazione sono separati dalle funzionalità applicative Implementa la seguente dinamica di interazione i server registrano i propri servizi presso il broker i client accedono ai servizi indirettamente, tramite il broker che inoltra le loro richieste e gli trasmettono le risposte Architettura modificabile ed estensibile, servizi esistenti riusabili, interoperabilità tra broker diversi, possibile riduzione delle prestazione, testing complesso E. TINELLI Ingegneria del Software A. A
16 Model-View View-Controller (MVC) Divide un applicazione interattiva in 3 componenti Il Model incapsula funzionalità e dati che sono indipendenti dalla specifica rappresentazione dell output o dal comportamento di input Le Views mostrano le informazioni all utente. Una View ottiene i dati dal Model (possono esserci più View di uno stesso Model) I Controller gestiscono l input utente e la comunicazione Model-View. I componenti Controller ricevono l input che di solito codifica un evento come il movimento del mouse o un input da tastiera. Gli eventi sono poi tradotti in service request per il Model La consistenza tra UI e Model è garantita da un meccanismo di propagazione dei cambiamenti quando un modello cambia il suo stato, notifica tutte le sue viste ed i suoi controller del cambiamento in modo che questi possano aggiornare il loro stato in modo appropriato E. TINELLI Ingegneria del Software A. A
17 Model-View View-Controller VS Boundary-Control Control-Entity «uses» «uses» «uses» Boundary Control Entity Attore E. TINELLI Ingegneria del Software A. A
18 Architettura orientata ai servizi servizi ( implementati come Web Services (WS)) hanno l obiettivo di incapsulare funzionalità di business (logica applicativa) per renderle disponibili ed accessibili come servizi sul web SOA (Service-Oriented Architecture) architettura in cui le funzionalità di business vengono esposte agli utenti come servizi riusabili e condivisi in rete L approccio orientato ai servizi è basato sull idea di comporre applicazioni sulla base della scoperta e dell invocazione di servizi disponibili in rete anziché costruire nuove applicazioni solo per svolgere compiti specifici Contesto aziendale attuale alta competitività; integrazione di processi e informazioni; adattamento rapido a nuovi processi di business; natura eterogenea delle organizzazioni e delle soluzioni informatiche (interoperabilità su diverse piattaforme) E. TINELLI Ingegneria del Software A. A
19 Web Services Hanno l obiettivo di fornire servizi sul web a client software Un Web Service è un modulo software, auto-contenuto ed autodescrittivo, accessibile mediante Internet, in modo indipendente dalla piattaforma Possono essere composti favorendo l integrazione di servizi, la creazione di processi di business completi, con un costo di sviluppo ridotto sia nell ambito una singola organizzazione che tra diverse organizzazioni (integrazione di e-business) E. TINELLI Ingegneria del Software A. A
20 SOA e Layers SOA è un approccio architetturale per costruire sistemi e applicazioni che usano un insieme di servizi e non solo un singolo sistema come un insieme di servizi il cui obiettivo è consentire alle organizzazioni di sviluppare, connettere e mantenere applicazioni e servizi di tipo enterprise in modo efficiente ed economico Lo stile SOA adotta Layers come primo crieterio di decomposizione: Livello dei Servizi di Business ciascun dominio di business (es. servizio bancario) è costituito da un certo numero di processi di business (es. erogazione di un mutuo) Livello dei Processi di Business ciascun processo di business rappresenta un compito di business automatizzato ed elementare che può essere usato in uno o più processi di business Accoppiamento debole tra i servizi e tra servizi-processi ottenuto mediante incapsulamento separazione tra implementazione ed interfaccia ed interazioni basate su interfaccia E. TINELLI Ingegneria del Software A. A
21 Progettazione per Componenti VS SOA Le architetture a componenti offrono vantaggi legati alla modularità, al riuso e all incapsulamento nei contesti di integrazione, ciascun componente deve essere opportunamente collegato ad altri componenti aumentando la complessità del sistema B A In un architettura a servizi ciascun componente (servizio) incapsula una funzionalità di business la logica dell infrastruttura tecnologica è portata ad di fuori dei servizi i servizi sono debolmente accoppiati e possono essere integrati e composti più facilmente e più agilmente E. TINELLI Ingegneria del Software A. A
Considera tutti i requisiti funzionali (use cases) NON deve necessariamente modellare i requisiti non funzionali
Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Progettazione OO E. TINELLI Punto di Partenza Il modello di analisi E una rappresentazione minima del
Dettagli7. Architetture Software
7. Architetture Software progettare la struttura Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 7. Architetture Software 1 / 20 Scopo della fase di design
DettagliSistemi informativi secondo prospettive combinate
Sistemi informativi secondo prospettive combinate direz acquisti direz produz. direz vendite processo acquisti produzione vendite INTEGRAZIONE TRA PROSPETTIVE Informazioni e attività sono condivise da
DettagliProgetto di Applicazioni Software
Progetto di Applicazioni Software Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2008/2009 Questi lucidi sono stati prodotti sulla
DettagliProgetto di Applicazioni Software
Progetto di Applicazioni Software Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti SAPIENZA Università di Roma Anno Accademico 2010/2011 Questi lucidi sono stati prodotti sulla
DettagliEsercitazioni di PROGETTAZIONE DEL SOFTWARE A.A. 2011-2012
Sapienza Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica Corso di Laurea in Ingegneria Informatica ed Automatica Corso di Laurea in Ingegneria dei Sistemi Informatici
DettagliConcetti di base di ingegneria del software
Concetti di base di ingegneria del software [Dalle dispense del corso «Ingegneria del software» del prof. A. Furfaro (UNICAL)] Principali qualità del software Correttezza Affidabilità Robustezza Efficienza
DettagliBasi di dati. Corso di Laurea in Ingegneria Informatica Canale di Ingegneria delle Reti e dei Sistemi Informatici - Polo di Rieti
Basi di dati Corso di Laurea in Ingegneria Informatica Canale di Ingegneria delle Reti e dei Sistemi Informatici - Polo di Rieti Anno Accademico 2008/2009 Introduzione alle basi di dati Docente Pierangelo
DettagliStrumenti di modellazione. Gabriella Trucco
Strumenti di modellazione Gabriella Trucco Linguaggio di modellazione Linguaggio formale che può essere utilizzato per descrivere (modellare) un sistema Il concetto trova applicazione soprattutto nell
DettagliApproccio stratificato
Approccio stratificato Il sistema operativo è suddiviso in strati (livelli), ciascuno costruito sopra quelli inferiori. Il livello più basso (strato 0) è l hardware, il più alto (strato N) è l interfaccia
DettagliUna metodologia per la specifica di software basato su componenti
Luca Cabibbo Architetture Software Una metodologia per la specifica di software basato su componenti Dispensa ASW 445 ottobre 2014 La mappa non è il territorio. Douglas R. King 1 -Fonti [UML Components],
DettagliComunicazione tra Computer. Protocolli. Astrazione di Sottosistema di Comunicazione. Modello di un Sottosistema di Comunicazione
I semestre 04/05 Comunicazione tra Computer Protocolli Prof. Vincenzo Auletta auletta@dia.unisa.it http://www.dia.unisa.it/professori/auletta/ Università degli studi di Salerno Laurea in Informatica 1
DettagliLaboratorio di Informatica I
Struttura della lezione Lezione 1: Le Architetture Distribuite Vittorio Scarano Algoritmi e Strutture Dati: Algoritmi Distribuiti Corso di Laurea in Informatica Università di Salerno Le architetture distribuite
DettagliIntroduzione alle basi di dati. Gestione delle informazioni. Gestione delle informazioni. Sistema informatico
Introduzione alle basi di dati Introduzione alle basi di dati Gestione delle informazioni Base di dati Modello dei dati Indipendenza dei dati Accesso ai dati Vantaggi e svantaggi dei DBMS Gestione delle
DettagliB.P.S. Business Process Server ALLEGATO C10
B.P.S. Business Process Server ALLEGATO C10 REGIONE BASILICATA DIPARTIMENTO PRESIDENZA DELLA GIUNTA REGIONALE UFFICIO SISTEMA INFORMATIVO REGIONALE E STATISTICA Via V. Verrastro, n. 4 85100 Potenza tel
DettagliPresentazione di Cedac Software
Agenda Presentazione di Cedac Software SOA ed ESB Analisi di un caso studio Esempi Q&A Presentazione di Cedac Software 1 2 Presentazione di Cedac Software S.r.l. Divisione Software Azienda nata nel 1994
DettagliArchitetture Informatiche. Dal Mainframe al Personal Computer
Architetture Informatiche Dal Mainframe al Personal Computer Architetture Le architetture informatiche definiscono le modalità secondo le quali sono collegati tra di loro i diversi sistemi ( livello fisico
Dettagli9. Architetture di Dominio
9. Architetture di Dominio imparare dall esperienza comune Andrea Polini Ingegneria del Software Corso di Laurea in Informatica (Ingegneria del Software) 9. Architetture di Dominio 1 / 20 Sommario 1 Architetture
DettagliArchitetture software
Corso di Laurea Magistrale in Ingegneria Informatica Corso di Ingegneria del A. A. 2013-2014 Architettura software 1 Architetture software Sommario Definizioni 2 Architettura Definizione. L architettura
DettagliBase di dati e sistemi informativi
Base di dati e sistemi informativi Una base di dati è un insieme organizzato di dati opportunamente strutturato per lo svolgimento di determinate attività La base di dati è un elemento fondamentale per
DettagliLa gestione di un calcolatore. Sistemi Operativi primo modulo Introduzione. Sistema operativo (2) Sistema operativo (1)
La gestione di un calcolatore Sistemi Operativi primo modulo Introduzione Augusto Celentano Università Ca Foscari Venezia Corso di Laurea in Informatica Un calcolatore (sistema di elaborazione) è un sistema
DettagliProgramma del Corso. Dati e DBMS SQL. Progettazione di una. Normalizzazione
Programma del Corso Dati e DBMS DBMS relazionali SQL Progettazione di una base di dati Normalizzazione (I prova scritta) (II prova scritta) Interazione fra linguaggi di programmazione e basi di dati Cenni
DettagliTelerilevamento e GIS Prof. Ing. Giuseppe Mussumeci
Corso di Laurea Magistrale in Ingegneria per l Ambiente e il Territorio A.A. 2014-2015 Telerilevamento e GIS Prof. Ing. Giuseppe Mussumeci Strutture di dati: DB e DBMS DATO E INFORMAZIONE Dato: insieme
DettagliArchitetture Informatiche. Dal Mainframe al Personal Computer
Architetture Informatiche Dal Mainframe al Personal Computer Architetture Le architetture informatiche definiscono le modalità secondo le quali sono collegati tra di loro i diversi sistemi ( livello fisico
DettagliCostruire il futuro il valore delle scelte tecnologiche
Franco Lenzi Costruire il futuro il valore delle scelte tecnologiche 7 e 8 maggio 2010, Venezia, Hotel Hilton Molino Stucky 1 La strategia tecnologica Gli obiettivi espressi dalle scelta di strategia e
DettagliSDD System design document
UNIVERSITA DEGLI STUDI DI PALERMO FACOLTA DI INGEGNERIA CORSO DI LAUREA IN INGEGNERIA INFORMATICA TESINA DI INGEGNERIA DEL SOFTWARE Progetto DocS (Documents Sharing) http://www.magsoft.it/progettodocs
DettagliGenLApp Generazione Lista di Applicazioni. Design Patterns. Classi Essenziali. Modellazione Dati. Progettazione della Linea di Prodotti
Progettazione della Linea di Prodotti GenLApp Generazione Lista di Applicazioni Progettazione della Linea di Prodotti Classi Essenziali Responsabilità sui 3 Livelli Architetturali Descrizione delle Responsabilità
DettagliBASE DI DATI: introduzione. Informatica 5BSA Febbraio 2015
BASE DI DATI: introduzione Informatica 5BSA Febbraio 2015 Di cosa parleremo? Base di dati relazionali, modelli e linguaggi: verranno presentate le caratteristiche fondamentali della basi di dati. In particolare
DettagliScenario di Progettazione
Appunti del 3 Ottobre 2008 Prof. Mario Bochicchio SCENARIO DI PROGETTAZIONE Scenario di Progettazione Il Committente mette a disposizione delle risorse e propone dei documenti che solitamente rappresentano
DettagliCorso di Laurea Triennale in Ingegneria Informatica. Corso di Ingegneria del software A. A. 2004-2005. Marina Mongiello
Corso di Laurea Triennale in Ingegneria Informatica Corso di Ingegneria del A. A. 2004-2005 1 La progettazione È applicata indipendentemente dal modello di processo utilizzato. Parte dal punto in cui sono
DettagliDatabase. Si ringrazia Marco Bertini per le slides
Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida
DettagliIntroduzione alle applicazioni di rete
Introduzione alle applicazioni di rete Definizioni base Modelli client-server e peer-to-peer Socket API Scelta del tipo di servizio Indirizzamento dei processi Identificazione di un servizio Concorrenza
DettagliE.S.B. Enterprise Service Bus ALLEGATO C11
E.S.B. Enterprise Service Bus ALLEGATO C11 REGIONE BASILICATA DIPARTIMENTO PRESIDENZA DELLA GIUNTA REGIONALE UFFICIO SISTEMA INFORMATIVO REGIONALE E STATISTICA Via V. Verrastro, n. 4 85100 Potenza tel
DettagliSISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB.
SISTEMI E RETI Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB. CRITTOGRAFIA La crittografia è una tecnica che si occupa della scrittura segreta in codice o cifrata
DettagliInformatica Generale Andrea Corradini. 19 - Sistemi di Gestione delle Basi di Dati
Informatica Generale Andrea Corradini 19 - Sistemi di Gestione delle Basi di Dati Sommario Concetti base di Basi di Dati Il modello relazionale Relazioni e operazioni su relazioni Il linguaggio SQL Integrità
DettagliMODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it
MODELLO CLIENT/SERVER Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena daino@unisi.it POSSIBILI STRUTTURE DEL SISTEMA INFORMATIVO La struttura di un sistema informativo
DettagliBusiness Process Management
Business Process Management Comprendere, gestire, organizzare e migliorare i processi di business Caso di studio a cura della dott. Danzi Francesca e della prof. Cecilia Rossignoli 1 Business process Un
DettagliLezione 1. Introduzione e Modellazione Concettuale
Lezione 1 Introduzione e Modellazione Concettuale 1 Tipi di Database ed Applicazioni Database Numerici e Testuali Database Multimediali Geographic Information Systems (GIS) Data Warehouses Real-time and
DettagliSistemi Operativi STRUTTURA DEI SISTEMI OPERATIVI 3.1. Sistemi Operativi. D. Talia - UNICAL
STRUTTURA DEI SISTEMI OPERATIVI 3.1 Struttura dei Componenti Servizi di un sistema operativo System Call Programmi di sistema Struttura del sistema operativo Macchine virtuali Progettazione e Realizzazione
DettagliProgettaz. e sviluppo Data Base
Progettaz. e sviluppo Data Base! Progettazione Basi Dati: Metodologie e modelli!modello Entita -Relazione Progettazione Base Dati Introduzione alla Progettazione: Il ciclo di vita di un Sist. Informativo
DettagliIl sistema operativo TinyOS
tesi di laurea Anno Accademico 2005/2006 relatore Ch.mo prof. Domenico Cotroneo candidato Giovanni Chierchia Matr. 534 / 804 ::. Obiettivi del lavoro di tesi Studio del sistema operativo TinyOS Studio
DettagliReplicazione. Requisisti di consistenza i clienti devono ricevere risposte consistenti e coerenti. Motivazioni
Replicazione Replicazione dei dati: gestione e manutenzione di un insieme di copie dei dati Motivazioni: - disponibilità - tolleranza ai guasti - prestazioni aching diverso da replicazione aching non aumenta
DettagliScalabilità, Controllo distribuito e Console multiple
Scalabilità, Controllo distribuito e Console multiple Alessio Bechini Sommario Elementi logici Modello NNM (di HP) per distribuzione e scalabilita` Management attraverso consoles multiple Strategie di
DettagliCorso di Basi di Dati e Conoscenza
Corso di Basi di Dati e Conoscenza Gestione dei Dati e della Conoscenza Primo Emicorso - Basi di Dati Roberto Basili a.a. 2012/13 1 Obbiettivi Formativi Scenario Le grandi quantità di dati accumulate nelle
DettagliPattern software. [SAP] Chapter 13, Architectural Tactics and Patterns
Luca Cabibbo Architetture Software Dispensa ASW 350 ottobre 2014 Prima che sia stato provato, è un opinione. Dopo che è stato provato, è ovvio. William C. Burkett 1 -Fonti [SSA] Chapter 11, Using Styles
DettagliLa Metodologia adottata nel Corso
La Metodologia adottata nel Corso 1 Mission Statement + Glossario + Lista Funzionalià 3 Descrizione 6 Funzionalità 2 Schema 4 Schema 5 concettuale Logico EA Relazionale Codice Transazioni In PL/SQL Schema
DettagliIndice generale. OOA Analisi Orientata agli Oggetti. Introduzione. Analisi
Indice generale OOA Analisi Orientata agli Oggetti Introduzione Analisi Metodi d' analisi Analisi funzionale Analisi del flusso dei dati Analisi delle informazioni Analisi Orientata agli Oggetti (OOA)
DettagliCon il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione.
Con il termine Sistema operativo si fa riferimento all insieme dei moduli software di un sistema di elaborazione dati dedicati alla sua gestione. Compito fondamentale di un S.O. è infatti la gestione dell
DettagliReti di Telecomunicazione Lezione 8
Reti di Telecomunicazione Lezione 8 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Livello di trasporto Programma della lezione relazione tra lo strato di trasporto e lo strato
DettagliCorso di Laurea Specialistica in Ingegneria Informatica. Corso di Ingegneria del Software A. A. 2008-2009. Class Discovery E.
Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Class Discovery E. TINELLI Contenuti Classi di analisi: definizione ed esempi Tecniche per la definizione
DettagliService Oriented Architecture what and why? QuickTime and a decompressor are needed to see this picture.
Service Oriented Architecture what and why? Service Oriented Architecture : architettura In quanto architettura, non è soltanto un insieme di nuove tecnologie, ma un insieme di componenti, di modelli e
DettagliStandard di comunicazione
Standard di comunicazione Organizzato a livelli per ridurne la complessità e aumentarne la flessibilità il numero dei livelli e le loro funzionalità dipendono dal tipo di rete ogni livello formalizza un
DettagliBASI DI DATI per la gestione dell informazione. Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone
BASI DI DATI per la gestione dell informazione Angelo Chianese Vincenzo Moscato Antonio Picariello Lucio Sansone Libro di Testo 22 Chianese, Moscato, Picariello e Sansone BASI DI DATI per la Gestione dell
DettagliOrganizzazione degli archivi
COSA E UN DATA-BASE (DB)? è l insieme di dati relativo ad un sistema informativo COSA CARATTERIZZA UN DB? la struttura dei dati le relazioni fra i dati I REQUISITI DI UN DB SONO: la ridondanza minima i
DettagliTecniche di riuso del software: applicazione ad un caso di studio reale
tesi di laurea Tecniche di riuso del software: applicazione ad un caso di studio reale Anno Accademico 2005-2006 relatore Ch.mo prof. Porfirio Tramontana correlatore Sig. Mario Polverino candidato Luigi
DettagliIl Pattern MVC nei Framework di sviluppo per applicazioni Web. Analisi e comparazione di SPRING MVC Framework e ASP.NET MVC Framework.
tesi di laurea Il Pattern MVC nei Framework di sviluppo per applicazioni Web. Analisi e comparazione di SPRING MVC Framework e ASP.NET MVC Framework. Anno Accademico 2008/2009 relatore Ch.mo prof. Porfirio
DettagliSistemi Operativi. Conclusioni e nuove frontiere
Sistemi Operativi (modulo di Informatica II) Conclusioni e nuove frontiere Patrizia Scandurra Università degli Studi di Bergamo a.a. 2008-09 Sommario Definizione di sistema operativo Evoluzione futura
DettagliSistemi Operativi MECCANISMI E POLITICHE DI PROTEZIONE. D. Talia - UNICAL. Sistemi Operativi 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
DettagliMECCANISMI E POLITICHE DI PROTEZIONE 13.1
MECCANISMI E POLITICHE DI PROTEZIONE 13.1 Protezione Obiettivi della Protezione Dominio di Protezione Matrice di Accesso Implementazione della Matrice di Accesso Revoca dei Diritti di Accesso Sistemi basati
DettagliSISTEMI OPERATIVI DISTRIBUITI
SISTEMI OPERATIVI DISTRIBUITI E FILE SYSTEM DISTRIBUITI 12.1 Sistemi Distribuiti Sistemi operativi di rete Sistemi operativi distribuiti Robustezza File system distribuiti Naming e Trasparenza Caching
DettagliIntroduzione ai Web Services Alberto Polzonetti
PROGRAMMAZIONE di RETE A.A. 2003-2004 Corso di laurea in INFORMATICA Introduzione ai Web Services alberto.polzonetti@unicam.it Introduzione al problema della comunicazione fra applicazioni 2 1 Il Problema
DettagliUn approccio innovativo per il delivery di servizi in infrastrutture di nomadic computing
Un approccio innovativo per il delivery di servizi in infrastrutture di nomadic computing Relatore Prof. Ing. Stefano Russo Correlatore Ing. Domenico Cotroneo Candidato Armando Migliaccio matr. 41/2784
DettagliIntroduzione alla Virtualizzazione
Introduzione alla Virtualizzazione Dott. Luca Tasquier E-mail: luca.tasquier@unina2.it Virtualizzazione - 1 La virtualizzazione è una tecnologia software che sta cambiando il metodo d utilizzo delle risorse
DettagliInformatica Documentale
Informatica Documentale Ivan Scagnetto (scagnett@dimi.uniud.it) Stanza 3, Nodo Sud Dipartimento di Matematica e Informatica Via delle Scienze, n. 206 33100 Udine Tel. 0432 558451 Ricevimento: giovedì,
DettagliInfrastruttura di produzione INFN-GRID
Infrastruttura di produzione INFN-GRID Introduzione Infrastruttura condivisa Multi-VO Modello Organizzativo Conclusioni 1 Introduzione Dopo circa tre anni dall inizio dei progetti GRID, lo stato del middleware
DettagliPer capire meglio l ambito di applicazione di un DWhouse consideriamo la piramide di Anthony, L. Direzionale. L. Manageriale. L.
DATA WAREHOUSE Un Dataware House può essere definito come una base di dati di database. In molte aziende ad esempio ci potrebbero essere molti DB, per effettuare ricerche di diverso tipo, in funzione del
DettagliImplementazione di MVC. Gabriele Pellegrinetti
Implementazione di MVC Gabriele Pellegrinetti 2 Come implementare il pattern Model View Controller con le tecnologie JSP, ASP e XML Implementazione del pattern MVC in Java (JSP Model 2) SUN è stato il
DettagliLe reti. Introduzione al concetto di rete. Classificazioni in base a
Le reti Introduzione al concetto di rete Classificazioni in base a Software di rete OSI e TCP/IP Definizione di rete Vantaggi delle reti Reti ad architettura centralizzata e distribuita Sistemi aperti
DettagliCaratteristiche principali. Contesti di utilizzo
Dalle basi di dati distribuite alle BASI DI DATI FEDERATE Antonella Poggi Dipartimento di Informatica e Sistemistica Antonio Ruberti Università di Roma La Sapienza Anno Accademico 2006/2007 http://www.dis.uniroma1.it/
DettagliIntroduzione alle tecnologie informatiche. Strumenti mentali per il futuro
Introduzione alle tecnologie informatiche Strumenti mentali per il futuro Panoramica Affronteremo i seguenti argomenti. I vari tipi di computer e il loro uso Il funzionamento dei computer Il futuro delle
DettagliArchitettura di un sistema operativo
Architettura di un sistema operativo Dipartimento di Informatica Università di Verona, Italy Struttura di un S.O. Sistemi monolitici Sistemi a struttura semplice Sistemi a livelli Virtual Machine Sistemi
DettagliModellazione di sistema
Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Modellazione di sistema E. TINELLI Contenuti Approcci di analisi Linguaggi di specifica Modelli di
DettagliRealizzazione di un prototipo di un software web based per la gestione di un inventario comunale
tesi di laurea inventario comunale Anno Accademico 2009/2010 relatore Ch.mo prof. Porfirio Tramontana correlatore Ch.mo Ing. Luigi Pontillo candidato Michele Vitelli Matr. 534 2170 Redazione dell Inventario
DettagliCiclo di vita dimensionale
aprile 2012 1 Il ciclo di vita dimensionale Business Dimensional Lifecycle, chiamato anche Kimball Lifecycle descrive il framework complessivo che lega le diverse attività dello sviluppo di un sistema
DettagliInsegnamento di Informatica CdS Scienze Giuridiche A.A. 2007/8
Insegnamento di Informatica CdS Scienze Giuridiche A.A. 2007/8 Livelli di rete e architettura Client-Server Lez 12 architettura client-server 1 Scorsa lezione: comunicazione Gli utenti chiedono comunicazione
DettagliSicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security con token SAML
Master Universitario di II livello in Interoperabilità Per la Pubblica Amministrazione e Le Imprese Sicurezza nei Web Services: Migrazione dell autenticazone di Web Services da ticket di sessione a WS-Security
DettagliSistemi centralizzati e distribuiti
Sistemi centralizzati e distribuiti In relazione al luogo dove è posta fisicamente la base di dati I sistemi informativi, sulla base del luogo dove il DB è realmente dislocato, si possono suddividere in:
DettagliIngegneria del Software 12. Progettazione. Dipartimento di Informatica Università di Pisa A.A. 2014/15
Ingegneria del Software 12. Progettazione Dipartimento di Informatica Università di Pisa A.A. 2014/15 progettare prima di produrre Tipico della produzione industriale sul tavolo da disegno si usa la gomma,
DettagliComunicazione tra Processi
Comunicazione tra Processi Comunicazioni in un Sistema Distribuito Un sistema software distribuito è realizzato tramite un insieme di processi che comunicano, si sincronizzano, cooperano. Il meccanismo
DettagliComunicazione tra Processi
Comunicazione tra Processi Comunicazioni in un Sistema Distribuito Un sistema software distribuito è realizzato tramite un insieme di processi che comunicano, si sincronizzano, cooperano. Il meccanismo
DettagliDiagrammi di Interazione
Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Diagrammi di Interazione Definizioni Diagrammi di Interazione una interazione specifica i dettagli
DettagliSeminario di Sistemi Distribuiti RPC su SOAP
Seminario di Sistemi Distribuiti RPC su SOAP Massimiliano Vivian [777775] Massimiliano Vivian 1 Introduzione La comunicazione delle informazioni è l elemento fondamentale per lo sviluppo dei sistemi. SOAP
DettagliSistemi Informativi Distribuiti
Corso di Laurea Magistrale in Ingegneria Gestionale Corso di Sistemi Informativi Modulo II A. A. 2013-2014 SISTEMI INFORMATIVI MODULO II Sistemi Informativi Distribuiti 1 Sistemi informativi distribuiti
DettagliCORSO DI RETI SSIS. Lezione n.2. 2 Novembre 2005 Laura Ricci
CORSO DI RETI SSIS Lezione n.2. 2 Novembre 2005 Laura Ricci IL DOMAIN NAME SYSTEM (DNS) Indirizzi IP poco adatti per essere memorizzati da utenti umani è prevista la possibiltà di associare nomi simbolici
DettagliGenerazione Automatica di Asserzioni da Modelli di Specifica
UNIVERSITÀ DEGLI STUDI DI MILANO BICOCCA FACOLTÀ DI SCIENZE MATEMATICHE FISICHE E NATURALI Corso di Laurea Magistrale in Informatica Generazione Automatica di Asserzioni da Modelli di Specifica Relatore:
DettagliArchitetture a oggetti distribuiti
Luca Cabibbo Architetture Software Architetture a oggetti distribuiti Dispensa ASW 420 ottobre 2014 Tutti sanno che una certa cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo
DettagliSWIM v2 Design Document
PROGETTO DI INGEGNERIA DEL SOFTWARE 2 SWIM v2 DD Design Document Matteo Danelli Daniel Cantoni 22 Dicembre 2012 1 Indice Progettazione concettuale Modello ER Entità e relazioni nel dettaglio User Feedback
DettagliComponenti Web: client-side e server-side
Componenti Web: client-side e server-side side Attività di applicazioni web Applicazioni web: un insieme di componenti che interagiscono attraverso una rete (geografica) Sono applicazioni distribuite logicamente
DettagliSmart Cities and Communities and Social Innovation Bando MIUR D.D. 391/Ric. del 5 luglio 2012. Monitoring e Billing in OCP
Smart Cities and Communities and Social Innovation Bando MIUR D.D. 391/Ric. del 5 luglio 2012 Monitoring e Billing in OCP Monitoring - introduzione Introduzione: Il tema del monitoraggio è di fondamentale
Dettagli1. BASI DI DATI: GENERALITÀ
1. BASI DI DATI: GENERALITÀ BASE DI DATI (DATABASE, DB) Raccolta di informazioni o dati strutturati, correlati tra loro in modo da risultare fruibili in maniera ottimale. Una base di dati è usualmente
Dettagli@2011 Politecnico di Torino. Pag. 1. Architettura distribuita. Architetture Client/Server. Architettura centralizzata. Architettura distribuita
Architettura client/ stazioni utente Basi di ati Architetture /Server B locali M BG Architettura centralizzata Un architettura è centralizzata quando i dati e le (programmi) risiedono in un unico Tutta
DettagliLa piattaforma di lettura targhe intelligente ed innovativa in grado di offrire servizi completi e personalizzati
La piattaforma di lettura targhe intelligente ed innovativa in grado di offrire servizi completi e personalizzati Affidabilità nel servizio precisione negli strumenti Chanda LPR Chanda LPR è una piattaforma
DettagliReti di Telecomunicazione Lezione 6
Reti di Telecomunicazione Lezione 6 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Lo strato di applicazione protocolli Programma della lezione Applicazioni di rete client - server
DettagliRetail L organizzazione innovativa del tuo punto vendita
fare Retail L organizzazione innovativa del tuo punto vendita fareretail è una soluzione di by www.fareretail.it fareretail fareretail è la soluzione definitiva per la Gestione dei Clienti e l Organizzazione
DettagliInformatica 3. Informatica 3. LEZIONE 10: Introduzione agli algoritmi e alle strutture dati. Lezione 10 - Modulo 1. Importanza delle strutture dati
Informatica 3 Informatica 3 LEZIONE 10: Introduzione agli algoritmi e alle strutture dati Modulo 1: Perchè studiare algoritmi e strutture dati Modulo 2: Definizioni di base Lezione 10 - Modulo 1 Perchè
DettagliSOLUZIONE Web.Orders online
SOLUZIONE Web.Orders online Gennaio 2005 1 INDICE SOLUZIONE Web.Orders online Introduzione Pag. 3 Obiettivi generali Pag. 4 Modulo di gestione sistema Pag. 5 Modulo di navigazione prodotti Pag. 7 Modulo
DettagliProtezione. Protezione. Protezione. Obiettivi della protezione
Protezione Protezione La protezione riguarda i meccanismi per il controllo dell accesso alle risorse in un sistema di calcolo da parte degli utenti e dei processi. Meccanismi di imposizione fissati in
DettagliUniversità degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica. Ingegneria del Software. La fase di Analisi
Università degli Studi di Parma Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica Ingegneria del Software La fase di Analisi Giulio Destri Ing. del software: Analisi - 1 Scopo del modulo Definire
DettagliArchivi e database. Prof. Michele Batocchi A.S. 2013/2014
Archivi e database Prof. Michele Batocchi A.S. 2013/2014 Introduzione L esigenza di archiviare (conservare documenti, immagini, ricordi, ecc.) è un attività senza tempo che è insita nell animo umano Primi
Dettagli