IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ALM Discussion :

Utilisation d'application tierces au sein de son application web


Sujet :

ALM

  1. #1
    Membre expérimenté
    Avatar de muad'dib
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2003
    Messages
    1 013
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2003
    Messages : 1 013
    Points : 1 381
    Points
    1 381
    Par défaut Utilisation d'application tierces au sein de son application web
    Bonjour à tous

    Voilà je viens vous faire part d'un sujet de nombreux débats dans mon organisation actuellement entre moi (directeur technique) et mes associés (essentiellement commerciaux).

    Je vous explique le probleme et je suis sur que nombre d'entre vous se reconnaitront dans mes paroles:

    Nous avons une application web qui devrait offrir à terme de nombreuses fonctionnalités à nos utilisateurs (notamment au niveau du cloud computing).

    Nos ressources humaines sont limitées, et nos contraintes temporelles sont assez fortes.

    Le sujet qui revient de nombreuses fois avec mes associés est :
    Regarde cette application, c'est génial ça fait tout ce qu'on veut, il faudrait l'intégrer à notre application. Ou alors faire un lien entre les deux.
    Ce genre de messages a le don de m'exaspérer, mais j'essaye de rester calme au possible et d'expliquer pourquoi l'utilisation d'applications tierces n'est pas une bonne idée. Évidemment, mes associés n'en démordent pas et reviennent régulièrement me bassiner avec des applications tierces sorties de nulle part.

    Leur argument principal pour l'utilisation de telles applications est bien entendu le gain de temps, et donc d'argent.

    Cela étant, au fond de mon ame de développeur et fort de mes expériences passées, je sais d'ores et déjà que c'est une très mauvaise idée. Je leur explique à chaque fois mes arguments mais ils reviennent toujours à la charge.

    Donc je me dis "Peut-être que je me trompe? Peut-être ne serait-ce pas si mal que cela finalement ?"

    Ou encore "Est-ce que je m'explique mal? Ne comprennent-ils pas avec les arguments que je leur expose?"

    J'ai donc aujourd'hui décidé de venir vers vous, vous présenter les arguments que j'utilise pour leur expliquer mon point de vue, et j'aimerais que vous me donniez votre opinion sur la réutilisation d'applications au sein de sa propre application, pour ou contre, tous les avis m'intéressent, car après tout, peut être suis-je dans l'erreur !! Je ne suis pas totalement fermé non plus à l'utilisation de telles applications !!


    Je précise qu'il faut distinguer librairies, serveurs et applications. Je suis à 100% pour l'utilisation de librairies et de serveur existants (pas besoin de réinventer la roue), mais contre l'utilisation d'applications entières (exemple: Google docs, s'il était open source).

    Donc voici mes arguments contre l'utilisation d'applications tierces:
    1. L'utilisation d'une application tierce peut faire gagner du temps au départ, mais lorsque l'ajout de nouvelles fonctionnalités sera requis, on sera dépendant de l'application tierce. Ou encore, si l'application est opensource, on devra s'approprier le code l'application, ce qui peut être long et fastidieux
    2. Le projet perd de son identité, l'utilisation d'applications tierces reviendrait à créer un patchwork d'applications existantes, s'apparentant à du bidouillage peu stable et peu fonctionnel. De plus on se retrouvait avec des estampilles "Powered by" un peu partout
    3. Pour le client final, la question pourrait se poser de savoir pourquoi ils nécessiteraient notre application lorsqu'il ne s'agit que d'une application tierce légèrement modifiée, gratuite, et dont leur administrateur système pourrait tout aussi bien installer sans notre aide
    4. L'application tierce ne répondra jamais à 100% aux besoins de l'utilisateur
    5. Le temps de configuration, d'installation, de développement nécessaire à la compatibilisation de l'application tierce avec notre propre application pourrait s'avérer très élevée, voire même plus élevé que de développer l'application tierce nous même

    Voilà mes principales raisons. Encore une fois je le répète je ne viens pas chercher ici de l'eau à ajouter à mon moulin et je peux me tromper, je souhaite simplement avoir l'avis d'autres développeurs sur ce sujet !!

    Merci de votre participation !!

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    288
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 288
    Points : 412
    Points
    412
    Par défaut
    Plutôt d'accord avec 1,4 et 5, même si tout n'est pas blanc ou noir!

    D'un côté il s'agit de ne pas ré-inventer la roue en re-développant un produit qui proposera toujours un spectre plus large de fonctionnalités et sera certainement plus respectueux des bonnes pratiques du domaine fonctionnel en question. Cela est d'autant si l'axe de développement de votre application est très fort du côté du domaine fonctionnel supporté par l'application tiers.

    De l'autre côté, l'intégration d'un logiciel tiers (si la licence le permet) introduit une complexité plus importante :
    - il faut apprendre/connaître les moyens de s'intégrer au logiciel (e.g. si on a de la chance les webservices sont déjà fournis),
    - ensuite si il faut faire évoluer cette application tiers, il faudra mettre les mains dans le cambouis (ou s'orienter vers un prestataire expert dans l'application => €)
    - je ne parle pas des problématiques de mise à jour qui potentiellement peuvent remettre en cause la solution technique d'intégration qui avait été retenue précédemment (changement d'api par ex) ni des problèmes d'exploitation (que se passe-t'il si le logiciel tiers est KO?, définir une politique de sauvegarde pour s'assurer que les données des 2 applications sont synchrones...)
    A tout cela doit s'ajouter les critères de choix d'une application "à part entière" (ce qui n'est déjà pas un choix simple) -> qualité fonctionnelle et technique, pérennité de la solution sur le long terme, simplicité d'exploitation, etc.

    En conclusion, la décision que vous prendrez est aussi bien stratégique que technique. Pour ce dernier point, vous n'échapperez pas à un chiffrage des deux solutions. Si à compétences égales, la proposition d'intégration n'est pas a minima 2x plus avantageuse que la solution "spécifique", alors je vous suggère de laisser tomber la solution d'intégration qui a long terme se révellera certainement beaucoup plus coûteuse (en terme de maintenance, gestion des compétences...).

Discussions similaires

  1. Réponses: 12
    Dernier message: 16/01/2015, 10h59
  2. Réponses: 6
    Dernier message: 12/07/2010, 02h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo