Logiciel personnalisé - Custom software

Un logiciel personnalisé (également appelé logiciel sur mesure ou logiciel sur mesure ) est un logiciel spécialement développé pour une organisation spécifique ou un autre utilisateur. En tant que tel, il peut être mis en contraste avec l'utilisation de progiciels développés pour le marché de masse , tels que des logiciels commerciaux sur étagère , ou des logiciels libres existants .

Considérations

Étant donné que le logiciel personnalisé est développé pour un seul client, il peut s'adapter aux préférences et aux attentes particulières de ce client, ce qui peut ne pas être le cas pour les logiciels commerciaux prêts à l'emploi. Un logiciel personnalisé peut être développé dans un processus itératif, permettant de prendre en compte toutes les nuances et les risques cachés possibles, y compris les problèmes qui n'étaient pas mentionnés dans les spécifications d'exigences d'origine (qui ne sont, en règle générale, jamais parfaites). En particulier, la première phase du processus de développement logiciel peut impliquer de nombreux départements, notamment le marketing , l' ingénierie , la recherche et le développement et la direction générale .

Les grandes entreprises se développent généralement des logiciels personnalisés pour les fonctions critiques, y compris la gestion de contenu , la gestion des stocks , gestion des clients , gestion des ressources humaines , ou autrement pour combler les lacunes présentes dans les progiciels existants. Dans de nombreux cas, ces logiciels sont des logiciels hérités , développés avant que des logiciels commerciaux ou des progiciels gratuits offrant les fonctionnalités requises avec un niveau de qualité ou de fonctionnalité acceptable ne deviennent disponibles ou largement connus. Par exemple, la BBC a dépensé beaucoup d'argent sur un projet de développement de son propre logiciel personnalisé de production et de gestion de médias numériques , mais le projet a connu des problèmes et, après de nombreuses années de développement, a été annulé. L'une des principales raisons invoquées pour l'annulation du projet était qu'il était devenu évident qu'il existait un logiciel commercial standard qui était, à ce stade, adapté aux besoins de la BBC et disponible pour une petite fraction du prix.

Le développement de logiciels personnalisés est souvent considéré comme coûteux par rapport aux solutions ou produits standard. Cela peut être vrai si l'on parle de défis typiques et de solutions typiques. Cependant, ce n'est pas toujours vrai. Dans de nombreux cas, les logiciels commerciaux standard nécessitent une personnalisation pour prendre en charge correctement les opérations de l'acheteur. Le coût et le retard de la personnalisation de logiciels commerciaux prêts à l'emploi peuvent même s'ajouter aux dépenses de développement de logiciels personnalisés.

Le coût n'est pas non plus la seule considération dans la décision de développer un logiciel personnalisé, car les exigences d'un projet de logiciel personnalisé incluent souvent l'acheteur propriétaire du code source , afin de garantir la possibilité d'améliorations ou de modifications futures du système installé pour gérer les exigences changeantes. Cependant, les logiciels commerciaux prêts à l'emploi modernes ont souvent des interfaces de programmation d'applications (API) pour l'extensibilité - ou occasionnellement, comme dans le cas de Salesforce.com , un langage spécifique au domaine (DSL) - ce qui signifie que les progiciels commerciaux prêts à l'emploi peuvent parfois accueillir une assez grande variété de personnalisations sans avoir besoin d'accéder au code source du système logiciel commercial de base.

De plus, les logiciels commerciaux prêts à l'emploi sont livrés avec des coûts de licence initiaux qui varient énormément, mais atteignent parfois des millions de dollars américains. De plus, les grandes maisons de logiciels qui commercialisent des produits logiciels prêts à l'emploi réorganisent très fréquemment leurs produits. Ainsi, une personnalisation particulière peut nécessiter une mise à niveau pour la compatibilité tous les deux à quatre ans. Compte tenu du coût de la personnalisation, ces mises à niveau peuvent également s'avérer coûteuses, car un cycle de sortie de produit dédié peut devoir leur être réservé. Cependant, en théorie, l'utilisation d'API et/ou de DSL documentés, par opposition à l'accès direct aux tables de bases de données internes et aux modules de code, pour la personnalisation peut minimiser le coût de ces mises à niveau. En effet, les fournisseurs de logiciels commerciaux sur étagère peuvent choisir d'utiliser des techniques telles que :

  • apporter des modifications "sous le capot" tout en conservant la compatibilité descendante avec les personnalisations écrites pour les anciennes versions d'API ou DSL
  • prise en charge d'anciennes versions d'API et de nouvelles versions d'API simultanément dans une nouvelle version du logiciel
  • des conseils de publication avertissant que la prise en charge des anciennes versions API ou DSL doit être supprimée du produit dans une version ultérieure, afin de donner aux clients plus de temps pour adapter les personnalisations.

La décision de créer un logiciel personnalisé ou d'opter pour une implémentation logicielle commerciale standard repose généralement sur un ou plusieurs des facteurs suivants :

  • Finances - à la fois des coûts et des avantages : le coût initial de la licence pour les produits logiciels commerciaux prêts à l'emploi signifie qu'une analyse coûts-avantages approfondie de l'analyse de rentabilisation doit être effectuée. Cependant, il est largement connu que les grands projets de logiciels personnalisés ne peuvent pas résoudre les trois constantes de portée, de temps/coût et de qualité, de sorte que le coût ou les avantages d'un projet de logiciel personnalisé seront soumis à un certain degré d'incertitude - même sans tenir compte de l'incertitude entourant les avantages commerciaux d'une fonctionnalité mise en œuvre avec succès.
  • Fournisseur - Dans le cas d'un logiciel commercial prêt à l'emploi, le fournisseur est-il susceptible de rester en activité longtemps et une assistance et une personnalisation adéquates seront-elles disponibles ? Sinon, y aura-t-il une possibilité réaliste d'obtenir une assistance et une personnalisation de la part de tiers ? Dans le cas d'un logiciel personnalisé, le développement du logiciel peut être sous-traité ou effectué en interne. S'il est externalisé, la question est : le fournisseur est-il réputé et a-t-il de bons antécédents ?
  • Délai de mise sur le marché : les produits logiciels commerciaux prêts à l'emploi ont généralement un délai de mise sur le marché plus rapide
  • Taille de la mise en œuvre : le logiciel commercial standard est livré avec la normalisation des processus commerciaux et des rapports. Pour une organisation mondiale ou nationale, ceux-ci peuvent apporter des gains d'économies, d'efficacité et de productivité, si les succursales sont toutes disposées et capables d'utiliser le même logiciel commercial sans personnalisation lourde (ce qui n'est pas toujours une évidence).

Principaux domaines

Construction

L'industrie de la construction utilise des logiciels personnalisés pour gérer les projets, suivre les changements et signaler les progrès. Selon le projet, le logiciel est modifié pour répondre aux besoins particuliers d'un maître d'ouvrage, de l'équipe de conception et des entrepreneurs généraux et spécialisés.

Les données spécifiques au projet sont utilisées d'autres manières pour répondre aux exigences uniques de chaque projet. Le logiciel personnalisé s'adapte aux préférences et aux attentes particulières d'une équipe de projet, ce qui le rend adapté à la plupart des processus et défis de construction :

  • développement de conception
  • appels d'offres
  • contrôle des documents
  • approbations de dessins d'atelier
  • gestion des changements
  • contrôles et mise en service
  • Orientation

Les développeurs de logiciels personnalisés utilisent diverses plates-formes, telles que FileMaker Pro , pour concevoir et développer des logiciels personnalisés pour le secteur de la construction et pour d'autres secteurs.

Hôpitaux

Les hôpitaux peuvent conserver des dossiers de santé électroniques et les récupérer à tout moment. Cela permet à un médecin et à ses assistants de transférer les coordonnées d'un patient via un réseau.

La conservation des groupes sanguins des patients dans une base de données hospitalière rend la recherche du sang approprié plus rapide et plus facile.

Les hôpitaux utilisent également des logiciels de facturation, notamment dans leurs dispensaires .

Lieux d'enseignement

Les écoles utilisent un logiciel personnalisé pour conserver les détails d'admission des étudiants. Ils produisent également des certificats de transfert. Certains gouvernements développent des logiciels spéciaux pour toutes leurs écoles. Sampoorna est un projet de système de gestion scolaire mis en œuvre par le ministère de l'Éducation du gouvernement du Kerala, en Inde, pour automatiser le système et le processus de plus de 15 000 écoles de l'État. Ces projets apportent une uniformité pour les écoles.

Vendre au détail

La facturation est une utilisation courante des logiciels personnalisés. Un logiciel personnalisé est souvent utilisé par les petits magasins, les supermarchés et les grossistes pour gérer les détails de l' inventaire et générer des factures.

Grands succès de projets

Dépassements et échecs majeurs des projets

Les échecs et les dépassements de coûts des projets informatiques du gouvernement ont fait l'objet d'enquêtes approfondies par des députés et des fonctionnaires britanniques ; ils ont eu un riche filon d'échecs à examiner, notamment :

  • Le programme national du NHS pour l'informatique
  • Systèmes informatiques de l' Agence des paiements ruraux . Le 15 mars 2006, le directeur général Johnson McNeil a été licencié lorsque la date limite du 14 février pour le calcul des droits au régime de paiement unique n'a pas été respectée.
  • Crédit universel - le premier essai n'a même pas pu exécuter correctement les fonctions les plus élémentaires ; retard et le projet aurait été relancé.
  • 1992 - LASCAD - le nouveau système d'envoi assisté par ordinateur du London Ambulance Service - crashs temporaires provoquant des retards dans l'acheminement des ambulances. Une précédente tentative de développement d'un système d'expédition personnalisé pour le London Ambulance Service avait également été abandonnée.

Avantages et inconvénients

Lorsqu'une entreprise envisage une solution logicielle, les options sont généralement entre la création d'une feuille de calcul (ce qui est souvent fait dans Microsoft Excel ), l'obtention d'un produit standard ou la création d'un logiciel personnalisé spécifiquement pour répondre à ses besoins. Il y a cinq critères principaux impliqués dans le choix de la bonne solution :

Critère La nature
Coût et temps de développement Quantitatif
Autres frais de personnel Quantitatif
Efficacité du système Quantitatif
Amélioration des services Qualitatif
La flexibilité Qualitatif

Bien que les évaluations initiales des options selon ces critères puissent s'écarter fortement de la réalité de la solution éventuelle une fois mise en pratique, en raison de facteurs tels que les dépassements de coûts, une formation insuffisante, un mauvais ajustement du produit, la fiabilité de la solution, etc.

Ces facteurs doivent prendre en compte le fonctionnement de l'entreprise, son secteur d'activité, sa taille et son chiffre d'affaires. En tant que telle, la décision ne peut être prise qu'au cas par cas pour déterminer si elle justifie un développement personnalisé, ainsi que la propriété du logiciel.

Avantages

Un logiciel personnalisé produira généralement le système le plus efficace car il peut fournir une assistance pour les besoins spécifiques de l'entreprise, qui peuvent ne pas être disponibles dans une solution standard et fournira une plus grande efficacité ou un meilleur service client.

Compte tenu d'une approche de développement appropriée, telle que DSDM , un logiciel personnalisé produira également l'amélioration de service la meilleure ou la mieux ciblée. Les entreprises peuvent adapter le logiciel à ce que veulent leurs clients au lieu d'avoir à choisir un package qui s'adresse à un marché générique. Par exemple, une imprimerie peut vouloir un logiciel qui réponde dans les plus brefs délais, tandis qu'une autre imprimerie peut se concentrer sur la production des meilleurs résultats ; comme ces deux objectifs sont souvent en conflit, un package standard se situe normalement quelque part au milieu alors qu'avec un logiciel personnalisé, chaque entreprise peut se concentrer sur son public cible.

Bien qu'elle ne soit pas toujours la plus adaptée aux projets plus importants ou plus complexes, une feuille de calcul permet au personnel moins technique d'une entreprise de modifier directement le logiciel et d'obtenir des résultats plus rapidement. Les logiciels personnalisés peuvent être encore plus flexibles que les feuilles de calcul, car ils sont conçus par des professionnels du logiciel capables de mettre en œuvre des fonctionnalités pour un large éventail de besoins commerciaux.

Désavantages

Les principaux inconvénients des logiciels personnalisés sont le temps et le coût de développement. Avec une feuille de calcul ou un progiciel standard, un utilisateur peut obtenir des avantages rapidement. Avec un logiciel personnalisé, une entreprise doit passer par un processus de développement de logiciel qui peut prendre des semaines, des mois ou, avec des projets plus importants, des années. Les bogues introduits accidentellement par les développeurs de logiciels et les tests approfondis pour éliminer les bogues peuvent entraver le processus et le faire prendre plus de temps que prévu. Cependant, les feuilles de calcul et les progiciels standard peuvent également contenir des bogues, et de plus, parce qu'ils peuvent être déployés dans une entreprise sans test formel, ces bogues peuvent passer à travers et provoquer des erreurs critiques pour l'entreprise.

Les logiciels personnalisés coûtent souvent plusieurs fois le coût des deux autres options et incluront normalement un coût de maintenance continu. Cela rendra souvent les logiciels personnalisés impossibles pour les petites entreprises. Ces coûts plus élevés peuvent être insignifiants dans les grandes entreprises où de petites augmentations d'efficacité peuvent être liées à d'importantes économies de coûts de main-d'œuvre ou où un logiciel personnalisé offre une grande augmentation de l'efficacité.

Modèle hybride

En particulier avec les logiciels cloud modernes, un modèle hybride de logiciel personnalisé est possible dans lequel l'accent principal est mis sur le logiciel commercial standard - principalement l'inadéquation entre ses caractéristiques, ses fonctions et les exigences, préférences et attentes de l'entreprise. L'idée ici est d'acheter un logiciel commercial sur étagère qui satisfait un maximum d'exigences et de développer un logiciel personnalisé (extensions ou add-ons) pour combler les lacunes laissées par celui-ci. C'est l'approche standard utilisée lors de la mise en œuvre de SAP ERP , par exemple.

Voir également

Les références