Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.

Slides:



Advertisements
Présentations similaires
CRÉER UNE APPLICATION INTERNET RELIEE A UNE BASE DE DONNEES
Advertisements

Eléments de Génie Logiciel
« Les Mercredis du développement » Introduction Office « 12 » Présenté par Bernard Fedotoff Microsoft Regional Director Agilcom.
19 septembre 2006 Tendances Logicielles MDD/MDA : Génération dapplications avec IBM Rational Software Architect Jean-Pierre Schoch –
Prototype de plate-forme de Tribus Instantanées :
Le processus unifié UML est un langage de modélisation et n ’impose pas de démarche de développement Le processus unifié : méthodologie de développement.
1 Les technologies XML Cours 1 : Les Web Services et Architectures Orientées Services Fé vrier Version 1.0 -
Les démarches de développement
Les démarches de développement
Phase de préparation des itérations Produit Story 11 Release1 Story 1mStory 21 Release2 Story 2m… …
Rational Unified Process (RUP)
Les Ateliers de Génie Logiciel
Cours génie logiciel élaboré par Amami Maha
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
LES OUTILS POUR LA GOUVERNANCE DES DONNÉES LA PASSION DES DONNÉES LA PRÉCISION DES RÉSULTATS.
Page 1 Introduction à ATEasy 3.0 Page 2 Quest ce quATEasy 3.0? n Ensemble de développement très simple demploi n Conçu pour développer des bancs de test.
Démarche Analyse des OGL et des Méthodes Objectifs : Activités :
Etude des Technologies du Web services
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Sommaire Objectif de Peakup Principes de fonctionnement
METHODE AGIL Présenté par : GRIOUI Haykel MILADI Hedi CHARFI Habib
Développement à base des composants
Feature Driven Development (FDD)
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Patterns et maintenabilité dans lindustrie : un cas concret Christophe Saint-Marcel Silicomp Ingénierie.
TESTING BUSINESS PROCESSES
Présentation du mémoire
© Petko ValtchevUniversité de Montréal Janvier IFT 2251 Génie Logiciel Notions de Base Hiver 2002 Petko Valtchev.
Portée, arrimages et intervenants Évolution des méthodes
Toujours partir du besoin métier – Pas dune envie de linformatique Concevoir les services – puis concevoir leur implémentation Le vrai bénéfice est.
Patrons de conceptions de créations
Mise en oeuvre et exploitation
Présentation de CORBA et de IIOP
1 Architecture orientée service SOA Architecture orientée service SOA (Service Oriented Architecture)
UML.
Content Management System CMS. Pourquoi ? Obligation de ressaisir des contenus publiés à plusieurs endroits Pas d’outils de gestion de qualité de l’information.
Stratégie d’entreprise - Alstom Transport – Marco Férrogalini
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Elabore par BELKADHI ABIR BEN HASSEN SALMA CHEBBI MARWA
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Design Patterns en programmation par objets. Plan  Design patterns –De quoi s’agit-il? –Pourquoi faut-il les utiliser?  Design patterns essentiels 
Supports de formation au SQ Unifié
Développement logiciel en méthode agile
Hatainville Les Moitiers d’Allonne – Tel : Website : stratic.online.com La démarche projet Mars 2001.
Développement d'application rapide GEF492A Automne 2014 [HvV § 3.2.3]
Réalisé par : Mr IRZIM Hédi Mr JRAD Firas
Le processus du logiciel
Progiciel de Gestion Intégré
Vérification dans le cycle de vie GEF492A 2014 Référence: [HvV §14.2, 14.9] Capt Vincent Roberge Collège Militaire Royal du Canada Génie électrique et.
2003 (revisé 2008)SEG Chapitre 11 Chapitre 1 “The Systems Engineering Context” Le contexte du génie de systèmes.
Cycles de Vie du Logiciel LFI2 Genie Logiciel/ Gestion de Projets Septembre 2008.
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Introduction à la plateforme .NET
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Enterprise Java Beans 3.0 Cours INF Bases de Données Hiver 2005, groupe 10 Stefan MARTINESCU.
Introduction au Génie Logiciel
Gestion de projet Cycles de production
Présentation AICHA REVEL INGENIEUR D’ÉTUDE STERIA DEPARTEMENT TRD
MOCK.
Quels enjeux Les Nouvelles Technologies sont utilisées sur tous types de projets Applications B2E, B2B, B2C Produits Client-Serveur.
L’enseignement de spécialité SLAM
Les démarches de développement
21/02/2003DEA DISIC 1 Grid Computing Programming the grid: Distributed Software Components, P2P and Grid Web Services for Scientific Applications Tarak.
© Petko ValtchevUniversité de Montréal Janvier IFT 2251 Génie Logiciel Le Processus Hiver 2002 Petko Valtchev.
Présentation de Qt Iris 1
Conférence 2TUP Stéphane Barthon 03/12/
Planning Process « t’as un plan pour ce soir ? » Tony Carnal Altran.
Transcription de la présentation:

Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev - Génie logiciel1 Développement de logiciel

B.Shishedjiev - Génie logiciel2 Styles de développement Développement rapide –DR incrémental –DR par prototypes –Développement agile Développement extrémal Développement avec réutilisation –Composants

B.Shishedjiev - Génie logiciel3 Développement rapide Besoins –L’environnement n’est pas stabile et les sociétés doivent répondre aux nouvelles circumstances. –Ça exige un développement rapide. –Les clients peuvent accepter une qualité médiocre si la foncionalité de base est assurée vite. Particularités –Besoins instables –Processus itérative

B.Shishedjiev - Génie logiciel4 Développement itératif

B.Shishedjiev - Génie logiciel5 Développement rapide Avantages –Rapide –Participation des clients Désavantages –Gestion difficile –Contracte flou – il n’y a pas une spécification claire –Validation –Maintenance – les changement continus gâtent le système

B.Shishedjiev - Génie logiciel6 Prototypes Particularités –Utilisés quand on veut identifier les besoins. –Quand le besoin est spécifié le prototype est jeté et détruit Comparaison avec la méthode incrémentale –Incrémentale - on commence du besoin le plus claire –Prototype - on commence du besoin le plus flou Incremental development Throw-away prototyping Delivered system Executable prototype + System specification Outline requirements

B.Shishedjiev - Génie logiciel7 Les méthodes agiles

B.Shishedjiev - Génie logiciel8 Les méthodes agiles Principes –Participation des clients –Produit incrémental –Les gens sont importants, pas le processus – un peu discutable –Attends les changements –Maintiens simplicité

B.Shishedjiev - Génie logiciel9 Programmation extrémal C’est une approche extrémale –On paut faire des nouvelles versions plusieurs fois par jour –Les améliorations sont livrées aux clients chaque 2 semaines. –Chaque versions doit être testée. Elle n’est acceptée sauf tous les tests ont passé.

B.Shishedjiev - Génie logiciel10 Programmation extrémal Le cycle de la version

B.Shishedjiev - Génie logiciel11 Programmation extrémal Pratiques –Petits incréments –Petits version délivrées –Conception simple –Développement basé aux tests automatisés –Amélioration continue du code –Programmation en paires –Possession collective du code –Soutenable rythme de travail –Présence permanente du client

B.Shishedjiev - Génie logiciel12 Programmation extrémal Besoins –Histoires des utilisateurs –Scénarios –Tâches Changements –Les changements sont faits directement quand ils sont nécessaires

B.Shishedjiev - Génie logiciel13 Programmation extrémal Tests –Les tests d’abord Les tests sont écrits avant le code Ils sont écrits comme des programmes afin d’être exécutés automatiquement Tous les tests sont exécutés – les vieux et les nouveaux – quand on ajoute une nouvelle fonctionnalité. –Les tests sont dérivés depuis les scénarios –Les utilisateurs participent –On utilise des programmes de test automatiques

B.Shishedjiev - Génie logiciel14 Programmation extrémal Programmation en pairs –Un code est développer par paires de programmeurs ensemble –Le code est possédé par tout l’équipe –Ça propage le savoir dans l’équipe

B.Shishedjiev - Génie logiciel15 Développement appliqué rapide Plus traditionnelles Application d’accès aux bases de données Outils –Langage de programmation de BD –Générateur d’interface –Liaisons vers application de Bureautique –Générateurs de rapports

B.Shishedjiev - Génie logiciel16 Développement appliqué rapide Environnement de développement rapide DB programming language Interface generator Office systems Report generator Database management system Rapid application development environment

B.Shishedjiev - Génie logiciel17 Développement appliqué rapide Génération d’interface –Générer des formulaires complexes par des techniques visuelles –Assurer l’enchaînement des formulaires et la validation de la saisie Programmation visuelle –Problèmes Mauvaise structure Difficile de travailler en équipes Maintenance compliquée

B.Shishedjiev - Génie logiciel18 Réutilisation Applications Composants Objets et fonctions

B.Shishedjiev - Génie logiciel19 Réutilisation Avantages –Sécurité améliorée –Risque de processus diminué –Utilisation effective des spécialistes –Conformité aux standard –Développement plus rapide –Moins cher Problèmes –Maintenance plus difficile – quand le code source n’est pas disponible –Manque des outils de support –Jalousie –Création et maintenance d’une bibliothèque de composants –Comprendre et assembler les composants

B.Shishedjiev - Génie logiciel20 Différents types de réutilisation Design patterns Component-based development Component frameworks Service-oriented systems COTS integration Application product lines Legacy system wrapping Program libraries Program generators Aspect-oriented software development Configurable vertical applications

B.Shishedjiev - Génie logiciel21 Approches Modèles de conception (Design patterns) Basé aux Composants Structure appliquée (Application framework) Enveloppe d’un système hérédité Système orienté service Intégration COTS (Commercial off the Shelf System) Ligne de production Application configurable verticalement Bibliothèques de programmes Générateur de programmes Aspect orienté

B.Shishedjiev - Génie logiciel22 Design paterns Il présente la description du problème et sa solution Eléments –Nom –Description du problème –Description de la solution – modèle qui peut être implémenté de façons différentes –Conséquences – les résultats et les compromis qu’on doit faire en utilisant le modèle

B.Shishedjiev - Génie logiciel23 L’observateur Nom –Observer. Description –Sépare la présentation d’état d’objet de l’objet lui-même Description du problème –On l’utilise quand on a besoin de nombreux présentations. Description de la solution –Vois le diagramme UML. Conséquences –Optimiser pour améliorer les présentation à l’écran ne sont pas utiles

B.Shishedjiev - Génie logiciel24 Nombreux écrans A: 40 B: 25 C: 15 D: 20 Observer 1 A B C D Observer 2 Subject ABCD

B.Shishedjiev - Génie logiciel25 Le modèle observateur Subject Observer Attach (Observer) Detach (Observer) Notify () Update () ConcreteSubject GetState () subjectState ConcreteObserver Update () observerState observerState = subject -> GetState () return subjectState for all o in observers o -> Update ()

B.Shishedjiev - Génie logiciel26 Réutilisation de modèle Le plus abstrait et le plus générale Types –Générateurs du programmes –Modèles de conception

B.Shishedjiev - Génie logiciel27 Générateurs de programmes Types –Pour application de traitements de données –Pour analyseur lexique et analyseur syntactique des processeurs de langages – yacc, JavaCC –Les générateurs de code dans les outils CASE

B.Shishedjiev - Génie logiciel28 Générateurs de programmes

B.Shishedjiev - Génie logiciel29 Développement aspect orienté On utilise des tisserands d’aspect Generated code Aspect 1Aspect 2 Aspect Weaver Aspect 1 Aspect 2 Input source code join point 1 join point 2

B.Shishedjiev - Génie logiciel30 Structures appliquées (Frameworks ) Ce sont des collections de classes abstraites et concrètes et les interfaces entre eux. Types –Infrastructure système (communication, compilateurs, UI) –Intégration – communication entre composants et échange de données –Application d’entreprise Extension Problèmes –Très complexes

B.Shishedjiev - Génie logiciel31 Model-view controller Modèle de GUI Nombreux présentation d’un objet et interraction avec les présentations individuellement

B.Shishedjiev - Génie logiciel32 Réutilisation des systèmes d’application Types –COTS –Ligne de production

B.Shishedjiev - Génie logiciel33 COTS Système d’acquisition Client Web browser system Server E-commerce system Ordering and invoicing system system Adaptor

B.Shishedjiev - Génie logiciel34 COTS Problèmes d’intégration –Manque de contrôle sur l’effectivité et fonctionnalité –Manque de contrôle d’évolution –Manque de support –Difficultés avec l’interopérabilité

B.Shishedjiev - Génie logiciel35 Ligne de production Ce sont application d’une fonctionnalité générique qui peut être configurée pour les besoins du client Adaptation –Configuration du système ou de composants –Ajouter des nouveaux composants –Sélectionner d’une bibliothèque de composants –Modifier des composants

B.Shishedjiev - Génie logiciel36 ERP Enterprise Ressource Planning System Configuration database System database Generic ERP system Configuration planning tool

B.Shishedjiev - Génie logiciel37 Architecture Architecture de Ressource management System User interface Resource management Resource policy control Resource allocation User authentication Query management Resource database Resource delivery Transaction management

Développement d’un produit B.Shishedjiev - Génie logiciel38