Ingegneria dei sistemi software. AN - Univwersity of Bologna
|
|
- Regina Teresa Bono
- 8 anni fa
- Visualizzazioni
Transcript
1 Ingegneria dei sistemi software AN - Univwersity of Bologna
2 Informatico: cosa è? Un tecnico (che pilota tecnologie)? Un analista (che valuta problemi)? Un manager (che gestisce processi di produzione)? Un progettista (di prodotti e tecnologie)? Uno scienziato (che studia e crea le fondazioni)? Un venditore (che analizza le esigenze del mercato)? L informatica: una commodity o qualcosa da costruire? AN - Univwersity of Bologna
3 Informatico e titoli di studio Istituto tecnico Laurea triennale Laurea magistrale Dottorato di ricerca AN - Univwersity of Bologna
4 Scienza o ingegneria? Scienza Attività speculativa intesa ad analizzare, definire e interpretare la realtà sulla base di criteri rigorosi e coerenti Ingegneria Disciplina che studia l'applicabilità delle conoscenze scientifiche alle necessità della vita civile e del suo sviluppo socio-economico AN - Univwersity of Bologna
5 Computer science & software engineering Computer Science is concerned with the theories and methods which underlie computers and software systems. Software Engineering is concerned with the practical problem of producing software. In the belief that software could be engineered on the same footing as traditional engineering disciplines, a NATO study group coined the term Software Engineering in AN Unibo
6 Requisiti Per seguire il corso e per svolgere le attività di laboratorio è necessario conoscere gli elementi fondamentali di UML e dei design pattern classici (pattern GOF). E anche richiesta una buona conoscenza del linguaggio Java, dei linguaggi e modelli computazionali e della programmazione concorrente. AN - Univwersity of Bologna
7 Software Engineering Software creation process: application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software IEEE Software Engineering is an engineering discipline which is concerned with all aspects of software production from the early stages of system requirements through to maintaining the system after is has gone into use. AN Unibo
8 Engineering discipline Engineers make things work. They apply theories, methods and tools that are appropriate but use them selectively and always try to discover solutions to problems even when there are not applicable theories and methods to support them. Engineers have to work to organizational and financial constraints AN Unibo
9 Crisi del software Nasce dalla rapida crescita della potenza degli elaboratori e dalla crescita della complessità dei problemi che gli elaboratori permettono di affrontare e risolvere I committenti domandano un crescente numero di funzionalità, cercando di minimizzare i costi e i tempi dello sviluppo I requisiti si rivelano spesso ambigui ed anche in conflitto tra loro La crisi del software è legata alla incomprensione di cosa si deve fare e alla inadeguatezza dei processi di produzione del software A Collection of Well-Known Software Failures 9 Latest Software Failures in Enterprise Applications AN Unibo
10 Ingegneria dei Sistemi Software Lo scopo del corso di Ingegneria dei Sistemi software (ISS) è approfondire principi, metodologie e tecnologie utili a migliorare l'efficienza e l'efficacia del processo di costruzione di software di qualità, rapportando in modo sistematico questo corpo di conoscenze agli strumenti (linguaggi, IDE, tecnologie, piattaforme, etc) che abilitano e sostengono la produzione di software. AN - Univwersity of Bologna
11 Ingegneria dei Sistemi Software L'obiettivo del corso è capire sia cosa sia opportuno fare durante un processo di produzione per ottenere software di qualità, sia come farlo, con l'aiuto di strumenti di produzione e di piattaforme di esecuzione di tipo general puropse e/o custom (domain specific). Al centro dell'attenzione viene posto il concetto di sistema software inteso come un insieme di parti eterogenee tra loro interagenti ed organizzate in modo da costruire un tutto le cui proprietà non sono interamente riconducibili alla somma delle parti. Particolare attenzione viene dedicata ai sistemi distribuiti organizzati a livelli (verticali e orizzontali) e al rapporto tra i processi di analisi / progettazione e le moderne piattaforme operative di supporto. AN - Univwersity of Bologna
12 Ingegneria dei Sistemi Software Il corso intende fare riferimento (si veda book pg ) sia a metodologie agili sia a metodologie di sviluppo basate sull'uso dei modelli (espressi in UML2.0 o in linguaggi custom basati su MOF) enucleando da entrambi gli approcci elementi utili per la definizione di processi organizzativi ritagliati per diversi macro-contesti di produzione, quali piccole aziende costituite da poche unità di lavoro, aziende di medie dimensioni con ruoli già diversificati (analista, progettista, etc.) e aziende di grandi dimensioni, sensibili anche forme di innovazione sia di prodotto sia di processo. AN - Univwersity of Bologna
13 Piattaforme Le piattaforme operative di riferimento sono prevalentemente di tipo opensource ed utilizzano Java come linguaggio di base, ma non si limitano all'uso del paradigma ad oggetti così come realizzato in Java. Particolare attenzione viene data al settore dei dispositivi mobili e piccoli computer, tra cui Raspberry Pi ed Android AN - Univwersity of Bologna
14 Contesto applicativo AN Unibo
15 AN - Univwersity of Bologna Internet of things
16 Ingegneria dei Sistemi Software Le piattaforme operative di riferimento sono prevalentemente di tipo opensource ed utilizzano Java come linguaggio di base, ma non si limitano all'uso del paradigma ad oggetti così come realizzato in Java. Particolare attenzione viene data al tema Internet of things, al settore dei dispositivi mobili basati su Android, su Linux AN - Univwersity of Bologna
17 Ingegneria dei Sistemi Software Filo conduttore del discorso è il concetto di Architettura Software e l'uso di Software Factories cutsom basate su Model Driven Software Development (MDSD). La tecnologia di riferimento in questo settore sarà XText. Particolare attenzione viene dedicato allo sviluppo sistematico di architetture di analisi e di progetto a partire dai requisiti funzionali (nell'ambito di specifici domini applicativi) e da requisiti non funzionali legati alla eterogeneità, distribuzione e (possibilmente) sicurezza. AN - Univwersity of Bologna
18 Ingegneria dei Sistemi Software Partcolare attnezione saraà dedicata al rapporto tra metodologie model-based e metododologie agili TDD SCRUM FDD AN - Univwersity of Bologna
19 Macchine e problemi Overcoming the abs. gap Problem (Requirements) (Misky) machine (ABSTRACTION) GAP TOP DOWN: from the problem to the machine BOTTOM UP: from the machine to the problem AN - Univwersity of Bologna
20 La macchina di Minsky CLR (r): CLeaR register r. (Set r to zero.) INC (r): INCrement the contents of register r. DEC (r): DECrement the contents of register r. JZ (r, z): IF register r contains Zero THEN Jump to instruction z ELSE continue in sequence. AN - Univwersity of Bologna
21 Livelli UML2 (book pg. 34) Insieme ridotto di concetti Ingegneria del software AN Università di Bologna
22 Design Pattern GOF Interfaces Construction Adapter Facade AbstractFactory Buidler Composite Bridge FactoryMethod Prototype Memento Responsibility Operation Singleton Mediator Observer Proxy TemplateMethod State Command Extension Interpreter ChainOfResponsibility Decorator Iterator Visitor Flyweight AN Unibo Ingegneria del software
23 Pattern POSA4 Franck Bushmann, Kevin Henney, Douglas C. Schmidt: Pattern- Oriented Software Architecture: Volume 4 A Pattern Language for Distributed computing, John Wiley & Sons, 2007 Franck Bushmann, Kevin Henney, Douglas C. Schmidt: Pattern-Oriented Software Architecture: Volume 4 A Pattern Language for Distributed computing, John Wiley & Sons, 2007 AN - Univwersity of Bologna
24 Capability Maturity Model The CMM (a registered service mark of Carnegie Mellon University, CMU) is a development model created after study of data collected from organizations that contracted with the U.S. Department of Defense, who funded the research. This model became the foundation from which Carnegie Mellon created the Software Engineering Institute (SEI). The term "maturity" relates to the degree of formality and optimization of processes, from ad hoc practices, to formally defined steps, to managed result metrics, to active optimization of the processes. AN - Univwersity of Bologna
25 CMM levels Initial (chaotic, ad hoc, individual heroics) - the starting point for use of a new or undocumented repeat process. It is characteristic of processes at this level that they are (typically) undocumented and in a state of dynamic change, tending to be driven in an ad hoc, uncontrolled and reactive manner by users or events. This provides a chaotic or unstable environment for the processes. Repeatable - the process is at least documented sufficiently such that repeating the same steps may be attempted. some processes are repeatable, possibly with consistent results. Process discipline is unlikely to be rigorous, but where it exists it may help to ensure that existing processes are maintained during times of stress. Defined - the process is defined/confirmed as a standard business process, and decomposed to levels 0, 1 and 2 (the last being Work Instructions). there are sets of defined and documented standard processes established and subject to some degree of improvement over time. These standard processes are in place and used to establish consistency of process performance across the organization AN - Univwersity of Bologna
26 CMM levels Managed - the process is quantitatively managed in accordance with agreed-upon metrics. using process metrics, management can effectively control the AS-IS process (e.g., for software development ). In particular, management can identify ways to adjust and adapt the process to particular projects without measurable losses of quality or deviations from specifications. Process Capability is established from this level. Optimizing - process management includes deliberate process optimization/improvement. the focus is on continually improving process performance through both incremental and innovative technological changes/improvements. Note: process maturity according to the CMM is not necessarily mandatory for successful software development AN - Univwersity of Bologna
27 Software process development Model-driven engineering (MDE) focuses on creating and exploiting domain models (that is, abstract representations of the knowledge and activities that govern a particular application domain), rather than on general purpose computing (or algorithmic) concepts. Agile software development a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, crossfunctional teams. It promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change. Example: SCRUM ) AN - Univwersity of Bologna
28 Process Snapshot (pg. 102) 1 Introduction 2 Vision 3 Goals 4 Requirements 5 Requirement analysis 5.1 Use cases 5.2 Scenarios 5.3 (Domain)model 5.4 Test plan 6 Problem analysis 6.1 Logic architecture 6.2 Abstraction gap 6.3 Risk analysis 7 Work plan 8 Project 8.1 Structure 8.2 Interaction 8.3 Behavior 9 Implementation 10 Testing 11 Deployment 12 Maintenance Ingegneria del software AN Università di Bologna
29 Rendere esplicite le conoscenze Nel processo di produzione del software il lavoro dei diversi attori (analisti, progettisti, sviluppatori, etc.) si basa su un insieme di conoscenze e decisioni che spesso rimangono implicite all'interno del processo di produzione. Uno degli scopi dei processi model based è rendere esplicite queste conoscenze attraverso la costruzione di diagrammi espressi con notazioni formali cioè attraverso l'uso di un linguaggio con una ben precisa sintassi e semantica. AN - University of Bologna
30 Domande (su un sistema) Cosa deve fare committente Cosa deve essere analista Quale struttura-interazione-comportamento sono necessari tenendo conto dei vincoli che sorgono dai requisiti e dal problema in sè Cosa è opportuno che sia analista Tenendo conto delle tecnologie, dell andamento del mercato, delle risorse umane, economiche, temporali, etc. Come è fatto progettista Quale struttura-interazione-comportamento ha il sistema finale tenendo conto dei vincoli dall analisi e dei criteri (pattern) usati per risolvere le forze (anche contrastanti) in gioco AN - Univwersity of Bologna
31 Workflow Sviluppiamo l analisi dei requisiti e l analisi del problema Esprimendo fatti rilevanti attraverso modelli essenziali Discutiamo in modo sistematico avvalendoci di modelli basati su meta-modelli custom Usiamo i modelli come se fossero il nuovo codice sorgente costruendo generatori di codice usando Xtext (pg. 206) Realizziamo in modo automatico la schematic part avvelendoci dei design pattern per sistemi distribuiti Impostiamo piani di collaudo ancor prima di avere iniziato la fase di progettazione Realizziamo un primo prototipo di prodotto e interagiamo con il committente Ingegneria del software AN Università di Bologna
32 Valutazione del lavoro svolto Il laboratorio costituisce una parte essenziale del corso. Gli studenti sono tenuti a consegnare gli elaborati richiesti, che verranno valutati dal docente, in modo da acquisire una retroazione immediata sul lavoro svolto, che potrà essere utilizzata per modificare/migliorare quanto sviluppato. La valutazione finale consiste nelle presentazione e discussione degli artefatti prodotti in relazione alla costruzione di un sistema software (dello stesso tipo di quello discusso nei CaseStudy proposti durante il corso) che rispetti i requisiti pubblicati l'ultima settimana di lezione. Questi artefatti possono essere prodotti in modo individuale oppure, preferibilmente, attraverso un lavoro cooperativo svolto in gruppi di 2/3/4 studenti. AN - Univwersity of Bologna
33 Un primo case-study Produrre un telecomando per un robot AN - Univwersity of Bologna
34 Motto Non c è codice senza progetto, non c è progetto senza analisi del problema, non c è problema senza requisiti. AN Unibo
35 Non c è senza analisi NON iniziamo la fase di progetto prima di avere assestato la fase di analisi dei requisiti e l analisi del problema, con relativa peer-review, al fine di Individuare i principali sottosistemi Capire quali tecnologie sono necessarie Valutare i punti critici, i rischi e i costi Pianificare l uso delle risorse e i tempi Distribuire il lavoro tra le persone AN - University of Bologna
36 Architettura: le dimensioni base Struttura Interna Class diagrams Object diagrams Del prodotto Component diagrams Deployment diagrams Comportamento Sequence diagrams Collaboration diagrams Statechart diagrams Activity diagrams Interazione AN Unibo Ingegneria del software
37 Architecture: basic concepts Structure Atomic Composed Active Passive OPEARATIONS Property Modifier Provider Mapper Primitive NON-primitive Interaction Polling Procedure call Event driven Message passing Behavior AN Unibo Ingegneria del software
38 Modello: cosa si intende? (pg. 32) Per modello si intende genericamente una rappresentazione di un oggetto o di un fenomeno reale. La rappresentazione riproduce caratteristiche o comportamenti ritenuti fondamentali per il tipo di ricerca che si sta svolgendo In fisica si parla di modelli che descrivono i fenomeni reali. Tali modelli, spesso basati su ipotesi concettuali, si adattano a descriverne campi più o meno vasti del mondo fisico Gli ingegneri tradizionali intendono per modello un sistema matematico o fisico che ubbidisce a specifici vincoli e che può essere utilizzato per descrivere e comprendere un sistema attraverso relazioni di analogia AN - University of Bologna
39 Modello nella ingegneria del software Nei processi di costruzione del software, il termine modello va inteso come un insieme di concetti e proprietà volti a catturare aspetti essenziali di un sistema, collocandosi in un preciso spazio concettuale. Per l'ingegnere del software quindi un modello costituisce una visione semplificata di un sistema che rende il sistema stesso più accessibile alla comprensione e alla valutazione e facilita il trasferimento di informazione e la collaborazione tra persone. L'insieme dei modelli che descrivono un sistema dovrebbe formare una descrizione completa, coerente, consistente e non (troppo) ridondante. AN - University of Bologna
40 Un buon modello Corenza coerènza s. f. [dal lat. cohaerentia, der. di cohaerere; v. coerente]. L esser coerente, nel sign. proprio e fig., e nelle accezioni specifiche (per le quali, v. coerente): la c. delle parti nel tutto; c. d idee; c. fra pensiero e azione Per coerenza intendiamo che alle parole debba seguire una corrispondente azione, o anche l idea di pensare, sentire ed agire nella stessa direzione. Esempi: a) ogni unità di codice deve essere associata a un piano di test b)il colore rosso denota azioni, il colore blu denota entità. Consistenza consistènte agg. [dal lat. consistens -entis, der. di consistĕre nel sign. di «star saldo»: v. consistere]. 1. Solido, resistente, saldo: roba, stoffa molto c.; colla c.; anche fig.: un organizzazione poco c.; uno scritto c., che ha corpo, ricco di concetti. 2. a. In matematica, detto di un sistema non contraddittorio di postulati. Per consistenza intendiamo non contraddittorietà, sia sul piano sintattico, sia sul piano semantico Sinteticità Evitare elementi inutilmente sovrabbondanti, eccessivi o non necessari AN - University of Bologna
41 Modelli e linguaggi Quattro diverse rappresentazioni Insieme numeri Naturali 3 espresse in quattro differenti linguaggi Idea di un certo numero naturale III tre dello stesso modello AN Unibo
42 Forze in gioco Requisiti Sistema software Piattaforma operativa Domian forces
43 Il framework Xtext B I B L I O G R A F I A : X T E X T U S E R G U I D E AN University of Bologna
44 Xtext is part of openarchitectureware / Eclipse Modeling is Based on an EBNF grammar. It generates ANTLR3 based parser EMF based metamodel Eclipse editor with syntax highlighting code completion customizable outline code folding real time constraint checking AN University of Bologna
45 Specifica della grammatica grammar it.unibo.xtext.entities with org.eclipse.xtext.common.terminals generate entities " Model : (imports+=import)* (types+=type)* ; Frasi espresse in notazione EBNF Import : Type: SimpleType: 'import' importuri = STRING; SimpleType Entity; 'type' name = ID; The grammar is a collection of Rules. Rules start with their name followed by : and ending with ; Entity : 'entity' name=id ('extends' extends= [ Entity ] )? '{' properties+=property* '}'; Property: 'property' name=id ':' type= [ Type ] ( many?= '[]')?; AN University of Bologna The editor provides code completion and constraint checking for the grammars themselves
46 Target Language Editor ( generato ) AN University of Bologna
47 Modello-utente (Engines.entity) Frase nel nostro linguaggio type String entity Engine { } property name: String entity WebCrawler extends Engine { } entity Mechanism extends Engine { } property subengine: Engine[] Frase come rappresentazione Un parser (generato in modo automatico dalla grammatica) trasforma questa frase in un AST L AST è la rappresentazione interna della frase espressa nel nostro linguaggio Il nostro linguaggio è un metamodello => l AST è un modello. I tipi dei nodi dell AST sono il metamodello Il modello può essere trasformato in codice (o altro) mediante regole che hanno come riferimento il metamodello AN University of Bologna
Generazione 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:
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
DettagliQuality gate. Sono eventi programmati regolarmente e condotti seguendo una procedura standard
Quality gate Nei punti chiave del processo di sviluppo del software, viene integrato un insieme di quality gate per monitorare la qualità del prodotto intermedio prima che quest ultimo possa passare al
DettagliSicurezza e Gestione delle Reti (di telecomunicazioni)
Sicurezza e Gestione delle Reti (di telecomunicazioni) Tommaso Pecorella tommaso.pecorella@unifi.it Corso di Studi in Ingegneria Elettronica e delle Telecomunicazioni Corso di Studi in Ingegneria Informatica
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
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
DettagliINGEGNERIA DEL SOFTWARE. Prof. Paolo Salvaneschi
Università di Bergamo Facoltà di Ingegneria Corso di Laurea in Ingegneria Informatica INGEGNERIA DEL SOFTWARE Prof. Paolo Salvaneschi 1 Obiettivi Scopi del corso: - Fornire gli elementi di base della disciplina,
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
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
DettagliLiceo Tecnologico. Indirizzo Informatico e Comunicazione. Indicazioni nazionali per Piani di Studi Personalizzati
Indirizzo Informatico e Comunicazione Indicazioni nazionali per Piani di Studi Personalizzati Indirizzo Informatico e Comunicazione Discipline con attività di laboratorio 3 4 5 Fisica 132 Gestione di progetto
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
DettagliIL PROCESSO DI FABBRICAZIONE (sviluppo nuovo prodotto)
CORSO DI Gestione aziendale Facoltà di Ingegneria IL PROCESSO DI FABBRICAZIONE (sviluppo nuovo prodotto) Carlo Noè Università Carlo Cattaneo Istituto di Tecnologie e-mail: cnoe@liuc.it 1 Il processo di
DettagliLinguaggi e Paradigmi di Programmazione
Linguaggi e Paradigmi di Programmazione Cos è un linguaggio Definizione 1 Un linguaggio è un insieme di parole e di metodi di combinazione delle parole usati e compresi da una comunità di persone. È una
DettagliA3_1 V2.2 Analisi dei Requisiti e Specifica Significato, motivazioni e processi
Università di Bergamo Facoltà di Ingegneria INGEGNERIA DEL SOFTWARE Paolo Salvaneschi A3_1 V2.2 Analisi dei Requisiti e Specifica Significato, motivazioni e processi Il contenuto del documento è liberamente
DettagliMinistero dell istruzione, dell università e della ricerca. Liceo Tecnologico. Indirizzo Informatico, Grafico e Comunicazione
Ministero dell istruzione, dell università e della ricerca Liceo Tecnologico Indirizzo Informatico, Grafico e Comunicazione Percorso Informatico e Comunicazione Indicazioni nazionali per i Piani di Studio
DettagliPRODUCT LIFECYCLE MANAGEMENT
PRODUCT LIFECYCLE MANAGEMENT Una breve introduzione al mondo del PLM Business Development Management S.r.l. con il contributo del DIGEP del Politecnico di Torino Il PLM nasce come metodologia di gestione
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
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
DettagliGestione delle Reti di Telecomunicazioni
Dipartimento di Elettronica e Telecomunicazioni Gestione delle Reti di Telecomunicazioni Reti di TLC Ing. Tommaso Pecorella Ing. Giada Mennuti {pecos,giada}@lenst.det.unifi.it 1 Sommario 1. Introduzione
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
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
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
DettagliDalla progettazione concettuale alla modellazione di dominio
Luca Cabibbo A P S Analisi e Progettazione del Software Dalla progettazione concettuale alla modellazione di dominio Capitolo 91 marzo 2015 Se qualcuno vi avvicinasse in un vicolo buio dicendo psst, vuoi
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,
DettagliIT Management and Governance
Scuola universitaria professionale della Svizzera italiana Dipartimento tecnologie innovative IT Management and Governance Master of Advanced Studies Per un responsabile dei servizi IT è fondamentale disporre
DettagliGUIDA - Business Plan Piano d impresa a 3/5 anni
GUIDA - Business Plan Piano d impresa a 3/5 anni 1 Executive summary...2 2 Business idea...2 3 Analisi di mercato...2 4 Analisi dell ambiente competitivo...2 5 Strategia di marketing...3 5.1 SWOT Analysis...3
DettagliMetodologia Classica di Progettazione delle Basi di Dati
Metodologia Classica di Progettazione delle Basi di Dati Metodologia DB 1 Due Situazioni Estreme Realtà Descritta da un documento testuale che rappresenta un insieme di requisiti del software La maggiore
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
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,
DettagliProgrammi e Oggetti Software
Corso di Laurea Ingegneria Civile Elementi di Informatica Programmi e Oggetti Software Settembre 2006 Programmi e Oggetti Software 1 Contenuti Cosa è un programma Cosa significa programmare Il punto di
DettagliProgettaz. e sviluppo Data Base
Progettaz. e sviluppo Data Base! Introduzione ai Database! Tipologie di DB (gerarchici, reticolari, relazionali, oodb) Introduzione ai database Cos è un Database Cos e un Data Base Management System (DBMS)
DettagliSoftware Product Lines (SPL)
Software Product Lines (SPL) Laboratorio di Ingegneria del Software Prof. Paolo Ciancarini Dott. Sara Zuppiroli A.A. 2010/2011 Lab di Ingegneria del Software () Software Product Lines (SPL) A.A. 2010/2011
DettagliInformatica e Telecomunicazioni
Informatica e Telecomunicazioni IL PROFILO DEL DIPLOMATO Il Diplomato in Informatica e Telecomunicazioni : 1. Ha competenze specifiche nel campo dei sistemi informatici, dell elaborazione dell informazione,
DettagliLa specifica del problema
2.9 (Caso di studio facoltativo) Pensare a oggetti: esame del problema Iniziamo ora a esaminare il nostro caso di studio di progettazione e implementazione orientate agli oggetti. Le sezioni Pensare a
DettagliAnno scolastico 2015 / 2016. Piano di lavoro individuale. ITE Falcone e Borsellino. Classe: IV ITE. Insegnante: DEGASPERI EMANUELA
Anno scolastico 2015 / 2016 Piano di lavoro individuale ITE Falcone e Borsellino Classe: IV ITE Insegnante: DEGASPERI EMANUELA Materia: LABORATORIO DI INFORMATICA ISS BRESSANONE-BRIXEN LICEO SCIENTIFICO
DettagliLa portata del software
La portata del software Portata Contesto. In che modo il software in costruzione si inserirà nel sistema, prodotto o contesto aziendale esistente e quali vincoli impone il contesto? Obiettivi relativi
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
DettagliCOS È UN LINGUAGGIO? LINGUAGGI DI ALTO LIVELLO LA NOZIONE DI LINGUAGGIO LINGUAGGIO & PROGRAMMA
LINGUAGGI DI ALTO LIVELLO Si basano su una macchina virtuale le cui mosse non sono quelle della macchina hardware COS È UN LINGUAGGIO? Un linguaggio è un insieme di parole e di metodi di combinazione delle
DettagliCiclo di vita del software
Ciclo di vita del software Nel corso degli anni, nel passaggio dalla visione artigianale alla visione industriale del software, si è compreso che il processo andava formalizzato attraverso: un insieme
DettagliIl Project Management nell Implementazione dell'it Service Operations
Con il patrocinio di: Sponsorizzato da: Il Framework ITIL e gli Standard di PMI : : possibili sinergie Milano, Venerdì, 11 Luglio 2008 Il Project Management nell Implementazione dell'it Service Operations
DettagliL analisi dell attività
L analisi dell attività PROCESSO ITERATIVO VALUTAZIONE ANALISI PROTOTIPAZIONE 2/3 CICLI DESIGN/REDESIGN ANALISI: definire i requisiti di design 1.Analisi Etnografica 2.Task Analysis VALUTAZIONE ANALISI
DettagliLa gestione manageriale dei progetti
PROGETTAZIONE Pianificazione, programmazione temporale, gestione delle risorse umane: l organizzazione generale del progetto Dimitri Grigoriadis La gestione manageriale dei progetti Per organizzare il
DettagliLaurea Specialistica in Informatica Struttura e Configurazione di Sistemi Liberi. [Presentazione del Corso]
Presentazione del Corso 1 Premessa Il software libero/open source si è diffuso oltre le comunità di sviluppo, coinvolgendo altri attori che hanno individuato modelli di sviluppo sostenibili che lo rendono
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
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
DettagliSOA GOVERNANCE: WHAT DOES IT MEAN? Giorgio Marras
SOA GOVERNANCE: WHAT DOES IT MEAN? Giorgio Marras 2 Introduzione Le architetture basate sui servizi (SOA) stanno rapidamente diventando lo standard de facto per lo sviluppo delle applicazioni aziendali.
DettagliUniversità degli studi dell Aquila. Sistemi informativi aziendali 9 C.F.U.
Università degli studi dell Aquila Sistemi informativi aziendali 9 C.F.U. Ing. Gaetanino Paolone (gaetanino.paolone@univaq.it) Prof. Dr. Luciano Fratocchi (luciano.fratocchi@univaq.it) Contenuti (2 ore)
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)
DettagliIL SISTEMA DEI DESCRITTORI EUROPEI PER LE LAUREE E LE LAUREE MAGISTRALI
IL SISTEMA DEI DESCRITTORI EUROPEI PER LE LAUREE E LE LAUREE MAGISTRALI Osservatorio di Ateneo sulla Didattica Università di Siena Servizio Management Didattico Siena, 21 novembre 2006 D.M. sulla disciplina
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
DettagliUniversità degli Studi di Milano 16 gennaio 2007. Dipartimento Informatica e Comunicazione aula Beta
Università degli Studi di Milano 16 gennaio 2007 Dipartimento Informatica e Comunicazione aula Beta DICo: seminario 16/01/07 Reply Reply è una società di Consulenza, System Integration, Application Management
DettagliProject Management. Modulo: Introduzione. prof. ing. Guido Guizzi
Project Management Modulo: Introduzione prof. ing. Guido Guizzi Definizione di Project Management Processo unico consistente in un insieme di attività coordinate con scadenze iniziali e finali, intraprese
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
DettagliIntroduzione al Project Management
IT Project Management Lezione 1 Introduzione al Project Management Federica Spiga A.A. 2009-2010 1 Rapporto CHAOS 2009 Progetti completati in tempo, all interno del budget, rispettando i requisiti RAPPORTO
DettagliI I SISTEMI INFORMATIVI INTEGRATI. Baan IV IV - Enterprise e Orgware NOTE
I I SISTEMI INFORMATIVI INTEGRATI Baan IV IV - Enterprise e Orgware Strumento Enterprise (Azienda) Sistema Informativo Aziendale (EIS Enterprise Information System) Indicatori di Rendimento (PI - Performance
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
DettagliSDA Bocconi School of Management per Unindustria Reggio Emilia. Percorso formativo per Responsabili Sistemi Informativi"
SDA Bocconi School of Management per Unindustria Reggio Emilia Percorso formativo per Responsabili Sistemi Informativi" 1 Il percorso formativo 2 L idea della formazione per Unindustria Reggio Emilia In
DettagliPIANIFICAZIONE DELLA FORMAZIONE: processi, attori e strumenti
PIANIFICAZIONE DELLA FORMAZIONE: processi, attori e strumenti Dott.ssa Patrizia Castelli Premessa: Il processo di pianificazione della formazione nasce dall esigenza di sviluppare le competenze e le conoscenze
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
DettagliSysAround S.r.l. L'efficacia delle vendite è l elemento centrale per favorire la crescita complessiva dell azienda.
Scheda Il CRM per la Gestione delle Vendite Le organizzazioni di vendita sono costantemente alla ricerca delle modalità migliori per aumentare i ricavi aziendali e ridurre i costi operativi. Oggi il personale
DettagliPiano di gestione della qualità
Piano di gestione della qualità Pianificazione della qualità Politica ed obiettivi della qualità Riferimento ad un eventuale modello di qualità adottato Controllo della qualità Procedure di controllo.
DettagliService Design Programme
Service Design Programme SERVICE DESIGN - cosa è Il Service Design è l attività di pianificazione e organizzazione di un servizio, con lo scopo di migliorarne l esperienza in termini di qualità ed interazione
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
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
DettagliMESA PROJECT ITIS G. Cardano Pavia New Curriculum
MESA PROJECT ITIS G. Cardano Pavia New Curriculum L'impatto delle innovazioni educative del Progetto MESA ha portato alcuni cambiamenti significativi e miglioramenti nel curriculum dei seguenti argomenti:
Dettagli1- Corso di IT Strategy
Descrizione dei Corsi del Master Universitario di 1 livello in IT Governance & Compliance INPDAP Certificated III Edizione A. A. 2011/12 1- Corso di IT Strategy Gli analisti di settore riportano spesso
DettagliAris TimeSheet. che guardano oltre. enti e aziende. Soluzioni per
Aris TimeSheet Soluzioni per enti e aziende che guardano oltre L applicativo ARIS TIMESHEET è stato progettato e sviluppato per supportare i project manager nel monitoraggio dello stato di avanzamento
Dettagliascoltare ispirare e motivare miglioramento problem solving Flex360 pianificare comunicare la vision organizzare
Flex360 La valutazione delle competenze online comunicare la vision ascoltare problem solving favorire il cambiamento proattività pianificare miglioramento organizzare ispirare e motivare Cos è Flex360
DettagliLINEA PROJECT MANAGEMENT
LINEA PROJECT MANAGEMENT ITIL FOUNDATION V3 46.10.3 3 giorni Il corso, nell ambito della Gestione dei Servizi IT, mira a: 1. Comprendere Struttura e Processi di ITIL V3 - Information Technology Infrastructure
DettagliBig Data e IT Strategy
Big Data e la forza degli eventi Da sovraccarico informativo a strumento di conoscenza Big Data e IT Strategy Come costruire l Impresa Intelligente Università Milano Bicocca 1 Marzo 2013 GIUSEPPE LIETO
DettagliTITOLO DELL INSEGNAMENTO CFU. Principali conoscenze e/o Abilità. Obiettivo. Organizzazione didattica. Strategia d Impresa e Marketing 10 CFU
TITOLO DELL INSEGNAMENTO Strategia d Impresa e Marketing CFU 10 CFU Principali conoscenze e/o Abilità L American Marketing Association (1995) ha definito il marketing come il processo di pianificazione
DettagliLe effettive esigenze della Direzione del Personale nella gestione delle risorse umane in azienda. Andamento dal 2005 ad oggi
Le effettive esigenze della Direzione del Personale nella gestione delle risorse umane in azienda. Andamento dal 2005 ad oggi Indagine ottenuta grazie alla somministrazione di questionario ad oltre 260
DettagliIl Building Information Modelling (BIM)
Sede dell'ordine degli Ingegneri di Lecco Lecco,16 aprile 2015 Il Building Information Modelling (BIM) Processi di progettazione e metodi di verifica del progetto: il ruolo del Building Information Modelling,
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):
DettagliLinguaggi di programmazione
Linguaggi di programmazione Un calcolatore basato sul modello di von Neumann permette l esecuzione di un programma, cioè di una sequenza di istruzioni descritte nel linguaggio interpretabile dal calcolatore
DettagliBERGAMO SMART CITY VERSO EXPO 2015. Parco Scientifico Tecnologico Kilometro Rosso - 26 novembre 2013
BERGAMO SMART CITY VERSO EXPO 2015 Start Up Innovative -Le imprese fanno sistema Parco Scientifico Tecnologico Kilometro Rosso - 26 novembre 2013 START UP E INCUBATORI Il Decreto Sviluppo (179/2012), introducendo
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
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
DettagliPresentazione aziendale. soluzioni, servizi, consulenza
Presentazione aziendale soluzioni, servizi, consulenza 2015 1 Offriamo SOLUZIONI SERVIZI CONSULENZA SOLUZIONI Vecomp Software è un partner che offre «soluzioni» in ambito informatico. In un mondo sempre
DettagliLa ricerca empirica in educazione
La ricerca empirica in educazione Alberto Fornasari Docente di Pedagogia Sperimentale Dipartimento di Scienze della Formazione, Psicologia, Comunicazione Il ricercatore ha il compito di trovare relazioni
DettagliAnalizzare e gestire il CLIMA e la MOTIVAZIONE in azienda
Analizzare e gestire il CLIMA e la MOTIVAZIONE in azienda tramite lo strumento e la metodologia LA GESTIONE DEL CLIMA E DELLA MOTIVAZIONE La spinta motivazionale delle persone che operano in azienda è
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
DettagliIl modello di ottimizzazione SAM
Il modello di ottimizzazione control, optimize, grow Il modello di ottimizzazione Il modello di ottimizzazione è allineato con il modello di ottimizzazione dell infrastruttura e fornisce un framework per
DettagliAttività destinata a raccogliere e a catalogare documenti con l'obiettivo di farli conoscere e diffonderli.
DOCUMENTAZIONE Attività destinata a raccogliere e a catalogare documenti con l'obiettivo di farli conoscere e diffonderli. Attività di elaborazione, raccolta, organizzazione e diffusione di documenti.
DettagliDesign patterns in Java
tesi di laurea Anno Accademico 2012/13 relatore Ch.mo prof. Porfirio Tramontana candidato Luciano Amitrano Matr. 534/2042 Progettare SW a oggetti è difficoltoso I progettisti devono cercare di far coesistere
DettagliWorkFlow Management Systems
WorkFlow Management Systems Cosa è un? Automazione di un processo aziendale (business process) con: documenti, informazioni e compiti partecipanti insieme predefinito di regole obiettivo comune 2 Esempi
DettagliOpenPsy: OpenSource nella Psicologia. Presentazione del progetto in occasione dell edizione 2004 del Webbit (Padova)
OpenPsy: OpenSource nella Psicologia Pag. 1 di 9 OpenPsy: OpenSource nella Psicologia Presentazione del progetto in occasione dell edizione 2004 del Webbit (Padova) PREMESSA Per prima cosa, appare ovvio
DettagliIL MODELLO SCOR. Agenda. La Supply Chain Il Modello SCOR SCOR project roadmap. Prof. Giovanni Perrone Ing. Lorena Scarpulla. Engineering.
Production Engineering Research WorkGROUP IL MODELLO SCOR Prof. Giovanni Perrone Ing. Lorena Scarpulla Dipartimento di Tecnologia Meccanica, Produzione e Ingegneria Gestionale Università di Palermo Agenda
DettagliStimare il WCET Metodo classico e applicazione di un algoritmo genetico
Stimare il WCET Metodo classico e applicazione di un algoritmo genetico Sommario Introduzione Definizione di WCET Importanza del WCET Panoramica dei classici metodi per calcolare il WCET [1] Utilizzo di
DettagliValorizzazione della professionalità di SW Quality Assurance
Valorizzazione della professionalità di SW Quality Assurance 17 Esther BEVERE Miriam MERENDA ALTEN Italia Agenda Rilevanza della Professionalità del Software Tester Professionalità nel Testing Percorsi
DettagliAlternanza scuola lavoro: che cosa significa
Alternanza scuola lavoro: che cosa significa È una modalità didattica realizzata in collaborazione fra scuole e imprese per offrire ai giovani competenze spendibili nel mercato del lavoro e favorire l
DettagliS i s t e m a d i v a l u t a z i o n e d e l l e p r e s t a z i o n i d e i d i p e n d e n t i
S i s t e m a d i v a l u t a z i o n e d e l l e p r e s t a z i o n i d e i d i p e n d e n t i P r o d o t t o d a A l b e r t o P a o l i n i G r o s s e t o P a r c h e g g i s r l V e n g o n o p
DettagliLezione 8. La macchina universale
Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione
DettagliIDENTITÀ GIOVANE. Nata nel 2006 con l intento di diventare leader nel settore IT, Easytech cresce con una solida competenza in tre divisioni:
copertina pg. 1 immagine pg. 2 Easytech è un gruppo di giovani professionisti uniti da un obiettivo comune: proporre le migliori soluzioni per rendere le imprese leggere e pronte a sostenere la competizione
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
Dettagliairis consulting Via Domenichino, 19-20149 - Milano Tel: 02.43986313 - Fax: 02.43917414 e-mail: info@airisconsulting.it web: www.airisconsulting.
Via Domenichino, 19-20149 - Milano Tel: 02.43986313 - Fax: 02.43917414 e-mail: info@.it web: www..it Chi siamo AIRIS CONSULTING è una Società di Consulenza di Direzione nata per rispondere al bisogno delle
DettagliProgettazione dei Sistemi di Produzione
Progettazione dei Sistemi di Produzione Progettazione La progettazione è un processo iterativo che permette di definire le specifiche di implementazione per passare dall idea di un sistema alla sua realizzazione
DettagliSTRUTTURA UDA U.D.A. 4. Classe III A PRESENTAZIONE
STRUTTURA UDA UNITÀ DIDATTICA di APPRENDIMENTO di TECNOLOGIE ELETTRICO-ELETTRONICHE E APPLICAZIONI U.D.A. 4 Classe III A.S. 2015/2016 TITOLO: Componenti fondamentali di un impianto Strumenti di misura
DettagliCiclo di vita del software: strumenti e procedure per migliorarne la sicurezza. Roberto Ugolini roberto.ugolini@postecom.it
Ciclo di vita del software: strumenti e procedure per migliorarne la sicurezza Roberto Ugolini 1 Il processo di sviluppo sicuro del codice (1/2) Il processo di sviluppo sicuro del codice () è composto
DettagliSTAKEHOLDER ENGAGEMENT
STAKEHOLDER ENGAGEMENT IN BREVE E-quality Italia S.r.l. Via Mosca 52-00142 Roma T 0692963493, info@equality-italia.it, http://www.equality-italia.it Indice 1. Il problema 3 2. Stakeholder Engagement in
Dettagli