La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Software Engineering 1 RAD: Case Study Lesson 9. RSA: Rose per Sistema di Ateneo RSA Team.

Presentazioni simili


Presentazione sul tema: "Software Engineering 1 RAD: Case Study Lesson 9. RSA: Rose per Sistema di Ateneo RSA Team."— Transcript della presentazione:

1 Software Engineering 1 RAD: Case Study Lesson 9

2 RSA: Rose per Sistema di Ateneo RSA Team

3 3 Ingegneria dei Sistemi –Si occupa della costruzione di modelli in grado di descrivere realta organizzative complesse –Modella Procedure + Sistemi Informatici Piano dei Sistemi –Progetto speciale avviato dallUniversita di Trento. –Obiettivo: Ingegneria dei sistemi per Sistema di Ateneo. –Effetti: Documentazione strutture, processi e procedure centralizzata e condivisa. Controllo processo (misurazione e monitoraggio). Re ingegnerizzazione di processo (ottimizzazione processo).

4 4 Ingegneria dei Sistemi (ctd) Gli ingredienti base sono: Metodologia: metodi e procedure per la rilevazione dei processi e dei sistemi informatici. Notazione: formalismo con cui rappresentare le informazioni relative a strutture e sistemi informatici. Strumenti: tool software a supporto di metodologia e notazione.

5 5 Metodologia: Esempio Metodologia Arthur Andersen per Universita di Trento: –Strategy: definizione degli obiettivi strategici e definizione della catena del valore (composizione dei processi per formare valore aggiunto). –Business Architecture (BA): definizione delle strutture organizzative e delle procedure (processi) esistenti (siano esse informatizzate o no). –Solution Delivery (SD): individuazione gap tra SD e BA. Identificazione bisogni (tipicamente in termini di sistemi informatici). –Operate (OP): monitoraggio dei sistemi informatici per fine tuning dei sistemi e per misurazione del raggiungimento degli obiettivi strategici.

6 6 Notazioni e Strumenti: Esempio Metodologia Arthur Andersen per Universita di Trento: –Notazioni: Notazioni informali (e.g. Flow Chart, descrizion testuali) –Strumenti: Strumenti per disegnare diagrammi (vs. Case tools), strumenti Office (strumenti per presentazioni, word processor, spreadsheet, …)

7 7 Output

8 8 AA: Dipendenze tra Deliverable

9 9 Rose per Sistema Ateneo Ambito: –Piano dei Sistemi (PDS) Obiettivi di RSA: –Adattare una metodologia di documentazione Arthur Andersen per le esigenze di Ateneo. –Selezionare notazioni e strumenti (UML + Rose). –Personalizzare strumenti per le esigenze specifiche di Ateneo.

10 10 Assessment: Metodologia AA Vantaggi: –Consolidata –Strutturata –Copre lintero ciclo –Deliverable strutturati ed articolati. Svantaggi: –Non supportata da tool –Orientata prevalentemente su RAD

11 11 AA: Dipendenze tra Deliverable

12 12 Assessment: UML Vantaggi: –Consolidata e conosciuta –Interesse/Standardizzazione –Intuitiva (ma nel mondo funzionale…) –Ben supportata da tool. Svantaggi: –Analisti tipicamente formati nel mondo funzionale (adattamento notazioni/formazione)

13 13 Assessment Strumenti: Rose Vantaggi: –Standard de facto –Flessibile/Programmabile (REI API) –Buon supporto UML –Forte know-how/investimento in Universita Svantaggi: –Costo licenze (Licenza Educational senza supporto) –A volte troppo flessibile –Orientato alla fase di sviluppo piu che di analisi –Carenze e bug (soprattutto in fase di estrazione della documentazione). –Integrazione di modelli sviluppati in parallelo

14 14 Caratteristiche Principali Metodologia –Linee guida per Business Architecture (BA) –Definizione preliminare per Solution Delivery (SD) –Gestione progetto singolo Implementazione –Generazione Documentazione per BA e SD –Estrazione Selettiva Documentazione –Integrazione con text editor e spell checker –Computo Matrice CRUD Casi di Studio –Direzione Risorse Umane (BA) –Procedura di Budget (BA) –Sistema Bibliotecario (BA) – in progress –Rose per Sistema Ateneo (SD)

15 15 Struttura Presentazione Metodologia PARTE I. Presentazione della strutturazione del modello e delle linee guida adottate nella modellazione della Business Architecture Strumenti PARTE II. Presentazione delle soluzioni tecniche e degli algoritmi implementati a supporto della metodologia Casi di Studio PARTE III. Rapida presentazione dei casi di studio affrontati Conclusioni e Prossimi Passi

16 Parte I. Metodologia

17 17 Struttura Modelli Qualsiasi modello in Rational Rose deve muoversi allinterno della struttura in package proposta a sinistra Modello: Package: Use Case View Package: Logical View Package: Component View Package: Deployment View

18 18 Struttura Modelli Business Architecture: contenitore per la definizione delle strutture di Ateneo Modello: Sistema Ateneo Package: Use Case View Package: Business Architecture Package:... Package:... Package: Logical View Package: Component View Package: Deployment View

19 19 Struttura Modelli Business Architecture Organigramma Processi Processi Comuni Attori Entità Glossario Modello: Sistema Ateneo Package: Use Case View Package: Business Architecture Package: Package: Organigramma Package: Processi Package: Processi Comuni Package: Attori Package: Entità Package: Glossario Package:... Package: Logical View Package: Component View Package: Deployment View

20 20 Struttura Modelli Solution Delivery: contenitore per la definizione dei Sistemi di Ateneo (Use Case View = requirements, Logical View = architecture) Modello: Sistema Ateneo Package: Use Case View Package: Business Architecture Package: Package: Solution Delivery Package:... Package:... Package: Logical View Package: Solution Delivery Package:... Package:... Package: Component View Package: Deployment View

21 21 Struttura Modelli Business Architecture Organigramma Processi Processi Comuni Attori Entità Glossario Modello: Sistema Ateneo Package: Use Case View Package: Business Architecture Package: Package: Organigramma Package: Processi Package: Processi Comuni Package: Attori Package: Entità Package: Glossario Package:... Package: Logical View Package: Component View Package: Deployment View

22 22 Organigramma Lorganigramma viene costruito mediante luso di package (classi) nidificati e di diagrammi dei package (classi).

23 23 Organigramma Descrizione del package/struttura

24 24 Processi Gerarchica Processi Organizza gerarchicamente i processi. Process Flow Mostra come un processo non elementare viene realizzato attraverso la concatenazione di processi più elementari. Actors and Responsibility Mette in evidenza responsabilità e attori (interni ed esterni) che partecipano a un processo Activities and Entities Definisce come un processo elementare si decompone in attività e quali entità manipola I processi sono rappresentati attraverso casi duso opportunamente stereotipati

25 25 Gerarchia Processi Caratteristica: –Organizza gerarchicamente i processi. Notazione: –Use Case Diagrams Aspetti Standard: –Utilizzo di stereotipo Business Use Case –Utilizzo di stereotipi > e generalize Aspetti meno Standard (ma utili): –Decomposizione ad albero. –Utilizzo di stereotipo > Nel modello la gerarchia è presentata per livelli La visione di insieme è comunque ottenibile costruendosi un apposito diagramma

26 26 Gerarchia Processi La gerarchia dei processi è realizzata mettendo in relazione processi attraverso tre diversi stereotipi. generalizzazione stereotipo >

27 27 Gerarchia Processi: Stereotipi La generalizzazione dal processo Padre nei processi A, B viene usata per indicare che il processo Padre si specializza nei processi A o B. (Usata per raggruppare logicamente processi) Lo stereotipo > dal processo Padre in C, D, viene usato per indicare che il caso duso Padre si realizza attraverso una composizione di un sottoinsieme dei processi figli C e D.

28 28 Gerarchia Processi: Stereotipi Lo stereotipo > dal processo Padre ai processi E, F viene usato per indicare che il processo Padre è composto esattamente dai processi E ed F. Ad ogni passo di decomposizione viene utilizzato un solo tipo di stereotipo

29 29 Process Flow I Process Flow diagram vengono utilizzati per rappresentare come processi legati (attraverso include o contain) ad uno stesso processo padre si compongono a realizzare il processo padre Gestione giuridico-amministrativa PTA Assunzione PTA > Cessazione PTA > Gestione adempimenti amministrativi PTA > Gestione previdenziale corrente PTA > Gestione retributiva corrente PTA > Come si compongono i processi figli a realizzare il processo padre?

30 30 Process Flow Caratteristica: –Sequenzia i processi. Notazione: –Activity Diagram Aspetti standard: –Intera potenza espressiva degli activity diagram –Utilizzo di stereotipo > Aspetti meno standard (ma utili): –NESSUNO

31 31 Process Flow Calcolo trattenute stipendi Conguaglio fiscale Applicazione sostituto d'imposta Gestione giuridico-amministrativa CEL Gestione giuridico-amministrativa PTA degli interventi realizzati > Assunzione CEL > Cessazione CEL > Gestione giuridico-amministrativa corrente CEL > Assunzione PTA > Cessazione PTA > Gestione adempimenti amministrativi PTA > Gestione previdenziale corrente PTA > Gestione retributiva corrente PTA > Decomposizione GerarchicaProcess Flow Le specializzazioni rappresentano organizzazioni logiche di processi. Process Flow non ha senso.

32 32 Actors and Responsibility Il diagramma degli Actors and Responsibility mette in evidenza, per i processi foglia, attori (interni ed esterni) che prendono parte (attiva o passiva) nel processo ed alloca la responsabilità di processo ad un attore interno.

33 33 Actors and Responsibility

34 34 Actors and Responsibility Senato Accademico Ufficio Personale Docente e Ricercatore Segreteria di Facoltà Presidio amministrativo di Facoltà Dirigente DRU Collaboratore Predisposizione contratto per attività didattica > Caratteristica: –Definisce interfaccia processo e responsabile Notazione: –Use Case Diagram Aspetti standard: –Attori esterni –Processi con stereotipo Business Use Case –Business Actor Aspetti meno standard (ma utili): – > – > come attori del processo (confini del sistema)

35 35 Activities and Entities I processi foglia hanno sempre associato un diagramma delle attività che definisce la strutturazione in attività del processo e indica le attività manipolate dal processo.

36 36 Activities and Entities Caratteristica: –Definisce strutturazione processo in attività e entità manipolate Notazione: –Activity Diagram Aspetti standard: –Costrutti Activity Diagram –Attività-Entità (UML 1.4) Aspetti meno standard (ma utili): –Stereotipi per manipolazione entità –Stereotipi per richiamare processi A02: Processo1

37 37 Activities and Entities: Esempi di Stereotipi > a01: Aggiornamento tabelle riassuntive e preparazione delibera di Senato a02: Predisposizione lettera di incarico e contratto a03: Invio documentazione alla Facoltà : Lettera di incarico > : Contratto di collaborazione > : Modulo di richiesta contratto > Comunicazione di assegnazione incarico : Lettera di comunicazione >

38 38 Processi Comuni Processi comuni: processi trasversali definiti in una struttura I processi comuni sono definiti in una parte indipendente del modello (package Processi Comuni) I processi comuni possono essere decomposti gerarchicamente (ma, usualmente, non accade) I processi comuni sono referenziati nei Process Flow e negli Activity Diagram

39 39 Documentazione Processi Tutti i processi sono documentati attraverso il campo di documentazione standard di Rational Rose. La documentazione dei processi impiega tag XML per marcare semanticamente alcune parti di informazione La documentazione dei processi impiega tag HTML per marcare visualmente la descrizione della documentazione.

40 40 Documentazione Processi Tag XML: Marcano semanticamente la documentazione per strutturare le informazioni testuali associate ad un processo. DTD definito appositamente per il progetto. Tag HTML: Aggiungono direttive visuali alla documentazione dei processi. Supporto per HTML 3.2 quasi completo (eccezioni: alcuni argomenti dei tag A, IMG, …) Obiettivo del caso d'uso Evento scatenante Dati in ingresso Dati in uscita Descrizione del caso d'uso. Scenario: Inizio Continuazione Fine

41 41 Attori, Entità, Glossario Attori: –Utilizzati negli Actors and Responsibility Diagrams. –Vanno inseriti nel package Attori, eventualmente raggruppati in package. Entità: –Utilizzate negli Activity Diagram dei processi foglia –Vanno inserite nel package Entità sotto forma di classi, eventualmente raggruppate facendo uso di package. Glossario: –Utilizzato nei deliverable, per la spiegazione di termini specifici al dominio. –Vanno inseriti, sotto forma di classi, in un package apposito del modello.

42 Parte II. Strumenti

43 43 Strumenti RSA Insieme di strumenti appositamente implementati per supportare metodologia e processo di redazione del modello Sistema di Ateneo e superare i limiti degli strumenti Rational Valenza spesso più generale dellambito del progetto (ad es.: XML export) Architettura distribuita e prevalentemente basata su –Strumenti commerciali o di robustezza industriale –Linguaggi di scripting Insieme di Strumenti Integrati –Repository, Web Server, Rational Rose, Text/HTML Editor, MS Word, Excel

44 44 Rational Rose Caratteristiche: Standard quasi di fatto Buon supporto di UML Programmabile (REI) Limiti Principali: Documentazione elementi del modello (per es. campi solo testuali, niente spell checker). Sintesi delle dipendenze tra elementi del modello. Decomposizione pienamente gerarchica del modello.

45 45 Rational SoDA Caratteristiche: Estrae documenti da modelli Rose Basato su macro e template Word Svantaggi: Interazione utente spesso inaccettabile (definizione template, riuso, stabilità). Non affronta comunque problemi relativi a formattazione campi testo degli elementi Rose Impossibilità (pratica) di raggiungere determinati standard di formattazione (ad es. tabelle) Impossibilità di raggiungere standard adeguati di documentazione

46 46 Alcuni Interventi effettuati 1.Estrazione di documentazione dal modello e sintesi dipendenze nel modello Generazione matrice CRUD Estrazione e generazione automatica deliverable Generazione glossario 2.Controlli di qualità del modello Controlli di correttezza 3.Miglioramento interfaccia utente (redazione modelli) Integrazione con editor esterno Integrazione con spell-checker

47 47 Interventi Effettuati

48 48 Generazione Matrice CRUD Mette in relazione processi ed entità, descrive come i processi manipolano (operazioni di Create, Read, Update, Delete) le entità. Estratta automaticamente dal modello Rose Stato attuale: Costruzione CRUD a livello di attività, processi, macroprocessi. Generalizzazione a qualsiasi livello delle gerarchia Gestione Processi Comuni Situazione a Divenire: Aggiornamento per nuovi stereotipi

49 49 Generazione CRUD Algoritmo in due passi: 1.Navigazione del modello ed estrazione delle informazioni (Macro REI, output in CSV file) 2.Sintesi delle informazioni in forma matriciale (input CSV file, XML, HTML)

50 50 Generazione CRUD Le informazioni vengono estratte dal modello esaminando i diagrammi di attività associati ai casi duso. … … …

51 51 Generazione CRUD –Tipo operazione (CRUD) –Nome entità, –Classe entità, –Nome attività, –Nome swimlane del diagramma, –Nome caso duso, –Nome macro caso duso AzioneNome_oggettoClasse_oggettoNome_AttivitàNome_SwimlaneNome_CasoUsoNome_MacroUC Autorizzazione aumento di spesa Decreto del Direttore Generale b01: predisposizion e autorizzazione di spesa Ufficio Personale Tecnico Amministrativo: Gestione variazione di orario PTA Gestione giuridico- amministrativa corrente PTA Richiesta ricongiunzione Modulo richiesta ricongiunzione Compila modulo per richiesta provvedimento di ricongiunzione Dipendente:Ricongiunzione da ente locale a stato Gestione giuridico- amministrativa PTA 10000Assegnazione istituto contrattuale Disposizione del dirigente DRU a01: rilascio attuazione economica Ufficio Selezione e Sviluppo Risorse Umane: Attuazione economica dell'istituto contrattuale Valutazione e incentivazione PTA

52 52 Generazione CRUD: Esempio

53 53 Estrazione Documentazione Permette allutente di generare automaticamente deliverable per BA e SD direttamente dal modello Rose Struttura documenti secondo gerarchia modello Integra testo e figure Supporta formattazione semantica e visuale Formati di output supportati: –HTML –Microsoft Word

54 54 Estrazione Documentazione Algoritmo in tre passi: 1.Trasformazione modello Rose in XML (Macro REI, output XML file) 2.Trasformazione XML in HTML (input: XSL, XSLT engine, output HTML file) 3.Import HTML in Microsoft Word (input HTML files, Macro Word)

55 55 Estrazione Doc.: Rose 2 XML La gerarchia del modello viene navigata e trasformata in XML che ne rispetta la struttura XMI versus RSA-XML

56 56 Estrazione Doc.: XML 2 HTML Trasformazione attraverso XSL engines Insieme di Stylesheet generici per trasformazione di elementi XML (riuso per BA e SD) …

57 57 Estrazione Doc.: XML 2 HTML Gestione elementi Base Business Architecture Solution Delivery Layout base HTML file

58 58 Integrazione con Ms Word Macro che consente di incollare i documenti HTML in un unico documento MS Word Controllo fine su template da utilizzare per la stampa Generazione automatica sommario Generazione documento auto-contenuto (figure)

59 59 Generazione Sito Web

60 60 Altri interventi Controlli di correttezza Sono state sviluppate delle procedure che effettuano verifiche affinché il modello rispetti certi criteri (ad esempio, per la computazione della CRUD) Generazione Glossario È stato implementato un metodo per estrarre tutte le operazioni e gli attributi delle classi contenute nel modello.

61 61 Altri interventi Integrazione con editor esterno –In modalità sincrona, con editor scelto dallutente –Prossimo Passo: integrazione con HTML/XML editor Integrazione con Spell-Checker –Con granularità definita dallutente (intero modello, …) –Integrazione con strumenti standard –Basato su esportazione XML –In fase di testing

62 62 Parte III. Applicazioni

63 63 Alcune Applicazioni Direzione Risorse Umane (BA) –Guida per la definizione di BA –Deliverable di circa 450 pagine Rose per Sistema Ateneo (SD) –Guida per la sperimentazione su SD –Deliverable di circa 50 pagine

64 64 Parte IV. Conclusioni

65 65 Direzione Risorse Umane

66 66 Conclusioni Ingegneria di processo e un passo fondamentale per monitoraggio e ottimizzazione di strutture/procedure. Soluzioni basate su case tools offrono vantaggi sostanziali. Per es: –Manipolazione oggetti del modello (vs. manipolazione ellissi, …) –Coerenza del modello (vs. duplicazione informazioni) –Generazione automatica deliverable Soluzioni informatiche richiedono lo sviluppo di: –Architetture distribuite –Implementazioni basate su linguaggi di scripting –…


Scaricare ppt "Software Engineering 1 RAD: Case Study Lesson 9. RSA: Rose per Sistema di Ateneo RSA Team."

Presentazioni simili


Annunci Google