Quel outil pour analyse d'impact sur le SI (.Net/Oracle)

marinew Messages postés 3 Date d'inscription samedi 15 septembre 2007 Statut Membre Dernière intervention 10 septembre 2013 - 10 sept. 2013 à 09:05
marinew Messages postés 3 Date d'inscription samedi 15 septembre 2007 Statut Membre Dernière intervention 10 septembre 2013 - 10 sept. 2013 à 17:57
Bonjour,

L'entreprise dans laquelle je travaille développe de plus en plus d'applications (exécutables, extranets/intranets, WebServices) très liées les unes aux autres de par :
- l'accès aux mêmes tables de BDD
- l'exécution de procédures stockées PL/SQL communes
- l'appel de WebServices
- la mutualisation de code C# sous forme de DLLs embarquées

Nous travaillons principalement dans un contexte .Net (C#, ASP.Net, Entity Framework...) et Oracle.

La complexité de notre système d'informations augmentant, nous sommes à la recherche d'un outil de gestion des dépendances, pour effectuer des analyses d'impact, et répondre par exemple à des questions comme :
- Quels sont les programmes (.Net, PL/SQL...) qui accèdent à la table X ?
- Si je modifie le WebService X, quels sont les programmes impactés ?
- Quels sont les programmes qui s'appuient sur la DLL X ?
- Quels sont les programmes (.Net, PL/SQL...) qui appellent la procédure stockée PL/SQL X ?
- etc.

Connaissez-vous des outils (open-source ou propriétaires) de cartographie / gestion de dépendances capable de répondre à notre problématique, dans ce contexte technologique ?

Si vous avez eu la même problématique, comment l'avez-vous traitée ?
Merci d'avance pour vos réponses.MMMMM

5 réponses

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
10 sept. 2013 à 09:49
Bonjour,

Il existe des outils pour les dépendances dans un projet... mais pour le reste, je ne serais pas te dire.

Tu peux toujours aller voir du coté de http://www.ndepend.com/, c'est un outil développé en France ;)
Je te le recommande, c'est une référence !

Pour le reste, je n'ai pas d'idée.

Sébastien
0
BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
10 sept. 2013 à 10:35
Bonjour,

Je ne connais pas d'outils magique pour retouver ce genre d'information. Je ne connais pas nDepend non plus.

Pour la derniere question :
On a decidé de centraliser l'ensemble des appels bd dans un pool de webservices.
Pourquoi un pool : Par facilité (200 tables environs), ca paraissait plus simple pour retrouver les codes d'appels aux objets. Avec le recule, ca change pas grand chose si l'architecture du ws est bien pensée.
Tous les outils (web, services, appli lourdes etc) passent exclusivement par le ws pour acceder aux données. Aucun appel directe.
Pour garantir la compatibilité, tout ce petit monde se partage des interfaces.
Attention, cette methodologie peut s'averer couteuse sur des codes mal pensés. Par contre, au niveau maintenance, on a tout gagné.
0
marinew Messages postés 3 Date d'inscription samedi 15 septembre 2007 Statut Membre Dernière intervention 10 septembre 2013
10 sept. 2013 à 13:31
Merci pour vos 2 réponses.

Concernant nDepend, on l'utilise déjà un peu (sans doute pas suffisamment !), mais à ma connaissance :
- il se limite au code C# (il faudrait pouvoir analyser également le lien avec les tables Oracle, et le code PL/SQL)
- il couvre le périmètre d'une solution, mais je ne crois pas qu'il puisse indiquer les dépendances toutes solutions confondues. Je me trompe ?

BasicInstinct, effectivement, c'est un principe intéressant. Malheureusement difficilement applicable sur du code déjà existant, dont les accès BDD ne sont pas forcément centralisés.
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
10 sept. 2013 à 14:32
NDepend n'analyse pas le C#... mais des assemblies.

Je ne connais aucun produit capable de scanner l'ensemble des dépendance d'un projet (qu'elles soient code, sql...)

Je ne doute pas que ça existe, mais j'en connais aucun.
0
BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
10 sept. 2013 à 14:43
Effectivement, c'est difficilement applicable, mais pas forcement impossible.

J'estime a environ 3 mois le temps qu'il m'a fallu pour nettoyer/ adapter le code des differentes solutions, dont 2 uniquement sur un pauvre site web (pas de couches séparés, par de requetes centralisées, pas d'objets....). Le tout étalé sur presque 1 an et demi.
C'est pas negligeable, mais si on repporte ca au cout reel de maintenance, ou evolution de la structure de la Db, c'est clairement rentable sur le moyen terme. Je dis ca, c'est pas moi qui tient le chequier...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
marinew Messages postés 3 Date d'inscription samedi 15 septembre 2007 Statut Membre Dernière intervention 10 septembre 2013
10 sept. 2013 à 17:57
C'est un point de vue qui se tient effectivement.

D'autres personnes pour d'autres retours d'expérience ou des noms d'outils à proposer ?
0
Rejoignez-nous