La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

© Petko ValtchevUniversité de Montréal Janvier 2002 1 IFT 2251 Génie Logiciel Introduction Hiver 2002 Petko Valtchev.

Présentations similaires


Présentation au sujet: "© Petko ValtchevUniversité de Montréal Janvier 2002 1 IFT 2251 Génie Logiciel Introduction Hiver 2002 Petko Valtchev."— Transcription de la présentation:

1 © Petko ValtchevUniversité de Montréal Janvier 2002 1 IFT 2251 Génie Logiciel Introduction Hiver 2002 Petko Valtchev

2 © Petko ValtchevUniversité de Montréal Janvier 2002 2 Intro Sommaire l Logiciel, tentative de définition l Génie logiciel, aspects historiques l La qualité des logiciels l Le processus de production

3 © Petko ValtchevUniversité de Montréal Janvier 2002 3 Intro Les Questions l Qu’est-ce que le logiciel? l Pourquoi le génie logiciel? l Quelle portée de la discipline? l Quelles sont les activités-clés? l Qu’est-ce qu’on entend par qualité?

4 © Petko ValtchevUniversité de Montréal Janvier 2002 4 Intro Le logiciel comme produit Rôle du logiciel :  exploiter le potentiel de calcul offert par le matériel informatique  Ex. plate-formes de calcul scientifique (MathLab, Maple),  produire, manipuler et transformer tout une gamme d’informations (audio, graphique, etc.)  Ex. système d’édition de documents multimédia,  contrôler l’ordinateur effectuant les calculs  Ex. systèmes d’exploitation (Linux, XP),  contrôler la communication entre entités de traitement d’informations  Ex. logiciels d’exploitation des réseaux  développer des nouveaux systèmes logiciels  Ex. outils de développement (Jbuilder, Rational Rose)

5 © Petko ValtchevUniversité de Montréal Janvier 2002 5 Intro Une définition… Un logiciel est un ensemble d’entités qui forme une “configuration” incluant: des programmes des données des documents Un système logiciel est en général intégré au sein d’un système plus grand qui comporte également des composantes matérielles et peut inclure d’autres logiciels ainsi que des composantes humaines.

6 © Petko ValtchevUniversité de Montréal Janvier 2002 6 Intro L’essence du logiciel Par rapport aux produits traditionnels, le logiciel possède des caractéristiques particulières qui le rendent unique: N’est pas manufacturé Ne s’use pas… mais peut devenir obsolète. Trop souvent (encore) construit sur mesure, avec peu de soucis de réutilisation.

7 © Petko ValtchevUniversité de Montréal Janvier 2002 7 Intro Le grand essor du logiciel Depuis les années 80, on assiste à un formidable essor de l’industrie du logiciel et de l’informatique en général. Quels facteurs: Amélioration exceptionnelle des performances du matériel informatique. Accroissement de la mémoire et des capacités de stockage. Changements importants au niveau de l’architecture des systèmes. Diversification des types d’entrées/sorties accessibles. Et on n’est pas prêt de s’arrêter …

8 © Petko ValtchevUniversité de Montréal Janvier 2002 8 Intro Classifier de l’existant Les systèmes logicielles peuvent être classifiés selon différents critères dont : Le type des informations traitées (sémantique et structure des éléments d'information) Ex. Image, son, texte …. Dans quel format? La prévisibilité des informations et de leur traitement dans le temps Quand les données arrivent-elles? Dans quel ordre? Quand doivent-elles être traitées? L'ordonnancement des opérations est-il prévisible?

9 © Petko ValtchevUniversité de Montréal Janvier 2002 9 Intro Quelques grandes classes Logiciels système Logiciels temps-réel Logiciels d’affaires Logiciels scientifiques et logiciels d’ingénierie Logiciels embarqués Logiciels pour ordinateur personnel Logiciels d’intelligence artificielle Logiciels d’applications Web

10 © Petko ValtchevUniversité de Montréal Janvier 2002 10 Intro Les classes de près Logiciels systèmes Logiciel au service d’autres applications l Interactions avec les composants matériels informatiques l Ordonnancement des opérations concurrentes l Partage des ressources l Gestion d'interface avec périphérique externe, l etc. l Ex.: systèmes d'exploitation, pilotes de périphériques, etc.

11 © Petko ValtchevUniversité de Montréal Janvier 2002 11 Intro Les classes (2) Logiciels temps réel l Logiciel qui surveille, contrôle, analyse et traite les événements au moment où ils surviennent (i.e. temps de réaction entre 1ms et 1s). l Evénement: clic de souris, arrivée d'une donnée, levée d'un signal, etc. l Traitement: transmission de données, calcul, activation de processus, etc. l Ex.: Logiciels utilisés pour le pilotage des avions, des trains. Systèmes d'analyse de données en temps réel. Systèmes de décompression de données en temps réel. Systèmes d'échographie en temps réel, etc.

12 © Petko ValtchevUniversité de Montréal Janvier 2002 12 Intro Les classes (3) Logiciels d’affaires l Logiciel qui réalise les opérations courantes de gestion dans une entreprise (inventaire, liste des paies, gestion des comptes, historique des transactions, etc.). l Facilite les opérations d'affaires et peuvent servir d'outil d'aide à la décision (analyse des données, gestion de placements) l Gestion interactive possible grâce aux logiciels de transaction directement installés aux points de vente. l Ex.: Logiciels utilisés dans les banques, les super-marchés, les pharmacies, etc.

13 © Petko ValtchevUniversité de Montréal Janvier 2002 13 Intro Les classes (4) Logiciels scientifiques et logiciels d’ingénierie l Logiciel développé pour résoudre des problèmes de nature scientifique ou des problèmes de conception technique à partir d'algorithmes et de modèle mathématiques. l Ex.: l Logiciels de simulation (pour réseaux de Petri, systèmes de transition, etc) l Logiciels de calcul, d'analyse et de modélisation mathématique (ex. Maple, Mathematica, MathLab) l Ateliers de génie logiciel (Rational Rose, TogetherJ, etc.)

14 © Petko ValtchevUniversité de Montréal Janvier 2002 14 Intro Les classes (5) Logiciels embarqués l Logiciel "intelligent" qui est intégré à un dispositif, une machine ou un autre système (ex. : appareils ménagers, machines industrielles, avions, automobiles, missiles, montres, gicleurs, caméscopes, stimulateurs cardiaques, etc.) et qui sert à le piloter. l Ex. le clavier d'un four à micro-onde, le système de freinage d'une automobile.

15 © Petko ValtchevUniversité de Montréal Janvier 2002 15 Intro Sommaire l Logiciel, tentative de définition l Génie logiciel, aspects historiques l La qualité des logiciels l Le processus de production

16 © Petko ValtchevUniversité de Montréal Janvier 2002 16 Intro Les ratés célèbres l Durant la courte histoire de l’informatique, les constructeurs de logiciel ont eu à rougir plus qu’une fois :-( l La sonde Mariner vers Vénus s’est perdue dans l’espace à cause d’une erreur dans un programme FORTRAN. l En 1981, le premier lancement de la navette spatiale a été retardé de deux jours à cause d'un problème logiciel. l L'explosion d'Ariane 5, le 4 juin 1996, qui a coûté un demi milliard de dollars (non assuré !), est due à une faute logicielle d'une composante dont le fonctionnement n'était pas indispensable durant le vol. l Et on se souvient certainement du bug de l’an 2000 (Y2K).

17 © Petko ValtchevUniversité de Montréal Janvier 2002 17 Intro Le début… l Aspects historiques l 1968 Conference d’ OTAN, Garmisch (DE) l But: résoudre la “Software Crisis” l Le logiciel avait tendance d’être délivré: l En retard l A des coûts exorbitants l Avec des erreurs l Quant il était délivré… 

18 © Petko ValtchevUniversité de Montréal Janvier 2002 18 Intro Les pièges du logiciel l Pourquoi est-ce que les systèmes d’exploitation ne peuvent-ils être construits comme on construit les ponts? l Tendance à s’effondrer (“crash”) l Ingénierie imparfaite l Complexité l Difficultés de maintenance l Le Génie Logiciel n’est donc pas un Génie ordinaire!

19 © Petko ValtchevUniversité de Montréal Janvier 2002 19 Intro Définitions l Mais qu’est-ce que c’est alors? « Ensemble des connaissances, des procédés et des acquis scientifiques et techniques mis en application pour la conception, le développement, la vérification et la documentation de logiciels, dans le but d'en optimaliser la production, le support et la qualité. » Office de la langue française, 2000 « (1) The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, that is the application of engineering to software. (2) The study of approaches as in (1). » IEEE Standards Collection: Software Engineering

20 © Petko ValtchevUniversité de Montréal Janvier 2002 20 Intro Terminologie l Qualité l Méthodologie, paradigme, processus l Méthode, technique l Programme, système, produit l Client, développeur, usager

21 © Petko ValtchevUniversité de Montréal Janvier 2002 21 Intro Software Engineering Technologie par couches Génie Logiciel orienté-“qualité” processus (modèle) méthodes outils [Pressman 2001]

22 © Petko ValtchevUniversité de Montréal Janvier 2002 22 Intro Aspects Économiques l Portée du produit: l Types de logiciel: l système, l temps-réel, l embarqué, l etc. l Temps de production l Qualité du logiciel l Effort investi Variables dans le développement

23 © Petko ValtchevUniversité de Montréal Janvier 2002 23 Intro Les défis du GL l Minimiser les coûts de développement tout en répondant aux exigences croissantes l Réduire les temps de développement. l Assurer la qualité des logiciels produits. l Instituer l’usage des nouvelles technologies (méthodes et outils) du génie logiciel. l Assurer la maintenance du nombre croissant de logiciels (vieillissants!!)? l Conserver un rythme de production logicielle qui puisse réponde à la demande


Télécharger ppt "© Petko ValtchevUniversité de Montréal Janvier 2002 1 IFT 2251 Génie Logiciel Introduction Hiver 2002 Petko Valtchev."

Présentations similaires


Annonces Google