Elaborazione. Laboratorio di Ingegneria del Software. Andrea Bei
|
|
- Emilio Volpi
- 8 anni fa
- Visualizzazioni
Transcript
1 Laboratorio di Ingegneria del Software Andrea Bei
2 - Obiettivo Obiettivi: Scoprire e stabilizzare la maggiorparte dei requisiti Realizzare (progettare, sviluppare e testare) la parte di architettura software più importante e rischiosa Attenuare i rischi maggiori Stimare il piano di lavoro e le risorse complessive La parte di architettura software da realizzare è quella che massimizza le seguenti caratteristiche Rischio: comprende i componenti più critici dal punto di vista della complessità tecnica, incertezza nella stima dell effort, usabilità Copertura: copre la maggiorparte degli aspetti significativi del sistema implementazione in ampiezza e poco profonda Criticità: implementa i casi d uso più importanti per il cliente 2
3 Elaborati principali Analisi del dominio (o del business) e dei requisiti Modello di dominio: E una visualizzazione dei concetti di dominio Modello dei casi d uso: Casi d uso e opzionalmente SSD e contratti delle operazioni Progettazione Modello di progetto: E l insieme dei diagrammi che descrivono la progettazione logica (diagrammi delle classi, diagrammi di interazione,...) Documento dell architettura del software: Riassume gli aspetti principali dell architettura. E un riepilogo delle idee di progettazione più significative e delle loro motivazioni Modello dei dati:comprende lo schema della base di dati e le strategie di mapping tra la rappresentazione a oggetti e la base di dati Storyboard dei casi d uso, Prototipi UI: Descrizione dell interfaccia utente, della navigazione, dei modelli di usabilità e così via 3
4 Modello di dominio Un modello di domino (o modello concettuale) è una rappresentazione visuale di classi concettuali o di oggetti reali di un dominio ( dizionario visuale ) E illustrato tramite:classi concettuali, associazioni e attributi concept or domain object quantity Sales LineItem 1..* 0..1 Records-sale-of 1 Item * association Contained-in Stocked-in 1 1 Sale Store attributes date time address name 1 Houses Paid-by 1..* 1 Payment Captured-on 1 Register amount 4
5 Modello di dominio e di progetto Un Payment nel modello di A Payment dominio the è un Domain concetto Model mentre is a concept, nel but modello a Payment di in progetto the Design Model è una is classe a software software. class. They are Non not sono the same la stessa thing, but cosa the former ma il inspired primo the naming and definition of the ispira il nome e la latter. definizione della seconda. Questo This reduces riduce the representational il salto rappresentazionale gap. E una delle idee fondamentali This is one of the della big ideas in progettazione object technology. OO Modello di dominio UP Domain Model Stakeholder's view of the noteworthy concepts in the domain. amount Payment Payment amount: Money 1 Pays-for 1 inspires objects and names in 1 1 Pays-for date time Sale Sale date: Date starttime: Time getbalance(): Money gettotal(): Money... UP Design Model Modello di progetto The object-oriented developer has taken inspiration from the real world domain Ci si ispira al dominio per creare i nomi delle classi software. in creating software classes. Il salto rappresentazionale tra i concetti del dominio e la loro Therefore, rappresentazione the representational software gap si between deve how mantere stakeholders il più conceive basso possibile the domain, and its representation in software, has been lowered. 5
6 Diagrammi di sequenza di sistema Un diagramma di sequenza di sistema (SSD System Sequence Diagram) illustra gli eventi di input ed output del sistema relativi ad uno scenario di un caso d uso Attore esterno external actor to system : Cashier system as black box the name could be "NextGenPOS" but "System" keeps it simple Il Sistema è visto a scatola nera the ":" and underline imply an instance, and are explained in a later chapter on sequence diagram notation in the UML Process Sale Scenario :System Un Loop UML con a UML una loop espressione interaction di guardia frame, with a guard booleana expression loop [ more items ] makenewsale enteritem(itemid, quantity) description, total Valore return ritornato value(s) associato al precedente associated with messaggio the previous message L astrazione ignora l interfaccia an abstraction grafica that ignores presentation and medium Il messaggio di ritorno è opzionale the return se line non is viene ritornato optional nulla if nothing is returned endsale total with taxes makepayment(amount) change due, receipt Un messaggio con a parametri message with parameters E una astrazione it rappresentante is an abstraction representing the l evento di sistema system event of entering associato the payment all inserimento data by di some dati relativi mechanism ad un pagamento 6
7 Diagrammi di sequenza di sistema Gli obiettivi degli SSD sono: approfondire l indagine del comportamento ( a scatola nera ) del sistema a partire dai casi d uso stabilire con precisione quali sono gli eventi di input (operazioni di input e parametri) e di output (dati di ritorno) rappresentare un punto di partenza per la progettazione degli oggetti e della collaborazioni tra essi l analisi dei contratti delle operazioni supportare metodologie di stima basate sull identificazione delle operazioni di sistema (Function Point + COCOMO) Gli SSD sono creati durante la fase di elaborazione Gli SSD fanno parte del modello dei casi d uso 7
8 Dai casi d uso agli SSD Un SSD mostra gli eventi per un solo scenario di caso d uso Gli elementi (nome operazioni, parametri, dati di ritorno) sono descritti nel Glossario. Es: i dettagli della ricevuta (receipt) Scenario : pagamento in contanti di Process Sale Process Sale Scenario : Cashier :System 1. Il Cliente arriva alla cassa POS con Simple gli articoli cash-only e/o Process i servizi Sale da scenario: acquistare Customer Il Cassiere arrives inizia at una a POS nuova checkout vendita 3. with Il goods Cassiere and/or inserisce services il to codice purchase. 2. Cashier identificativo starts a dell articolo new sale Cashier Il Sistema enters registra item identifier. la riga di vendita 4. System per l articolo records e sale presenta line item la and presents item description, price, and descrizione dell articolo, il prezzo running total. e il totale parziale. Si ripetono i Cashier repeats steps 3-4 until indicates passi 3-4 fino a che l operazione done. 5. System non termina presents total with taxes 5. calculated. Il sistema mostra il totale con le 6. Cashier imposte tells calcolate Customer the total, and 6. asks Il Cassiere for payment. riferisce il totale al 7. Customer Cliente, e pays richiede and System il pagamento handles 7. payment. Il Cliente paga e il sistema gestisce... il pagamento loop [ more items ] makenewsale enteritem(itemid, quantity) description, total endsale total with taxes makepayment(amount) change due, receipt 8
9 Relazione tra SSD e gli altri elaborati Sample UP Artifact Relationships Domain Model Business Modeling date... Sale 1 1..* Sales... LineItem... quantity Use-Case Model Vision Process Sale Requirements Cashier Process Sale Use Case Diagram use case names 1. Customer arrives Cashier makes new sale Use Case Text system events parameters and return value details Glossary : System Operation: enteritem( ) Post-conditions: -... system operations : Cashier make NewSale() enteritem (id, quantity) Supplementary Specification Operation Contracts System Sequence Diagrams starting events to design for : Register Design Model : ProductCatalog : Sale Design enteritem (itemid, quantity) spec = getproductspec( itemid ) addlineitem( spec, quantity ) 9
10 Architettura Logica L architettura logica è l organizzazione su larga scala delle classi software in package, sottosistemi e strati Uno strato è un gruppo a grana grossa di classi, package e sottosistemi con responsabilità coese rispetto ad un aspetto importante del sistema Strati ricorrono a servizi di strati più bassi User Interface (Interfaccia Utente) UI Swing not the Java Swing libraries, but our GUI classes based on Swing Web Application Logic e Domain Objects Oggetti software che rappresentano oggetti di dominio e che collaborano per soddisfare i requisiti (es: Sale) Domain Sales Payments Taxes Technical Services Servizi tecnici indipendenti dal dominio come l interfacciamento con il Database, Logging, M Technical Services Persistence Logging RulesEngine 10
11 Architettura Logica e relazione con altri Sample UP Artifact Relationships elaborati Modello di L architettura logica può essere descritta con un diagramma dei package UML E descritta nel modello di progetto Il principale input è rappresentato dai requisiti non funzionali presenti nelle specifiche supplementari Business Modeling Requirements Design Modello dei casi d uso Use-Case Model Visione Vision The logical architecture is influenced by the constraints and non-functional requirements captured in the Supp. Spec. interaction Diagramma diagrams (a interazione dynamic view) (vista dinamica) Domain dominio Model package Diagramma diagrams dei UI of package the logical architecture dell architettura (a static view) Domain logica * enteritem (itemid, quantity) * : Register Specifiche Supplementary Supplementari Specification Design Modello di Progetto Tech Services spec = getproductspec( itemid ) Glossario Glossary : ProductCatalog Diagramma class delle diagrams classi (a(vista static view) statica)... Register makenewsale() enteritem(...) ProductCatalog getproductspec(...)... 11
12 Architettura Software (o Applicativa) Un architettura software è L insieme delle decisioni significative sull organizzazione di un sistema software Gli elementi strutturali di cui e composto Le interfacce di tali elementi Il comportamento di tali elementi specificato dalle collaborazioni tramite le loro interfacce La composizione di questi elementi in sottosistemi via via più ampi Lo stile architetturale che guida questa organizzazione 12
13 Progettazione a strati L idea della progettazione a strati è codificata nel pattern Layers Linee guida Progettare strati con una separazione netta e coesa degli interessi (delle responsabilità) Progettare strati inferiori per servizi generali e strati superiori per servizi specifici dell applicazione Collaborazioni e accoppiamenti dagli strati alti ai bassi (non il viceversa) Vantaggi dell uso degli strati Riduzione di accoppiamento e dipendenze, e conseguente aumento di riusabilità e comprensibilità La complessità è incapsulata Manutenibilità: Gli strati sono facilmente sostituibili (es: UI) Riusabilità: Gli strati più bassi sono molto riusabili Lo sviluppo in team è favorito 13
14 dependency Progettazione a strati:una architettura di riferimento Interfacce grafiche GUI windows Reports reports Interfacce vocali speech interface HTML, XML, XSLT,JSP,Javascript HTML, XML, XSLT, JSP, Javascript,... Gestione richieste strato UI handles presentation layer requests Workflow workflow Gestione stato della sessione session state Transizione tra finestre/pagine window/page transitions Consolidamento/trasformazione consolidation/transformation per la presentazione of disparate data for presentation UI (AKA Presentation, View) Application (AKA Workflow, Process, Mediation, App Controller) more app specific Gestione richieste strato Application handles application layer requests Implementazione regole di implementation dominio of domain rules Servizi di dominio (POS, Inventory) domain services (eventualmente (POS, Inventory) servizi multiapplicazione - services may be used by just one application, but there is also the possibility of multi-application services Domain (AKA Business, Application Logic, Model) Servizi aziendali molto generali very general e di basso low-level livello business utilizzati services in numerosi domini aziendali used in many business domains CurrencyConverter CurrencyConverter Business Infrastructure (AKA Low-level Business Services) Servizi tecnici di livello (relativamente) alto Persistence, Security (relatively) high-level technical services and frameworks Persistence, Security Technical Services (AKA Technical Infrastructure, High-level Technical Services) Servizi tecnici di basso livello low-level technical services, utilities, Strutture dati, Thread, matematica, file, DB, e I/O di rete and frameworks data structures, threads, math, file, DB, and network I/O Foundation (AKA Core Services, Base Services, Low-level Technical Services/Infrastructure) width implies range of applicability 14
15 Strati e partizioni Strati: sezioni verticali Partizioni: sottosistemi di uno stesso strato (divisione orizzontale) Domain Vertical Layers POS Inventory Tax Technical Services Persistence Security Logging Horizontal Partitions 15
16 Separazione modello-vista Modello è un sinonimo di strato degli oggetti del dominio, Vista è un sinonimo di strato UI Il Principio di separazione Modello-Vista dice: Gli oggetti non UI non devono essere accoppiati direttamente ad oggetti UI. Es: un oggetto Sale (non UI) non deve avere nessun riferimento alla finestra Sale (UI) Gli oggetti UI non devono contenere logica applicativa (es: il calcolo delle imposte) ma solo la logica di gestione degli eventi di iterazione con l utente (click di un bottone) delega dell elaborazione delle richieste agli oggetti di dominio contenenti la logica applicativa. 16
17 SSD, operazioni di sistema e strati Il pattern layers suggerisce UI come strato più alto I messaggi dei SSD inviati al sistema sono quindi catturati dallo strato UI e inoltrati allo strato di dominio I messaggi inviati dallo strato UI allo strato del dominio sono quindi quelli descritti negli SSD UI :System : Cashier makenewsale() enteritem(id, quantity) description, total Domain Swing... ProcessSale Frame makenewsale() enteritem() endsale() makenewsale() enteritem() endsale() : Cashier endsale()... Register makenewsale() enteritem()... the system operations handled by the system in an SSD represent the operation calls on the Application or Domain layer from the UI layer 17
modelli casi d uso diagrammi di sequenza di sistema contratti delle operazioni di sistema Capitolo 11
Luca Cabibbo Analisi e Progettazione del Software Diagrammi di sequenza di sistema Capitolo 10 marzo 2013 In teoria, non c è differenza tra teoria e pratica. Ma, in pratica, c è. Jan L.A. van de Snepscheut
DettagliQuesto capitolo esemplifica la progettazione di oggetti responsabilità e collaborazioni applicazione dei pattern GRASP applicazione di UML
Luca Cabibbo Analisi e Progettazione del Software Esempi di progettazione a oggetti con i pattern GRASP Capitolo 18 marzo 2013 Ogni cosa dovrebbe essere fatta nel modo più semplice possibile, ma non più
DettagliResponsibility Driven Design
Responsibility Driven Design Laboratorio di Ingegneria del Software Andrea Bei Progettazione a oggetti (OOD) Progettare a oggetti una funzionalità espressa da un requisito ( use case, SSD, ) significa
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
DettagliDesign Pattern. Ingegneria del Software parte II. Andrea Bei
Design Pattern Ingegneria del Software parte II Andrea Bei Progettazione a oggetti (OOD) Progettare a oggetti una funzionalità espressa da un requisito ( use case, SSD, ) significa Identificare gli oggetti,
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à
DettagliL o. Walter Ambu http://www.japsportal.org. japs: una soluzione agile (www.japsportal.org)
L o JAPS: una soluzione Agile Walter Ambu http://www.japsportal.org 1 Lo sviluppo del software Mercato fortemente competitivo ed in continua evoluzione (velocità di Internet) Clienti sempre più esigenti
DettagliSequence Diagram e Collaboration Diagram
Sequence Diagram e Collaboration Diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania Sommario Interaction
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
Dettagli4.1 Che cos è l ideazione
Luca Cabibbo Analisi e Progettazione del Software Ideazione (non è la fase dei requisiti) Capitolo 4 marzo 2013 Il meglio è nemico del bene. Voltaire 1 *** AVVERTENZA *** I lucidi messi a disposizione
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],
DettagliRational Unified Process Introduzione
Rational Unified Process Introduzione G.Raiss - A.Apolloni - 4 maggio 2001 1 Cosa è E un processo di sviluppo definito da Booch, Rumbaugh, Jacobson (autori dell Unified Modeling Language). Il RUP è un
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
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
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
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
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
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
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
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
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
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
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
DettagliAutomazione della gestione degli ordini d acquisto di una società di autonoleggio
Automazione della gestione degli ordini d acquisto di una società di autonoleggio Professore Gaetanino Paolone Studenti Paolo Del Gizzi Maurizio Di Stefano 1 INDICE INTRODUZIONE.pag.3 IL PIANO METODOLOGICO
DettagliPROGRAMMA CORSO Analista Programmatore JAVA - ORACLE
PROGRAMMA CORSO Analista Programmatore JAVA - ORACLE 1. JAVA 1.1 Introduzione a Java Introduzione Cosa è Java 1.2 Sintassi e programmazione strutturata variabili e metodi tipi di dati, array operatori
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
DettagliRealizzazione di un applicazione per la stesura di un Business Plan
tesi di laurea Anno Accademico 2006/2007 relatore Ch.mo prof. Porfirio Tramontana candidato Vincenzo Malzone Matr. 534/1173 Obiettivi Realizzare un applicazione desktop per la stesura di un documento di
DettagliSOMMARIO DIAGRAMMI DEI CASI D USO
INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Facoltà di Scienze MM. FF. NN. Corso di Laurea in Informatica, A.A. 2011 2012 Use Case: Inclusione Use Case: Estensione Use Case: Generalizzazione
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
Dettagli7.1 Livello di completezza degli esempi
Luca Cabibbo Analisi e Progettazione del Software Capitolo 7 marzo 2013 Buono, poco costoso, rapidamente. Puoi scegliere due di queste caratteristiche. Anonimo 1 *** AVVERTENZA *** I lucidi messi a disposizione
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
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
DettagliL architettura MVC (Model- View-Controller) Introduzione
L architettura MVC (Model- View-Controller) Introduzione Architettura MCV L architettura MVC è un insieme di regole per strutturare un sito-web dinamico. Queste regole complicano la struttura del sito,
DettagliUML e (R)UP (an overview)
Lo sviluppo di sistemi OO UML e (R)UP (an overview) http://www.rational.com http://www.omg.org 1 Riassumento UML E un insieme di notazioni diagrammatiche che, utilizzate congiuntamente, consentono di descrivere/modellare
DettagliScaletta. Estensioni UML per il Web. Applicazioni web - 2. Applicazioni web. WAE: Web Application Extension for UML. «Client page»
Scaletta Estensioni UML per il Web Michele Zennaro 14-05-2004 Le applicazioni web Scopo di un estensione UML per il web Due punti di vista Uno più astratto Uno più vicino ai file fisici conclusivo Commenti
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
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
DettagliGestione del workflow
Gestione del workflow Stefania Marrara Corso di Tecnologie dei Sistemi Informativi 2004/2005 Progettazione di un Sistema Informativo Analisi dei processi Per progettare un sistema informativo è necessario
DettagliApplicazione: GAS - Gestione AcceSsi
Riusabilità del software - Catalogo delle applicazioni Gestione ICT Applicazione: GAS - Gestione AcceSsi Amministrazione: Consiglio Nazionale delle Ricerche (CNR) Responsabile dei sistemi informativi Nome
DettagliObiettivo dell esercitazione
Database e Web - Esercitazioni ASP - Andrea Proli proliand@csr.unibo.it Laboratorio di Basi di Dati A.A. 2005/2006 Obiettivo dell esercitazione L obiettivo finale dell esercitazione è quello di creare
DettagliUML - Unified Modeling Language
UML E CASI D USO UML - Unified Modeling Language Linguaggio stardardizzato per identificare e modellizzare le specifiche di un S.I. Coerente con il paradigma della programmazione ad oggetti Definito a
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
DettagliUniRoma2 - Ingegneria del Software 1 1
Object Oriented Analysis - OOA La fase di OOA definisce, secondo un approccio ad oggetti, COSA un prodotto software deve fare (mentre la fase di OOD definisce, sempre secondo un approccio ad oggetti, COME
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
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
DettagliUse Case Driven Object Modeling: ICONIX
Use Case Driven Object Modeling: ICONIX Un esempio di specifica, analisi, progetto e sviluppo utilizzando ICONIX (applicazione web) Ditta di Noleggio Dvd Un sistema per la gestione di una ditta di noleggio
DettagliCiclo di Vita Evolutivo
Ciclo di Vita Evolutivo Prof.ssa Enrica Gentile a.a. 2011-2012 Modello del ciclo di vita Stabiliti gli obiettivi ed i requisiti Si procede: All analisi del sistema nella sua interezza Alla progettazione
DettagliING SW. Progetto di Ingegneria del Software. e-travel. Requisiti Utente. Specifiche Funzionali del Sistema
Pagina: 1 e-travel ING SW Progetto di Ingegneria del Software e-travel Requisiti Utente Specifiche Funzionali del Sistema e Pagina: 2 di 9 Indice dei contenuti 1 INTRODUZIONE... 3 1.1 SCOPO DEL DOCUMENTO...
DettagliI lucidi messi a disposizione sul sito del corso di Analisi e progettazione del software NON sostituiscono il libro di testo
Luca Cabibbo Analisi e Progettazione del Software Capitolo 3 marzo 2015 Poche cose sono più difficili da sopportare di un buon esempio. Mark Twain 1 *** AVVERTENZA *** I lucidi messi a disposizione sul
DettagliProgettazione di Basi di Dati
Progettazione di Basi di Dati Prof. Nicoletta D Alpaos & Prof. Andrea Borghesan Entità-Relazione Progettazione Logica 2 E il modo attraverso il quale i dati sono rappresentati : fa riferimento al modello
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
DettagliBiblioTech - Personal Digital Library
Albana Gaba Alessandro Pegoraro Mirco Bocedi Fabio Giuseppe Strozzi Gruppo 8 Obiettivo Creare un software efficiente per la catalogazione di documenti digitali in categorie personalizzabili dall utente.
DettagliProdotto <ADAM DASHBOARD> Release <1.0> Gennaio 2015
Prodotto Release Gennaio 2015 Il presente documento e' stato redatto in coerenza con il Codice Etico e i Principi Generali del Controllo Interno Sommario Sommario... 2 Introduzione...
DettagliApplicazione: SAI - Sistema di Audit Interno
Riusabilità del software Catalogo delle applicazioni: Amministrativo/Contabile Applicazione: SAI Sistema di Audit Interno Amministrazione: Agenzia delle Entrate Responsabile dei sistemi informativi Nome
DettagliEsercitazioni di Progettazione del Software. Esercitazione (Prova al calcolatore del 17 settembre 2010)
Sapienza - Università di Roma Facoltà di Ingegneria dell Informazione, Informatica e Statistica Corso di Laurea in Ingegneria Informatica ed Automatica, Ingegneria dei Sistemi Informatici Esercitazioni
DettagliCOMPETENZE IN ESITO (5 ANNO) ABILITA' CONOSCENZE
MAPPA DELLE COMPETENZE a.s. 2014-2015 CODICE ASSE: tecnico-professionale QUINTO ANNO PT1 scegliere dispositivi e strumenti in base alle loro caratteristiche funzionali; Progettare e realizzare applicazioni
DettagliUML Component and Deployment diagram
UML Component and Deployment diagram Ing. Orazio Tomarchio Orazio.Tomarchio@diit.unict.it Dipartimento di Ingegneria Informatica e delle Telecomunicazioni Università di Catania I diagrammi UML Classificazione
DettagliActivity Diagram. UniRoma2 - Ingegneria del Software 1 75
Activity Diagram Rappresenta a vari livelli di astrazione il flusso di esecuzione, sia sequenziale che concorrente, in una applicazione object-oriented E una variante degli state diagram, in cui gli stati
DettagliApplicazione: Servizio periferico per l'invio telematico delle domande di nulla osta al lavoro
Riusabilità del software - Catalogo delle applicazioni Appl_vo/Verticale Applicazione: Servizio periferico per l'invio telematico delle domande di nulla osta al lavoro Amministrazione: Ministero dell Interno
DettagliSISTEMI E RETI 4(2) 4(2) 4(2) caratteristiche funzionali
CL AS SE INFORMATICA 6(3) 6(4) - 6(4) SISTEMI E RETI 4(2) 4(2) 4(2) TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI COMPETENZE 3 Essere in grado di sviluppare semplici applicazioni
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
DettagliPROGETTAZIONE DEL SOFTWARE
PROGETTAZIONE DEL SOFTWARE EMILIANO CASALICCHIO DIPARTIMENTO DI INFORMATICA E SISTEMISTICA SAPIENZA UNIVERSITÀ DI ROMA SEDE DI RIETI HTTP://WWW.CE.UNIROMA2.IT/COURSES/PSW! Cos è UML UNIFIED MODELING LANGUAGE!
DettagliMODEL-VIEW-CONTROLLER PROBLEMA
MODEL VIEW CONTROLLER DESIGN PATTERN MODEL-VIEW-CONTROLLER INGEGNERIA DEL SOFTWARE Università degli Studi di Padova Dipartimento di Matematica Corso di Laurea in Informatica, A.A. 2013 2014 rcardin@math.unipd.it
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
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
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
DettagliGestione Automatizzata di una Lista Nozze
Gestione Automatizzata di una Lista Nozze Si deve progettare un sistema per la gestione di liste nozze on line. Il sistema rende possibile la consultazione di un catalogo on line, la creazione di una lista
DettagliReingegnerizzazione di un Content Management System verso l accessibilità secondo la normativa italiana
Università degli Studi di Bologna Sede di Cesena FACOLTÀ À DI SCIENZE MATEMATICHE FISICHE E NATURALI Corso di Laurea in Scienze dell Informazione Reingegnerizzazione di un Content Management System verso
Dettaglidesign patterns e GRASP
design patterns e GRASP 1 design patterns una coppia / particolarmente importante a cui viene dato un nome vengono espressi in un formato molto rigido, ad es. nome descrizione sintetica della descrizione
DettagliIntroduzione. Il software e l ingegneria del software. Marina Mongiello Ingegneria del software 1
Introduzione Il software e l ingegneria del software Marina Mongiello Ingegneria del software 1 Sommario Il software L ingegneria del software Fasi del ciclo di vita del software Pianificazione di sistema
DettagliSiti interattivi e dinamici. in poche pagine
Siti interattivi e dinamici in poche pagine 1 Siti Web interattivi Pagine Web codificate esclusivamente per mezzo dell HTML non permettono alcun tipo di interazione con l utente, se non quella rappresentata
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,
DettagliRegistro SPICCA Architettura del Software
Registro SPICCA Architettura del Software Versione 1.0 del 25/08/2009 Sommario 1 Introduzione... 4 1.1 Scopo... 4 1.2 Obiettivo... 4 1.3 Riferimenti... 4 1.4 Panoramica del documento... 4 2 Rappresentazione
DettagliProgettazione di siti Web
Progettazione di siti Web Tipi di siti Siti statici Siti dinamici Software di progetto/gestione Editor visuali Content Management System Siti Internet Un sito Internet è come un qualsiasi altro S.I. ma
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
DettagliBreve introduzione curata da Alessandro Benedetti. Struts2-Introduzione e breve guida
Breve introduzione curata da Alessandro Benedetti Struts2-Introduzione e breve guida 22-11- 2008 1 Struts 2 Costruisci,attiva e mantieni! Apache Struts 2 è un framework elegante ed estensibile per creare
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
DettagliProgettazione di siti Web
Progettazione di siti Web Tipi di siti Siti statici Siti dinamici Software di progetto/gestione Editor visuali Content Management System Portali Siti Internet Un sito Internet è come un qualsiasi altro
DettagliUse Case Driven Object Modeling: ICONIX
Use Case Driven Object Modeling: ICONIX Un esempio di specifica, analisi, progetto e sviluppo utilizzando ICONIX Ditta di Noleggio Dvd Un sistema per la gestione di una ditta di noleggio dvd che ha più
DettagliGERARCHIE RICORSIVE - SQL SERVER 2008
GERARCHIE RICORSIVE - SQL SERVER 2008 DISPENSE http://dbgroup.unimo.it/sia/gerarchiericorsive/ L obiettivo è quello di realizzare la tabella di navigazione tramite una query ricorsiva utilizzando SQL SERVER
DettagliEsempio ordini 08UMLEX1.1
Esempio ordini 08UMLEX1.1 Sommario Specifiche del sistema di gestione ordini Specifiche Use Case Use Case Specifiche del diagramma delle classi Diagramma delle classi Specifiche per lo scenario della richiesta
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
DettagliModellazione dei dati in UML
Corso di Basi di Dati e Sistemi Informativi Modellazione dei dati in UML Angelo Montanari Dipartimento di Matematica e Informatica Università degli Studi di Udine Introduzione UML (Unified Modeling Language):
DettagliSistemi Informativi I
Sistemi Informativi I Modalità di Esame L esame consta in una prova orale, durante la quale viene discusso un progetto approntato individualmente dallo studente. Il progetto consiste nella elaborazione
DettagliAnalisi dei Requisiti, Progettazione Preliminare ed Esecutiva di Grandi Sistemi Ingegneristici: Casi di Studio
Seminario di Analisi dei Requisiti, Progettazione Preliminare ed Esecutiva di Grandi Sistemi Ingegneristici: Casi di Studio Corso di Ingegneria dei Sistemi Software e dei Servizi in Rete Parte 5. Evoluzione
DettagliAnalisi e sviluppo di un portale di e-commerce
tesi di laurea Analisi e sviluppo di un portale di e-commerce 2011/2012 relatore Ch.mo prof. Porfirio Tramontana correlatore Ch.mo Antonio Agliata candidato Roberta Petruzzo Matr. 534/1042 Introduzione
DettagliProgrammazione Orientata agli Oggetti in Linguaggio Java
Programmazione Orientata agli Oggetti in Linguaggio Java Ruoli e Responsabilità: Introduzione versione 2.3 Questo lavoro è concesso in uso secondo i termini di una licenza Creative Commons (vedi ultima
DettagliProgetto. Struttura del documento di specifica dei requisiti, Casi d uso. manuel.comparetti@iet.unipi.it
Progetto Struttura del documento di specifica dei requisiti, Casi d uso manuel.comparetti@iet.unipi.it 1 Documenti da produrre Il progetto deve comprendere i seguenti documenti: Documento di specifica
Dettaglisito web sito Internet
Siti Web Cos è un sito web Un sito web o sito Internet è un insieme di pagine web correlate, ovvero una struttura ipertestuale di documenti che risiede, tramite hosting, su un web server e accessibile
DettagliRaggruppamenti Conti Movimenti
ESERCITAZIONE PIANO DEI CONTI Vogliamo creare un programma che ci permetta di gestire, in un DB, il Piano dei conti di un azienda. Nel corso della gestione d esercizio, si potranno registrare gli articoli
DettagliIl Programma Operativo. Mentore. Rende ordinario quello che per gli altri è straordinario
Il Programma Operativo Mentore Rende ordinario quello che per gli altri è straordinario Programma operativo Sei stai guardando questa presentazione hai DECISO di CAMBIARE e hai deciso di scoprire COME
DettagliPattern Architetturali e Analisi Architetturale
Pattern Architetturali e Analisi Architetturale Ingegneria del Software parte II Andrea Bei Pattern Architetturali Pattern Architetturale Descrive il modello organizzativo strutturale di un sistema software
DettagliLaboratorio di Basi di Dati
Laboratorio di Basi di Dati Docente: Alberto Belussi Lezione 9 Architettura Model-View-Controller (MVC) Adottando l'architettura MVC e la tecnologia Servlet-JSP, un'applicazione web può essere realizzata
DettagliCopyright 2012 Binary System srl 29122 Piacenza ITALIA Via Coppalati, 6 P.IVA 01614510335 - info@binarysystem.eu http://www.binarysystem.
CRWM CRWM (Web Content Relationship Management) has the main features for managing customer relationships from the first contact to after sales. The main functions of the application include: managing
DettagliSimple & Efficient. www.quick-software-line.com
Cosa è XML? extensible Markup Language Linguaggio è una definizione limitativa XML serve a descrivere con precisione qualsiasi informazione XML è estensibile. Ovvero non ha tag predefiniti come HTML XML
DettagliLezione V. Aula Multimediale - sabato 29/03/2008
Lezione V Aula Multimediale - sabato 29/03/2008 LAB utilizzo di MS Access Definire gli archivi utilizzando le regole di derivazione e descrivere le caratteristiche di ciascun archivio ASSOCIAZIONE (1:1)
DettagliUna metodologia di progettazione di applicazioni web centrate sui dati
Una metodologia di progettazione di applicazioni web centrate sui dati 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 1 / 2 0 1 2 Progettazione logica di un sito web centrato sui dati Si
DettagliIngegneria del Software. Introduzione ai pattern
Ingegneria del Software Introduzione ai pattern 1 Definizione di pattern [dal [dal vocabolario vocabolario Garzanti] Garzanti] Alcuni esempi: Pattern architetturale Pattern di circuito stampato Pattern
DettagliAlberto Belussi, Mauro Negri e Giuseppe Pelagatti. Politecnico di Milano spatialdbgroup@polimi.it
Studio e sperimentazione di tecniche per supportare l'implementazione di WFS compatibili Inspire su database topografici Esperimenti sulla rete stradale del National Core italiano ed evoluzione degli strumenti
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
Dettagli