Les 7 erreurs de l’entrepreneur néophyte du développement logiciel

les erreurs commises par les entrepreneurs néophytes en développement logiciel

Vous n’êtes pas un professionnel de l’informatique et vous avez fait développer un logiciel par un tiers (Développement logiciel externalisé), et n’arrivez plus à gérer la situation, la relation. Vous avez sans doute commis une ou plusieurs erreurs. Découvrez vos erreurs, et pourquoi la situation n’est pas désespérée : des prestations de Continuité d’Exploitation (TME), de Tierce Maintenance Applicative (TMA) peuvent vous aider reprendre la maîtrise de votre roadmap logicielle !

Il vient de s’en rendre compte …

Jean est un expert de son domaine, il fait référence dans son écosystème : il forme, il conseille, il expertise …   C’est la référence. Ses copains lui expliquent qu’il pourrait tirer profit de son expertise, et faire développer son propre logiciel, avec des fiches métiers tirées de sa propre expérience !

A l’heure de la digitalisation des processus, Jean est certain de pouvoir bonifier son expérience amassée depuis toutes ces années au travers de la mise sur le marché d’un logiciel, non ! … d’une application mobile plutôt : c’est plus fun, et ça marche partout.  Il pourrait vendre ensuite des licences ou des abonnements …

L’aventure démarre,

Le projet s’exécute rapidement, Jean est confiant, il a même trouvé un développeur qui croit dans le projet et enthousiaste, il a démarré les développements. Des  échanges réguliers se mettent en place et un premier prototype est produit, le projet intègre un Développement logiciel externalisé. Tout se déroule très vite. Jean est même surpris de la simplicité avec laquelle le logiciel est développé, le rendu est parfait.

Il paye rubis sur l’ongle le développeur qui encourage son client à poursuivre les développements, pour pouvoir avoir une première version acceptable. Le développeur est agile, il prend les évolutions de Jean à la volée … un coup fil et le code est mis à jour.

Les ventes décollent mais …

Jean n’est pas le dernier en matière de commerce, il sait s’y prendre. Il fait des salons, présente son prototype, les discussions lui donne de nouvelles idées : il suffit d’appeler son développeur qui réajuste le logiciel. Les premières ventes s’opèrent, le rêve se rapproche. Pourtant ses clients l’appellent souvent car le logiciel semble montrer des dysfonctionnements. Il n’enregistre pas correctement les données saisies, tronque les éléments sauvés en base, pire il perd des données… montre des ralentissements à certaines périodes de la journée.

La qualité logicielle ne semble pas au rendez vous et pourtant la commercialisation se passe bien, elle bat son plein, pas le moment de ralentir. Le développeur comme à son habitude est très réactif pour corriger les défauts, il est disponible à toute heure. La situation technique ne s’améliore pas, les défauts apparaissent au même rythme qu’ils disparaissent…

Jean s’interroge, prend conseil autour de lui, on lui conseille de stopper les ventes, de prendre le temps de faire analyser son outil par un tiers pour déterminer la qualité du logiciel, bref avoir un autre avis technique sur la question. 

Il en parle au développeur qui ne comprend pas sa démarche: « c’est la vie de tous les logiciels que d’avoir des bugs et devoir reprendre le code » ; il lui promet d’être disponible.

Qu’est ce qui cloche avec ce développement logiciel externalisé?

Le développement logiciel se démocratise à n’en pas douter. Une formation dans une école de communication digitale et hop… En quelque jours vous connaissez les rudiments du codage php qui vous permettent de développer des écrans. Comme il est un mouvement qui veut rendre le codage plus accessible en cette période de digitalisation de la société, il n’est à pas douter que vous trouverez un développeur indépendant, malléable et réactif dans votre entourage. Votre beau-frère en reconversion, votre neveu, un ami d’un ami …

Pour autant le codage informatique reste une discipline rigoureuse et qui ne nécessite pas uniquement de savoir « coder » ; l’architecture de base de données, les protocoles sécurisés de transmission de données sont très souvent délaissés, la persistance des données en base n’est pas traitée … menant à des aberrations logicielles qui mènent à de belles devantures mais aussi à de belles illusions.

Le logiciel fonctionne mais est-il utilisable ?

Les critères non-fonctionnels sont souvent laissés pour compte ; l’expert fonctionnel travaillera rapidement avec le développeur à l’élaboration d’une application répondant au besoin; mais ni l’un ni l’autre n’ont les compétences d’expérience utilisateurs, expérience d’ergonomie, de sécurité, de performances … toutes ces petites choses qui vous coûtent un développement, si elles ne sont pas anticipées.

Imaginons que notre expert prenne conscience de la situation et réagisse pour avoir une contre-expertise. Il y a peu de chances que le développeur accepte : à chaque bug il encaisse les frais de correction, il y a plus de risque pour lui à laisser son code se faire auditer par un tiers, et il préférera rester dans son confort de maintenance corrective très lucrative.

L’expert veut lui imposer cet audit, c’est lui qui a payé pour ce développement : c’est son logiciel !  il en parle à son avocat qui le refroidit : en effet, aucun contrat ne régit la relation avec le développeur, t’as déconné mec … et surtout aucune cession des droits sur le logiciel n’est en place ; quoi qu’en dise notre expert, l’éditeur propriétaire du logiciel est bel et bien le développeur. Le développeur tient l’expert en otage.

Les 7 erreurs de l’entrepreneur néophyte du développement logiciel

  1. Se la jouer cavalier seul, plutôt que s’associer avec le technicien en charge du développement,
  2. Ne pas se faire accompagner dans le choix du développeur,
  3. Ne pas se faire accompagner par un architecte chargé du design de la solution et du choix des langages & framework,
  4. Accorder une confiance aveugle au développeur de la solution sans contrôle tiers,
  5. Mettre en place un projet de développement logiciel externalisé  sans prévoir la cession des droits de propriété,
  6. Mettre en place un développement logiciel sans prévoir le cycle de développement, les livrables intermédiaires, les contrôles à réception,
  7. Ne pas édicter clairement à son développeur de manière formelle les critères fonctionnels et non-fonctionnels du logiciel et ne pas rédiger un cahier des charges,

Crée pour répondre spécifiquement aux besoins des éditeurs de solution qui ne sont pas professionnels de l’informatique et qui veulent développer leurs solutions :

RECOVERY CASE intervient en amont des projets, pour la mise en place d’une méthodologie adaptée à la taille du projet, pour réaliser les contrôles qualité à réception des produits, des livrables (tests fonctionnels externalisés, qualimétrie logicielle). Le développement logiciel externalisé est encadré par un processus qualité de manière à limiter les risques liés à la relation client / fournisseur.

RECOVERY CASE intervient en aval des projets et en cas de difficultés majeures d’exploitation, RECOVERY CASE vous redonne la maîtrise de votre logiciel par des missions de reverse engineering, reconstruction du patrimoine informationnel de votre solution, et opère des forfaits de Tierce Maintenance Applicative et Tierce Maintenance d’Exploitation.

Crédit photo créé par freepik – fr.freepik.com

Partager sur facebook
Facebook
Partager sur twitter
Twitter
Partager sur linkedin
LinkedIn