Adoption De Pratiques De Test Agile Dans Un Environnement Legacy

Preview:

Citation preview

Xavier WarzeeEmail: xavier@warzee.fr

Blog: http://warzee.frSite: http://www.microsoft.com/agile

ADOPTER DES PRATIQUES DE TEST AGILE DANS UN ENVIRONNEMENT “LEGACY”

CONTEXTE 6 applications d’assurances (auto, habitat, …)

utilisées par des caisses régionales déployées dans un datacenter comprenant des mainframes et

des serveurs

Architecture Code applicatif :

en Java sur les serveurs Unix En C# sur Windows

Règles métiers en Cobol exécutées sur des mainframes Queues de messages pour communiquer entre front et

applications

Mainframe incontournable mais disponibilité faible pour les tests d’intégration avec les codes Java/C#

OBJECTIFS

A moyen terme Développer le code réellement attendu Préparer l’adoption d’une approche agile

Démonstration à chaque itération des « user stories » réalisées et testées (Running Tested Features)

A court terme Réduire la période entre 2 Mises En Production

Faciliter le déploiement des applications Fournir une solution adaptée au test des codes

« legacy »/ « back office » !!!

Tests d’acceptation

avec GUI

FitNesse/.NetSpec/

StoryTeller

Tests Unitaires

• Nombre réduit de tests au niveau GUI• Automatiser ce type de test

• Définition de tests fonctionnels pertinents

• Tests unitaires généralisés• Adoption d’une approche TDD

ADOPTION DE LA PYRAMIDE DE MIKE COHN

ARCHITECTURE & TESTS AVEC MOCKS

DAOBusiness Service

Business Component

Business Component

Business layer Mainframe layer

Business

Service

(Cobol)

MQ

DAO

Business Service

MQ

Business Component

Presentation layer

XXX Application

Application

Process

Service

Business Process

Service

DAS

HTML/JS

Pages

xml/http mq

Business

Service

(Cobol)

DAS

ARCHITECTURE & TESTS AVEC MOCKS

DAOBusiness Service

Business Component

Business Component

Business layer Mainframe layer

Business

Service

(Cobol)

MQ

DAO

Business Service

MQ

Business Component

Presentation layer

XXX Application

Application

Process

Service

Business Process

Service

DAS

HTML/JS

Pages

xml/http mq

Business

Service

(Cobol)

DAS

Test

ressource

Test

unitaire

ARCHITECTURE & TESTS AVEC MOCKS

DAOBusiness Service

Business Component

Business Component

Business layer

DAO

Business Service

Business Component

Presentation layer

XXX Application

Application

Process

Service

Business Process

Service

MOCK

HTML/JS

Pages

xml/http

MOCK

Test

ressource

Test

unitaire

ARCHITECTURE & TESTS AVEC MOCKS

DAOBusiness Service

DAO

Business Service

XXX Application

Application

Process

Service

Business Process

Service

MOCK

HTML/JS

Pages

xml/http

MOCK

Test

ressource

Test

unitaire

Test

composant

Test

composant

Test

GUI

Presentation layer Business layer

Business Component

Business Component

Business Component

ARCHITECTURE & TESTS AVEC MOCKS

DAOBusiness Service

Business Component

Business Component

Business layer Mainframe layer

Business

Service

(Cobol)

MQ

DAO

Business Service

MQ

Business Component

Presentation layer

XXX Application

Application

Process

Service

Business Process

Service

DAS

HTML/JS

Pages

xml/http mq

Business

Service

(Cobol)

DAS

Test

ressource

Test

unitaire

Test

composant

Test

composant

Test

GUI