Documente Academic
Documente Profesional
Documente Cultură
A. Larhlimi
2 / 53
Planning de sessions
3 sances de cours 2 sances de TP 1 sance de cours 2 sances de TP 1 cours 1 sance de TP 1 sance en rserve Cours/TP planifie Notation :
Mini Projet de Conception/dveloppement Web avec Windev Conception en 2 temps : prvisionnel simplifi / recette Soutenance/dmonstration => note individuelle
A. Larhlimi
3 / 53
Analyse de systme oriente-objet et gnie logiciel: Concepts, mthodes et application. G. LEVESQUE. Chenelire/Mc Graw-Hill. Gnie Logiciel, Jacques PRINTZ Que Sais-Je N 2956. PUF. Ingnierie des Systmes dInformation : MERISE. D. NANCI, B. ESPINASSE et al. 4me ed. Vuibert. Guide to CASE adoption K.S. OAKES, D. SMITH, E. MORRIS, Tech.
Report Software Engineering Institute - Carnegie Mellon Univ.
Xtreme Programming :
http://www.extremeprogramming.org/ http://c2.com/cgi/wiki?ExtremeProgramming
A. Larhlimi
4 / 53
Guide dAutoFormation. PC Soft Edition. Site de l Association des dveloppeurs Windev. http://www.windevasso.org
A. Larhlimi
5 / 53
A. Larhlimi
6 / 53
Introduction
1. (Rappels) sur le Gnie Logiciel 2. Quest ce quun Atelier de Gnie Logiciel 3. Prsentation gnrale de Windev
A. Larhlimi
7 / 53
Contexte
Gnie Logiciel propose :
Mthodes (gestion de projet, conception, dveloppement, ) Formalismes (UML, SADT, Z, ) Techniques (normes, )
1. Introduction
A. Larhlimi
8 / 53
A. Larhlimi
9 / 53
mais il demeure idaliste voire irraliste : le cot des allers-retours est sous-estim. difficult pour effectuer lanalyse des besoins : problme de communication Client Informaticien V&V: Vrification : le systme rpond aux besoins identifis la phase prcdente. Validation : le systme rponds aux besoins du client.
Implmentation V&V
Tests unitaires Tests dintgration Mise jour, correctifs Gestion des configurations 1. Introduction
A. Larhlimi
10 / 53
Validation
Spcification
Vrification
Test unitaire
1. Introduction
Implmentation
A. Larhlimi
11 / 53
Prototypes
Concept ion dtaille
Plan Integration
A. Larhlimi
12 / 53
Lobjectif final est le code : un programme qui rpond aux besoins du clients, test et structurellement le plus simple possible. La complexit est gre par des cycles itratifs. Intgre largement la dimension humaine du projet. Rsultat : propose une srie de principes, de pratiques : presque une philosophie plutt quune mthode.
1. Introduction
A. Larhlimi
13 / 53
Xtreme Programming :
Principes
Communication : entre tous les acteurs. Concernant le client lusage de mtaphores (barrire de langage client dveloppeur), dhistoires (user stories) est recommand. Retours dinformations (feedback) de tous les acteurs du processus Dveloppement tir par les tests : crit ds le dbut. Dveloppement tir par les besoins du clients : user story exprim laide de cartons. Refactoring ou reconception du code Une fois quil marche rcriture du code pour le simplifier. Etc.
1. Introduction
A. Larhlimi
14 / 53
Xtreme Programming :
Gestion de projet
Histoires dutilisateur
architectural
Planification De livraison
Itration
Dernire version
Tests de validation
Petites Livraisons
Itration suivante
cueil
1. Introduction
A. Larhlimi
15 / 53
Xtreme Programming :
Planification De livraison
Itrations
mois
Planification d1 Itration
semaines
Tests De validation
Jours
Runion debout
1 journe
Ngociation binme
Heures
1. Introduction
Code
Secondes
A. Larhlimi
16 / 53
1. Introduction
A. Larhlimi
17 / 53
Dfinition Dfinition des besoins Examen de lexistant Architecture technique C & I de la BD C & I de modules Conversion de Donnes Documentation Test Formation Transition Maintenance post dploiement
Analyse
Conception
Implmentation
Transition
Production
1. Introduction
A. Larhlimi
18 / 53
Implmentation
Test
Implmentation
Test
Tests de vrification de la maquette et validation par le client 1. Introduction
Maintenance
A. Larhlimi
19 / 53
La solution du maquettage
Lanalyse des besoins est effectue via la maquette :
Requiert un langage/des outils de dveloppement de haut niveau pour pouvoir dvelopper trs rapidement une version simplifie, avec moins de fonctionnalit, soulve immdiatement les erreurs dinterprtation des besoins du client.
2 types de stratgies : Prototype jetable : une fois valid, on ne garde du prototype que la coquille :
tout est redvelopp (ex: autre language et autres technologies).
1. Introduction
A. Larhlimi
20 / 53
Le terme anglais est plus explicite CASE tools (Computer Aided Software Engineering).
Objectif :
tout le processus de dveloppement du logiciel ... objectif pondr par la ralit du terrain. => Implique dassister les phases du cycle de vie du logiciel
1. Introduction
A. Larhlimi
21 / 53
Catgories d'AGL
Les AGL peuvent tre classs selon plusieurs aspects : richesse du support : ensemble d'outils, outils intgrs, aide la dmarche. type de problmes : logiciels embarqus, temps rel, "business applications", applications mtiers type de projet dingnierie logicielle : dveloppement logiciel (cf. cycle de vie), intgration de systmes, systme base de connaissance. Ampleur du projet : complexit, nombres de participants, dure ... Gestion des ressources du projet : les considrations managriales des ressources mises en uvre dans le projet sont elles prises en compte ? (planification, ordonnancement, ). Phase du cycle de dveloppement prises en compte : conception et/ou dveloppement.
1. Introduction
A. Larhlimi
22 / 53
GESTION DE CONFIGURATIONS
PowerDesigner
GESTION DE PROJET
DOCUMENTATION
QUALITE
Windev Implmentation => Eclipse + Plugins (omodo, ) Orient ralisation Lower CASE tools PowerBuilder
Intgration
Maintenance 1. Introduction
A. Larhlimi
23 / 53
Type doutils
Sorte Meta-AGL : en fonction du type de mthodologie retenue (RUP, Merise,) loutil assiste la mise en uvre de la mthode (IBM Rational Method Composer) // avec SPEM.
Outils de Planification, calculs de cots, suivi de projet (ex MS Project), de tableurs, Gestion utilisateurs, droits accs, communication, Editeurs de texte (code, aide, ) dimages, diagramme etc Etendu aux autres productions (documentation, diagramme, )
A. Larhlimi
24 / 53
A. Larhlimi
25 / 53
Prototypage
Support mthodologique
1. Introduction
A. Larhlimi
26 / 53
Oracle Designer d'Oracle Corporation. Rational Suite AnalystStudio, Rational Rose. Bass sur UML (toute application base sur l'approche objet voir galement dveloppement SI) + Rational Rose Unified Process (support mthodologique). Objecteering de SoftTeam. Bas sur UML. Eclipse bientt ? (http://www.eclipse.org) (ex. plugin UML, )
1. Introduction
A. Larhlimi
27 / 53
INTEGRATION
A. Larhlimi
28 / 53
A. Larhlimi
29 / 53
Rational IBM
Method Composer "Gestion de projet"
Polarion Track & Wiki
ArgoEclipse
eDatabase
diteur, compilateur, debugger, gnrateur javadoc, EMF
Eclipse
SWT Designer Log4E CodePro Profiler Mojo
(build tool)
Contient dj
Subversive
(Subversion)
Eclipse Plugin Configuration titre indicative base sur une analyse fonctionnelle et non teste intensively
1. Introduction
A. Larhlimi
30 / 53
A. Larhlimi
31 / 53
1. Introduction
A. Larhlimi
32 / 53
A. Larhlimi
33 / 53
le problme du choix devient alors difficile ce qui explique les efforts importants de communication des diteurs.
1. Introduction
A. Larhlimi
34 / 53
a moyen terme !
1. Introduction
A. Larhlimi
35 / 53
Sous rserve
Que l'entreprise prenne en compte :
des cots de maintenance long terme de l'AGL (-> outils dj dvelopps) Apparition frquente de nouvelles technologies (effet de mode ou rvolution ex : C -> C++, VB -> Java) Cots de formation (nouveaux intgrs et mise jour/amlioration des plus ancients) et les aspects classiques de l'adoption de nouvelles technologies ou outils informatiques dans l'organisation de l'entreprise (implication de la direction, analyse de l'impact, adquation des moyens mis en uvre ) Quils correspondent la stratgie de lentreprise (SSII): les projets courts, les contraintes de dploiement et de maintenance peuvent carter des outils lourds pour des solutions logicielles au cas par cas
1. Introduction
A. Larhlimi
36 / 53
A. Larhlimi
37 / 53
II - Premiers Pas
A. Larhlimi
38 / 53
A. Larhlimi
39 / 53
Amlioration:
Simplification du code Gnration automatique de code (rRAD pour real RAD, personnalisation des interfaces, ) Ergonomie et libraire (petites astuces dIHM, modles disponibles, )
A. Larhlimi
40 / 53
A. Larhlimi
41 / 53
IHM :
bote outils de composants graphiques correcteur dinterfaces graphique (esthtique plutt qu'ergonomique) tude enchanement des fentres (a posteriori)
BD
Support limit MERISE : diteur de MCD, MLD
Documentation technique :
Gnration automatique de la documentation technique (dictionnaire donnes, code source, captures GUI)
A. Larhlimi
42 / 53
A. Larhlimi
43 / 53
GESTION DE PROJET
DOCUMENTATION
Spcification Conception
QUALITE
Implmentation
Intgration
A. Larhlimi
44 / 53
Fichier>Projet>Nouveau(S) Nommer le projet et sa localisation(S). Vrifiez quaucun format de BD nest slectionn. Crer une feuille de style (S), slectionner un style (S).
A. Larhlimi
45 / 53
Champs Objets graphiques pouvant tre insr dans la fentre (Bouton, zone de texte, ) Proprit Edition des proprit de la fentre.
Code Listes des vnements grs par le composant graphique et leur comportement associ dfini avec le W Langage.
A. Larhlimi
46 / 53
Chaque composant graphique est identifi par un nom dont la porte est celle de la fentre dans laquelle il sinscrit. Les proprits du composant seront accdes partir de ce nom. Ex : Label..Valeur: contient la valeur saisie dans le champs de saisie. Label..Libell: contient le texte du libell.
Chaque composant list dans le treeview est dcrit par son type par une icne (ex : bouton) et les vnements grs (et le code associ).
A. Larhlimi
47 / 53
Nouveaux venements
Remplace le TreeView
Le kouglov liste les erreurs de programme, procdures locales et globales, classes, appel dbogueur, liste de tches.
A. Larhlimi
48 / 53
Lditeur danalyse
MLD (Modle Logique de Donne) Modle EntitAssociation dcrivant la structure de la BD.
Assistant Merise Avec des questions simples, aide tablir les cardinalits des associations entre entits.
Entit Les proprits des entits sont tablies laide dune autre diteur permettant de prciser le type, le format etc.. des proprits.
A. Larhlimi
49 / 53
messages).
Messages
Application 1
WM_LBUTTONDOWN WM_KEYDOWN
Messages rcuprs
WM_PAINT WM_SIZE
Windev
Windows
DefWindowProc (API)
A. Larhlimi
50 / 53
Premire Application
Nous allons crer une application qui affiche dans une fentre "popup" un texte saisi par lutilisateur.
Composants utiliss :
Fentre Bouton Champs de Saisie
Nous verrons quelques exemple de code W-Langage utilis pour dfinir le comportant des composants graphiques
A. Larhlimi
51 / 53
A. Larhlimi
52 / 53
A. Larhlimi
53 / 53
Le bouton "Affich_Btn" permet douvrir une fentre dinformation contenant le texte saisi dans le champ de saisie.
A. Larhlimi
54 / 53
Rsultat de lexcution
Le bon fonctionnement de la fentre peut tre teste avant gnration de lexcutable laide du bouton . Le bouton permet de tester le projet complet.
Fentre de lapplication Fentre dInformation
Fentre de choix