Académique Documents
Professionnel Documents
Culture Documents
• Analyse
– étude de marché
– étude de faisabilité
– identification des besoins
– modélisation
– prototypage
– rédaction des spécifications
– validation des spécifications
• Conception (design)
– de données
– d’architecture
d’interfaces
– de fonctions
Description des phases (suite)
• Programmation (codage)
– traduction de la conception du logiciel dans un
langage de programmation
• Tests
– unitaires
– d’intégration
– de système
• fonctionnels et de performance
Description des phases (suite)
de logiciels
• Méthode structurée (fonctionnelle)
– Centrée fonctions
• Méthode orientée objet
– Centrée objets
Caractéristiques des méthodes de
développement
• Méthode structurée (fonctionnelle)
– Au centre du modèle de développement se trouvent
les
fonctions
• Avantages:
– Simplicit
é
– Réutilisat
ion du
code
• Domaines
d’applicati
on:
– Applications scientifiques, systèmes temps réel,
Caractéristiques des méthodes de
développement (suite)
• Méthode orientée objet
– Au centre du modèle de développement se trouvent
les
objets
• Un objet informatique est une abstraction d'un objet
du monde réel
– L’abstraction réduit la complexité en mettant l'accent sur les
caractéristiques importantes de l’objet
– Les objets qui ont exactement les mêmes propriétés et le même
comportement sont regroupés dans des classes.
• Avantages:
– Représentation plus proche du monde réel, qui est
formé d’objets
– Réutilisation du code et de données (au moyen de
bibliothèques de classes réutilisables)
Première phase de développement:
Analyse
• Dans le cadre du cycle de développement d’un
logiciel, l’analyse sert à bien
comprendre et représenter:
• L’information sur le domaine du problème à
résoudre (l’environnement du logiciel)
• Les fonctions que le logiciel devrait accomplir
• Le comportement du logiciel en
présence d’événements externes
Principes de l’analyse
1. Raffinement successif :
• Les modèles de l’analyse doivent être
continuellement raffinés (il faut réaliser plusieurs
itérations, de plus en plus détaillées)
2. Abstraction :
• Le processus d’analyse doit se concentrer sur les
informations essentielles caractérisant le problème
à résoudre
3. Décomposition (« diviser pour régner »)
• Le problème doit être divisé en plusieurs sous-
problèmes, plus faciles à analyser et
développer
Étapes de l’analyse
• Analyse préliminaire
– Étude d’opportunité du logiciel sur le marché
– Étude de faisabilité du logiciel
• Analyse des besoins
– Travailler avec le client et les utilisateurs pour
définir les besoins (requis) fonctionnels et de
performance du logiciel, sans donner aucun détail
de structure interne du logiciel (définition type
boîte noire)
Étapes de l’analyse (suite)
• Analyse
– Description du problème
• Définir les données que le logiciel devrait utiliser
• Définir les fonctions principales du logiciel
• Définir le comportement du logiciel par rapport aux
événements externes
• Identifier les contraintes de design (temporelles, de taille,
etc.)
– Synthèse d’éléments de solution
• Proposer une architecture d’implantation (exemple:
architecture client-serveur)
Étapes de l’analyse (suite)
– Modélisation du logiciel
• Modèle de données
• Modèle de fonctions
• Modèle de comportement
– Prototypage des aspects incertains
– Rédaction du document d’analyse (spécifications)
qui guidera le design
– Validation du document d’analyse dans le cadre
d’une Revue Technique Formelle (RTF)
• Vérifier si le document d’analyse est correct, complet
et
consistant
Revue technique formelle
d’analyse
• C’est un filtre de qualité
– Peut avoir une efficacité plus grande que les tests
• Objectif:
– Valider le résultat de l’étape d’analyse (les
spécifications)
• Règles:
– Protagonistes: analyste(s), concepteur, gestionnaire de
projet, client, membres du groupe d’assurance qualité
– Les participants doivent assister à toute la réunion
– Tous les participants sont égaux
Revue technique formelle de
l’analyse (suite)
• Règles (suite):
– La préparation est aussi importante que la réunion
– Établir un ordre du jour et le maintenir (médiateur)
– Éviter de sombrer dans des détails techniques
• Les éventuelles erreurs détectées durant la réunion
doivent être consignées dans un rapport
• L’analyste se charge d’opérer les modifications
nécessaires dans les spécifications, après la
réunion.
Analyse préliminaire
• Analyse d’opportunité sur le marché
– Suite à l’analyse d’opportunité, le projet pourrait être
accepté ou rejeté
– Cette analyse est réalisée par une équipe
(client, analyste, gestionnaire de projet,
spécialistes en marketing)
• Analyse du système actuel ou de la situation
actuelle
• Description du système proposé
• Analyse du système proposé
– Analyse de faisabilité
Analyse préliminaire (suite)
• Analyse de faisabilité
– Suite à l’analyse de faisabilité, le projet pourrait être
accepté ou rejeté
– L’analyse de faisabilité est réalisée par une équipe
pluridisciplinaire (analyste, gestionnaire de projet,
gestionnaires fonctionnels, client, utilisateurs
courants ou potentiels)
Analyse de faisabilité du logiciel
Système d’alarme
40
Calcul de la rentabilité financière d’un
projet individuel
Valeur actuelle nette: n
Ft
VAN I 0 1 t
où I 0 = investissement initial, t
1
k
Ft = flux de trésorerie net pour la période t,
k = taux de rendement minimal requis par la haute direction (TRAM)
• Si tous les Ft=A (une annuité),
VAN = I 0 A (1+ k ) - 1n
n
k(1+k )
• Respecter le signe des flux monétaires!
Un projet est rentable si sa VAN est positive. Tous les projets qui satisfont à ce
critère sont donc jugés acceptables financièrement.
Analyse de rentabilité (suite)
• Alternative 2: Acheter un système existant
et l’adapter aux besoins du client
• Délai de récupération de l’investissement
initial: DR = I0 / (Revenus - Dépenses) =
= 67 864 / (17 000 – 3 000) = 4.85 ans
• Valeur actuelle nette du projet (VAN):
– I0 = 67 864 $ (investissement initial)
– Ft = Revenust – Dépensest = 17 000 – 3
000 = 14 000$
– VAN = -67 864 + 14 000 * (1.155
-1)/0.15 /1.155 = -20 934 $
Analyse de rentabilité (suite)
• Conclusion:
– L’alternative 1: Développer un nouveau système s’avère
plus rentable que l’alternative 2: Acheter un système
existant et l’adapter aux besoins des clients:
• Délai de récupération plus court
• Valeur actuelle nette du projet positive
Exemple (suite)
2.4. Faisabilité temporelle
Le développement et le déploiement du système
doivent se faire le plus rapidement possible afin
que la station service soit aux normes le plus tôt.
Tests et corrections
5 jours / homme
Formation du personnel
10 jours / homme
3. Recommandations aux décideurs
• Résumé des alternatives proposées:
– Alternative 1: Développer un nouveau système:
• Délai de récupération: 3.05 ans
• VAN : 4 215 $
• Temps nécessaire: 85 jours/homme
• Conclusion:
– L’alternative 2: Acheter un système existant
et l’adapter aux besoins des clients s’avère
plus rentable que l’alternative 1: Développer
un nouveau système :
• Délai de récupération plus court
• Valeur actuelle nette du projet positive
3. Recommandations aux décideurs
logiciel de gestion de bibliothèque
• Résumé des alternatives proposées:
– Alternative 1: Développer un nouveau système:
• Délai de récupération: 4.16 ans
• VAN : -112.44 $
• Temps nécessaire: ??
– Alternative 2: Acheter un système
existant et l’adapter aux besoins du
client:
• Délai de récupération: 2.02 ans
• VAN : 38 487.55 $
• Temps nécessaire: ??