Upload
papematarsarr
View
36
Download
2
Embed Size (px)
Citation preview
Prof : Mr Baba Fall, Doctorant en informatique
LTI/ESP/UCAD
ARCHITECTURES LOGICIELLES
Contexte Général
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 2
« L’étude formelle des aspects architecturaux des logiciels fait, depuis peu, l’objet de recherches actives.
S’il est vrai qu’une maquette à jeter ne justifie pas une conception logicielle poussée, la maintenabilité et la modifiabilité de systèmes de plus en plus complexes ne peuvent plus se contenter d’une organisation logicielle artisanale : les choix architecturaux doivent être justifiés et s’appuyer sur un ou plusieurs modèles d’architecture idoine.»
Source : Gaëlle Calvary, Joëlle Coutaz, Laurence Nigay, Daniel Salber, PAC+3 : un modèle d’architecture générique pour systèmes multi-utilisateurs, CLIPS-IMAG, B.P. 53 - 38041 Grenoble Cedex 9, France
Solution de l’architecture logicielle
L'architecture logicielle constitue le plus gros livrable d'un processus logiciel après le produit (le logiciel lui-même).
En effet, la phase de conception devrait consommer autour de 40 % (Pressman R. S., Software Engineering: A Practitioner's Approach,
Third Edition. McGraw-Hill. Chapitre 4, p. 107, 1992.) de l'effort total de développement et devrait être supérieure ou égale, en effort, à la phase de codage mais il peut être moindre.
L'effort dépend grandement du type de logiciel développé, de l'expertise de l'équipe de développement, du taux de réutilisation et du processus logiciel.
3 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Objectifs
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 4
Présentation de méthodes et d’outils modernes pour le développement de logiciels.
Mise en œuvre de principes d'ingénierie afin d'obtenir, à prix raisonnable, des logiciels fiables et efficaces.
Minimisation du coûts de développement, de maintenance et d'utilisation pendant toute la vie du logiciel.
Approches méthodologiques pour la conception, développement et évolution du logiciel.
Pourquoi modéliser avant …? Les deux objectifs principaux de toute
architecture logicielle sont :
la réduction des coûts : est principalement réalisée par la réutilisation de composants logiciels et par la diminution du temps de maintenance (correction d'erreurs, adaptation du logiciel),
et l'augmentation de la qualité du logiciel : se trouve distribuée à travers plusieurs critères; la norme ISO 9126 est un exemple d'un tel ensemble de critères.
5 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Critères de qualité logiciel 1/5 L'interopérabilité extrinsèque exprime la capacité du
logiciel à communiquer et à utiliser les ressources d'autres logiciels comme, par exemple, les documents créés par une certaine application.
L'interopérabilité intrinsèque exprime le degré de cohérence entre le fonctionnement des commandes et des modules à l'intérieur d'un système ou d'un logiciel.
La portabilité exprime la possibilité de compiler le code source et/ou d'exécuter le logiciel sur des plates-formes (machines, systèmes d'exploitation, environnements) différents.
6 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Critères de qualité logiciel 2/5 La compatibilité exprime la possibilité, pour un
logiciel, de fonctionner correctement dans un environnement ancien (compatibilité descendante) ou plus récent (compatibilité ascendante).
La validité exprime la conformité des fonctionnalités du logiciel avec celles décrites dans le cahier des charges.
La vérifiabilité exprime la simplicité de vérification de la validité.
L'intégrité exprime la faculté du logiciel à protéger ses fonctions et ses données d'accès non autorisés.
7 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Critères de qualité logiciel 3/5 La fiabilité exprime la faculté du logiciel à gérer
correctement ses propres erreurs de fonctionnement en cours d'exécution.
La maintenabilité exprime la simplicité de correction et de modification du logiciel, et même, parfois, la possibilité de modification du logiciel en cours d'exécution.
La réutilisabilité exprime la capacité de concevoir le logiciel avec des composants déjà conçus tout en permettant la réutilisation simple de ses propres composants pour le développement d'autres logiciels.
8 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Critères de qualité logiciel 4/5 L'extensibilité exprime la possibilité d'étendre
simplement les fonctionnalités d'un logiciel sans compromettre son intégrité et sa fiabilité.
L'efficacité exprime la capacité du logiciel à exploiter au mieux les ressources offertes par la ou les machines où le logiciel sera implanté.
L'autonomie exprime la capacité de contrôle de son exécution, de ses données et de ses communications.
9 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Critères de qualité logiciel 5/5 La transparence exprime la capacité pour un
logiciel de masquer à l'utilisateur (humain ou machine) les détails inutiles à l'utilisation de ses fonctionnalités.
La composabilité exprime la capacité pour un logiciel de combiner des informations provenant de sources différentes.
La convivialité décrit la facilité d'apprentissage et d'utilisation du logiciel par les usagers.
10 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Evolutivité de logiciel
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 11
Graphique de dégradation du logiciel en fonction de l'architecture.Inspiré de : Pressman R. S., Software Engineering: A Practitioner's Approach, Fifth Edition. McGraw-Hill. Chapitre 1, p. 8, 2001.
Réutilisation de composants logiciels
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 12
Une réutilisation bien orchestrée nécessite la création et le maintien d'une bibliothèque logicielle et un changement de focus.
Créer une application revient à créer les composants de bibliothèque nécessaires puis à construire l'application à l'aide de ces composants.
Une telle bibliothèque, facilitant le développement d'application est un Framework d'entreprise et son architecture ainsi que sa documentation sont les pierres angulaires de la réutilisation logicielle en entreprise.
Définition Modèle d’architecture
Organisation logicielle de l’ensemble des modules ou bibliothèques du systèmes
Le modèle du programmeur
Rappel : ne pas confondre avec le modèle conceptuel Organisation conceptuelle de l’ensemble des
fonctionnalités du système en un ensemble de commandes et leurs effets
Du modèle d’architecture découle (fig. 1) … les performances, la maintenabilité, la modularité du
système
Du modèle conceptuel découle (fig. 2) … les performances, la satisfaction et l’état de l’utilisateur
13 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Fig.1 : Les sites web basés sur KSup à l'université Lumière Lyon 2
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 14
Fig.2 : MCT d’un logiciel de vente en ligne
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 15
Modèles d’architecture logicielle
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 16
Modèle de base :
séparation de l’IHM et du noyau fonctionnel
Autres modèles d’architecture:
Modèle Seeheim ou modèle langage
Modèle Objet
MVC (Model View Controller)
Modèle Multi Agents : PAC (Presentation Abstract Control)
Noyau fonctionnel
IHM
Modèle Seeheim
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 17
Ce patron d’architecture logicielle est introduit en 1983 lors d’un atelier de travail en Allemagne par Eurographics.
Ce modèle stipule que l’IHM est composée de 3 parties : la présentation : couche qui gère les IO, elle présente les
données et interprète les actions utilisateur; la Gestion du Dialogue gère la séquence des IO, par
exemple l’enchaînement des écrans dans une interface graphique;
le Modèle Interfaçage de l’Application est la couche qui sert à relier le Noyau Fonctionnel et les données.
Il s’applique à l’analyse des logicielles en une vue macroscopique.
Schéma du modèle Seeheim
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 18
Noyau Fonctionnel
Interface avec Noyau Fonctionnel
Contrôle du Dialogue
Présentation
Modèle Objet
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 19
« Développer objet c'est bien, architecturer c'est mieux. »
Existe dans de multiples variantes :
comme modèle architectural :
comme modèle conceptuel,
comme modèle conceptuel et architectural.
Engendre la construction de modèles plus élaborés :
Model View Controller,
Presentation Abstract Control
Modèles architecturaux objet 1/5
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 20
Un modèle ne représente toujours qu'un point de vue sur le système considéré, le plus important étant les motivations.
Pour éviter de formuler les motivations pour chaque diagramme l'architecte produira les différents diagrammes en fonction d'un modèle de conception et réutilisera des patrons de conception éprouvés.
La devise des trois pères fondateurs d'UML est « Centré sur l'architecture, piloté par les cas d'utilisation et au développement itératif et incrémentiel ». Cette devise indique clairement qu'aucune décision architecturale ne doit être prise sans que celle-ci ne soit dictée par la satisfaction des spécifications systèmes (cas d'utilisation).
Modèles architecturaux objet 2/5
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 21
La vue des cas d'utilisation est un modèle d'analyse formalisé par Ivar Jacobson. Un cas d'utilisation est défini comme un ensemble de
scénarios d'utilisation, chaque scénario représentant une séquence d'interaction des utilisateurs (acteurs) avec le système.
Chaque cas d'utilisation est représenté par un diagramme de cas d'utilisation, chacun des scénarios de celui-ci étant décrit par un ou plusieurs diagrammes dynamiques :diagrammes d'activités, de séquence, diagrammes de communication ou d'états-transitions.
L'intérêt des cas d'utilisation est de piloter l'analyse par les exigences des utilisateurs.
Modèles architecturaux objet 3/5
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 22
La vue logique constitue la principale description architecturale d'un système informatique Cette vue décrit, de façon statique et dynamique, le
système en termes d'objets et de classes. La vue logique permet d'identifier les différents
éléments et mécanismes du système à réaliser. Elle permet de décomposer le système en abstractions et est le cœur de la réutilisation.
La vue logique est représentée, principalement, par des diagrammes statiques de classes et d'objets enrichis de descriptions dynamiques : diagrammes d'activités, de séquence, diagrammes de communication ou d'états-transitions
Modèles architecturaux objet 4/5
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 23
La vue des processus décrit les interactions entre les différents processus, threads (fils d'exécution) ou tâches, elle permet également d'exprimer la synchronisation et l'allocation des objets. Cette vue permet avant tout de vérifier le respect des contraintes de fiabilité, d'efficacité et de performances des systèmes multitâches.
La vue de réalisation permet de visualiser l'organisation des composants (bibliothèque dynamique et statique, code source...) dans l'environnement de développement et de gérer la configuration (auteurs, versions...). Les seuls diagrammes de cette vue sont les diagrammes de composants.
Modèles architecturaux objet 5/5
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 24
La vue de déploiement représente le système dans son environnement d'exécution. Elle traite des contraintes géographiques (distribution des processeurs dans l'espace), des contraintes de bandes passantes, du temps de réponse et des performances du système ainsi que de la tolérance aux fautes et aux pannes. Cette vue est fort utile pour l'installation et la maintenance régulière du système.
Modèle Vue Contrôleur
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 25
Origine de MVC : Modèle issu de Smalltalk-80 (Environnement Interactif de
programmation) Adopté par de nombreuses boîtes à outils graphiques:
Smalltalk-80, Java AWT, Microsoft Foundation Class Library, X-Designer, etc.
Principe de base : M : Modèle
représente les données de l’application (implémente fonctionnalité et structure de données)
V : Vue présente l’information aux utilisateurs en utilisant les données
issues des modèles
C : Contrôleur se charge de l’interaction avec l’utilisateur
MVC
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 26
La modularité : « diviser pour mieux régner »
Exemples :
Eclipse : d’où la possibilité d’ajouté des fonctionnalité sans affecter la partie visuelle
Excel
Bonnes applications web (Content Management System) : Django, Drupal, Joomla, etc.
Presentation Abstraction Conrol
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 27
Ressemble au MVC:
Cependant découpe le projet en 3 sous projets ayant chacun : une partie Présentation
une partie Contrôle
une partie Métier ou implémentation
Modèle architecture PAC
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 28
Communication entre les composants MVC
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 29
Modèle Etat et comportement
de l’application
Contrôleur Gestion des entrées
Vue Présentation
Notification des changements
dans le modèle
Dispositif s d’entrée, clavier, souris, etc.
Requêtes d’affichage
Dispositifs d’affichage
Accès ou modification du
modèle
Accès ou modification du
modèle
Modèle multi-vues
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 30
Modèle asymétrique Une paire Contrôleur/Vue est associée à un seul modèle Un modèle peut se voir associer plusieurs paires
Contrôleur/Vue
Listes de dépendants et notification Les paires Vue/Contrôleur d’un modèle sont enregistrées
au niveau de ce modèle dans sa liste de « dépendants » Lorsque le modèle change, tous les dépendants sont
notifiés
Cycle standard d’interaction dans MVC Interaction utilisateur activation d’un
contrôleurmodification du modèlenotification et modification des vues.
Conclusion MVC
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 31
Avantages
vues multiples synchronisées
vues et contrôleurs modulaires développement de composants réutilisation
programmation naturelle du « look and feel » cohérence interne et externe des interfaces
Inconvénients
complexité de communication entre les composants
Exemple d’application MVC
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 32
Il s’agit d’une application J2ME qui permet de gérer une bourse et les différentes dépenses.
Ce projet se divise en 3 parties (package) :
model : se trouvent les classes Business et Rubrique
view : se trouvent AccueilPrincipal, AjoutRubrique, Confirmation, ConfirmationSuppression, EditerPlanning, EnregistrerDepense, Etat, NouveauPlanning, Parametre, Planning, SupprimerRubrique
control : BudgetMidlet
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 33
Le Framework Django Django est développé avec Python.
Il a été conçu pour rendre les tâches de développement web rapides et faciles.
Il peut être installer à partir du gestionnaire de package ou avec la commande sudo apt-get install django sous Ubuntu 10.x
Il peut être utilisé sous iPython en mode commande en important le package django.
34 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Créer un projet Django
La commande suivant permet de créer un nouveau projet Django sous le shell d’Ubuntu : django-admin startproject nom_projet
Créez un dossier où vous voulez loger vos codes (mkdir
/home/myDjangoProject) et s’y placer avant d’exécuter la commande :
Essayons de voir de plus pré les fichiers générés par startproject
35 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Les fichiers d’un projet Django
__init__.py : un fichier vide qui indique à Python que ce répertoire doit être considéré comme un package.
manage.py : est une commande de ligne qui permet d’interagir avec ce projet Django.
settings.py : paramétrage / configuration du projet Django.
urls.py : les déclarations URL pour ce projet. Il contient la table des matières des URLs.
36 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Démarrer le serveur Django
Pour vérifier si le serveur fonctionne, nous nous plaçons dans le répertoire générer par startproject et lançons la commande suivante : python manage.py runserver
Nous venons de démarrer le serveur Django
37 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Changement de port du serveur Django
Le port server Django par défaut est 8000
Pour changer le port d’exécution du serveur de développement Django : python manage.py runserver 8080
Pour changer l’adresse IP du serveur de Django, nous passons l’argument IP à la commande. Mais si nous voulons être vus par tous les réseaux, nous exécutons la ligne suivante : python manage.py runserver 0.0.0.0:8000
38 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Configurer la base de données
La configuration de la Base de Données du projet se fait par la modification des éléments par défaut dans le fichier settings.py
39 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Où activer les applications Django
Toujours dans le fichier settings.py vers le fond du fichier se trouve l’INSTALLED_APP; cette variable contient le nom de toutes les applications Django actives.
Par défaut les applications disponibles sont : django.contrib.auth : un système d'authentification
django.contrib.contenttypes : un Framework pour les types de contenu
django.contrib.sessions : un Framework pour les sessions
django.contrib.sites : un Framework pour la gestion de plusieurs sites avec une installation Django
django.contrib.messages : un Framework de messagerie
Ces applications précitées font au moins usages d’une table de la Base de Données.
40 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Comment générer la Base de Données La base de données est générée avec la commande
suivante : python manage.py syncdb
Cette commande consulte la variable INSTALLED_APP et génère la BD conformément aux réglages dans le fichier settings.py.
Dans le processus de création de la BD un message vous sera demandé pour créer un super compte du système d’authentification.
Un coup d’œil à la BD permet de voir les tables créées conformément aux applications dans la variable INSTALLED_APP.
41 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Créer des modèles pour app 1/3 Django est fourni avec un utilitaire qui génère
automatiquement la structure de répertoires de base d'une application.
Nous pouvons créer une nouvelle app (une application web qui fait quelque chose) partout où on se trouve avec Django. Nous décidons de la créer dans le répertoire /mysite généré auparavant.
La commande suivante permet de créer une nouvelle app : python manage.py startapp polls
42 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Créer des modèles pour app 2/3 __init__.py : indique à Python que ce répertoire doit être
considéré comme un package.
models.py : contient les méta données de l’application.
tests.py : un exemple d’app de teste
views.py : porte les liens vers les pages de l’application.
43 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Créer des modèles pour app 3/3 Ajoutons la nouvelle app parmi les données
d’INSTALLED_APP puis retapons la commande python
manage.py syncdb.
Pour voir le code utilisé pour générer la nouvelle table Etudiants et ses champs qui sont les classes déclarées dans le fichier models.py, exécutons la commande suivante : python manage.py sql etudiants
44 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Manipuler votre app depuis l’interface iPython
la commande suivante nous permet de dialoguer avec
notre modèle : python manage.py shell
A nous de dialoguer avec la BD: Importer les classes décrivant le modèle de nos tables dans la BD
Lançons quelques requêtes : Afficher les enregistrements dans la table Etudiant : Etudiant.objects.all()
Créer un nouveau objet Etudiant :
Enregistrer un objet dans la BD:
45
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Utiliser le site administrateur de Django
Décommentez django.contrib.admin au niveau d’INSTALLED_APP dans le fichier settings.py
De même (r’admin/’,’include(admin.site.urls)’) au niveau d’urlpatterns dans le fichier urls.py
Redémarrez le serveur : pyhon manage.py runserver puis tapez localhost:8000/admin/ avec un navigateur internet
46 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Rendre modifiable l’app etudiants par le site admin de Django
Créer un fichier admin.py dans le dossier /etudiants puis y inscrire :
Modifier le formulaire du site admin : un exemple
47 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Créer ses pages admin perso Afin de créer des interfaces, la première chose à faire est
de modifier la variable urlpatterns au niveau du fichier urls.py
Ajouter la fonction index dans le fichier views.py
Aller à l’adresse localhost:8000/etudiants/ après avoir redémarrer le serveur
48 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Mettre ses données dans un Template 1/2
Editer la variable TEMPLATE_DIRS de settings.py en ajoutant le chemin vers notre dossier Template (mytamplates) de votre projet
Puis réécrire les fonctions du fichier views.py
Enfin créer un fichier index.html dans le dossier mytamplates
49 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Mettre ses données dans un Template 2/2
50 Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012
Web Framework Python : Django
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 51
Pour plus de détails, consulter le lien suivant : http://docs.django-fr.org/
Web Framework Java : Struts
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 52
http://igm.univ-mlv.fr/~dr/XPOSE2003/COPIN/
Solution d’entreprises
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 53
Il existe deux solutions d’architecture logicielle : ERP (Enterprise Resource Planning) ou PGI (Progiciels de
Gestion Intégrés) : elle intègre trois aspects que sont : la communication entre l’entreprise et ses clients (Business To
Costumer, B2C), le fonctionnement interne de l’entreprise (Business To Employer,
B2E), la relation de l’entreprise avec ses différents partenaires et
fournisseurs (Business To Business, B2B).
CRM (Costumer Relationship Management) : elle est associée aux techniques de marketing moderne. Elle propose des fonctionnalités telles que: la gestion des prospects (potentiels clients), la gestion des clients et de leurs achats, le reporting.
PGI
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 54
Les ERP sont principalement destinés aux grandes entreprises car leur implémentation nécessite un coût important.
Les avantages de la mise en place d’un ERP sont : l’intégrité et l’unicité du système d’information : il
permet d’éviter la redondance de l’information entre les différentes SI de l’entreprise;
la mise à jour des données en temps réel : elle se propage à tout module concerné;
la multilingue et la multidevise : car il s’adapte au marché mondial;
la synchronisation des traitements et optimisation des processus de gestion.
PGI
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 55
Cependant il renferme certains inconvénients :
risque organisationnel : le progiciel et l’organisation doivent cohabiter;
mise en œuvre : formation des utilisateurs;
risques économiques : du fait de sa complexité d’où l’investissement qu’il utilise
Intégration des départements avec une architecture PGI ou ERP
PGI
Base de
données
unique
CRM
Commerce
Marketing
Production
Finance
E-
commerce
Ventes
Comptabilité
générale
Comptabilité
analytique
Comptabilité
tiers
Engagements Budget
Immobilisations
Analytique
industrielle
Campagne
marketing
Action
commerciale
Stocks
Support client Réapprovisionnements
Achats
Données
techniques
Configurateur
Contrôle de
gestion
Assurance
qualité
Planification
Ordonnancement
Outils de
pilotage
Source : Adonix Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 56
Architecture physique d’un PGI
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 57
client 1
client 2
client n
base de données Ex : ORACLE
serveur ERP
services
Reporting Module de gestion de relation client
Architecture modulaire d’un PGI
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 58
Caractéristiques d’un PGI
1. Exploitation d’une base de données unique.
2. Fonctionnalités intégrant tous les champs de la gestion.
3. Grande capacité de paramétrage.
4. Outil d’aide à la décision.
5. Architecture informatique ouverte.
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 59
1- Exploitation d’une base de données unique
On distingue trois étapes historiques dans l’évolution du système d’information de gestion :
a. des applications indépendantes;
b. des interfaces spécifiques pour chaque module;
c. l’intégration des fonctionnalités avec un PGI.
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 60
a - Des applications indépendantes
C
O
M
M
E
R
C
I
A
L
F C
I O
N M
A P
N T
C A
E B
S I
L
I
T
E
P
R
O
D
U
C
T
I
O
N
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 61
a - Des applications indépendantes • Un système d’information existe pour chaque
fonction; • Chaque fonction, (commerciale, production,
recherche - développement, comptabilité - finances, ressources humaines ) dispose de sa propre base de données;
• Exemple : Les données concernant un client (code, nom, adresse) peuvent différer de l’application comptable à l’application commerciale.
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 62
b- Des interfaces spécifiques
P
R
O
D
U
C
T
I
O
N
C
O
M
M
E
R
C
I
A
L
F C
I O
N M
A P
N T
C A
E B
S I
L
I
T
E
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 63
b- Des interfaces spécifiques Puis des interfaces spécifiques ont instauré une
communication entre les différents modules.
L’utilisateur prend l’initiative de mettre à jour les bases des autres modules par un transfert ponctuel des données.
Exemple : mise à jour des écritures comptables à partir du module commercial.
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 64
c- L’intégration dans un PGI
C
O
M
M
E
R
C
I
A
L
F C
I O
N M
A P
N T
C A
E B
S I
L
I
T
E
F
O
N
C
T
I
O
N
S
P
R
O
D
U
C
T
I
O
N
PROCESSUS
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 65
c- L’intégration dans un PGI Une donnée est saisie, une seule fois, au moment de
l’événement qui la génère.
Elle est disponible en temps réel pour l’ensemble des utilisateurs (autorisés) de la base unique, commune à tous les modules.
La base de données relationnelle permet d’éviter les redondances.
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 66
2- Fonctionnalités intégrant tous les champs de la gestion
Les modules PGI couvrent l’ensemble des activités de l’entreprise.
La richesse des fonctionnalités des modules et l’intégration des données permettent une approche globale de la gestion.
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 67
Le PGI permet notamment : une très forte automatisation des tâches répétitives ; une structuration complexe, multiaxes et multi-
hiérarchiques de l’analyse de gestion ; la planification des tâches de gestion et le suivi des
opérations en cours ; les opérations de consolidation des comptabilités
dans les groupes de sociétés ; la gestion des procédures de contrôle des
opérations (workflow).
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 68
Le PGI permet aussi :
de répondre à des besoins spécifiques à chaque entreprise : module d’atelier de génie logiciel;
de s’adapter à de nouveaux champs de la gestion :
la gestion de la relation clients (CRM),
la gestion des compétences en relations humaines
la gestion de la chaîne logistique.
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 69
3- Grande capacité de paramétrage Paramétrage de la base de données pour
l’adapter aux métiers et aux pratiques spécifiques de l’entreprise.
Paramétrage de l’espace personnel de chaque poste de travail : autorisations d’accès;
environnement graphique personnalisé;
traçabilité des opérations.
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 70
4- Outil d’aide à la décision Le PGI donne au contrôle de gestion les moyens de
son développement :
utilisation du langage de requête SQL des bases relationnelles Oracle, SQL Server, DB2
communication par l’architecture de base en client/serveur
création d’états et tableaux de bord adaptés aux besoins de l’utilisateur.
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 71
5- Architecture informatique ouverte
L’architecture informatique intègre des technologies diverses et avancées :
l’utilisation d’un réseau multi-sites;
l’intégration est réalisée par un réseau Intranet/Extranet.
la consultation et la modification décentralisées de la base de données en utilisant les connexions Internet.
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 72
Source : Adonix
Serveur
d’application Serveur de
données
Oracle
SQLserver
DB2
Windows NT/2000
Unix / MacOs
Windows
Linux
MacOs
Serveur
Internet
Apache ou IS
Windows NT / 2000
Internet Explorer
Firefox
Opéra
Internet Explorer
Netscape
Navigator
Site
Web
Architecture informatique d’un PGI
Clients e-commerce Clients PGI
mode web
Clients PGI mode
Client / Serveur
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 73
Architecture générale d’un PGI
ERP
Site
Internet
Connexions
Intranet
Connexions
Client / Serveur
Connexions
Internet
Clients e-commerce
Partenaires
Personnel nomade
Sites décentralisés
Filiales,
Entrepôts,
Agences
Distributeurs,
Fournisseurs,
Sous-traitants
Source : Adonix Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 74
Conclusion sur les ERP ou PGI La mise en place d’un projet PGI est d’abord un
projet organisationnel.
Au-delà de la complexité technique des matériels et logiciels mis en service, l’introduction d’un PGI entraîne : la remise en cause des compétences et des métiers; une redéfinition des jeux de pouvoir; une évolution de la culture de l’entreprise et de son
système de valeurs.
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 75
Costumer Relationship Management
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 76
Le CRM est associé aux techniques de marketing moderne, du coup les entreprises ne peuvent plus échapper ces technologies et outils.
En effet, un CRM dépasse l'approche marketing traditionnelle focalisée sur la relation entre un produit/service et son client ou encore la notoriété et l'image de marque.
Grâce aux nombreuses fonctionnalités offertes par le CRM telles que la gestion des prospects, gestion des clients et de leurs achats, de reporting,... Il est possible pour l'entreprise de personnaliser l'offre, sous forme de publicités ou encore d'e-mails afin de fidéliser un maximum le client, d'améliorer leur satisfaction et par la même occasion d'accroître l'efficacité des employés et par conséquent d'augmenter les ventes.
Service Oriented Architecture
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 77
SOA peut signifier différentes choses selon le groupe de personnes: une configuration de services qu’une entreprise veut montrer à
ses clients et partenaires ou tout autre organisation;
un modèle architectural qui exige la fourniture de services caractérisés par la modularité, l’encapsulation, le couplage léger entre module, la réutilisation;
un modèle de programmation avec des standards, des outils et des technologies comme les services web;
Business
Executive,
Analyst
Architect
Developer
Problématique de l’intégration en entreprise
Entreprises découpées en départements fonctionnels y compris le système d'information (SI)
Processus métiers des entreprises de + en + multi-départementaux
Coûts considérables dans la gestion des flux entre départements et dans l’intégration de leurs SI
Problématique de l’intégration en entreprise • Les entreprises doivent s’adapter en permanence et être de + en + réactives
aux variations des marchés (fusions, acquisitions, scissions, diversification des offres commerciales, changement technologiques, …)
• Leurs SI ne doivent pas être un frein à ces changements
C’est l’activité qui pilote la technologie et non l’inverse
Hier : plat de spaghettis
Développements coûteux
Interconnexions redondantes (point à point)
Grande complexité
Maintenance difficile
Demain : Architecture urbanisée
L’urbanisation informatique définit l'organisation d’un SI à l’image d’une ville o découper le SI en modules autonomes (zone, quartier, îlot, bloc)
o localiser les zones d’échange d’informations (routes, ponts, tunnels) qui permettent de découpler les différents modules
L‘urbanisation a pour objectif de faire évoluer le SI et sa composante informatique au même rythme que la stratégie et l'organisation des métiers de l'entreprise.
Presentation Layer
CartController AccountController
Business Logic Layer
Account Cart Inventory Item OrderInsert OrderRead Product Profile
Category
Check out
Create Account
Default
Error Help Item Details
Items
My Account
Edit Account
Order Billing
Order Process
Order Shipping
SignOut Shopping Cart
Search SignIn
e-commerce : Couches
Data Access Layer
IAccount IInventory IItem IOrder IProduct IProfile
Data Access Layer
IAccount IInventory IItem IOrder IProduct IProfile
e-commerce : Domaines
Presentation Layer
Business Logic Layer
Account Cart Inventory Item OrderInsert OrderRead Product Profile
Category
Check out
Create Account
Default
Error Help Item Details
Items
My Account
Edit Account
Order Billing
Order Process
Order Shipping
SignOut Shopping Cart
Search SignIn
Catalog Inventory Shopping Billing
1.0
1.1
1.2
1.0
2.0
3.5
10.0
11.2
11.5
5.1
5.2
5.3
1.0
6.0
7.0
Data Access Layer
Presentation Layer
Business Logic Layer
e-commerce : Domaines
Catalog Inventory Shopping Billing
e-commerce : Services
Presentation Layer
Business Logic Layer
Data Access Layer
Service Layer
Show Catalog
Make Inventory
Shop Manage
Customer Bill
Principes fondamentaux de l’architecture SOA
Il n’existe pas une recette pour garantir le succès de la mise en place d’une SOA mais des principes à respecter :
Discussion entre métier et IT Utilisation des use case métier Utilisation de standards Pas de remise en cause de l’existant lors d’évolutions
technologiques Découplage entre fournisseur et consommateur de
services Indépendance des ressources vis à vis de ceux qui les
utilisent
Qu’est ce qu’un Service (au sens SOA) ? Partage les caractéristiques suivantes d’un objet
Modulaire (ensemble de fonctionnalités qui font sens)
Partage les caractéristiques suivantes d’un composant Boite noire (séparation interface/implémentation)
Indépendant de la localisation
Neutralité vis-à-vis des protocoles de transport
Correspond à un périmètre fonctionnel que l’on souhaite exposer à des consommateurs (il a une granularité plus forte qu’un composant)
Est faiblement couplé (indépendant des autres services)
Expose un petit nombre d’opérations offrant un traitement de bout en bout
Sans état
Un Service expose un Contrat
Les services communiquent par messages
Conditions Générales de Vente Règlement Intérieur
Vos droits/Vos devoirs in
out
Un Service est Autonome
Les Frontières entre services sont Explicites
4 propriétés du service à retenir
Gestion de prêts en couplage fort
LoanAgent
calculateRisk
Loan Account
createLoan
checkCredit
LoanApproval SMSGateway
sendConfirmation
Entités
LoanAgent est lié à LoanApproval et Loan LoanApproval est lié à Account Loan est lié à SMSGateway
Gestion de prêts en couplage faible
LoanProcess CreateLoan CheckAccount Balance
Calculate LoanRisk
Notify ViaSMS
Services
Qu’est ce que LoanProcess ? Un processus métier !
Il permet d’orchestrer les services => couplage lâche
Planifier
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 91
Avant de commencer un projet, il est indispensable de planifier pour ne pas avoir de mauvaises surprises.
Il convient ainsi de :
fixer vos objectifs en se posant les bonnes questions,
identifier le public cible,
produire un cahier des charges,
« n’hésiter pas à aller voir ce que font vos concurrents ou partenaires »
Rédaction d’un cahier des charges (CC) 1/5
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 92
« Quels sont les principaux éléments dont il faut tenir en compte pour la rédaction d’un cahier des charges dans le cadre d’un développement d’application informatique. »
Place du CC dans le projet est de définir :
les objectifs mesurables à atteindre,
des ressources requises,
de la planification de la mise en œuvre,
des outils d’évaluation,
des méthodes de contrôle.
Rédaction d’un cahier des charges (CC) 2/5
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 93
Deux cas de figure s’offre à nous :
imposer une solution, des spécifications détaillées, un outil ou un produit;
décrire uniquement les fonctionnalités souhaitées en faisant le choix de la solution à adopter.
Positionnement et objectifs du projet au sein de l’entreprise et dans le marché
importance stratégique et économique
fourniture matériel informatique et/ou logiciel, main d’œuvre, réseau informatique
Rédaction d’un cahier des charges (CC) 3/5
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 94
Spécifications applicatives:
le contenu des écrans de l’utilisateur final,
le contenu des bases de données,
les différentes transactions informatiques et leur cheminement entre les utilisateurs et la base de donnée,
les traitements à effectuer pour chaque transaction,
les liaisons avec les applications existantes dans l’entreprise (si elles existent),
l’interface utilisateur (le choix du navigateur, l’emploi des langues, l’ergonomie, etc.).
Rédaction d’un cahier des charges (CC) 4/5
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 95
Spécifications techniques : localisation des terminaux utilisateurs et des serveurs
informatiques, localisation des applications et des bases de données (lieux
d’hébergement, répartition des processus applicatifs entre serveur et utilisateur)
volumes (nombre et fréquence des transactions entre les utilisateurs et les applications résidant dans les serveurs)
réseau reliant les utilisateurs et les serveurs (type, vitesse et performance des liaisons, disponibilité, support)
architecture et fonctionnalité des serveurs (web, application, BD) outils de sécurisation des transactions procédure de gestion de la maintenance matériel et logiciel évolutivité de la solution (possibilités et coûts) plan de formation des utilisateurs et des gestionnaires documentation requise
Rédaction d’un cahier des charges (CC) 5/5
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 96
Spécifications de réalisation: liste des contraintes imposées par le client standards techniques (hardware, langage de
développement, format de fichiers, bases de données, etc.);
standards propres à l’entreprise : documentation, méthode d’analyse, outils de gestion des projets, de maintenance des applications, logiciels utilisés, etc.;
ressources : réutilisation du câblage, du matériel existant, etc.
le délai des prestations
etc.
Concevoir
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 97
Structurer et créer une arborescence cohérente
utiliser du papier ou des logiciels appropriés pour représenter la base du logiciel, un logiciel Mind Map : freeMind permet de représenter un
projet ou une idée graphiquement,
les organigrammes.
cela permet d’éviter des modifications du premier niveau de l’application dès ses premières années,
Exemple de structure à l’aide d’un logiciel Mind Map
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 98
Exemple de structure à l’aide d’un organigramme
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 99
Structuration des pages et modèles en zones
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 100
Technique des maquettes en fil de fer
permet de structurer le contenu,
force à la réflexion,
facilite la lecture en créant une structure de la page.
Ergonomie
ne pas essayer à réinventer la roue,
rassurer le lecteur à une présentation type,
faciliter la navigation,
pas de code compliqué, la page doit se comprendre en elle-même.
Exemple de zone appliqué à un site
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 101
Exemple de modèles en fil de fer : version papiers collés
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 102
Procédure et rédiger
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 103
Identifier et classifier les contenus
quel contenu va dans quelle partie du logiciel ou concerne quelle personne,
quel contenu vais-je mettre et dans quel format,
planifier déjà la mise à jour : quel contenu, par qui et à quelle fréquence.
Eviter les redondances
facilite la mise à jour,
élimine les erreurs et incohérences,
ainsi les liens sont privilégiés.
Procédure et rédiger
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 104
Rédiger pour le web et pour être lu : forme
pourquoi le web est différent : écran, lien, coup d’œil;
phrases brèves;
contenu structuré : titre, liste, etc.;
mots mis en évidence, sobriété des couleurs.
contenu technique du journal : l’idée principale au début;
adaptez vous au public-cible : attention au jargon interne ou spécialisé;
oubliez l’académie : écrivez pour être lu (abandon après 3 écrans);
pensez à ce que le lecteur doit savoir en quittant.
Visibilité d’un site web
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 105
Google Tips : représente 90 à 95% (?) des moteurs de recherche
Quelques astuces pour que votre site soit correctement indexé: réf. les règles d’indexation de Google Tips utiliser des termes clés; mise en valeur des éléments <title>,<h1>, etc.; ne pas utiliser de contenu image ou flash à la place
d’un texte, il ne simule pas d’instruction JavaScript; la notoriété est le nombre de pages liées à la votre; etc.
Visibilité d’un site web
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 106
Quelques astuces pour optimiser votre placement : bon référencement = mixe indexation / pertinence/
notoriété; ne changer pas l’url d’une page : ancienne = plus-value; respecter les consignes de rédaction et formater
correctement votre texte; être pertinent dans les termes utilisés; utiliser les standards web comme les blogs, les CMS; privilégier les liens entrants avec les termes pertinents
du site; mettre le lien sur les termes précis et non sur un petit
bouton à côté; etc.
Exemple de conception de site
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 107
Les objectifs liés à la création du site lecampusard sont multiples : fournir les anciennes épreuves de devoirs et d’examens et leur
correction si possible, expliquer les démarches administratives à faire pour certaines
choses qui concernent les étudiants permettre aux étudiants de passer des annonces de sollicitation
de cours de renforcement dans leur spécialité, liées les personnes qui sollicites des cours à de potentiels tuteurs fournir des liens vers des préinscriptions, donner accès à des articles publiés dans les différentes écoles
doctorales de l’université,
Public visé : les étudiants; les chercheurs; les parents d’étudiants ou d’élèves;
Coût de développement d’un logiciel : le réseau de PERT
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 108
Le réseau de PERT (Program Evaluation and Review Technique ie Technique d’Evaluation et d’Examen de Programme) est une technique de gestion de projet.
« Pert » est aussi l’équivalent de malicieux en anglais.
Permet : de visualiser la dépendance des tâches, d’ordonnancer les tâches, d’estimer le temps d’implémentation d’un
programme.
Le Réseau de PERT : principes
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 109
On utilise un graphe de dépendance.
Pour chaque tâche, on indique une date de début et une date de fin au plus tôt et au plus tard.
Le diagramme permet de déterminer le chemin critique qui conditionne la durée minimale du projet.
Objectif : « terminer un projet dans les meilleurs délais en trouvant la meilleure organisation possibles et d’identifier les tâches critiques. »
Les tâches critiques ne doivent souffrir d’aucun retard sous peine de retarder tout le projet.
Le Réseau de PERT : mis en œuvre
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 110
Tâche : C40 indique le nom d’une Tâche « C » et sa durée « 40 »
Tâche fictive :
Etape :
Numéro étape
DTôt, FTôt
Dtard, FTard
on calcule deux valeurs pour chaque étape :
la date au plus tôt (Dtôt,Ftôt) : il s’agit de la date à laquelle une tâche pourra être commencée au plus tôt, en tenant compte du temps nécessaire à l’exécution des tâches précédentes. la date au plus tard (Dtard,Ftard): il s’agit de date à laquelle une tâche doit être terminée obligatoirement sans quoi l’ensemble du projet sera retardé. Marge : il s’agit de la différence entre les dates au plus tôt et au plus tard.
Le Réseau de PERT : exemple
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 111
Représentons les tâches suivants à l’aide d’un diagramme de PERT : a - étude, réalisation et acceptation des plans, b - préparation du terrain, c – commande des matériaux, d – creusement des fondations, e – commande des portes et fenêtres, f – livraison des matériaux, g – construction des fondations, h – livraison des portes et fenêtres, i – construction des murs j – mise en place des portes et fenêtres
Le réseau de PERT : niveau
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 112
Trouvons les différents niveaux :
1 – a, b
2 – c, e, d
3 – f, h
4 – g
5 – i
6 – j
Le réseau de PERT : graphe
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 113
Le Réseau de PERT : consignes et calculs
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 114
Ne pas croiser les flèches en traçant
Pour déterminer la date au plus tôt d'une tâche, il faut parcourir le diagramme de gauche à droite et calculer le temps du plus long des chemins menant du début du projet à cette tâche. S'il y a plusieurs sous-chemins, on effectue le même calcul pour chacun et on choisit la date la plus grande.
Pour déterminer la date au plus tard d'une tâche, il faut parcourir le diagramme de droite à gauche, et soustraire de la date au plus tard de la tâche suivante la durée de la tâche dont on calcule la date au plus tard. S'il y a plusieurs sous-chemins, on effectue le même calcul pour chacun et on choisit la date la plus petite.
La différence entre la date au plus tard et la date au plus tôt d'une tâche s'appelle la marge totale.
Le Réseau de PERT :chemin critique
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 115
On dit qu'une tâche de A vers B est critique si la différence entre la date au plus tard de B et la date au plus tôt de A est égale à la durée de la tâche à accomplir.
L'ensemble des tâches critiques constitue le chemin critique, c'est-à-dire le chemin sur lequel aucune tâche ne doit avoir de retard pour ne pas retarder l'ensemble du projet.
Le Réseau de PERT : chemin critique
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 116
Le Réseau de PERT : chemin critique
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 117
NB: un projet peut avoir plusieurs chemins critiques, un chemin est sous-critique lorsque sa durée est très
proche de la durée du chemin critique. Il suffirait d'un léger retard, de N jours ou semaines, d'une tâche de ce chemin sous-critique pour que ce chemin devienne critique.
la marge libre d'une tâche T est le délai de retard maximum que l'on peut apporter à la mise en route de cette tâche, sans pour autant que les tâches suivantes en soient affectées. Elle est égale à la différence entre : la plus petite date au plus tôt des tâches suivantes
la date au plus tôt de la tâche T, à laquelle on rajoute sa durée
Les étapes d’un Réseau de PERT
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 118
Premièrement : recenser les tâches et leurs antécédents directs, -Tableau 1
Deuxième : renseigner le tableau des successions, Tableau 2
Troisièmement : dessiner le diagramme.
Exemple appliqué à la cuisson d’un gâteau méringué
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 119
Exemple appliqué à la cuisson d’un gâteau meringué (suite)
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 120
Le diagramme de GANTT
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 121
Passer d’un enchaînement PERT à un calendrier
Affecter les ressources
Utiliser les marges pour des « chargements » au plus tôt et au plus tard.
Application : utilisons le logiciel OpenProj libre ou MS Project de Microsoft
REMARQUES ET SUGGESTIONS
Architectures Logicielles - Licence TéléInfo - ESP/UCAD - avril 2012 122