290 likes | 387 Views
La gestion du cycle de vie des applications (GCVA) et les trucs qui coûtent cher. Misez sur Visual Studio 2010 afin d’optimiser le développement logiciel. Les enjeux : La qualité. Pouvez-vous vous permettre de composer avec des problèmes de logiciels ?
E N D
La gestion du cycle de vie des applications (GCVA) et les trucs qui coûtent cher Misez sur Visual Studio 2010 afin d’optimiser le développement logiciel
Les enjeux : La qualité • Pouvez-vous vous permettre de composer avec des problèmes de logiciels ? • Les erreurs affectant la qualité des logiciels coûtent chaque année plus de 59 milliards de dollars aux entreprises américaines • La majeure partie de ces coûts sont absorbés par les utilisateurs finaux de ces logiciels
Ce que coûtent les validations logicielles insuffisantes (en milliards) Pour les utilisateurs de logiciels Pour les développeurs de logiciels 0 $ 10 $ 20 $ 30 $ 40 $ Les enjeux : La qualité Comment une entreprise peut-elle absorber de tels coûts ? Source : NIST, The Economic Impacts of Inadequate Infrastructure for Software Testing 2002
La qualité, lorsqu’on la considère seulement après coup. • La validation est amorcée très tard dans le cycle de développement • La qualité est difficile à imposer • La multiplicité des environnements de développement intégré nuit à la productivité • Aucune intégration/aucune collaboration • Silos d’outils • Cycles de validation inefficaces • Modifications au code entre les versions • Cycles trop longs • Processus répétitif
Effectuez le traitement des éléments qui coûtent cher ! • Un développement logiciel approprié sous-entend tout ce qui suit : • Mettre le doigt sur les bogues, les trier et les résoudre • Développer en tenant en compte de l’extensibilité • Gérer le déploiement • Ce sont tous des exercices coûteux... • Qui requièrent habituellement une expertise technique • Qui exigent d’ordinaire des outils spécialisés • Qui nécessitent normalement beaucoup de temps et d’interaction humaine
BOGUES parce que l’erreur est humaine
Triage des bogues • Pourquoi le bogue s’est-il inséré ? Il existe beaucoup d’endroits où ces petites bêtes peuvent s’infiltrer. • Que peut-on faire pour réduire le nombre de bogues ? • Améliorer les exigences • Spécificité – Développons-nous le logiciel approprié ? • Nos cas de validation sont-ils adaptés aux exigences pertinentes ? • Validation unitaire appropriée • Vérifier la couverture du code • Ne pas présumer que le code fonctionnera parce qu’il est simple • Analyse du code • Miser sur les « experts » que recèlent les outils • Repérer les chemins les plus rapides (hotpaths) afin d’accélérer le traitement en mémoire et la performance
Résolution de bogues • Cependant, peu importe le soin que vous y mettez, des bogues finissent toujours par se montrer le bout du nez ! • Il est difficile d’en repérer la source • Pas de scénarios reproductifs – « Ça ne se produit pas sur ma machine » • Problèmes de performance • Ça fonctionne, mais c’est vraiment lent • Lorsqu’un bogue surgit, à quel degré arrivez-vous à vous montrer rapide et efficace afin de l’enrayer ?
Des approches permettant de détecter très tôt les bogues • La détection et la résolution de bogues sous-entend l’emploi de plusieurs approches à intégrer dans votre routine ! • Interaction entre développeur et responsable du contrôle de la qualité • Fonction IntelliTrace • Profilage (avec et sans essais de charge) • Mise à l’épreuve unitaire • Essais de charge • Analyse du code • Automatisation des essais dans des versions régulières • Emploi de l’outil Lab Manager pour effectuer la validation dans des environnements « réels »
La détection et la résolution de bogues au moyen de la fonction Intellitrace
Extensibilité Comment établissez-vous combien d’utilisateurs pourront utiliser simultanément l’application ? Que se produira-t-il si elle ne les prend pas tous en charge ?
Développer en tenant en compte de l’extensibilité • Les systèmes utilisés par une seule personne diffèrent grandement de ceux employés par plusieurs utilisateurs : • Collisions d’accès aux ressources, verrouillage, conversion de format pour l’acheminement et le stockage • Traitement des chemins les plus utilisés • Il est depuis toujours difficile et coûteux de concevoir une application extensible : • Outils spécialisés, connaissances techniques • Beaucoup de coûts humains : mise en place d’environnements de validation, analyse des résultats
Outils d’enrichissement de la performance – Démo • Recourez à l’automatisation pour effectuer régulièrement les exercices suivants : • Validations Web, unitaires et d’unités de bases de données • Essais de charge • Analyse du code • Vous en tirerez des enseignements importants tôt dans le processus
Déploiement Les utilisateurs n’emploient pas de logiciels imaginaires !
Les défis associés au déploiement • Les utilisateurs (indice : les gens qui paient) désirent voir leur achat à l’œuvre • Plus le projet est important (autre indice : plus il y a de $ en jeu), plus ils souhaiteront le voir souvent • Ils n’aiment pas les bogues et perdent facilement confiance. Vous perdez donc bien des heures de sommeil • Vous obtiendrez une qualité supérieure si vous validez dans des environnements « réels » en tout temps, mais... • La maintenance des scripts de déploiement est un vrai fardeau • L’attribution matérielle gruge beaucoup de temps • L’association des versions de travail à l’environnement et le retour à l’environnement de programmation prend aussi un temps immense
Démo des outils de déploiement • Pour le déploiement, la virtualisation est votre amie ! • Elle vous procure une meilleure perspective • Elle vous permet d’établir un barème de qualité • Elle est rassurante pour les utilisateurs • L’automatisation peut alléger considérablement le fardeau ! • Automatisation du serveur de versions • Validations automatisées • Virtualisation et outil Lab Manager
Démo Concevoir, déployer, valider
Plan d’action pour la GCVA Visitez le site commercial Visual Studio 2010 http://www.microsoft.com/vstudio... Ou trouvez les infos sur Bing ! La première étape afin d’enrichir vos connaissances quant à Visual Studio 2010 et à la GCVA, grâce aux ressources suivantes : • Un aperçu des versions de Visual Studio offertes • Des vidéos portant sur les caractéristiques et avantages de Visual Studio et de Team Foundation Server (TFS) pour les : • Développeurs • Professionnels des TI • Utilisateurs finaux et décideurs • Partenaires • Téléchargements de versions d’essai de Visual Studio 2010
Plan d’action pour la GCVA Visitez les Centres à l’intention des développeurs Visual Studio http://msdn.microsoft.com/fr-ca/teamsystem ... Ou trouvez les infos sur Bing ! Enrichissez vos pratiques de développement, grâce aux éléments suivants : • Formation : De tutoriels vidéo à des laboratoires virtuels avancés, en passant par des cours offerts par Microsoft Learning • Connaissances : Documentation, articles et webémissions • Liens communautaires : Découvrez qui parle de Visual Studio Team System sur les blogues, dans les forums et sur les sites de réseautage social • Code : Analysez le code produit par d’autres développeurs et apprenez par l’exemple
Plan d’action pour la GCVA Obtenez des conseils et accédez à des contenus de formation Les sites suivants (en anglais uniquement) représentent un excellent point de départ. Et rappelez-vous : Bing est votre ami ! • Team Development with Team System (développement en équipe au moyen de Team Sytem)http://www.codeplex.com/tfsguide • ALM Assessment (évaluation de la GCVA)http://www.microsoft.com/almassessment • Team System Rockshttp://www.teamsystemrocks.net • Upgrade Guidance (conseils de mise à niveau)http://vs2010upgradeguide.codeplex.com/ • Channel 9http://channel9.msdn.com
Plan d’action pour la GCVA Quelques lectures intéressantes En format papier ou électronique Ces maisons d’édition produisent des livres portant sur Team System : • Addison-Wesley Professionalhttp://awprofessional.com • Apresshttp://apress.com/ (@Apress on Twitter) • Manning Publicationshttp://manning.com(@ManningBooks on Twitter) • Microsoft Presshttp://mspress.microsoft.com • Sams Publishinghttp://samspublishing.com/ • Wrox Presshttp://wrox.com
Plan d’action pour la GCVA Passez à Visual Studio 2010 et MSDN http://www.microsoft.com/visualstudio/fr-ca/products/2010/default.mspx et http://www.microsoft.com/visualstudio/fr-ca/products/msdn/default.mspx ... Ou trouvez les infos sur Bing ! Visual Studio 2010 : • L’environnement de travail unifié pour le codage, la modélisation, la validation, le débogage et le déploiement • Tout est en place pour la programmation et le débogage d’applications SharePoint 2010 à partir d’un simple clic sur « New Project… » MSDN : • La totale pour les développeurs : téléchargements, documentation, logiciels et soutien, en plus de temps de calcul sur la plateforme Azure !
Plan d’action pour la GCVA Visitez le site TechDays http://techdays.ca/ • Notre mégacolloque de formation pancanadien prévu cet automne (dans 8 villes, cette année) • Des conférences bien garnies,offertes par des intervenants locaux,et un prix d’entrée abordable(surtout si vous vous inscrivez tôt !) • Des explorations approfondies des outils et technologies Microsoft, y compris des scénarios de gestion du cycle de vie des applications • L’accès aux contenus des colloques TechDays et TechEdNorthAmerica • Des concours emballants • Une excellente occasion de réseautage
Plan d’action pour la GCVA Visitez les sites associés à d’autres colloques Pour les trouver, n’oubliez pas que Bing est votre ami ! • Colloques à l’intention des développeurs Microsoft • DevTeach • PDC • MIX • Camps de codage • Colloques locaux à l’intention des développeurs organisés par des groupes d’utilisateurs et des héros de la région
Plan d’action pour la GCVA Faites connaissance avec l’équipe de promotion technique http://blogs.msdn.com/cdndevs/ et http://blogs.technet.com/canitpro/ • Une équipe hautement spécialisée de promoteurs des développeurs et des professionnels des TI qui vous appuient • Nous organisons des activités telles que les colloques EnergizeIT, TechDays et bien plus encore • Nos blogues (en anglais uniquement) : • Canadian DeveloperConnection • Canadian IT Pro Connection • Canadian IT Manager Connection • Canadian IT Architecture Connection • Nos webémissions (en anglais également) : • IgniteYourCoding / Propulsez votre codage • IgniteYourCareer / Propulsez votre carrière • IgniteYour Venture / Propulsez votre réussite commerciale • Nous sommes là pour vous !