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 Préambule Hiver 2002 Petko Valtchev.

Présentations similaires


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

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

2 © Petko ValtchevUniversité de Montréal Janvier Intro Le Prof Petko Valtchev Professeur Adjoint au DIRO l bureau: AA-2373 l téléphone: (514) l courriel: l disponibilité: l Lundi de 14:00 à 16:00, bur Pavillon André-Aisenstadt, l ou sur rendez-vous.

3 © Petko ValtchevUniversité de Montréal Janvier Intro Formule pédagogique Cours magistraux (Salle 1360, A.A.) l Lundi l l 08: :30 l Mercredi l (sauf !) l 08: :30 Séances de démonstration (Salles Z-220 Z-230 Z-330, Pav. Pr.) l Vendredi l 10: :30

4 © Petko ValtchevUniversité de Montréal Janvier Intro Good/Bad News? Pas de démo la première semaine

5 © Petko ValtchevUniversité de Montréal Janvier Intro Démonstrateurs Idrissa Koncobo l bureau: Labo Gélo l téléphone: (514) # 3244 l courriel: l disponibilité: à déterminer avec lui Amyne M. Rouane Hacène l bureau: Labo Gélo l téléphone: (514) # 3244 l courriel: l disponibilité: à déterminer avec lui

6 © Petko ValtchevUniversité de Montréal Janvier Intro Contenu du cours Thèmes prévus: l Le logiciel, notions de base et rôle l Processus de production et cycle de vie l Étapes essentielles du cycle de vie (I): l Ingénierie des besoin et spécification (Analyse) l Conception l Génie logiciel orienté-objet et UML l Activités de vérification l Outils et environnements de génie logiciel

7 © Petko ValtchevUniversité de Montréal Janvier Intro Références l R.S. Pressman, Software Engineering A Practitioner's Approach, 5ème édition, McGraw Hill, l R. Pooley, P. Stevens, Using UML. Software Engineering with Objects and Components, Addison, Wesley, l G. Booch, J. Rumbaugh, and I. Jacobson, The Unified Modeling Language User Guide, Addison-Wesley, l E.J, Braude, Software Engineering: An Object-Oriented Perspective, Wiley, l S.R. Schach, Object-Oriented and Classical Software Engineering, 5ème édition, McGraw Hill, 2002.

8 © Petko ValtchevUniversité de Montréal Janvier Intro URL utiles l La page du DIRO l l La page de léquipe GELO l l La page daccueil du prof l l Le site Web du cours l

9 © Petko ValtchevUniversité de Montréal Janvier Intro Lévaluation Travaux pratiques440% Examen interne130% Examen final130% Total100% l Seuil aux examens de 40% l TP : soumissions électroniques – OK l Seuls les documents PostScript/PDF admis l Faire attention aux attachements

10 © Petko ValtchevUniversité de Montréal Janvier Intro Travail perso no 0 (Facile!) Menvoyer un courriel qui spécifie: l votre formation préalable l y compris vos compétences en OOP et OOA / OOD l vos motivation pour suivre le IFT2251 (hors obligation!) l vos attentes à légard du cours et du prof Extra miles : l Que pensez-vous de mes transparents?

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

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

13 © Petko ValtchevUniversité de Montréal Janvier Intro Les Questions l Quest-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 Quest-ce quon entend par qualité?

14 © Petko ValtchevUniversité de Montréal Janvier 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 dinformations (audio, graphique, etc.) Ex. système dédition de documents multimédia, contrôler lordinateur effectuant les calculs Ex. systèmes dexploitation (Linux, XP), contrôler la communication entre entités de traitement dinformations Ex. logiciels dexploitation des réseaux développer des nouveaux systèmes logiciels Ex. outils de développement (Jbuilder, Rational Rose)

15 © Petko ValtchevUniversité de Montréal Janvier Intro Une définition… Un logiciel est un ensemble dentité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 dun système plus grand qui comporte également des composantes matérielles et peut inclure dautres logiciels ainsi que des composantes humaines.

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

17 © Petko ValtchevUniversité de Montréal Janvier Intro Le grand essor du logiciel Depuis les années 80, on assiste à un formidable essor de lindustrie du logiciel et de linformatique 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 larchitecture des systèmes. Diversification des types dentrées/sorties accessibles. Et on nest pas prêt de sarrêter …

18 © Petko ValtchevUniversité de Montréal Janvier Intro Classifier de lexistant 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?

19 © Petko ValtchevUniversité de Montréal Janvier Intro Quelques grandes classes Logiciels système Logiciels temps-réel Logiciels daffaires Logiciels scientifiques et logiciels dingénierie Logiciels embarqués Logiciels pour ordinateur personnel Logiciels dintelligence artificielle Logiciels dapplications Web

20 © Petko ValtchevUniversité de Montréal Janvier Intro Les classes de près Logiciels systèmes Logiciel au service dautres 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.

21 © Petko ValtchevUniversité de Montréal Janvier 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.

22 © Petko ValtchevUniversité de Montréal Janvier Intro Les classes (3) Logiciels daffaires 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.

23 © Petko ValtchevUniversité de Montréal Janvier Intro Les classes (4) Logiciels scientifiques et logiciels dingé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.)

24 © Petko ValtchevUniversité de Montréal Janvier 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.

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

26 © Petko ValtchevUniversité de Montréal Janvier Intro Les ratés célèbres l Durant la courte histoire de linformatique, les constructeurs de logiciel ont eu à rougir plus quune fois :-( l La sonde Mariner vers Vénus sest perdue dans lespace à cause dune 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 lan 2000 (Y2K).

27 © Petko ValtchevUniversité de Montréal Janvier 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é…

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

29 © Petko ValtchevUniversité de Montréal Janvier Intro Définitions l Mais quest-ce que cest 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

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

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

32 © Petko ValtchevUniversité de Montréal Janvier 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

33 © Petko ValtchevUniversité de Montréal Janvier 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 lusage 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

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

35 © Petko ValtchevUniversité de Montréal Janvier Intro Qualité l Quest-ce que cest? (Question ouverte) l Types de facteurs: l internes (visibles par les développeurs), l externes (visibles par les utilisateurs) l Quelques critères : l Validité, Fiabilité (ou robustesse), Efficacité l Extensibilité, Réutilisabilité, Compatibilité, Portabilité l Vérifiabilité, Intégrité l Facilité d'emploi

36 © Petko ValtchevUniversité de Montréal Janvier Intro Qualité (suite) l Validité : aptitude d'un produit logiciel à remplir exactement ses fonctions, définies par le cahier des charges et les spécifications. l Extensibilité : facilité avec laquelle un logiciel se prête à une modification ou à une extension des fonctions qui lui sont demandées. l Réutilisabilité : aptitude d'un logiciel à être réutilisé, en tout ou en partie, dans de nouvelles applications. l Vérifiabilité : facilité de préparation des procédures de test. l Intégrité : aptitude d'un logiciel à protéger son code et ses données contre des accès non autorisés.

37 © Petko ValtchevUniversité de Montréal Janvier Intro Quality is free Qualité Effort


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

Présentations similaires


Annonces Google