|
Le développement de logiciels, en savoir plus Le développement de logiciel consiste à étudier, concevoir, construire, transformer, mettre au point, maintenir et améliorer des logiciels. Ce travail est effectué par les employés d'éditeurs de logiciels, de sociétés de services et d'ingénierie informatique (SSII), des travailleurs indépendants (freelance) et des membres de la communauté du logiciel libre... Un logiciel est créé petit à petit par une équipe d'ingénieurs conformément à un cahier des charges établi par un client demandeur ou une équipe interne. Le logiciel est décomposé en différents modules et un chef de projet, ou architecte, se charge de la cohérence de l'ensemble. Différentes activités permettent de prendre connaissance des attentes de l'usager, créer un modèle théorique du logiciel, qui servira de plan de construction, puis construire le logiciel, contrôler son bon fonctionnement et son adéquation au besoin. La planification et la répartition des travaux permet d'anticiper le délai et le coût de fabrication. Le logiciel est accompagné d'une procédure d'installation, d'une procédure de vérification de bonne installation, de documentation (parfois créé automatiquement à partir de commentaires placés à cet effet dans le code source) et d'une équipe d'assistance au déploiement et à la maintenance, désignée sous le nom de support. Outre les travaux d'analyse, de conception, de construction et de tests, une procédure de recette - simulacre d'acquisition, permettra de déterminer si le logiciel peut être considéré comme utilisable. Les activités clé Analyse Le cahier des charges détaillé permet au chef de projet de calculer le détail du coût de fabrication du logiciel, lui-même fonction du temps estimé nécessaire. Conception Construction Les différents modules du logiciels sont programmés un par un, puis rassemblés, et de nouveaux tests sont effectués en vue de vérifier le fonctionnement de l'ensemble (test d'intégration). Le produit de cette phase est le livrable, c'est-à-dire l'ensemble des fichiers mis à disposition de l'utilisateur final : non seulement les programmes, mais le mode d'emploi et les fichiers de configuration. Le livrable peut être une application informatique complète, un composant, ou un patch. Recette Le génie logiciel Les outils Le code source est rédigé à l'aide d'un éditeur de texte. Celui-ci est souvent muni de coloration syntaxique, une fonctionnalité qui met en couleur les éléments du lexique du langage de programmation. Le débogueur (anglais debugger) permet de contrôler le déroulement de l'exécution du logiciel, et aide à trouver les sources de bugs constatés. Un environnement de développement intégré regroupe généralement un éditeur, un compilateur, un moteur de production et un débogueur. Les trois logiciels sont orientés autour d'une même interface et utilisés comme une application unique. Il est souvent couplé avec un système de gestion de versions. Un système de gestion de versions permet d'enregistrer des fichiers en conservant l'historique de toutes les modifications effectuées, y compris par plusieurs personnes. Il permet de retrouver le code source dans l'état où il était à une date donnée. Un logiciel de suivi de problèmes permet de recenser les problèmes techniques rencontrés avec un logiciel, l'évolution des corrections de bugs, et les possibilités de contournement (anglais workaround). Il assure qu'aucune doléance de fonctionnement ne sera oubliée. Le cahier des charges se rédige avec un traitement de texte standard, les diagrammes de conception avec tout outil de dessin assisté par ordinateur. Les outils de dessins orientés sur les diagrammes de logiciel utilisent souvent la notation UML (Unified Modeling Language). Un atelier de génie logiciel permet la construction, la conception et la planification des travaux. Il comporte tous les outils présents dans un environnement de développement intégré, plus des outils de conception, de planification, de test, et des outils créant automatiquement du code source et de la documentation. Une forge est un portail Web sur une suite d'outils de développement collaboratif. Il comporte tous les outils présents dans un environnement de développement intégré, y compris un système de gestion de versions et un logiciel de suivi de problèmes, ainsi que des outils de liste de discussions et de rédaction collaborative de documents (wiki). Texte sous licence CC BY-SA 3.0. Contributeurs, ici. Photo : ra2studio - Fotolia.com. Des spécialistes de développement de logiciels : 91140 - PRESENCE MICRO SYSTEME (PMS) http://www.logiciel-metier-paris.com Voir toutes les newsletters : www.haoui.com Pour les professionnels : HaOui.fr |