Bonjour     visiteurs jour : 71     Total clics   :   1137044       Sites associés 

Les joies de l'informatique et de l'internet !





Coucou et merci


 
Clics 142

Génie logiciel - software engineering

Le génie logiciel (software engineering) étudie les méthodes de travail et les bonnes pratiques de développement des logiciels. Le génie logiciel s'intéresse en particulier aux procédures systématiques qui permettent d'arriver à ce que des logiciels soient malgré leur complexité faciles à exploiter et à maintenir. Les délais et les coûts de construction font également parti de ses préoccupations

activités clés du cycle de vie d'un logiciel

Selon le SWEBOK les activités clés du cycle de vie d'un logiciel sont : l'analyse fonctionnelle, l'architecture, la programmation, les tests, la validation, la maintenance et la gestion de projet.

Analyse des besoins

Cahier des charges Récolter des informations concernant les fonctions du logiciel le résultat attendu.

Conception

Spécifications détaillés Déterminer les grandes lignes des mécanismes à programmer. Identifier les outils et solutions existantes et ce qu'il y aura de spécifique à développer.

Construction

Réalisation Ecriture du code source, suivant la méthodologie choisie (ex: itératif).

Tests

Tests Vérification du fonctionnement si possible dans tous les cas de figure envisageables de façon à déceler un maximum de bugs. La validation est à réaliser par le client.

Validation et mise en production

Livraison des logiciels à l'équipe d'exploitation et mise en service de ceux-ci dans l'environnement de production.

Maintenance

Les opérations d'analyse, de programmation et de test réalisés après coup, la complexité des logiciels est telle qu'il est rarissime de tout réaliser correctement du premier coup y compris au niveau de la définition des besoins qui sont souvent revus après une première expérience. Le logiciel subit des transformations, des corrections ou des améliorations. La facilité de cette maintenance dépend de la documentation et de l'architecture logicielle mis en place et maintenue. Le problème de tenue des délia en est l’ennemi mortel.

Gestion de projets

Organiser les équipes d'ingénieurs, analyste, programmeurs, répartir les tâches, établir le planning de réalisation, suivre l'avancement des travaux. C'est une activité de management cruciale pour les projets importants.



Les outils et méthodes

La complexité des logiciel a conduit a développer de nombreux outils et méthodes.
les bibliothèques de composants
les outils de planification
des outils pour vérifier la conformité du code produit
etc.

Gestion de la Qualité

La qualité repose sur des méthodes et un management de niveau correcte

La gestion de la configuration

Contrôler les évolutions du code produit et les différentes versions du produit.

méthodes et pratiques de développement

Cascade

C'est la méthode classique initiale qui consiste à effectuer successivement les travaux d'analyse fonctionnelle, de conception, de programmation et de test.

Itératif

On développe un premier jeu restreint de fonctions du logiciel, puis une nouvelle itération servira à améliorer et compléter une version plus élaborée, et ainsi de suite de façon itérative.

Agile

Agile est en rupture avec les procédés d'ingénierie classiques. Agile veut prendre en compte les changements constants de cahier des charges et des correctifs du code des logiciels. Agile demande une collaboration étroite et une forte implication de l'utilisateur final, (chose souvent très difficile à obtenir et source de beaucoup de problèmes) il privilégie un cycle de développement en spirale avec de nombreuses et courtes itérations.

Les méthodes "Agile" présentent un grand progrès et de la souplesse pour mieux approcher de la perfection mais elle présentent aussi un danger celui de favoriser trop de changement et de ne jamais terminer ce qui est commencé. Cela s'apel "le mieux est l'ennemi du bien". Il faut savoir raison garder.


Croyances erronées

exemples:
Un logiciel peut être construit uniquement par assemblage de fonctions et de standards
Faux! Les standard et fonctions existantes sur le marché sont une aide importante, fondamebntale, mais ne sont pas suffisamment complets et adaptables pour permettre la construction complète du logiciel.

Ajouter des personnes à une équipe d'ingénieurs permet de rattraper le retard
Faux! C'est le contraire, les personnes qui arrivent doivent être formées et informées sur le logiciel en cours de construction par les autres ingénieurs, ce qui entraîne des retards supplémentaires. (loi de Brooks)

le travail est terminé une fois que le logiciel fonctionne
Faux! L'expérience montre que le gros du travail commence après la livraison du logiciel au client et cette phase s'appelle La maintenance




génie logiciel

Vos messages sont modérés.   Les visiteurs non inscrits ont leur pseudo préfixé par x_.   Merci de respecter la loi et les personnes.

Votre message -->

Classement
par date
croissante.
décroissante.
Vous
inaugurez
ce forum,
félicitations.
Pseudo     Le 29-4-2017.   Titre  

 

Total des visiteurs  :    460271   dont aujourd'hui :   71    En ligne actuellement :  1      Total des clics   1137044