• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Technical manual (1)
 

Technical manual (1)

on

  • 1,176 views

 

Statistics

Views

Total Views
1,176
Views on SlideShare
1,176
Embed Views
0

Actions

Likes
0
Downloads
25
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Technical manual (1) Technical manual (1) Document Transcript

    • Technical ManualNo part of this document may be reproduced, in whole or in part, without the express written permissionof Tecnoteca s.r.l.CMDBuild ® leverages many great technologies from the open source community:PostgreSQL, Apache, Tomcat, Eclipse, Ext JS, JasperReports, IReport, Enhydra Shark, TWE, OCSInventory, Liferay, Alfresco, GeoServer, OpenLayers, PrefuseWe are thankful for the great contributions that led to the creation of that productsCMDBuild ® è un progetto a cui hanno partecipato:Comune di Udine – Servizio Sistemi Informativi e Telematici: • Committente inizialeTecnoteca S.r.l. (www.tecnoteca.com): • Progettazione e realizzazione • Maintainer • Proprietà del logoCogitek S.r.l. (www.cogitek.it): • Consulenza ITILCMDBuild ® è rilasciato con licenza GPL (www.gnu.org/copyleft/gpl.html)CMDBuild ® è un marchio depositato da Tecnoteca Srl .In tutte le situazioni in cui viene riportato il logo di CMDBuild ® devono essere esplicitamente citati inomi del maintainer Tecnoteca Srl e dei partner del progetto Comune di Udine e Cogitek Srl, nonchèdeve essere presente in modo evidente un link al sito del progetto http:www.cmdbuild.org .Il marchio di CMDBuild ® non può essere modificato (colori, proporzioni, forma, font) in nessun modo,nè essere integrato in altri marchi.Il marchio di CMDBuild ® non può essere utilizzato come logo aziendale nè lazienda che lo utilizza puòpresentarsi come autore / proprietario / maintainer del progetto.Il sito ufficiale di CMDBuild è http://www.cmdbuild.orgCMDBuild – Open Source Configuration and Management Database Pag. 2
    • Technical ManualSommarioIntroduzione..................................................................................................................................... 4 I moduli di CMDBuild................................................................................................................................... 4Composizione del sistema................................................................................................................ 6 Requisiti hardware....................................................................................................................................... 6 Requisiti software........................................................................................................................................ 6 Requisiti client.............................................................................................................................................. 8Installazione di CMDBuild da interfaccia grafica...............................................................................9 Per partire ................................................................................................................................................... 9 Avvio............................................................................................................................................................ 9 Configurazione del database..................................................................................................................... 10 Configurazione credenziali di accesso....................................................................................................... 10Installazione di CMDBuild in modalità manuale..............................................................................12 Per partire ................................................................................................................................................. 12 Installazione del database......................................................................................................................... 12 Configurazione dellapplicazione............................................................................................................... 13 Configurazione dellinterfaccia fra CMDBuild e Shark................................................................................13 Configurazione dellinterfaccia fra CMDBuild 1.1 e Alfresco 2.1................................................................15Installazione del sistema DMS Alfresco..........................................................................................18 Configurazioni di base............................................................................................................................... 18 Installazione “aspect” di collegamento Alfresco <=> CMDBuild.................................................................19 Configurazioni aggiuntive.......................................................................................................................... 20Architettura dellapplicazione..........................................................................................................21 Modulo Database....................................................................................................................................... 21APPENDICE: Glossario..................................................................................................................26CMDBuild – Open Source Configuration and Management Database Pag. 3
    • Technical ManualIntroduzioneCMDBuild è una applicazione Open Source finalizzata a supportare la gestione dellaconfigurazione degli oggetti e dei servizi informatici in carico al Dipartimento ICT di unaorganizzazione ed a guidarne i processi di controllo secondo le “best practice” ITIL.Gestire un Database della Configurazione (CMDB) significa mantenere aggiornata e disponibileper gli altri processi la base dati relativa agli elementi informatici utilizzati, alle loro relazioni ed alleloro modifiche nel tempo.CMDBuild si ispira alle “best practice" ITIL (Information Technology Infrastructure Library), ormaiaffermatosi come "standard de facto", non proprietario, per la gestione dei servizi informaticisecondo criteri orientati ai processi.Con CMDBuild lamministratore del sistema può costruire ed estendere autonomamente il proprioCMDB (da cui il nome del progetto), modellandolo su misura della propria organizzazione tramite unapposito Modulo di Amministrazione che consente di aggiungere progressivamente nuove classi dioggetti, nuovi attributi e nuove tipologie di relazioni.Tramite un apposito sistema di gestione dei workflow è poi possibile definire in modo visuale conun editor esterno nuovi processi operanti sulle classi modellate nel database, importarli inCMDBuild ed eseguirli secondo i criteri impostati.Lapplicazione consente la stampa di report tramite il motore open source JasperReports, sia di tipotabulare prodotti tramite un wizard interno, che di maggiore complessità ottenibili importando templatedisegnati tramite un apposito editor visuale esterno.Grazie allintegrazione con il diffuso sistema documentale open source Alfresco è inoltre possibileallegare documenti, immagini ed altri file alle schede archiviate in CMDBuild ed operare ricerchefull text sui file di tipo testuale.E anche disponibile un sistema di interfaccia con fonti dati esterne (database e server mail) per lasincronizzazione dati da altri sistemi, utilizzato in particolare per aggiornare linventario automaticodellhardware rilevabile in rete (tramite integrazione con il sistema open source OCS Inventory).E infine possibile utilizzare funzionalità GIS per il georiferimento degli asset e la loro visualizzazione suuna mappa geografica (servizi mappe esterni) e / o sulla planimetria di un ufficio (server localeGeoServer).I moduli di CMDBuildIl sistema CMDBuild comprende due moduli principali: • il Modulo di Amministrazione, dedicato alla definizione iniziale ed alle successive modifiche del modello dati e delle configurazioni di base (classi e tipologie di relazioni, utenti e permessi, upload report e workflow, opzioni e parametri) • il Modulo di Gestione dati, dedicato alla consultazione ed aggiornamento delle schede e delle relazioni nel sistema, alla gestione di documenti allegati, allavanzamento dei processi, alla produzione di reportIl Modulo di Amministrazione è riservato agli utenti abilitati al ruolo di amministratore, il Modulo diGestione è utilizzato dagli operatori addetti alla consultazione ed aggiornamento dei dati.CMDBuild – Open Source Configuration and Management Database Pag. 4
    • Technical ManualFanno inoltre parte del sistema due componenti esterni: • daemon di sincronizzazione con basi dati esterne, utilizzato in particolare, ma non solamente, per laggiornamento dei dati tecnici degli asset da sistemi di Automatic Inventory • webservice, per linteroperabilità con il sistema CMDBuild da parte di applicazioni esterneIl presente manuale è dedicato a tecnici informatici interessati ad installare il sistema e aconoscere le modalità tecniche di implementazione di alcune sue componenti.Sono disponibili sul sito di CMDBuild (http://www.cmdbuild.org) ulteriori specifici manuali dedicati a: • overview concettuale del sistema (“Overview Manual”) • utilizzatore del sistema (“User Manual”) • amministrazione del sistema (“Administrator Manual”) • configurazione del workflow (“Workflow Manual”) • utilizzo del webservice per linteroperabilità con sistemi esterni (“Webservice Manual”)CMDBuild – Open Source Configuration and Management Database Pag. 5
    • Technical ManualComposizione del sistemaLinstallazione di CMDBuild richiede lutilizzo di uno o più server su cui suddividere le componentilogiche costitutive del sistema: • server web • componenti di elaborazione • database • webservice • archivio documentaleVengono descritti di seguito i requisiti software richiesti da CMDBuild e le modalità di installazionee configurazione.Nella progettazione dellinfrastruttura sistemistica va considerato che l’attivazione di applicazioniweb come quella in oggetto richiede la disponibilità di componenti hardware e di rete dotate diadeguati livelli di sicurezza, sia rispetto accessi esterni indesiderati (firewall, DMZ) che rispetto leesigenze di disponibilità continuativa on line del sistema (backup della linea internet, mirroringhardware) e di adeguate prestazioni di accesso.Requisiti hardwarePer linstallazione di CMDBuild è richiesto un computer di classe server di recente generazione,avente le seguenti caratteristiche dimensionali minime: • memoria RAM minimo 2 GB, fortemente consigliati 4 GB • spazio disco minimo 40 GB, salvo necessità di gestione di un esteso archivio documentale (alimentato con la gestione degli allegati)Sono altresì consigliati: • la presenza di un sistema di dischi in configurazione RAID • un sistema di backup giornaliero dei dati • un sistema di continuità elettrica per preservare il server da interruzioni anomale dellalimentazioneRequisiti softwareLinstallazione di CMDBuild richiede la presenza dei componenti software di seguito elencati.Sistema operativoQualunque sistema operativo supporti gli applicativi sotto elencati (consigliato il sistema operativoLinux sul quale CMDBuild è soggetto a test più estesi).DatabasePostgreSQL 8.3 o superiore, linstallazione base è sufficiente, accertarsi che sia attivato il supportoal linguaggio "plpgsql" e che sia impostato con codifica UTF8.Sito di riferimento: http://www.postgresql.org/Web ServerCMDBuild richiede linstallazione di Jakarta Tomcat 5.5 o superiori (consigliato Tomcat 6.0).CMDBuild – Open Source Configuration and Management Database Pag. 6
    • Technical ManualPuò essere utilizzato il web server Apache 2.2 per accedere a più istanze di CMDBuild tramite virtualhost che gestiscano domini distinti.Sito di riferimento per entrambi: http://www.apache.org/Sistema DMS AlfrescoPer poter utilizzare la funzione di gestione di documenti allegati alle schede di CMDBuild èrichiesta linstallazione del sistema di gestione documenti Alfresco.Lutilizzo di Alfresco (effettuato in modalità embedded) è opzionale e richiede la versione 2.1Community.Sito di riferimento: http://www.alfresco.com/Librerie JavaLe librerie Java sono necessarie per il funzionamento di Jakarta Tomcat.CMDBuild richiede JDK 1.6.Sito di riferimento: http://www.sun.com/Librerie incluse nel rilascioIl file di CMDBuild scaricabile dal sito del progetto contiene alcune librerie già allinterno delpacchetto di installazione, ed in particolare: • la libreria per il collegamento jdbc al database PostgreSQL • le librerie jasperreports per la produzione di report (http://www.jasperforge.org/) • le librerie shark per lutilizzo del motore di workflow Enhydra Shark (http://www.enhydra.org/workflow/shark) • il webservice reso disponibile dal sistema DMS Alfresco per lutilizzo del relativo repository (http://www.alfresco.com/) • le librerie Ext JS per la generazione dellinterfaccia utente Ajax (http://extjs.com/) • le librerie Prefuse per la generazione del grafo delle relazioni in tecnologia Flash (http://prefuse.org/) • i componenti server e client per la pubblicazione di cartografia georiferita (http://geoserver.org/ e http://openlayers.org/)Per leventuale disegno di report custom è utilizzabile leditor visuale IReport che produce il relativodescrittore in formato compatibile con il motore JaspertReports (http://jasperforge.org/projects/ireport).Per leventuale disegno di workflow personalizzati è suggerito leditor visuale JPEd dal quale vieneprodotto il relativo descrittore in formato XPDL compatibile con il motore Enhydra Shark(http://www.jped.org).Per lintegrazione di sistemi di automatic inventory si suggerisce lutilizzo di OCS Inventory(http://www.ocsinventory-ng.org/).Alcune funzionalità di CMFBuild possono essere integrate sotto forma di portlet allinterno disistemi Portal JSR compatibili, fra cui Liferay (http://www.liferay.com/).Tutti i software sopra elencati sono rilasciati con licenza Open Source (ad eccezioneeventualmente del Sistema Operativo se si optasse per una soluzione diversa da Linux).CMDBuild – Open Source Configuration and Management Database Pag. 7
    • Technical ManualRequisiti clientCMDBuild è una applicazione completamente funzionante in ambiente web, sia per le funzionalitàdi aggiornamento e consultazione delle schede dati, che per quelle di amministrazione estrutturazione del database.Lutilizzatore del sistema deve disporre sul proprio elaboratore esclusivamente di un browser webdi recente generazione (Firefox 3.6 o superiori, Microsoft Explorer 7 o superiori).La completa utilizzabilità web del sistema consente di supportare eventuali organizzazioni IToperanti in più sedi, consentendo laccesso ai dati anche ad eventuali strutture esterne cuidovessero essere state affidati servizi in outsourcing (in particolare nellambito della partecipazionea workflow collaborativi).CMDBuild – Open Source Configuration and Management Database Pag. 8
    • Technical ManualInstallazione di CMDBuild da interfaccia graficaPer partireUna volta scaricato il file in formato compresso dal sito del progetto (avrà il nome cmdbuild.war),procedere copiandolo allinterno della cartella “webapps” di Tomcat.Prima di proseguire verificare che siano già installati nel sistema, in cartelle che non contenganospazi allinterno del percorso complessivo: • il database PostgreSQL (deve essere avviato e raggiungibile) • lapplication server Tomcat (non deve essere avviato) • il DMS Alfresco (se si intende utilizzare la funzione di gestione documenti allegati) • lambiente JavaUna volta completate queste verifiche, avviare lapplication server Tomcat.AvvioCollegarsi allindirizzo http://localhost:8080/cmdbuild (lindirizzo potrebbe variare in base allaconfigurazione di Tomcat).Comparirà la videata in figura:Da questa finestra è possibile impostare la lingua del sistema.Spuntando la voce “Mostra la scelta della lingua nella finestra di login” sarà presentato nellainterfaccia di login di CMDBuild un menù di selezione della lingua.Una volta effettuata la scelta, cliccare su Avanti.CMDBuild – Open Source Configuration and Management Database Pag. 9
    • Technical ManualConfigurazione del databaseNella sezione “Database connection” si deve indicare: • lhost (nome host o indirizzo IP) su cui risiede il database PostgreSQL (solitamente localhost) • la porta su cui è raggiungibile il database PostgreSQL (la porta di default è la 5432) • lo username con cui accedere alla base dati PostgreSQL (per attività DBA) • la password con cui accedere alla base dati PostgreSQL (per attività DBA)Nella sezione Database CMDBuild viene richiesto di indicare: • il tipo di database CMDBuild da configurare, scegliendo fra: • creazione di un database vuoto • selezione di un database preesistente compatibile con CMDBuild 1.0 • creazione di un database con dati di test • il nome da assegnare al databaseSpuntando la successiva voce “Crea utente database con privilegi limitati”, viene creato inPostgreSQL un nuovo utente con tutti i privilegi di DBA, ma solo sul database che saràutilizzato/creato nellistanza di CMDBuild in corso di configurazione.Configurazione credenziali di accessoDa questa schermata è possibile specificare le credenziali con cui lutente amministratore(superuser) accederà a CMDBuild (sia al Modulo di Gestione che a quello di Amministrazione).CMDBuild – Open Source Configuration and Management Database Pag. 10
    • Technical ManualCliccando su “Fine” si verrà redirezionati allinterfaccia di login del sistema.CMDBuild – Open Source Configuration and Management Database Pag. 11
    • Technical ManualInstallazione di CMDBuild in modalità manualePer partirePrima di iniziare linstallazione di CMDBuild 1.1 è necessario decomprimere la cartellacmdbuild.war.Per farlo è necessario copiarla nella cartella webapps di Tomcat ed attendere che lapplicationserver crei la cartella cmdbuild.Verificare che in tomcat sia presente il driver JDBC per PostgreSQL1.Nota: nel seguito indicheremo con {CMDBUILD} la cartella cmdbuild in webapps e con{ALFRESCO} la cartella alfresco in webapps.Attenzione: la seguente installazione prevede la creazione di un nuovo database vuoto. Se avetea disposizione un database preesistente passate alla sezione “Configurazione dellapplicazione”.Installazione del databasePer procedere allinstallazione manuale è necessario eseguire le seguenti operazioni: • tramite un tool con interfaccia grafica (ad esempio pgAdmin3, nativo di PostgreSQL) o da linea di comando, creare il database specificandone un nome, ad esempio cmdbuild: CREATE DATABASE cmdbuild WITH OWNER cmdbuilduser ENCODING = UTF8; • accedere al nuovo database cmdbuild e creare il linguaggio plpgsql: CREATE LANGUAGE plpgsql; • eseguire nellordine alfabetico gli script (11 complessivamente) che troverete nella cartella cartella {CMDBUILD}/WEB-INF/sql/base_schema, o in alternativa il file {CMDBUILD}/WEB-INF/sql/sample_schemas/demo_schema.sql per creare un database con dati demo • eseguire i seguenti comandi SQL per creare lutente di CMDBuild di tipo “Superuser” (nellesempio con username admin e password admin): INSERT INTO "User" ("Status","Username","IdClass","Password","Description") VALUES (A,admin,"User",DQdKW32Mlms=,Administrator); INSERT INTO "Role" ("Status","IdClass","Administrator","Description") VALUES (A,"Role",true,SuperUser); INSERT INTO "Map_UserRole"("Status","IdClass2","IdClass1","IdObj2","IdObj1","IdDomain") VALUES (A,"Role"::regclass,"User"::regclass,currval(class_seq), currval(class_seq)-1,"Map_UserRole"::regclass)A questo punto è disponibile un database vuoto compatibile con il sistema CMDBuild.Con lultimo script, insert_user.sql, viene creato lutente di CMDBuild di tipo “Superuser” conusername admin e password admin.1 Il driver JDBC può essere scaricato allindirizzo http://jdbc.postgresql.org/download.htmlCMDBuild – Open Source Configuration and Management Database Pag. 12
    • Technical ManualConfigurazione dellapplicazioneLa configurazione manuale dellapplicazione prevede la modifica di alcuni file.Se Tomcat fosse già avviato si dovrà provvedere ad arrestarlo e a posizionarsi nella cartella{CMDBUILD}/WEB-INF/conf.E necessario poi eseguire le seguenti operazioni: • aprire con un editor di testo il file cmdbuild.conf e: • selezionare la lingua di default del sistema modificando la voce “language” (i valori accettati sono IT e EN, lasciando “true” la voce “languageprompt” dallinterfaccia di login sarà possibile selezionare di volta in volta la lingua) • salvare e chiudere il file • aprire il file database.conf, decommentare le tre righe presenti e: • indicare nella voce “db.url” il nome del database da utilizzare • nelle voci “db.username” e “db.password” indicare le credenziali per accedere al database • salvare e chiudere il fileLinstallazione è a questo punto terminata e riavviando Tomcat si potrà accedere a CMDBuild.Configurazione dellinterfaccia fra CMDBuild e SharkI punti da verificare sono comunque i seguenti:1)Nel file META-INF/context.xml della webapp di shark va configurato lindirizzo del database.Nel caso in cui il database abbia il nome di default "cmdbuild" bisogna cioè sostituire la riga: url="jdbc:postgresql://localhost/${cmdbuild}"con url="jdbc:postgresql://localhost/cmdbuild"CMDBuild – Open Source Configuration and Management Database Pag. 13
    • Technical Manual2)Verificare che nel file Shark.conf siano impostati correttamente i seguenti parametri: DatabaseManager.ConfigurationDir=${shark_webapp_path}/conf/dods CMDBuild.WS.ConfigPath=${shark_webapp_path}/conf/axisrepository CMDBuild.WS.EndPoint=http://${serverip}:${serverport}/${cmdbuild_webapp}/services/soap/Webservices CMDBuild.WS.ExtSync.EndPoint=http://${serverip}:${serverport}/${cmdbuild_webapp}/services/soap/ExternalSync CMDBuild.EndPoint=http://${serverip}:${serverport}/${cmdbuild_webapp}/shark/3)Dal Modulo di Amministrazione di CMDBuild bisogna entrare nel Menu di Configurazione e:- abilitare il workflow (con il relativo check)- impostare lURL a cui risponde il servizio Shark4)Il servizio Tomcat di Shark deve essere già attivo nel momento in cui si inizia ad operare suiworkflow tramite linterfaccia utente di CMDBuild.CMDBuild – Open Source Configuration and Management Database Pag. 14
    • Technical ManualIn ambiente Windows il path va espresso con la barra invertita DatabaseManager.ConfigurationDir=C:/desarrollo/tomcat/webapps/shark/conf/dodsoppure doppia DatabaseManager.ConfigurationDir=C:desarrollotomcatwebappssharkconfdodsUn modo per verificare il corretto funzionamento dellistanza Shark è quello di consultare il relativofile di log.Configurazione dellinterfaccia fra CMDBuild 1.1 e Alfresco 2.1Configurazione lato CMDBuildPer configurare lutilizzo di Alfresco 2.1 Community con CMDBuild 1.1 posizionarsi nella cartella: {CMDBUILD}/WEB-INF/confe aprire con un editor di testo il file legacydms.conf.E necessario poi eseguire le seguenti operazioni: • modificare la voce “enabled” da false a true. • verificare che alla voce “server.url” sia inserito lurl da cui Alfresco può essere raggiunto • modificare fileserver.port con il numero di porta su cui è attivo il servizio FTP di Alfresco (vedi paragrafo successivo) • modificare la voce “repository.fspath” con il path dello space di CMDBuild su Alfresco, analogamente per la voce “repository.app” • specificare alla voce “category.lookup” la categoria di CMDBuild utilizzata in Alfresco (di default “AlfrescoCategory”Configurazione lato AlfrescoDopo aver scompattato il file di Alfresco, procedere con le operazioni descritte nel seguito.Configurazioni di baseConfigurare lavvio del server Tomcat utilizzato da Alfresco su porte diverse dal server Tomcatutilizzato da CMDBuild.Accedere alla directory {ALFRESCO}/tomcat/confCMDBuild – Open Source Configuration and Management Database Pag. 15
    • Technical ManualAprire per modifica il file server.xml e modificare le proprietà: <Server port="8006" shutdown="SHUTDOWN"> (utilizzare ad esempio la porta 8006 anziché quella di default 8005)Accedere alla directory {ALFRESCO}/tomcat/shared/classes/alfresco/extensionAprire per modifica il file custom-repository.properties e modificare le proprietà: dir.root={REPOSITORY DIRECTORY} (es: C:/alfresco/repository o /var/alfresco/repository per sistemi unix) db.username={UTENTE DATABASE} db.password={PASSWORD DATABASE}Configurare quindi il database del sistema.Alfresco supporta i seguenti database (con esempi di configurazione già scritti ma commentati):HSQL (default), MySQL, Oracle, Sybase, SQLServer e PostgreSQL.Si suggerisce di indirizzare Alfresco su un nuovo database gestito dallo stesso server PostgreSQLutilizzato per CMDBuild.In questo caso impostare le proprietà: db.driver=org.postgresql.Driver db.url=jdbc:postgresql://localhost:5432/alfrescoSalvare e chiudere il file.Sempre nel caso si utilizzi PostgreSQL recuperare e copiare poi in: {ALFRESCO}/tomcat/common/libi driver per laccesso al database di Postgres (libreria di interfaccia postgresql-8.0-313.jdbc3.jar osuccessive).Tramite uno strumento con interfaccia grafica (ad esempio pgAdmin3 di PostgreSQL) o da linea dicomando creare il database utilizzando il nome specificato nella proprietà db.url sopra riferita(nellesempio “alfresco”).In funzione del database scelto è necessario aprire il file "custom-hibernate-dialect.properties" edecommentare il dialetto SQL corretto (commentando quello selezionato di default, HSQL).Al termine salvare e chiudere il file.Aprire poi il file file-server-custom.xml e aggiungere la definizione per il server ftp: <!-- abilitazione server FTP --> <config evaluator="string-compare" condition="FTP Server"> <serverEnable enabled="true"/> <port>21</port> <!-- SE SULLA MACCHINA GIRA E GIA PRESENTE UN SERVER FTP CAMBIARE LINDICAZIONE DELLA PORTA, AD ESEMPIO 1121 --> </config> <!-- -->Ricordarsi che se sulla macchina è già presente un server FTP, allora è necessario cambiarelindicazione della porta sulla quale girerà lFTP di Alfresco.Ricordarsi, inoltre, che la porta specificata devessere corrispondente a quella indicata nel file: {CMDBUILD}WEB-INFconflegacydms.confAl termine, una volta che la creazione del database iniziale è andata a buon fine, arrestare ilCMDBuild – Open Source Configuration and Management Database Pag. 16
    • Technical Manualservizio Alfresco e modificare nel file alfrescotomcatsharedclassesalfrescoextensioncustom-repository.propertiesla proprietà “db.schema.update“ settandola a false (ed eventualmente decommentarla): db.schema.update=falseInstallazione “aspect” di collegamento Alfresco <=> CMDBuildScompattare il file CMDBuildAlspect.zip nella directory {ALFRESCO}/tomcat/shared/classes/Verrà richiesto di sovrascrivere alcuni file, rispondere affermativamente.Configurazioni aggiuntiveCreare in Alfresco lo “spazio” (“space”) destinato a contenere gli allegati di CMDBuild e lacategoria associata a tali documenti.Avviare Alfresco, se non ci sono problemi dopo qualche minuto si potrà effettuare laccesso adAlfresco tramite web browser allindirizzo: http://{SERVER}:{PORT}/alfrescoLe credenziali di accesso di default sono "admin" sia come nome utente che come password.Nel pannello "navigator" accedere a "Company Home", quindi a "User Homes" e creare uno spaziocon nome uguale a quello indicato nel file: {CMDBUILD}WEB-INFconflegacydms.conf (ad esempio "cmdbuild")Recarsi ora nella consolle di amministrazione di Alfresco (prima icona della barra superiore),accedere alla "Category Management" e creare una nuova categoria con nome e descrizioneuguali al nome indicato nel file: {CMDBUILD}WEB-INFconflegacydms.conf (ad esempio "AlfrescoCategory")A questo punto la configurazione è terminata.Riavviando Tomcat sarà possibile gestire allegati anche da CMDBuild.CMDBuild – Open Source Configuration and Management Database Pag. 17
    • Technical ManualInstallazione del sistema DMS AlfrescoIl presente capitolo descrive linstallazione del sistema DMS Alfresco in modalità ottimizzata peressere interfacciata con CMDBuild (condividendo cioè la stessa istanza di Tomcat e lo stessoserver di database PostgreSQL).La versione di Alfresco cui si riferiscono le presenti indicazioni è Alfresco 2.1 Community bundle(file alfresco- community-tomcat-2.1.0.zip o alfresco-community-tomcat-2.1.0.tar.gz).Dopo aver scaricato e scompattato il file di Alfresco si dovrà procedere con le operazioni descritteai paragrafi successivi.NOTA: {ALFRESCO} identifica la cartella alfresco presente in webapps.Configurazioni di baseAccedere alla directory: <path_dove_è_stato_scompattato_alfresco>/tomcat/webappse copiare la cartella alfresco nella cartella webapps di Tomcat.Configurare laccesso al database e la directory dove verrà creato il repository dei file .Accedere alla directory: {ALFRESCO}/WEB-INF/classes/alfresco/Aprire per modifica il file repository.properties e modificare le proprietà: dir.root={REPOSITORY DIRECTORY} (es: C:/alfresco/repository o /var/alfresco/repository per sistemi unix)Configurare quindi il database del sistema.Alfresco supporta i seguenti database (con esempi di configurazione già scritti ma commentati):HSQL (default), MySQL, Oracle, Sybase, SQLServer e PostgreSQL.Per indirizzare Alfresco su un nuovo database gestito dallo stesso server PostgreSQL utilizzato daCMDBuild modificare, sempre in repository.properties, la sezione “Database configuration” nelseguente modo: db.schema.update=true db.driver=org.postgresql.Driver db.url=jdbc:postgresql://localhost:5432/alfresco db.username=postgres db.password=postgres db.pool.initial=10 db.pool.max=20Verificare che nella cartella “lib” di Tomcat sia presente il driver JDBC per connettersi aPostgreSQL (nella versione postgresql-8.0-313.jdbc3.jar o successive).Tramite uno strumento con interfaccia grafica (ad esempio pgAdmin3 di PostgreSQL) o da linea dicomando creare il database utilizzando il nome specificato nella proprietà db.url sopra riferita(nellesempio “alfresco”).In funzione del database scelto è necessario aprire il file {ALFRESCO}/WEB-INF/classes/alfresco/hibernate-cfg.propertiesCMDBuild – Open Source Configuration and Management Database Pag. 18
    • Technical Manuale impostare il dialetto SQL corretto.In particolare sostituire: hibernate.dialect=org.hibernate.dialect.MySQLInnoDBDialectcon: hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect hibernate.query.substitutions=true TRUE, false FALSEAl termine salvare e chiudere il file.Configurare ora il file server ftp.Per farlo posizionarsi in: {ALFRESCO}/WEB-INF/classes/alfresco/e aprire il file “file-servers.xml”.Nella riga: <config evaluator="string-compare" condition="CIFS Server">sostituire: <serverEnable enabled="true"/>con: <serverEnable enabled="false"/>e modificare come segue la sezione FTP Server: <config evaluator="string-compare" condition="FTP Server"> <serverEnable enabled="true"/> <port>1121</port> <!-- Dove 1121 è la porta indicata nel file di configurazione di CMDBuild --> </config>Ricordarsi che se sulla macchina è già presente un server FTP, allora è necessario cambiarelindicazione della porta sulla quale girerà lFTP di Alfresco.Ricordarsi inoltre che la porta specificata devessere corrispondente a quella indicata nel filecmdbuild-config.xml.A questo punto è possibile avviare Alfresco che provvederà al popolamento del database e acreare la struttura nella cartella repository.Al termine, una volta che la creazione del database iniziale è andata a buon fine, arrestare ilservizio Alfresco e nel file repository.properties modificare la riga: {ALFRESCO}/WEB-INF/classes/alfresco/settando la proprietà db.schema.update a false: db.schema.update=falseInstallazione “aspect” di collegamento Alfresco <=> CMDBuildScompattare il file: CMDBuildAlspect.zipnella directory:CMDBuild – Open Source Configuration and Management Database Pag. 19
    • Technical Manual {ALFRESCO}/WEB-INF/classes/Verrà richiesto di sovrascrivere alcuni file, rispondere affermativamente.Configurazioni aggiuntiveCreare in Alfresco lo “spazio” (“Space”) destinato a contenere gli allegati di CMDBuild e la listadelle categorie associate a tali documenti.Avviare Alfresco, se non ci sono problemi dopo qualche minuto si potrà effettuare laccesso alprogramma tramite il browser web allindirizzo: http://{SERVER}.{PORT}/alfrescoLe credenziali di accesso di default sono "admin" sia come nome utente che come password.Nel pannello "navigator" accedere a "Company Home", quindi a "User Homes" e creare uno spaziocon nome uguale a quello indicato nel file di configurazione (solitamente il nome che vieneassegnato è “cmdbuild”) .Recarsi ora nella consolle di amministrazione di Alfresco (prima icona della barra superiore),accedere alla "Category Management" e creare una nuova categoria con nome e descrizioneuguali al nome indicato nel file legacydms.conf (solitamente è “AlfrescoCategory”).CMDBuild – Open Source Configuration and Management Database Pag. 20
    • Technical ManualArchitettura dellapplicazioneL’applicazione di CMDBuild è strutturata a layer, ognuno dei quali comunica solo con il layerimmediatamente sovrastante e sottostante.La lista completa dei layer predisposti nel sistema comprende (dallalto verso il basso): • Modulo Client • layer accesso per client Web (JSON-RPC) • layer accesso per altri client (SOAP) • Modulo Server • layer “Filter” e “Servlets” per la decodifica delle richieste JSON-RPC, la serializzazione delle risposte e la gestione di aspetti di utilità (lingua e controllo configurazione) • layer “Axis” per la gestione delle richieste SOAP • “Operation layer” per la gestione dei privilegi di accesso ai dati • “Object relatioal mapping” per linstanziazione in classi Java delle strutture e dei dati corrispondenti al modello configurato nel database • modello dati del database • layer delle stored procedure per limplementazione della parte di “logica” incapsulata nel database • layer delle viste di sistema per laccesso semplificato ad alcune informazioni di sistema (catalogo classi e attributi, catalogo domini e lista relazioni, permessi utente, albero menu, ecc) • tabelle dei datiPer il Modulo Database, di maggiore interesse potendo essere acceduto da un client di gestione,riportiamo di seguito informazioni di maggiore dettaglio sui criteri generali di progettazione e sullastrutturazione delle classi e dei metadati che ne descrivono le caratteristiche.Modulo DatabaseCriteri di progettazioneLa progettazione del database ha dovuto rispondere adun primo insieme di requisiti di base: • gestire la strutturazione gerarchica a più livelli delle classi (superclassi / sottoclassi), al fine di poter specializzare una classe mantenendo nelle superclassi gli attributi generali • gestire relazioni “molti a molti” fra le classi • tracciare la storia completa delle modifiche dei dati e delle relazioni nel tempoCMDBuild – Open Source Configuration and Management Database Pag. 21
    • Technical ManualPer tutte e tre le esigenze è stato individuato come particolarmente interessante il meccanismo di“derivazione” fra classi reso disponibile da alcuni database object-relational ed in particolare, inambito open source, da PostgreSQL.Si è quindi deciso di utilizzare PostgreSQL come database di supporto a CMDBuild, ottenendo intal modo di disegnare in modo estremamente naturale le strutture sopra descritte.Strutturazione a più livelli gerarchiciTramite la parola chiave “inherits” è possibile infatti in PostgreSQL creare una tabella che ne“specializza” un’altra, aggiungendo alcuni attributi specifici e ritrovandosi tutti gli attributi definitinella superclasse.Esempio:CREATE TABLE "Asset"( "Id" numeric NOT NULL DEFAULT nextval(Asset_SEQ::text), "Description" varchar(250), "SerialNo" varchar(40), "VersionNo" varchar(32), "InstallationDate" timestamp, "WarrantyExpireDate" timestamp, "State" varchar(16), "StateDate" timestamp, CONSTRAINT asset_pkey PRIMARY KEY ("Id"))CREATE TABLE "Monitor"( "MonitorType" varchar, "ScreenSize" varchar(16), "MaxScreenRes" varchar(16)) inherits ("Asset")Relazioni “molti a molti”Le diverse tipologie di relazioni fra classi vengono implementate ciascuna con una apposita tabelladi relazioni “molti a molti”, creata tramite derivazione da una superclasse predefinita allo scopo disemplificare la creazione delle sottoclassi e di garantirne l’omogeneità strutturale.Esempio:CREATE TABLE "Map"( "Id" numeric NOT NULL DEFAULT nextval(Map_SEQ::text), "Id1" numeric NOT NULL, "Id2" numeric NOT NULL, "Value" varchar(40), CONSTRAINT map_pkey PRIMARY KEY ("Id"))CREATE TABLE " Map_aggregazione"() inherits ("Map")CMDBuild – Open Source Configuration and Management Database Pag. 22
    • Technical ManualStoria delle modificheAnche per la gestione della storia delle modifiche viene sfruttato il meccanismo di derivazione delleclassi in PostgreSQL, creando una classe derivata per ogni tipologia di oggetto, nella quale tramiteappositi trigger del database viene archiviato il record corrente prima di modificarne gli attributi,associandogli l’”Id” del record base, la data di modifica ed il login dell’operatore che ha effettuato lamodifica.Esempio:CREATE TABLE "Map"( "Id" numeric NOT NULL DEFAULT nextval(Map_SEQ::text), "Id1" numeric NOT NULL, "Id2" numeric NOT NULL, "Value" varchar(40), CONSTRAINT map_pkey PRIMARY KEY ("Id"))CREATE TABLE "Monitor_history"( "HistoryId" numeric NOT NULL, "HistoryDate" timestamp NOT NULL DEFAULT now()) inherits ("Monitor")Tramite lo stesso meccanismo viene gestita la storia delle modifiche nelle relazioni, creando cioèuna classe derivata per ogni tipologia di relazione, nella quale tramite appositi trigger di databasevengono archiviati i record di relazione correnti prima di eliminarli, associandogli l’”Id” del recordbase, la data di modifica ed il login dell’operatore che ha effettuato la modifica.Superclassi primitive: “Class” e “Map”Sulla base della filosofia sopra descritta sono state definite due superclassi di sistema denominaterispettivamente: • “Class”, che rappresenta la generica classe dati da cui derivare le schede specifiche dei diversi modelli dati • “Map”, che rappresenta la generica tabella di relazioni fra coppie di classiIl significato degli attributi delle due superclassi è descritto alla tabella seguente: Superclasse “Class” Nome Tipo SQL Descrizione Id int chiave primaria della tabella IdClass regclass oid della tabella BeginDate timestamp data di inserimento del record User varchar(20) utente che ha inserito il record Status character(1) stato logico del record (A = attivo, N = cancellato, U = aggiornato) Code varchar(100) campo dati: rappresenta il codice sintetico di un record (ad esempio il serialnumber di un computer) Description varchar(250) campo dati: rappresenta la descrizione del record Notes text note libereCMDBuild – Open Source Configuration and Management Database Pag. 23
    • Technical Manual Superclasse “Map” Nome Tipo SQL Descrizione IdDomain regclass oid della tabella IdClass1 regclass oid della prima classe in relazione idObj1 int indice delloggetto in relazione per la prima classe IdClass2 regclass oid della seconda classe in relazione idObj2 int indice delloggetto in relazione per la seconda classe User varchar(20) utente che ha inserito la relazione Status stato logico del record (A = attivo, N = cancellato, U = aggiornato) BeginDate timestamp data di inserimento della relazione EndDate timestamp data di modifica della relazioneTutte le tabelle utilizzate internamente dall’applicazione così come quelle contenenti dati e visibilidall’utente ereditano da “Class” aggiungendo campi specifici descrittivi delle informazioni cheandranno a rappresentare.Le tabelle derivate possono essere “Super Classi” o “Classi” normali. Solo le ultime contengonodati, le prime vengono utilizzate come un raggruppamento logico di classi utile per definire attributicomuni a più classi e domini in modo più generale.Nella base dati ogni classe normale è accompagnata da una ulteriore tabella, dedicata alversioning dei dati, il cui nome è lo stesso ma completato con il suffisso “_history”. Le tabelle“storiche” ereditano dalle tabelle condividono tutti i campi con le tabelle da cui derivano,completate solo con il link alla scheda dati attiva e con la data di fine validità.Ogni volta che un record della tabella principale subisce una modifica o una cancellazione il recordoriginale viene spostato nella tabella storica. Durante tale operazione vengono aggiornati il valoredelle colonne “Status” (secondo la tabella riportata sopra) e “EndDate” (con il timestampdell’operazione).Allo stesso modo tutti domini tra Classi o Super Classi ereditano dalla tabella “Map” e ogni dominioereditato avrà la corrispondente tabella per il versioning (con lo stesso suffisso “_history”).Per convenzione tutti i Domini hanno il prefisso “Map_”.MetadatiPer la definizione del modello dati CMDBuild utilizza una serie di metadati, associati alle tabelle edai loro attributi, che estendono i metadati base gestiti da PostgreSQL.Per la memorizzazione di tali metadati vengono utilizzati i commenti associabili a tabelle e colonne,archiviati nella tabella di sistema “pg_description”.La struttura dei metadati segue una sintassi rigida ed obbligata, strutturata secondo un sistema achiave/valore che segue la sintassi definita dalla seguente regular expression:(([A-Z0-9]+): ([#A-Za-z0&-9éèìùòà_-:s]*)|+)*Ad esempio un commento può essere: MODE: read|DESCR: some textCMDBuild – Open Source Configuration and Management Database Pag. 24
    • Technical ManualI commenti validi relativi ad una classe nel suo complesso sono: Metadati per definizione classi Chiave Significato Valori possibili Note MODE modalità di accesso reserved|read|write obbligatorio TYPE tipo tabella class|domain obbligatorio SUPERCLASS indica se la tabella è true|false default = false una superclasse DESCR descrizione mostrata qualsiasi valore obbligatorio allutente STATUS stato di utilizzo della active|not active obbligatorio tabellaTutte le altre chiavi vengono ignorate dal sistema di interpretazione dei metadati.I commenti validi relativi ad un attributo sono: Metadati per definizione attributi Chiave Significato Valori possibili Note MODE modalità di accesso reserved|read|write obbligatorio DESCR descrizione mostrata qualsiasi valore obbligatorio allutente INDEX ordine visualizzazione un numero posizione nel DB se attributo assente BASEDSP indica se mostrare true|false default = false lattributo nella visualizzazione a griglia REFERENCEDOM dominio utilizzato per un dominio valido non obbligatorio valorizzare un campo per la classe reference REFERENCEDIRECT direzione della true|false obbligatorio solo se relazione rispetto al valorizzato dominio corrispondente REFERENCEDOM REFERENCETYPE tipo del reference cascade|restrict obbligatorio solo se rispetto le operazioni di valorizzato cancellazione REFERENCEDOM LOOKUP lista lookup associata una lista lookup non obbligatorio allattributo STATUS stato di utilizzo della active|not active obbligatorio tabellaTutte le altre chiavi vengono ignorate dal sistema di interpretazione dei metadati.CMDBuild – Open Source Configuration and Management Database Pag. 25
    • Technical ManualAPPENDICE: GlossarioALLEGATOPer “allegato” si intende un qualunque file associabile ad una scheda dati inserita nel sistema.Gli allegati contenenti testo (file PDF, Open Office, Microsoft Word, ecc) sono indicizzati inmodalità full text consentendo la loro ricerca anche sulle singole parole contenute.ATTIVITAPer “attività” si intende uno dei passaggi che costituiscono il processo.Una attività è caratterizzata da un nome, un esecutore, un tipo, eventuali attributi, eventuali metodiassociati ad API di CMDBuild per poter essere eseguiti.Per “istanza di attività” si intende una specifica attivazione di una attività, effettuataautomaticamente dal sistema o manualmente da un operatore.Vedi anche: ProcessoATTRIBUTOIl termine indica nel sistema CMDBuild la generica tipologia di informazione descrittiva di unadeterminata classe.CMDBuild consente tramite il Modulo Schema di creare nuovi attributi in una classe o dimodificarne alcune caratteristiche.Nella classe “Fornitore” gli attributi sono ad esempio il nome, lindirizzo, il numero di telefono, ecc.Ogni attributo corrisponde nel Modulo di Gestione a campi di inserimento dati sulla appositascheda di gestione della classe e a colonne della corrispondente tabella nel database.Vedi anche: Classe, Superclasse, Tipo di attributoCISi definisce Configuration Item (Elemento della Configurazione) ogni elemento che concorre afornire il servizio IT all’Utente, considerato ad un livello di dettaglio sufficiente per la sua gestionetecnica e patrimoniale.Esempi di CI sono: server, workstation, programma applicativo, sistema operativo, stampante, eccVedi anche: ConfigurazioneCLASSEIl termine rappresenta un tipo di dati complesso caratterizzato da un insieme di attributi che nelloro insieme descrivono quel tipo di dato.Una classe modella una tipologia di oggetto da gestire nel CMDB, quale ad esempio un computer,una applicazione software, un servizio, un fornitore, eccCMDBuild consente allAmministratore del Sistema, attraverso il Modulo Schema, di definire nuoveclassi e di cancellare o modificare la struttura di classi già definite.Una classe è rappresentata a video da una apposita scheda di gestione dati e nel database dauna tavola generata automaticamente al momento della definizione della classe.CMDBuild – Open Source Configuration and Management Database Pag. 26
    • Technical ManualVedi anche: Scheda, AttributoCONFIGURAZIONEIl processo di Gestione della Configurazione ha lo scopo di mantenere aggiornata e disponibile pergli altri processi la base di informazioni relativa agli oggetti informatici gestiti (CI), alle loro relazionied alla loro storia.E uno dei principali processi gestiti dal sistema ITIL.Vedi anche: CI, ITILDATABASEIl termine indica un insieme di informazioni strutturato ed organizzato in archivi residentisullelaboratore server, nonché linsieme dei programmi di utilità dedicati alla gestione dei taliinformazioni per attività quali inizializzazione, allocazione degli spazi, ottimizzazione, backup, ecc.CMDBuild si appoggia sul database PostgreSQL, il più potente, affidabile e completo databaseOpen Source, di cui utilizza in particolare le sofisticate funzionalità e caratteristiche object oriented.DOMINIOUn dominio rappresenta una tipologia di relazione fra una coppia di classi.E caratterizzato da un nome, dalle descrizioni della funzione diretta ed inversa, dai codici delledue classi e dalla cardinalità (numerosità degli elementi relazionabili) ammessa.CMDBuild consente allAmministratore del Sistema, attraverso il Modulo Schema, di definire nuovidomini e di cancellare o modificare la struttura di domini già definiti.Vedi anche: Classe, RelazioneGISUn sistema GIS è un sistema informatico in grado di produrre, gestire e analizzare dati spazialiassociando a ciascun elemento geografico una o più descrizioni alfanumeriche.Le funzionalità GIS implementate in CMDBuild consentono di creare attributi geometrici, inaggiunta a quelli testuali, tramite cui rappresentare su scala locale (planimetrie) o su scala piùestesa (mappe esterne) elementi puntuali (ad esempio gli asset IT), poligonali (ad esempio lineedati) o aree (piani, stanze, ecc).ITILSistema di "best practice" ormai affermatosi come "standard de facto", non proprietario, per lagestione dei servizi informatici secondo criteri orientati ai processi (Information TechnologyInfrastructure Library).Fra i processi fondamentali coperti da ITIL ci sono quelli del Service Support, comprendentilIncident Management, il Problem Management, il Change Management, il ConfigurationManagement ed il Release Management.Per ogni processo considera la descrizione, i componenti di base, i criteri e gli strumenti consigliatiper la misura della qualità del servizio, i ruoli e le responsabilità delle risorse coinvolte, i punti diintegrazione con gli altri processi (per eliminare duplicazioni e inefficienze).Vedi anche: ConfigurazioneCMDBuild – Open Source Configuration and Management Database Pag. 27
    • Technical ManualLOOKUPCon il termine “LookUp” si indica una coppia di valori del tipo (Codice, Descrizione) impostabilidallAmministratore del Sistema tramite il Modulo Schema.Tali valori vengono utilizzati dallapplicazione per vincolare la scelta dellutente, al momento dellacompilazione del relativo campo sulla scheda dati, ad uno dei valori preimpostati.ll Modulo Schema consente la definizione di nuove tabelle di “LookUp” secondo le necessitàdellorganizzazione.PROCESSOPer “processo” si intende una sequenza di passaggi (“attività”) descritti nel sistema per svolgere informa guidata e secondo regole prestabilite una determinata azione.Per ogni processo saranno avviate in CMDBuild una serie di “istanze di processo”, una per ogninecessità di effettiva esecuzione dellazione corrispondente, che avrà luogo su “asset” specifici esarà svolta da utenti specifici.Una ”istanza di processo” viene attivata tramite avvio e conferma del primo passaggio previsto etermina alla esecuzione dellattività finale prevista nella definizione.Vedi anche: AttivitàRELAZIONEPer “Relazione” si intende in CMDBuild un collegamento effettivo di due schede appartenenti adue classi, o in altri termini una istanza di un dato dominio.Una relazione è quindi definita da una coppia di identificativi univoci delle due schede collegate edallidentificativo del dominio utilizzato per il collegamento.CMDBuild consente agli operatori del Sistema, attraverso il Modulo Gestione Dati, di definirenuove relazioni fra le schede archiviate nel database.Vedi anche: Classe, DominioREPORTIl termine indica in CMDBuild una stampa (in formato PDF o CSV) riportante in forma analitica leinformazioni estratte da una o più classi fra le quali sia definita una catena di domini.I report possono essere generati e modificati dagli operatori di CMDBuild tramite una appositafunzione del Modulo di Gestione Dati e la relativa definizione viene memorizzata nel database perpoter essere riutilizzata successivamente.Vedi anche: Classe, Dominio, DatabaseSCHEDACon il termine “Scheda” in CMDBuild si riferisce un elemento archiviato in una determinata classe.Una scheda è caratterizzata da un insieme di valori assunti da ciascuno degli attributi definiti per lasua classe di appartenenza.CMDBuild consente agli operatori del Sistema, attraverso il Modulo Gestione Dati, di archiviarenuove schede nel database e di aggiornare schede già archiviate.Le informazioni di ogni scheda saranno memorizzate nel database alle opportune colonne di unariga della tavola generata per la classe di appartenenza della scheda.Vedi anche: Classe, AttributoCMDBuild – Open Source Configuration and Management Database Pag. 28
    • Technical ManualSUPERCLASSEUna superclasse è una classe astratta utilizzabile per definire una sola volta attributi condivisi frapiù classi.Da tale classe astratta è poi possibile derivare classi reali che conterranno i dati effettivi e checomprenderanno sia gli attributi condivisi (specificati nella superclasse) che quelli specifici dellasottoclasse.Ad esempio è possibile definire la superclasse “Computer” con alcuni attributi base (RAM, HD,ecc) e le sottoclassi derivate “Desktop”, “Notebook”, “Server”, ciascuna delle quali con i soliattributi specifici.Vedi anche: Classe, AttributoTIPO DI ATTRIBUTOOgni attributo definito per una determinata classe è caratterizzato da un “Tipo” che determina lecaratteristiche delle informazioni contenute e la loro modalità di gestione.Il tipo di attributo viene definito con il Modulo Schema e può essere modificato entro alcuni limitidipendenti dalla tipologia dei dati già archiviati.CMDBuild gestisce i seguenti tipi di attributo: “Boolean” (booleano, Si / No), “Date” (data),“Decimal” (decimale), “Double” (virgola mobile in doppia precisione), “Integer” (numero intero),“LookUp” (tabellato da lista configurabile in “Impostazioni” / “LookUp”), “Reference” (riferimento oforeign key), “String” (stringa), “Text” (testo lungo), “TimeStamp” (data e ora).Vedi anche: AttributoWEBSERVICEUn webservice è uninterfaccia che descrive una collezione di operazioni, accessibili attraversouna rete mediante messaggistica XML.Tramite un webservice una applicazione può rendere accessibili le proprie funzionalità ad altreapplicazioni operanti attraverso il web.CMDBuild – Open Source Configuration and Management Database Pag. 29