De nombreuses grandes entreprises ont des services informatiques qui verrouillent les postes de travail à une configuration standard, ou SOE. Les utilisateurs finaux n'ont généralement pas le droit d'installer leurs propres logiciels, et même s'ils le faisaient, les organisations ont tendance à autoriser uniquement l'installation de logiciels «approuvés».
Même pour les logiciels libres / open source, les utilisateurs finaux doivent souvent soumettre une sorte de formulaire de demande pour faire vérifier et approuver le logiciel. Une fois le processus suivi et le logiciel installé, les mises à niveau peuvent être gênantes - de nombreuses organisations ont tendance à s'en tenir aux anciennes versions des logiciels (Windows XP, Office 2003, etc.) par crainte de problèmes inconnus.
Que peuvent faire les développeurs de logiciels pour accélérer le processus d'approbation?
Si vous êtes impliqué dans un tel processus d'approbation:
- Que recherchez-vous lors de l'évaluation d'un logiciel? Par exemple:
- Préférez-vous les logiciels compatibles MSI ou xcopy?
- Si le logiciel nécessite des frameworks (Java, .NET), est-ce plus ou moins susceptible d'être problématique?
- Si le logiciel prend en charge les mises à jour automatiques, autorisez-vous généralement cela?
- Combien de temps cela prend-il généralement?
- Quel type de modèles de licence préférez-vous (transférable, par siège, par processeur, à l'échelle du site)?
- Que peuvent faire les éditeurs de logiciels indépendants pour améliorer leurs chances de faire approuver leur logiciel?
la source
Réponses:
Je fais partie du groupe des approbations de logiciels pour une entreprise multinationale et je ferais absolument écho à tout ce que dit Adam ci-dessus.
Je voudrais également faire les remarques suivantes, tout d'abord toujours payer toutes vos "taxes de développement". Cela signifie que vous devez vous assurer que votre application fonctionne correctement dans une grande variété d'environnements que vous n'utiliserez peut-être jamais, mais qu'elle sera très probablement un facteur de rupture pour les grandes entreprises, ce sont des choses comme s'assurer que votre application fonctionne bien avec les profils d'utilisateurs itinérants et dossiers utilisateur redirigés (utilisez toujours les API Windows pour trouver les dossiers d'utilisateurs et de profils, ne supposez jamais qu'ils se trouvent à des emplacements standard, ou même sur le lecteur local), en vous assurant qu'il fonctionne bien sur les serveurs Bureau à distance (où il peut y avoir un 100 copies de votre application exécutées en même temps, certaines utilisant des connexions très lentes), sur des ordinateurs portables avec des connexions réseau lentes ou des piles faibles, etc. À titre d'exemple, nous avons récemment rejeté les nouvelles versions de plus d'un logiciel d'une très grande entreprise (commence par "A" et est célèbre pour les graphiques) parce que leurs applications ne soudainement pas '
D'après le ton de votre commentaire, il semble que vous pensiez que le processus d'approbation a quelque chose à voir avec le coût? De notre point de vue, le coût unitaire d'une application n'est pas quelque chose que nous considérerions du tout dans le processus d'approbation. Les justifications financières pour les applications auront été élaborées, les approbations de logiciels se feront toutes sous l'angle technique et de la capacité de support. Les logiciels libres et open source ont généralement plus de mal à passer à travers notre processus qu'une application commerciale propriétaire. Souvent, cela est simplement dû au manque de responsabilité. À qui vous adressez-vous lorsqu'il y a des problèmes avec l'application et que vous avez besoin d'assistance, quel est leur SLA? À qui demandez-vous quand vous avez besoin de savoir si l'application fonctionnera avec une nouvelle version d'AutreApp vX, vous donnent-ils vraiment une réponse réelle vers laquelle les gens travaillent vraiment, ou est-ce un vague "
Les mises à niveau logicielles doivent suivre le même processus que les logiciels totalement nouveaux. Le seul avantage qu'ils ont est que nous connaîtrons déjà les réponses à certaines des questions car nous avons déjà pris en charge le logiciel (cela peut ne pas être positif pour le logiciel, les équipes de support ont opposé un veto aux mises à niveau en fonction de l'expérience avec l'entreprise).
L'une ou l'autre de ces méthodes de déploiement peut être bonne, à condition qu'elles soient correctement conditionnées. Sinon, il est fort probable que nous supprimions votre programme d'installation et que nous reconditionnions le logiciel pour le déploiement nous-mêmes.
C'est certainement plus problématique. La gestion des versions dans la plupart des frameworks et la compatibilité ascendante / descendante est atroce. Avec Java en particulier, de nombreuses applications (et sites Web) nécessitent une version majeure et mineure particulière de Java installée et ne fonctionneront avec rien d'autre. Si vous avez besoin de mettre trois applications différentes sur une machine qui ont toutes besoin de différentes versions de Java, et qu'elles ne sont pas satisfaites des méthodes standard de masquer une version Java comme une autre, alors il y aura des problèmes. .Net a ses propres problèmes de versionnage, mais vous laissera volontiers installer toutes les versions majeures du framework en même temps, ce qui contourne la plupart d'entre elles.
Jamais. Il y a beaucoup trop de problèmes de version et d'interopérabilité pour permettre à une application de se mettre à jour sans aucun avertissement. Les mises à niveau de l'application nécessitent des tests et une planification. De plus, les utilisateurs avec des droits d'utilisateur normaux ne peuvent pas appliquer les mises à jour de toute façon. Si vous utilisez une méthode de déploiement qui permet d'appliquer des correctifs (par exemple, utilisez des MSI avec des correctifs MSP), cela peut rendre les choses comme les correctifs de sécurité pour les applications beaucoup moins difficiles, et nous pouvons gérer nous-mêmes la mise à jour automatique à l'aide de nos outils de déploiement (WSUS et SMS ). De plus, notre équipe de sécurité se méfie de toute application qui "revient à la base", elle aime savoir exactement quelles informations elle envoie et pourquoi elle doit envoyer quoi que ce soit à un serveur inconnu sur Internet.
Certaines applications simples et les mises à niveau de version peuvent être décidées dans la mesure où il faut 6 personnes pour cliquer sur un bouton de vote "Approuver" dans Outlook. Des réunions plus complexes ou controversées peuvent attendre notre réunion de groupe toutes les deux semaines. Certaines applications peuvent faire l'objet de discussions lors de plusieurs de ces réunions, car les équipes répondent aux questions sur une application et effectuent des recherches / tests.
Tout dépend de la façon dont l'application va être utilisée et du nombre de personnes. Le plus important est que votre licence soit clairement définie. Nous devons envoyer nos employés suivre des cours (quoique gratuits) pour comprendre les licences Microsoft. On ne va pas se donner la peine de faire ça pour un ISV.
Tenez compte de nos besoins d'installation automatisée et silencieuse en matière de licence. Si vos licences doivent être activées, nous ne voulons pas avoir à vous appeler / vous envoyer un e-mail chaque fois que nous réinstallons une application sur un PC. Si chaque copie de l'application nécessite une clé de licence distincte et différente, nous ne pouvons pas le déployer automatiquement, alors que si nous pouvons acheter une clé en vrac (2, 10, 50, 500, etc.) qui peut être enregistrée dans l'installation silencieuse, alors nous sommes heureux. C'est encore mieux si nous pouvons vous recontacter un an plus tard et négocier pour étendre notre nombre de licences sans avoir à changer la clé saisie dans le logiciel.
Nous examinerons également des éléments qui ne sont pas strictement liés à l'état actuel de votre application. Gardant à l'esprit que si votre application fait partie du flux de travail standard pour l'un de nos domaines, elle pourrait être utilisée pendant 10 ans ou plus, alors à quoi ressemble la feuille de route de votre produit? Si vous ne prenez pas encore en charge la toute nouvelle version de Windows ou en cours de développement, avez-vous un plan pour quand vous le ferez? Vous semble-t-il que vous vous en tenez à ces feuilles de route? Semble-t-il que vous envisagez de modifier radicalement votre application, que ce soit son fonctionnement ou les technologies / cadres qu'elle utilise? Votre application se connecte-t-elle à d'autres applications, par exemple MS Office ou IE, si oui, dans quelle mesure est-elle tolérante des versions plus anciennes ou plus récentes de celles-ci?
la source
Nous sommes une toute petite organisation, mais nous sommes passés à des ordinateurs de bureau standard et à des logiciels approuvés pour réduire nos tracas administratifs.
Tout ce qui peut effectuer une installation "silencieuse". Les MSI fonctionnent généralement bien ici, mais de nombreux logiciels d'installation conviennent également. Si nous devons le configurer d'une manière ou d'une autre, il est bon de pouvoir également l'écrire, soit par fichiers xcopy, soit par fusion de registre.
Cela peut être problématique en raison des exigences de version différentes. Si vous avez besoin de .NET 3.5 et que nous utilisons 3.0, nous devons gérer cette mise à niveau et nous assurer qu'elle ne casse rien d'autre.
Non. Trop de risques que la nouvelle version cause des problèmes. De plus, les utilisateurs n'ont pas de droits d'administrateur, donc les mises à jour ne fonctionnent généralement pas de toute façon.
S'il y a un besoin commercial urgent, le plus rapidement possible - aussi peu que quelques heures. Pour les logiciels plus maladroits, peut-être une semaine ou plus.
Le moins cher, mieux c'est! Nous pouvons traiter les options les plus raisonnables, mais cela devient difficile si le logiciel effectue une sorte de vérification automatisée ou nécessite une activation. Ceux-ci n'ont pas tendance à bien gérer les PC morts, les échecs d'activation, etc., et font généralement du travail supplémentaire pour nous.
Deux choses me viennent à l'esprit:
Et bien sûr, vous devez faire en sorte que les logiciels valent la peine d'être utilisés - si l'utilisateur les aime vraiment, ils vont crier plus fort pour les faire approuver!
la source
La première chose que je regarde généralement est - avez-vous les bonnes bases? Si vous ne pouvez pas faire cela, je serai incroyablement réticent à aller plus loin. Je veux donc voir un programme d'installation MSI avec un outil de personnalisation standard pour me permettre de construire une transformation. Je ne veux voir aucune exigence de droits d'administrateur pour installer ou utiliser le logiciel. Je ne veux voir aucune exigence de reconfiguration des PC. Je ne veux pas voir les données par utilisateur écrites sur des emplacements par ordinateur. Je ne veux pas voir les visites manuelles sur les postes de travail, je veux voir la bonne gestion à distance et la configuration disponible via les GPO. En d'autres termes, comprenez-vous les exigences d'un déploiement d'entreprise géré?
Si le logiciel nécessite tout type de mises à jour, il vaut mieux s'apparenter à un fichier de définition AV ou similaire, il est préférable de maintenir votre propre serveur de mises à jour central si vous le souhaitez, et il vaut mieux qu'il soit entièrement et évidemment configurable de manière centrale. Cela ne me dérange pas les logiciels fournis avec les mises à jour du programme tant que je peux les désactiver.
Je ne veux pas voir de communication Internet à partir du logiciel en dehors de ce qui est absolument nécessaire pour qu'il fonctionne. Et il vaut mieux que tout soit documenté. En laissant votre logiciel sur mon réseau, je vous fais confiance pour ne pas gâcher ni être mauvais, alors je m'attends à ce que vous ne trahissiez pas cette confiance. Si vous le faites, je serai très déçu. N'oubliez pas - vous êtes un invité dans ma maison, alors traitez ma maison avec respect.
PAS DE JAVA . D'après mon expérience, Java a causé des ravages absolus en matière de déploiement, à chaque fois, principalement en se trompant. Je suis heureux d'accepter .NET car il semble au moins être conçu de manière plus sensée du point de vue de la gestion centrale (plus une application .NET a de meilleures chances d'obtenir les bonnes bases en raison des contraintes du cadre).
Pour obtenir une licence, la première chose que je vais rechercher est une version d'essai gratuite que je peux télécharger sans avoir à m'inscrire. Si je ne vois pas cela, je soupçonnerai probablement que vous avez quelque chose à cacher. Je suis d'accord avec une durée limitée, mais je n'aime pas les fonctionnalités réduites; après tout, c'est à ce stade que je décide si votre logiciel sera un invité acceptable dans ma maison, donc je veux pouvoir tout voir.
Je veux une clé de licence unique pour l'ensemble de mon site. Le fait de devoir saisir une clé de licence distincte sur chaque PC enfreint la règle "doit avoir une administration / gestion centrale". Évaluez-vous également de manière raisonnable, de sorte que si je n'ai besoin d'installer votre logiciel que sur 200 de mes PC, je ne paie pas le même prix que si je devais l'installer sur 1500.
Enfin, l'assistance et la maintenance continues sont importantes. Après tout, le fait d’installer le logiciel sans douleur n’est qu’une petite chose, mais la façon dont il se comporte au fil du temps dans le cadre d’une utilisation quotidienne est extrêmement critique. Si j'ai besoin de vous contacter pour résoudre un problème, je ne m'attends à aucun obstacle et je ne m'attends pas à ce que vous commenciez à pousser le blâme ailleurs sans au moins une enquête pour établir les faits. Je n'apprécie pas non plus toute tentative évidente de m'arnaquer dans un contrat de maintenance.
la source
La réponse de GAThrawn couvre la plupart de ce que j'allais dire. Je veux développer un peu l'aspect licence des choses.
Les applications qui doivent téléphoner au domicile du navire-mère pour la vérification des licences sont généralement refusées. Si vous êtes vraiment protecteur de votre logiciel, fournissez un serveur de licences que nous pouvons héberger nous-mêmes. Cela peut être une solution tierce comme FLEXlm ou quelque chose que vous développez en interne. FLEXlm est de loin le plus courant dans notre environnement.
Les options de licence d'utilisation simultanée sont toujours un gros plus.
Si vous nous faites héberger un serveur de licences, assurez-vous que le port tcp / udp sur lequel il communique est configurable. N'ASSUMEZ PAS que votre serveur de licences est le seul à fonctionner sur la box.
Toutes les interactions client / serveur doivent être effectuées sans aucune interaction avec l'utilisateur final.
Un fichier texte vivant sur un partage réseau qui nécessite que les utilisateurs finaux aient un accès en écriture N'EST PAS une solution de licence acceptable. Les utilisateurs n'ont pas et n'auront jamais accès en écriture à nos serveurs de licences ou d'applications. Nous n'allons pas faire d'exception pour vous. Je me fiche que vous pensiez que nous pouvons le garder enfermé avec des quotas et autres. Cela ne vaut pas la peine et votre logiciel n'est tout simplement pas si important.
la source
Je vais d'abord répondre à la question 5, car c'est la chose la plus importante pour moi.
La première chose à faire est de réussir le test du logo Windows. Le programme "Conçu pour Windows" (ou ce qu'ils appellent de nos jours) teste un certain nombre de fonctions de programme et d'interactions système qui, si elles sont écrites selon les règles, réduisent le travail pour moi et assurent un niveau de stabilité et de convivialité pour les utilisateurs.
Voici les réponses aux autres questions dans l'ordre:
Utilisez toujours un programme d'installation MSI dans un seul fichier si possible. Cela me permet de déployer manuellement, avec la stratégie de groupe ou avec à peu près n'importe quel outil de déploiement logiciel que je souhaite. Windows Vista (et Server 2008) inclut Microsoft .NET Framework 3.0 (et 2.0) en tant que composant de système d'exploitation. Si vous utilisez .NET, faites de la version 2.0 ou 3.0 votre exigence, et vous me faciliterez la vie. Si vous avez une autre exigence de structure, telle que .NET 3.5 ou Java Runtime Environment, suivez les instructions du fabricant pour l'installation à la lettre.
Non. Dans un environnement limité, les utilisateurs ne peuvent pas approuver les mises à jour et je ne souhaite presque jamais que les mises à jour de programme autres que les mises à jour de sécurité du système d'exploitation soient téléchargées automatiquement. Désactivez les mises à jour automatiques par défaut dans les modes d'installation d'interface utilisateur silencieux ou de base, de sorte que si je déploie via la stratégie de groupe, je n'ai pas à suivre ensuite les scripts de modification du registre ou les visites de poste de travail pour désactiver votre programme de mise à jour. Dans une installation manuelle et interactive, il est correct de demander cela.
Je n'ai pas une bonne réponse pour combien de temps cela prend. Lors de mon dernier emploi, cela variait considérablement dans la gamme de immédiatement à des années.
La licence doit être simple et familière. Plus votre licence de produit est similaire à quelque chose que je connais déjà, moins je dois en savoir plus et plus vite je peux acheter et déployer votre produit. Selon le type de programme, j'ai tendance à préférer les licences par machine ou par utilisateur; ceux-ci sont faciles à suivre en les affectant à des utilisateurs spécifiques. Pour mon travail précédent, notre entreprise était trop petite pour que des licences de site généralement très coûteuses soient abordables.
la source
La fonction de l'informatique est de déployer et de maintenir la technologie pour soutenir le cœur de métier.
Pour vous, l'ISV, cela signifie:
La licence dépend de ce que vous faites. En tant qu'informatique. Lorsque vous sélectionnez une solution logicielle pour l'approvisionnement, le modèle de licence doit faire partie de ce processus. Nous incluons l'administration des licences dans nos achats, donc si vous êtes une entreprise comme Symantec qui veut nous nickeler et nous minimiser avec 6 mesures de licence différentes, nos coûts de conformité compteront contre vous. Si vous êtes une entreprise comme Microsoft et que votre processus de licence scandaleux est horrible, mais je n'ai pas le choix ... alors cela fait simplement partie du coût de faire des affaires.
la source