Articoli del meseArticoli del mese

Articoli del mese


Stampa articolo

Articolo del Mese - Settembre 2008

Soa, una strategia di test

Randy Rice by Randy Rice

Le architetture orientate al servizio, Soa (Service-oriented architecture), sono soggette a un’attenzione sempre maggiore da parte delle imprese. Si tratta di un fenomeno dovuto alla costante ricerca di nuove modalità per essere più pronte e più flessibili nel rispondere alle necessità dei clienti, utilizzando al meglio le tecnologie nuove e quelle esistenti.
L’adozione delle tecniche Service-oriented, come strategia sia tecnologica che per l’intera impresa è in costante aumento. Negli anni più recenti, le persone coinvolte hanno focalizzato la propria attenzione sugli aspetti riguardanti lo sviluppo dell’architettura. Tuttavia, diviene sempre più evidente la necessità di sottoporre a test queste nuove soluzioni, man mano che vengono applicate, rendendosi conto che risultano molto diverse dalle altre architetture sotto molti aspetti fondamentali.

Necessaria una nuova strategia di test

Tradizionalmente, nel campo del software le strategie di test si evidenziano dopo alcuni mesi dalla definizione di quelle di sviluppo. Nel caso delle architetture Soa, anche se gli strumenti necessari sono conosciuti, la consapevolezza della necessità dei test risulta differita nel tempo.
Ogni volta che emerge una nuova tecnologia, una delle prime cose da fare è definire i test appropriati all’unicità della tecnologia stessa.

Cosa considerare nella strategia di test

L’unicità di questa architettura è evidenziata dalle modalità con le quali vengono costruiti i servizi e da come questi supportano i processi dell’impresa. Perciò, una strategia di test Soa deve necessariamente considerare sia le prospettive strutturali che quelle funzionali.

La prospettiva strutturale

Questa prospettiva di test si focalizza sulle componenti interne alla struttura Soa e può comprendere la codifica utilizzata per creare i servizi, così come gli elementi della struttura stessa.
Per molte persone, fino a oggi questa è stata l’attenzione posta ai rispettivi test Soa. Un atteggiamento che si spiega con il fatto che la creazione dei servizi fornisce la prima opportunità di test per la nuova architettura. Anche se la prospettiva strutturale dei test specifici è molto importante, rappresenta solo un aspetto dell’architettura in questione. Più avanti esamineremo gli altri tipi di test da applicare.
Un esempio di test strutturale è costituito dall’esame del Web services description language (Wsdl), ovvero del linguaggio per la descrizione dei servizi, da effettuare per rendersi conto di come gli elementi dei dati vengano forniti ai servizi. Il Wsdl utilizza Xml per descrivere i servizi di rete come un insieme di punti di arrivo delle comunicazioni, tutti in grado di scambiare messaggi gli uni con gli altri. Imparando come leggere e comprendere il linguaggio Wsdl, i responsabili dei test possono identificare molti aspetti importanti da sottoporre a verifica. Tuttavia, molte tra queste persone possono non essere in grado di dedicare molto tempo al livello del Wsdl e, quindi, a tale scopo può aiutare il coinvolgimento degli sviluppatori.

La prospettiva funzionale

I test funzionali sono necessari per essere sicuri che i servizi supportino i processi dell’impresa. I servizi possono e debbono essere sottoposti prima di tutto a test individuali, ma quelli più critici riguardano la verifica dell’integrazione tra servizi e processi dell’impresa. Fino al momento in cui i servizi non siano testati nell’ambito del contesto dei processi dell’impresa, non potrete avere la sicurezza che agiscano correttamente quando vengono chiamati a eseguire le funzioni attese.
Un esempio di questo tipo di procedimento di verifica è la modellazione dei test sulla base di transazioni e di processi di attività. Normalmente, questo modo di procedere è definito “verifica di scenario” o “verifica di processo”. In tale approccio, i processi dell’impresa vengono descritti in modo da identificare singoli scenari. I servizi che supportano ciascun scenario sono identificati in modo che possano essere testati in relazione gli uni con gli altri.

Altri tipi di test

Nel definire una strategia di test, i fattori critici di successo definiscono i rischi associati con la tecnologia o con il progetto e i tipi di verifiche da effettuare, con lo scopo di ottenere una riduzione dei rischi.
Per le architetture Soa, alcuni tra i principali fattori critici di successo sono:
Correttezza – I servizi e le architetture producono risultati corretti?
Prestazioni – L’architettura Soa fornisce i risultati attesi in maniera rapida ed efficiente?
Sicurezza – L’ambiente Soa è protetto in maniera adeguata contro eventuali attacchi esterni? I dati sono protetti nei confronti di tentativi di accesso non autorizzati?
Interoperabilità – I servizi operano insieme in un contesto di processi dell’impresa, in modo da fornire risultati corretti?
Naturalmente, esistono altri fattori di successo da poter considerare in base alle caratteristiche peculiari del vostro progetto. Tra questi, ricordiamo la facilità d’uso, la manutenibilità, l’affidabilità e la portabilità su altre piattaforme.

Gli strumenti

Gli strumenti software aggiungono una grande forza per il test di qualsiasi tecnologia, ma l’ambiente Soa possiede caratteristiche che rendono praticamente indispensabile l’uso di particolari tools. Il grande dilemma nell’utilizzo di strumenti di test Soa è se può essere esteso l’uso di tools tradizionali o se, piuttosto, sono necessari strumenti completamente nuovi.
Molto dipende dal tipo di mezzi di cui disponete correntemente e della loro capacità di gestire le necessità dei test.
Prima di investire un mucchio di denaro e di tempo nell’acquisire strumenti “specifici Soa”, procedete ad alcuni test per essere sicuri che i tools a vostra disposizione siano veramente inadatti allo scopo. Infatti, le imprese possono aver già effettuato forti investimenti in strumenti e software di test, per cui assicuratevi di considerarli correttamente prima di passare a un insieme di strumenti completamente nuovo.

Gli strumenti di test sono necessari in ambiente Soa perché:

  1. Possono fornire una struttura per l’accesso a servizi che, altrimenti, sarebbe difficile sottoporre a test. Infatti, una forte difficoltà nel test dei servizi è spesso la mancanza di interfacce utenti. Questa situazione viene definita come “test senza testa” perché non esistono punti singoli di accesso ai servizi.
  2. Una volta creata l’automazione del processo di test, possono verificare le funzionalità del sistema in maniera molto più veloce delle persone.
  3. Possono fornire una maggiore precisione in verifiche come i test di regressione o di performance.

Fortunatamente, gli strumenti di test Soa sono apparsi presto, insieme al diffondersi degli ambienti stessi, consentendo così agli strumenti correntemente sul mercato di avere il tempo di maturare.

Le persone

L’attività di test è basata molto sul fattore umano. Quando elencate i problemi principali che le persone affrontano nei test di qualsiasi tipo di software, la maggior parte sono di natura umana. Anche se la tecnologia Soa ha una preminenza di tipo tecnico, avete ancora la necessità di considerare chi pianificherà, effettuerà e valuterà i test.
Gli sviluppatori posseggono una forte capacità nei test strutturali, ma il problema può essere la loro scarsa volontà di impegnarsi in quest’area. Tuttavia, se incoraggiati, con strumenti adeguati e supporto manageriale, gli stessi sviluppatori possono testare tranquillamente il proprio lavoro.
Le altre persone coinvolte, con particolare riferimento agli utenti finali, possono aggiungere ai test la prospettiva delle necessità operative dell’impresa. Il problema con gli utenti finali è di riuscire a impegnarli per tutto il tempo necessario per effettuare i test.
Gli specialisti dei test possono apportare un forte bagaglio di conoscenza specifica al progetto. Possono adattare test per l’ambiente Soa definiti in precedenza, così come adattare o aiutare a scegliere gli strumenti necessari. Potreste aver bisogno di utilizzare specialisti nei test, come nel caso di prove di performance e di sicurezza.

Controllare l’ambiente dei test

Le vostre verifiche saranno affidabili per quanto lo sarà l’intero ambiente di test. Se non siete in grado di identificare completamente quanto sia contenuto nel vostro ambiente di test come, per esempio, nel caso dei servizi, i risultati ottenuti non saranno affidabili. Negli ambienti Soa, è necessaria una gestione delle informazioni che indichi quando i servizi vengono creati o modificati e quando debbono essere inseriti nell’ambiente dei test.
Sfortunatamente, spesso le persone non si rendono conto dell’importanza del controllo dell’ambiente di test fino al momento in cui si presenta una malfunzione dovuta a test non corretti.

Il “riuso” dei test

La tecnologia Soa comporta nuove considerazioni sui test, ma la buona notizia è che molte delle tecniche necessarie possono essere adattate da quelle in uso nelle tecnologie precedenti. In termini generali, l’efficacia dei test è materia di un corretto bilanciamento tra persone, processi e strumenti, tutti operanti insieme in un ambiente di test integrato. L’ambiente Soa non è diverso. All’inizio del vostro primo progetto basato su questa architettura, prendendovi il tempo necessario per definire l’unicità della tecnologia, potrete affrontare il progetto stesso con la consapevolezza di averne considerato tutti i punti principali. Questo vi darà la sicurezza di avere non solo pianificato dei buoni test ma che questi risulteranno anche corretti e adeguati.

Soa, una strategia di test - Technology Transfer

L’evoluzione dell’IT tra sfide e promesse
Frank Greco

Verso la new digital economy. Quale architettura per la trasformazione digitale?
Mike Rosen

Ecco come capire il cliente. I diversi punti di vista della Business Analysis
James Robertson

Ecco come capire il cliente I diversi punti di vista della Business Analysis
Suzanne Robertson

E se il Design Sprint fosse il nuovo asso nella manica? Come risolvere grandi problemi e testare nuove idee
James Hobart

Come essere veramente data driven. L’importanza dell’architettura dati
Mike Ferguson

Il Machine Learning in azienda. Come migliorare performance e previsioni
Frank Greco

Portfolio management avanzato: Come trasformare gli investimenti in cambiamento
Chris Potts

L’imbuto e le biglie. Ovvero la metafora della produttività dei team
Sander Hoogendoorn

Dal Data Warehouse al digital business. Un’architettura di trent’anni ancora valida
Barry Devlin

Dai silos a un ecosistema analitico integrato. Un approccio per avere dati da usare su più sistemi
Mike Ferguson

Come accelerare l’innovazione in azienda. La nuova generazione dell’IT enterprise
Frank Greco

Tassonomie e ricerche. Ecco come ottenere migliori risultati
Heather Hedden

Viaggio verso il data warehouse logico
Il grande dilemma della business intelligence

Rick van der Lans

Enterprise information catalog. I requisiti per fare la scelta giusta
Mike Ferguson

La nuova era dell’analisi predittiva - Le aziende alla prova del Machine Learning
Frank Greco

Uno sguardo Agile - Per capire il passato e progettare il futuro
Arie van Bennekum

Trasformazione Agile
Se il product owner diventa un collo di bottiglia

Sander Hoogendoorn

Una Fiat o una Ferrari?
Qual è la più adatta per il business digitale?

Barry Devlin

Vincere la complessità dei dati. È l’ora dello smart data management
Mike Ferguson

Big Data e Analytics - Se il machine learning accelera anche la data science
Mike Ferguson

I dati al centro del business
Christopher Bradley

I Big Data forniscono il contesto e la ricchezza predittiva attorno alle transazioni di business Avere dati coerenti e di qualità resta fondamentale per il processo decisionale
Barry Devlin

Cosa c’è dietro l’angolo? Cinque mosse per diventare un digital leader
Jeroen Derynck

Managing information technology Gestire l’IT come un business nel business
Mitchell Weisberg

Data integration self-service Miglioramento della produttività o caos totale?
Mike Ferguson

Project manager vecchi miti e nuove realtà
Aaron Shenhar

La catena alimentare dei requisiti
Suzanne Robertson

Come diventare un’azienda data-centric
Lindy Ryan

Enterprise analytical ecosystem - Come comprendere il comportamento online dei clienti e capitalizzare il valore dei dati nell’era Big Data
Mike Ferguson

Agilità? Basta Volere
Suzanne Robertson

Ma la vostra architettura è efficace?
Mike Rosen

Se il NoSQL diventa SQL
Rick van der Lans

La data quality e l’impatto sul business
Danette McGilvray

Business analysis e regole di business By Ronald G. Ross con Gladys S.W. Lam
Ronald Ross

Usare Scrum su larga scala: cosa cambia?
Craig Larman

Le architetture per ridurre il debito tecnico
Mike Rosen

Conversando con un marziano
Suzanne Robertson

Cosa c’è di nuovo nel project management?
Aaron Shenhar

Reinventare la Business Intelligence
Barry Devlin

Il nuovo volto della business intelligence
Shaku Atre

Alla ricerca del valore tra i pomodori nell'orto
John Favaro

I big data cambiano il mercato dei Database Server
Rick van der Lans

Un “superstorm” di informazioni
Barry Devlin

I dieci step per la qualità dei dati
Danette McGilvray

Perché è meglio evitare il private cloud?
Jason Bloomberg

Leonardo da Vinci aveva ragione!
Chris Date

Mobile user experience: Come adottare una strategia sostenibile
James Hobart

Cosa significa occuparsi di architettura?
Mike Rosen

Virtualizzazione dei dati e sistemi di Business Intelligence Agili
Rick van der Lans

Modelli e linguaggi naturali, quale il modo migliore per definire i requisiti?
James Robertson

Extreme Scoping: un approccio Agile all'Edw e alla BI
Larissa Moss

BI², la Business Intelligence al quadrato
Barry Devlin

I test di regressione in ambienti legacy
Randy Rice

Le conseguenze della consumerizzazione e del Cloud
Chris Potts

Come vanno gli affari? Chiedetelo al vostro cruscotto
Shaku Atre

Organizzare team di progetto efficienti in ambienti DW/BI
Larissa Moss

Big Data, come e perché
Colin White

Business Capabilities e l'allineamento del business all'IT
Mike Rosen

Il valore della tassonomia nella ricerca delle informazioni
Zach Wahl

BI, ma il Data Warehouse è ancora necessario?
Colin White

Reinventare la Business Intelligence
Barry Devlin

Il cruscotto delle prestazioni: il nuovo volto della Business Intelligence
Shaku Atre

Modelli e processi di User acceptance testing
Randy Rice

I limiti nel gestire l'IT come un Business
Chris Potts

Le componenti fondamentali del Cloud
George Reese

Metadati e DW 2.0
Derek Strauss

BI Open Source: basso costo e alto valore?
Jos van Dongen

Semplicità e requisiti
Suzanne Robertson

Business intelligence e analisi testuale
Bill Inmon

Extreme Scoping™: approcci agili al DW e alla BI
Larissa Moss

Dalla BI a un'architettura IT di livello Enterprise
Barry Devlin

Ambiente efficiente di ricerca di informazioni
James Hobart

Il Business deve trainare la Strategia IT
Chris Potts

Web database: la questione MapReduce (seconda parte)
Colin White

Web database: la questione MapReduce
Colin White

Misura delle prestazioni. I sette comandamenti
Harry Chapman

Le dieci cose che un architetto deve fare per creare valore
Mike Rosen

Sviluppare applicazioni a prova di sicurezza
Ken van Wyk

The ECM Landscape in 2008
Alan Pelz-Sharpe

Ma chi sono gli operatori dell’informazione?
Colin White

Qualità dell’informazione e trasformazione del management
Larry English

Classificazione sistematica delle informazioni
Zach Wahl

L’uso intensivo del Web nelle applicazioni di Bi
Colin White

Enterprise Search
Theresa Regli

La forza dell'astrazione
Steve Hoberman

La strada verso una BI pervasiva
Cindi Howson

Soa, una strategia di test
Randy Rice

Verso una BI più semplice e a minor costo
Colin White

I contenuti “Killer” del Web
Gerry McGovern

Sviluppo iterativo del software per i Dw
Larissa Moss

Qualità delle Informazioni e Datawarehousing
Larry English

Lo scenario Ecm 2008
Alan Pelz-Sharpe

La nascita del Web 3.0
John Kneiling

Documentazione: il dossier del crimine
Suzanne Robertson

L’impatto del Web 2.0 sui portali delle imprese
Colin White

Le tecniche vincenti di IT Management
Ken Rau

Web 2.0
Ed Yourdon

Web di successo se si conosce il cliente
Gerry McGovern

Un approccio alla BI incentrato sui processi
Colin White

Integrare Master Data Management e BI (Parte Seconda)
Mike Ferguson

Integrare Master Data Management e BI (Parte Prima)
Mike Ferguson

Il Project Manager è una Tata
Suzanne Robertson

Web di successo se si conosce il cliente
Gerry McGovern

L'informazione personalizzata
Colin White

La Tassonomia dell'Impresa
Zach Wahl

Managed Meta Data Environment (II parte)
David Marco

Managed Meta Data Environment
David Marco

Migliorare le applicazioni dell'impresa con Web 2.0
James Hobart

La Balanced Scorecard migliora la Performance dell'IT
Harry Chapman

La fusione dei processi dell'impresa grazie a Soa (II parte)
Max Dolgicer

La fusione dei processi dell'impresa grazie a SOA (I parte)
Max Dolgicer

Volere è Potere, in Ogni Senso
Suzanne Robertson

Dimostrate con i numeri il valore dei contenuti del web
Gerry McGovern

Il Back-end della pianificazione strategica dell'It
Ken Rau

L'audit delle prescrizioni di progetto (II parte)
Suzanne Robertson

L'audit delle prescrizioni di progetto (I parte)
Suzanne Robertson

Il Processo di gestione delle informazioni
Ted Lewis

I requisiti come strumento di gestione dei progetti
Suzanne Robertson

Il futuro è nel contenuto killer del web
Gerry McGovern

Alla ricerca del valore tra i pomodori nell'orto
John Favaro

Rilevare i costi sulla base delle attività
Ken Rau

Un percorso verso l'impresa intelligente (II parte)
Mike Ferguson

Un percorso verso l'impresa intelligente (I parte)
Mike Ferguson

Il Data Store Operativo: un lavoro di martello
Claudia Imhoff

Il data warehouse orientato all'impresa
Michael Schmitz

Dieci punti chiave per realizzare balanced scorecard di successo
Harry Chapman

Content management: i contenuti al primo posto
Gerry McGovern

Applicazioni Web ad alta disponibilità
John Kneiling

Il 2004, sarà l'anno in cui abbandoneremo html?
James Hobart

La tecnologia EII ripropone il data warehousing virtuale?
Colin White

Misurare per Gestire
Ken Rau

Volere è Potere, in Ogni Senso
Suzanne Robertson

Realizzare il CPM e l'integrazione della BI
Mike Ferguson

Tutti i punti della FPA
Koni Thompson

Requiem per il Portale?
Colin White

Business Intelligence: dalla teoria alla realtà (II parte)
Shaku Atre

Business Intelligence: dalla teoria alla realtà (I parte)
Shaku Atre

I portali Corporate e di E-business: la nuova generazione del posto di lavoro
Mike Ferguson

I 10 errori da evitare nella realizzazione di un Meta Data Repository (II Parte)
David Marco

I 10 errori da evitare nella realizzazione di un Meta Data Repository (I parte)
David Marco

Usare i modelli per acquisire l'esperienza di progettazione
James Hobart

Realizzare l'Impresa Intelligente
Colin White

.NET or J2EE - Choosing the Right Web Services Framework
John Kneiling

Progettare Applicazioni Mobili di Successo
James Hobart

La Sociologia del Progetto: Identificare e Coinvolgere tutti i Partecipanti
Suzanne Robertson

Integrare la Business Intelligence nell'Impresa (II parte)
Mike Ferguson

Integrare la Business Intelligence nell'Impresa (I parte)
Mike Ferguson

L'Evoluzione del Portale di e-Business (II parte)
Colin White

L'Evoluzione del Portale di e-Business (I parte)
Colin White

Il Consulente WebEAI: Servizi Web, XML e l'Impresa
John Kneiling

Data Mining: Come Gestire le Relazioni con i Clienti Secondo i Principi del CRM
Weaver James

Articoli del mese - Technology Transfer