Luca Milan
|
|
- Lisa Manzi
- 8 anni fa
- Visualizzazioni
Transcript
1 Luca Milan
2 At its worst business logic can be very complex. Rules and logic describe many different cases and slants of behavior, and it s this complexity that objects were designed to work with. A Domain Model creates a web of interconnected objects, where each object represents some meaningful individual, whether as large as a corporation or as small as a single line on an order form Io leggo: usiamo tecniche OO per tradurre la complessità del dominio applicativo in un modello ad oggetti utile allo scopo (nessun virtuosismo concettuale dobbiamo essere pragmatici).
3 Una disciplina che aiuta lo sviluppatore ad consolidare le logiche di business (complesse e in evoluzione) di un dominio applicativo in un Modello ad Oggetti grazie al paradigma OO. Un insieme di regole e principi che pone il Modello ad Oggetti come centro del processo di sviluppo. Uno stile architetturale che realizza un disaccoppiamento tra il Modello ad Oggetti e gli altri strati software rendendolo totalmente autonomo e indipendente.
4 Possiamo farlo quando: Il processo di sviluppo è iterativo. Miglioreremo la conoscenza del dominio passo dopo passo grazie all aiuto degli esperti del dominio. Le logiche di business del domino sono complesse ed evolvono continuamente nel tempo. Conosciamo bene la programmazione OO ed abbiamo familiarità con concetti come Refactoring, IOC, Persistence Ignorance (PI), principi SOLID, ecc.. Non conviene usare la DDD quando: I progetti sono semplici (un blog, un piccolo e-commerce) e non subiscono evoluzioni nel tempo. Applicazioni di pura reportistica o ETL o simili
5 Domain Model An object model of the domain that incorporates both behavior and data da Fowler Una classe.net incarna un object model Attenzione: Classe!= Oggetto public class Ordine{ public string Cliente{get;set;} public void MarcaComeCompleto(){ Stato = StatoOrdine.Completo; } public IList<Linee> {get;set;} } Una volta creati gli oggetti possiamo collegarli tramite gerarchie e relazioni ed assegnarli ruoli e responsabilità. Ciò significa formare la rete interconnessa (grafo) del pattern di Fowler.
6 Bounded Context (or Context) The delimited applicability of a particular model. BOUNDING CONTEXTS gives team members a clear and shared understanding of what has to be consistent and what can develop independently da domaindrivendesign.org Rappresentano i confini (variabili) del dominio e devono essere ben marcati. Al di fuori di essi dobbiamo lasciare tutta la complessità non utile ai nostri scopi (funzionali ed applicativi). Non perdiamo la direzione!!!
7 Parte di Catalogo di un domain model per un sistema di e-commerce
8 Spesso i domain model non seguono le regole indicate da Fowler ed Evans, in questo caso Fowler identifica un anti-pattern: l Anemic Domain Model I sintomi di un dominio anemico sono a livello di classe: 1. Ad una 1 classe corrisponde una 1 tabella 2. Non ci sono metodi solo getters e setters 3. La logica anziché sui metodi viene incapsulata nei setters In questi casi dobbiamo rivitalizzare il dominio.
9 Ubiquitous Language Entity Value Object Repository Service Aggregates Factories Specification / Queries Context (Boundary / Map) Attori della DDD Unit Of Work Inversion Of Control Object Relational Mapping Aspected Oriented Programming Contract By Design TDD, BDD OO tecniques, SOLID principles Refactoring Patterns e tecniche collegate
10 Sviluppatori ed esperti del dominio devono collaborare tra loro. Per farlo al meglio devono trovare un linguaggio comune semplice ed intuitivo con cui poter dialogare (no termini tecnici, no termini di business). Paginare, Schedulare, Indicizzare, Disaccoppiare CGA, Mandato ad Assicurare, ecc..
11 Dal libro di Eric Evans: 1. "An Entity is an Object that represents something with continuity and identity. An entity is tracked through different states and implementations. 2. "An object that represents a descriptive aspect of the domain with no conceptual identity
12 Dal libro di Eric Evans First we need an abstraction for encapsulating references within the [domain] model. An Aggregate is a cluster of associated [domain] objects that we treat as a unit for the purpose of [ensuring consistency of] data changes. Each Aggregate has a root and a boundary. The root is a single, specific Entity contained in the Aggregate
13 E uno dei concetti più dibattuti Fowler dice: A Repository mediates between the domain and data mapping layers, acting like an in-memory domain object collection. Client objects construct query specifications declaratively and submit them to Repository for satisfaction. Objects can be added to and removed from the Repository, as they can from a simple collection of objects, and the mapping code encapsulated by the Repository will carry out the appropriate operations behind the scenes. Conceptually, a Repository encapsulates the set of objects persisted in a data store and the operations performed over them, providing a more objectoriented view of the persistence layer. Repository also supports the objective of achieving a clean separation and one-way dependency between the domain and data mapping layers Parla il linguaggio del domain model (no DTO no DAO) ed è agnostico rispetto ai meccanismi di persistenza utilizzati dall applicazione. Rafforza il concetto di uguaglianza per Identità (non by reference), il repository restituisce la stessa istanza di oggetto se l oggetto ha la stessa identità.
14 Dal libro di Eric Evans A SERVICE is an operation offered as an interface that stands alone in the model, without encapsulating state, as ENTITIES and VALUE OBJECTS do. Un servizio si occupa di coordinare azioni che coinvolgono uno o più oggetti del dominio (entity,value objects,repository). Es. La modifica di un ordine non può essere delegata ad un singolo comportamento dell entità Ordine, meglio creare un servizio IOrderModify.Execute(params).
15 Possiamo usare l approccio DDD anche con altri tipi di architetture di classe enterprise: Con SOA vedi In scenari distribuiti come Distributed DDD vedi Con REST vedi n-patterns.aspx
16 A97EC-6B79-42C1-9DAF-D8D00D8C7759/guisa.pdf
17
Domain- Driven Design Giovedì, 21 giugno 2012 Speaker: Manuel Scapolan
Domain- Dri ven Design Giovedì, 21 giugno 2012 Speaker: Manuel Scapolan Domain Driven Design E un insieme di principi che ci aiutano a non fallire nel processo di sviluppo di un software * * considerando
DettagliSoftware solido e usabile
La tecnica di analisi e progetto Domain-Driven Design Software solido e usabile Nel cuore della complessità del software Che cos è il Domain-Driven Design È un approccio alla costruzione di sistemi software
DettagliIntroduzione al mondo della persistenza. Dott. Doria Mauro doriamauro@gmail.com
Hibernate Introduzione al mondo della persistenza Dott. Doria Mauro doriamauro@gmail.com La questione della persistenza Il modo dei database è complesso e le tecniche e le tecnologie sono molte. Per anni
DettagliProgrammazione Java Avanzata Spring - JDBC
Programmazione Java Avanzata Spring - JDBC Ing. Gianluca Caminiti Riferimenti Spring http://www.springsource.org/ (scaricate il reference) Beginning Spring 2 - From Novice to Professional. APress. 2008
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],
DettagliStefania Marrara - Esercitazioni di Tecnologie dei Sistemi Informativi. Integrazione di dati di sorgenti diverse
Politecnico di Milano View integration 1 Integrazione di dati di sorgenti diverse Al giorno d oggi d la mole di informazioni che viene gestita in molti contesti applicativi è enorme. In alcuni casi le
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
DettagliPROGETTAZIONE E SVILUPPO DI UN. Relatore: Studente: Paolo Merialdo Valerio Barbagallo
PROGETTAZIONE E SVILUPPO DI UN SIMULATORE ECONOMICO FISCALE Relatore: Studente: Paolo Merialdo Valerio Barbagallo Sommario il problema: gestione e ottimizzazione del bilancio piattaforma J2EE e framework
DettagliL evoluzione informatica. www.vincenzocalabro.it
L evoluzione informatica www.vincenzocalabro.it Agenda Perché voler vedere nel futuro? Semplificazione Ciò che cambierà Ciò che scomparirà E per noi? Quale futuro? 2 Perché voler vedere nel futuro? Quale
DettagliAPI e socket per lo sviluppo di applicazioni Web Based
API e socket per lo sviluppo di applicazioni Web Based Cosa sono le API? Consideriamo il problema di un programmatore che voglia sviluppare un applicativo che faccia uso dei servizi messi a disposizione
DettagliDistributed Object Computing
Evoluzione Architetturale Distributed omputing entralizzata Monolitica anni 60-70 Reti locali di P anni 80 Reti lient Server anni 80-90 Internet The network is the computer Paolo Falcarin Sistemi Informativi
DettagliSOA!= OO. Andrea Saltarello Software Architect @ Managed Designs S.r.l. andrea.saltarello@manageddesigns.it http://blogs.ugidotnet.
SOA!= OO Andrea Saltarello Software Architect @ Managed Designs S.r.l. andrea.saltarello@manageddesigns.it http://blogs.ugidotnet.org/pape http://creativecommons.org/licenses/by-nc-nd/2.5/ Chi sono Solution
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
DettagliConsidera 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
DettagliLibrerie digitali. Introduzione. Cos è una libreria digitale?
Librerie digitali Introduzione Cos è una libreria digitale? William Arms "An informal definition of a digital library is a managed collection of information, with associated services, where the information
Dettagli!"#$%&&'()#*%+%+!"#$"',,'()#*%+ -")%*&'&'+'$.)+-$$%&&) !"#$%&&'(%)'*+%",#-%"#.'%&'#/0)-+#12"+3,)4+56#7+#.')8'9
!"#$%&&'()#*%+%+!"#$"',,'()#*%+ -")%*&'&'+'$.)+-$$%&&)!"#$%&&'(%)'*+%",#-%"#.'%&'#/0)-+#12"+3,)4+56#7+#.')8'9 Slide 1 Paradigmi di Programmazione! Un linguaggio supporta uno stile di programmazione se
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
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
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
DettagliSOFTWARE SOLIDO E USABILE
SOFTWARE SOLIDO E USABILE L approccio Domain-Driven Design Nel cuore della complessità del software Che cos è il Domain-Driven Design È un approccio alla costruzione di sistemi software Usando modelli
DettagliDomain Driven Design: Overview Speaker: Giancarlo Sudano
Domain Driven Design: Overview Speaker: Giancarlo Sudano Giancarlo Sudano (alias janky) About me: Software Architect in Objectway Fondatore di GUISA www.guisa.org Blog su Ugidotnet: http://blogs.ugidotnet.org/janky
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
DettagliDispensa di database Access
Dispensa di database Access Indice: Database come tabelle; fogli di lavoro e tabelle...2 Database con più tabelle; relazioni tra tabelle...2 Motore di database, complessità di un database; concetto 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
DettagliDesign Patterns. Sommario. Architettura a 3 Livelli Concetti Generali Presentazione Dominio Sorgente Dati DIB 1. Design Patterns DIB 2
DIB 1 Sommario Architettura a 3 Livelli Concetti Generali Presentazione Dominio Sorgente Dati DIB 2 Architettura a 3 Livelli DIB 3 Architettura a 3 Livelli Presentazione Gestione dell interazione degli
DettagliGriglie e Sistemi di Elaborazione Ubiqui. Grid File Systems. Requisiti, Funzionalità e Architettura. Grid File System: Requisiti
Griglie e Sistemi di Elaborazione Ubiqui Grid File Systems Requisiti, Funzionalità e Architettura Griglie e Sistemi Ubiqui - D. Talia - UNICAL 1 Grid File System: Requisiti Name Space Gerarchico Logico
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
DettagliGriglie e Sistemi di Elaborazione Ubiqui. Grid File Systems. Requisiti, Funzionalità e Architettura. Griglie e Sistemi Ubiqui - D.
Griglie e Sistemi di Elaborazione Ubiqui Grid File Systems Requisiti, Funzionalità e Architettura Griglie e Sistemi Ubiqui - D. Talia - UNICAL 1 Grid File System: Requisiti Name Space Gerarchico Logico
DettagliLa base di dati (database)
La base di dati (database) La costruzione, analisi e interrogazione delle basi di dati Il Database e la sua organizzazione Un DATABASE è una raccolta strutturata di dati Database relazionali Organizzazione
DettagliIntroduzione alla teoria dei database relazionali. Come progettare un database
Introduzione alla teoria dei database relazionali Come progettare un database La struttura delle relazioni Dopo la prima fase di individuazione concettuale delle entità e degli attributi è necessario passare
DettagliObject Oriented Programming
OOP Object Oriented Programming Programmazione orientata agli oggetti La programmazione orientata agli oggetti (Object Oriented Programming) è un paradigma di programmazione Permette di raggruppare in
DettagliData Warehousing (DW)
Data Warehousing (DW) Il Data Warehousing è un processo per estrarre e integrare dati storici da sistemi transazionali (OLTP) diversi e disomogenei, e da usare come supporto al sistema di decisione aziendale
DettagliArchitettura SW Definizione e Notazioni
Corso di Laurea Specialistica in Ingegneria Informatica Corso di Ingegneria del Software A. A. 2008 - Stili Architetturali E. TINELLI Architettura SW Definizione e Notazioni Definizione ANSI/IEEE Std Std1471-2000
DettagliIBM Software Demos The Front-End to SOA
Oggi, imprese piccole e grandi utilizzano software basato sull'architettura SOA (Service-Oriented Architecture), per promuovere l'innovazione, ottimizzare i processi aziendali e migliorare l'efficienza.
DettagliGroups vs Organizational Units. A cura di Roberto Morleo
Groups vs Organizational Units A cura di Roberto Morleo Gruppo Windows 2 Groups vs Organizational Units Organizational Units Groups OU Design Using OUs to Delegate Administration Group Policies and OU
DettagliDecomponibilità dei sistemi software
Decomponibilità dei sistemi software 1 Componenti di un Sistema Software Un sistema software può essere visto come composto da tre principali tipi di i Componenti dell Interfaccia utente ( s) - costituiti
DettagliPag. 1 WIDE (I) josh: la piattaforma software per il KM. josh - Modello logico WIDE (II) josh - Modello fisico. Modello dei processi (I)
: la piattaforma software per il KM Nicolino Ambrosini it Consult WIDE (I) WIDE (Workflows on an Intelligent and Distribuited database Environment) E un progetto ESPRIT, il programma della Comunità Europea
DettagliIl BACKUP è disponibile in http://www.dbgroup.unimo.it/sia/esercizio_21_novembre_2013/esercizio_21_novembre_2013.bak
ESEMPIO DELLE VENDITE: MISURE ED AGGREGABILITA E l esempio discusso nelle dispense è Dispense : http://www.dbgroup.unimo.it/sia/sia_2014_progettazionediundw_misure.pdf esteso e dettagliato. Il BACKUP è
DettagliMetodologie Agili per lo sviluppo di applicazioni Internet Distribuite. Agile Group DIEE, Università di Cagliari www.agile.diee.unica.
Metodologie Agili per lo sviluppo di applicazioni Internet Distribuite Agile Group DIEE, Università di Cagliari www.agile.diee.unica.it Agile Group Agile Group, gruppo di ricerca su Ingegneria del SW,
DettagliCORSO DI PROGRAMMAZIONE JAVA
CORSO DI PROGRAMMAZIONE JAVA Corso di Programmazione Java Standard Edition ( MODULO A) OBIETTIVI ll corso ha come obiettivo quello di introdurre la programmazione a oggetti (OOP) e di fornire solide basi
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
DettagliRelazione Interoperabilità tra Aram e Pinakes3 di Valeriano Sandrucci 10/11/07
Relazione Interoperabilità tra Aram e Pinakes3 di Valeriano Sandrucci 10/11/07 1 Aram... 3 1.1 P3 Web Servicies...4 1.2 Re-ingegnerizzazione...4 2 P3 Repository... 7 2.1 P3 Repository Api...7 3 Ontologia
DettagliPROFILO AZIENDALE NET STUDIO 2015
PROFILO AZIENDALE NET STUDIO 2015 NET STUDIO 2015 Net Studio è un azienda che ha sede in Toscana ma opera in tutta Italia e in altri paesi Europei per realizzare attività di Consulenza, System Integration,
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
DettagliAutomazione Industriale 4- Ingegneria del Software
Automation Robotics and System CONTROL Università degli Studi di Modena e Reggio Emilia Automazione Industriale 4- Ingegneria del Software Cesare Fantuzzi (cesare.fantuzzi@unimore.it) Ingegneria Meccatronica
DettagliSoluzione dell esercizio del 2 Febbraio 2004
Soluzione dell esercizio del 2 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. E evidenziato un sotto caso di uso. 2. Modello concettuale Osserviamo
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
DettagliObject-Relational Mapping
Object-Relational Mapping Versione Preliminare Antonella Poggi Dipartimento di informatica e Sistemistica Sapienza Università di Roma Progetto di Applicazioni Software Anno accademico 2008-2009 Questi
DettagliCorso: Sistemi di elaborazione delle informazioni 2. Anno Accademico: 2007/2008. Docente: Mauro Giacomini
Corso: Sistemi di elaborazione delle informazioni 2. Anno Accademico: 2007/2008. Docente: Mauro Giacomini Organizzazione no-profit per lo sviluppo di standard che fornisce linee guida per: lo scambio la
DettagliThe Hitchhiker's Guide to testable code
The Hitchhiker's Guide to testable code semplici regole per scrivere codice semplice da testare Davide Cerbo - davidecerbo@gmail.com - JUG Roma Nicola Raglia - n.raglia@gmail.com - JUG Roma Non parleremo
DettagliSISTEMI INFORMATIVI AVANZATI -2010/2011 1. Introduzione
SISTEMI INFORMATIVI AVANZATI -2010/2011 1 Introduzione In queste dispense, dopo aver riportato una sintesi del concetto di Dipendenza Funzionale e di Normalizzazione estratti dal libro Progetto di Basi
DettagliArchitettura MVC-2 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3
Architettura MVC-2 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 Verso l architettura MVC-2 2 Il secondo passo verso l architettura MVC-2 è quello di separare il controllo dell
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
Dettagliobject oriented analysis
object oriented analysis 1 attività di analisi l obiettivo dell analisi è raggiungere la piena comprensione del dominio di interesse lo strumento è la descrizione di un modello di dominio mediante un opportuno
DettagliEsercizi di JavaScript
Esercizi di JavaScript JavaScript JavaScript é un linguaggio di programmazione interpretato e leggero, creato dalla Netscape. E' presente a patire da Netscape 2 in tutti i browser ed é dunque il linguaggio
DettagliObject Oriented Software Design
Dipartimento di Informatica e Sistemistica Antonio Ruberti Sapienza Università di Roma Object Oriented Software Design Corso di Tecniche di Programmazione Laurea in Ingegneria Informatica (Canale di Ingegneria
DettagliWorking with WMS Data
Working with WMS Data QGIS Tutorials and Tips Author Ujaval Gandhi http://google.com/+ujavalgandhi Translations by Pino Nicolosi a.k.a Rattus This work is licensed under a Creative Commons Attribution
DettagliCapitolo 13. Interrogare una base di dati
Capitolo 13 Interrogare una base di dati Il database fisico La ridondanza è una cosa molto, molto, molto brutta Non si devono mai replicare informazioni scrivendole in più posti diversi nel database Per
DettagliAPPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI
APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI Indice 1 Le frazioni algebriche 1.1 Il minimo comune multiplo e il Massimo Comun Divisore fra polinomi........ 1. Le frazioni algebriche....................................
DettagliBDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software. Caratteristiche fondamentali. Linguaggi utilizzati. Navigazione 3D
BDX 3D-EDITOR (autore: Marco Bedulli) Scopo del software BDX 3D Editor è un programma che permette di navigare ed editare texture in un qualsiasi modello 3D.E compatibile con i software in grado di esportare
DettagliRELAZIONE PROGETTO DATABASE GESTIONE BIBLIOTECA PERSONALE
RELAZIONE PROGETTO DATABASE GESTIONE BIBLIOTECA PERSONALE Mameli Salvatore-M01/000153 SOMMARIO 1 INTRODUZIONE 1.1 Project Overview 1.2 Ambiente del prodotto 1.3 Document Overview 2 - PROGETTAZIONE 2.1
DettagliAppunti di Sistemi Distribuiti
Appunti di Sistemi Distribuiti Matteo Gianello 27 settembre 2013 1 Indice 1 Introduzione 3 1.1 Definizione di sistema distribuito........................... 3 1.2 Obiettivi.........................................
DettagliTFS2010 Object Model Le build
TFS2010 Object Model Le build La Team Foundation Build è il pilastro dell infrastruttura di Visual Studio ALM che permette la compilazione autonoma del codice sorgente da parte di un server, eliminando
DettagliCorso di Laboratorio di Basi di Dati
Corso di Laboratorio di Basi di Dati F1I072 - INF/01 a.a 2009/2010 Pierluigi Pierini Technolabs S.p.a. Pierluigi.Pierini@technolabs.it Università degli Studi di L Aquila Dipartimento di Informatica Technolabs
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Design Pattern: Storia Parte b versione 2.1 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima pagina)
DettagliA.A. 2006/2007 Laurea di Ingegneria Informatica. Fondamenti di C++ Horstmann Capitolo 3: Oggetti Revisione Prof. M. Angelaccio
A.A. 2006/2007 Laurea di Ingegneria Informatica Fondamenti di C++ Horstmann Capitolo 3: Oggetti Revisione Prof. M. Angelaccio Obbiettivi Acquisire familiarità con la nozione di oggetto Apprendere le proprietà
DettagliIngegneria del Software
Ingegneria del Software Processi di Sviluppo Agile Origini dello Sviluppo Agile Proposta di un gruppo di sviluppatori che rilevava una serie di criticità degli approcci convenzionali: Troppa rigidità dei
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
DettagliVolumi di riferimento
Simulazione seconda prova Esame di Stato Gestione di un centro agroalimentare all ingrosso Parte prima) Un nuovo centro agroalimentare all'ingrosso intende realizzare una base di dati per l'attività di
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
DettagliCAPITALIZZARE DAL PASSATO PER ECCELLERE NEL FUTURO
Veneranda Fabbrica del Duomo di Milano IL VALORE DEL VIAGGIO NEL TEMPO Nuovo Museo del Duomo 22 Maggio 2014 LA STORIA E GLI ACQUISTI Procurement Hour CAPITALIZZARE DAL PASSATO PER ECCELLERE NEL FUTURO
DettagliProtocollo di metadata harvesting OAI-PMH Lavoro pratico 2
Docente: prof.silvio Salza Candidato: Protocollo di metadata harvesting OAI-PMH Open Archive Initiative OAI (Open Archive Initiative) rendere facilmente fruibili gli archivi che contengono documenti prodotti
DettagliIngegneria del Software. Business Object Technology
Ingegneria del Software Business Object Technology Premesse I sistemi informativi di qualsiasi organizzazione devono essere capaci di: gestire quantità di dati sempre crescenti fornire supporto a nuovi
DettagliCoordinazione Distribuita
Coordinazione Distribuita Ordinamento degli eventi Mutua esclusione Atomicità Controllo della Concorrenza 21.1 Introduzione Tutte le questioni relative alla concorrenza che si incontrano in sistemi centralizzati,
DettagliSpecifiche Tecnico-Funzionali
AuthSIAR - Modulo di Autenticazione e Autorizzazione Sardegna IT S.r.l. Analisi Tecnico-Funzionale Assessorato all Agricoltura della Regione Sardegna SIAR Sistema Informativo Agricolo Regionale AuthSIAR
DettagliIl catalogo MARKET. Mk6 Il sell out e il trade marketing: tecniche, logiche e strumenti
Si rivolge a: Forza vendita diretta Agenti Responsabili vendite Il catalogo MARKET Responsabili commerciali Imprenditori con responsabilità diretta sulle vendite 34 di imprese private e organizzazioni
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à
DettagliAlessandra Raffaetà. Basi di Dati
Lezione 2 S.I.T. PER LA VALUTAZIONE E GESTIONE DEL TERRITORIO Corso di Laurea Magistrale in Scienze Ambientali Alessandra Raffaetà Dipartimento di Informatica Università Ca Foscari Venezia Basi di Dati
DettagliTest e collaudo del software Continuous Integration and Testing
Test e collaudo del software Continuous Integration and Testing Relatore Felice Del Mauro Roma, Cosa è la Continuous Integration A software development practice where members of a team integrate their
DettagliU Corso di italiano, Lezione Quindici
1 U Corso di italiano, Lezione Quindici U Buongiorno, anche in questa lezione iniziamo con qualche dialogo formale M Good morning, in this lesson as well, let s start with some formal dialogues U Buongiorno,
DettagliDatabase Lezione 1. Sommario. - Introduzione - Tabelle e chiave primaria - Query - Calcoli ed alias - Ordinamento
Sommario - Introduzione - Tabelle e chiave primaria - Query - Calcoli ed alias - Ordinamento Introduzione - Un database è un archivio strutturato di dati che può essere manipolato con dei comandi nel linguaggio
DettagliESEMPI DI QUERY SQL. Esempi di Query SQL Michele Batocchi AS 2012/2013 Pagina 1 di 7
ESEMPI DI QUERY SQL Dati di esempio... 2 Query su una sola tabella... 2 Esempio 1 (Ordinamento)... 2 Esempio 2 (Scelta di alcune colonne)... 3 Esempio 3 (Condizioni sui dati)... 3 Esempio 4 (Condizioni
DettagliMEZZI CodM Tipo Targa AnnoI Assicurato
Esercizio 1 Si consideri il seguente schema relazionale, relativo alla base di dati di un agenzia di assicurazioni: ASSICURATI(CodA, Nome, Cognome, Indirizzo, Telefono) POLIZZE(CodP, Data, Tipo, CodA,
DettagliScuola Superiore Sant Anna. Progetto parte Unix. AA 2008-2009: Distributed File Repository
Scuola Superiore Sant Anna Progetto parte Unix AA 2008-2009: Distributed File Repository Distributed File Repository Descrizione del sistema da realizzare Progettare e implementare un server che mantiene
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)
DettagliDNS-Tunneling. Reference to. Ettore di Giacinto Luca Montunato http://www.pilug.org
DNS-Tunneling Reference to Ettore di Giacinto Luca Montunato http://www.pilug.org Se, in un sistema, è possibile trasmettere bits ad un altro, ed esso risponde a questa trasmissione, è praticamente impossibile
DettagliPoca documentazione: uso di Story Card e CRC (Class Responsibility Collabor) Collaborazione con il cliente rispetto alla negoziazione dei contratti
Sviluppo Agile [Cockburn 2002] Extreme Programming (XP) [Beck 2000] Sono più importanti auto-organizzazione, collaborazione, comunicazione tra membri del team e adattabilità del prodotto rispetto ad ordine
DettagliDDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE. SQL è più di un semplice linguaggio di interrogazione
SQL DDL, VINCOLI D INTEGRITÁ, AGGIORNAMENTI E VISTE SQL è più di un semplice linguaggio di interrogazione! Linguaggio di definizione dati (Data-definition language, DDL):! Crea/distrugge/modifica relazioni
DettagliArchitettura MVC-2: i JavaBeans
Siti web centrati sui dati Architettura MVC-2: i JavaBeans Alberto Belussi anno accademico 2008/2009 Limiti dell approccio SEVLET UNICA La servlet svolge tre tipi di funzioni distinte: Interazione con
DettagliISLL Papers The Online Collection of the Italian Society for Law and Literature http://www.lawandliterature.org/index.php?
The Online Collection of the Italian Society for Law and Literature http://www.lawandliterature.org/index.php?channel=papers ISLL - ITALIAN SOCIETY FOR LAW AND LITERATURE ISSN 2035-553X Submitting a Contribution
DettagliManutenzione del software
del software Generalità Leggi dell evoluzione del software Classi di manutenzione Legacy systems Modelli di processo per la manutenzione 1 Generalità La manutenzione del software è il processo di modifica
DettagliDovremmo a questo punto incominciare a vedere la suddivisione della nostra superficie.
Vediamo ancora come lavorare sulle superfici attraverso la loro parametrizzazione, e suddivisione progressiva. Alcune volte in Grasshopper ci sono diversi modi per fare le stesse cose. Abbiamo visto il
DettagliPROXYMA Contrà San Silvestro, 14 36100 Vicenza Tel. 0444 544522 Fax 0444 234400 Email: proxyma@proxyma.it
PROXYMA Contrà San Silvestro, 14 36100 Vicenza Tel. 0444 544522 Fax 0444 234400 Email: proxyma@proxyma.it igrafx Process Central è una soluzione che aiuta le organizzazioni a gestire, sviluppare, documentare
DettagliGruppi, Condivisioni e Permessi. Orazio Battaglia
Gruppi, Condivisioni e Permessi Orazio Battaglia Gruppi Un gruppo in Active Directory è una collezione di Utenti, Computer, Contatti o altri gruppi che può essere gestita come una singola unità. Usare
DettagliI CONTRATTI DI RENDIMENTO ENERGETICO:
SERVIZI I CONTRATTI DI RENDIMENTO ENERGETICO: OPPORTUNITÀ ED ESPERIENZA Maurizio Bottaini Federesco (Federazione Nazionale delle Esco) Federesco BEST PRACTICE ENERGY SERVICE COMPANY, quali operatori di
DettagliInsegnare può essere facile
Insegnare può essere facile Raccomandazioni per lo staff della formazione permanente per rendere i loro corsi accessibili Inclusion Europe Prodotto all'interno del progetto Creazione di percorsi di formazione
DettagliCandidato: Luca Russo Docente: Prof. Raffaele Montella. 27 Marzo 2013
e di e di Candidato: Luca Russo Docente: Corso di laurea in Informatica Applicata Facoltá di Scienze e Tecnologie Programmazione su Reti 27 Marzo 2013 Traccia d esame Sviluppare multitier con disaccoppiamento
DettagliArchitettura del software: dai Casi d Uso al Modello
Architettura del software: dai Casi d Uso al Modello Lorenzo Barbieri Sono un Senior Trainer/Consultant in ObjectWay SpA (www.objectway.it), specializzato in architetture Microsoft.NET, Windows, SQL Server,
DettagliGuida all uso del web service SDMX
Guida all uso del web service SDMX Introduzione L obiettivo di questo documento è l illustrazione sintetica degli step che tecnicamente bisogna compiere affinché un generico client sia in grado di interagire
DettagliL attenzione verso i collaboratori e la loro formazione, perché l azienda non cresce se i collaboratori restano indietro.
1 Chi siamo Mericom è una delle più consolidate realtà nell ambito delle vendite, del marketing e della comunicazione. Siamo sul mercato con successo da 15 anni e abbiamo realizzato grandi progetti anche
Dettagli