Résumé GL

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 6

INETRNES :

GENIE LOGICIEL

Documentable  précédé par un doc de conception

Génie Logiciel Lisibilité et clarté  écrit proprement

Portabilité  fonctionnel sur plusieurs machines et


Génie civil Progs informatiques indépendant de son environnement d’exécution
Art de construction Documentation Extensibilité  ajout de nouvelles fonctionnalités(flexible)

Discipline  méthodes, techniques et outils Réutilisabilité  des parties pour d’autres logiciels =

Basée sur le savoir  théorique Interopérabilité et coulabilité  interagir en synergie

Le savoir-faire  compétence, ressource humaine Traçabilité  le suivi d’un produit aux diff stades

Le faire savoir  communication Testabilité et vérifiabilité  le soumettre à une épreuve de


confirmation de la tâche à exécuter
Pour produire  développement, réalisation

De façon industrielle  travail d’équipe, méthodologie SCRUM

Des logiciels  les produits Ce cadre méthodologique agile


révolutionne la manière dont on gère un
De qualité au meilleur prix  qualité/prix projet
Il permet de délivrer et de modifier un
FACTEUR DE QUALITE DE LOGICIEL projet, un produit ou une fonctionnalité
très rapidement
Basée sur des rôles, composée de 6 à 10
Critères externes Critères internes
personnes :
- Développeurs
EXTERNES : - Testeurs
- Architectes
- Product owner : le chef de produit
Fiabilité  conformité de ses spécifications représentent le client, il définit les
spécifications fonctionnelles et établit
Robustesse, sureté  stable et disponible
la liste des priorités de ce qu'il faut
Efficacité  bon usage en termes de mémoire et temps développer.c'est aussi le product
d’exécution owner qui valide les fonctionnalités
- Scrum master : est garant du respect
Convivialité, utilisabilité  facile et agréable à utiliser des processus scrum il s'assure d'une
bonne communication entre les
Documentable  tuto ou un manuel utilisateur
membres de l'équipe
Ergonomique  adaptable aux conditions de travail et
User Story  Product Backlog  Sprint Backlog
d’utilisateur
User Story : capturer les besoins et les
Sécurité  absence du danger et la garantie offerte
fonctionnalités souhaitées du point de
Adéquation et validité  conformité au maquettage et but vue de l'utilisateur
Product Backlog : une liste dynamique et
Intégrité  aptitude à protéger le code et les données priorisée de toutes les fonctionnalités, les
exigences, les améliorations et les
corrections qui doivent être réalisées sur
un produit
Sprint Backlog : contient les tâches CASCADE :
spécifiques qui doivent être accomplies  Se divise en étapes
pour atteindre les objectifs du sprint  Entre 2 étapes se trouvent une validation
Sprint Planning Meeting : permet  On commence une activité qu’après avoir
également de clarifier les exigences, de terminé celle qui précède
discuter des dépendances et des  En cas d'erreur découverte lors des tests,
contraintes, et de définir les critères il est nécessaire de retourner à la phase
d'acceptation pour chaque élément du de programmation
product backlog sélectionné Avantages :
Sprint Meeting Review : l'équipe de - Structure claire
développement présente les éléments Inconvénients :
terminés du sprint backlog, en mettant - Détection tardive des erreurs (cout
l'accent sur les fonctionnalités élevé)
développées et les objectifs atteints. Les
participants peuvent interagir avec le
produit, poser des questions et fournir
des commentaires

GESTION DES EXIGENCES

Recueil des données  Analyse des besoins  Spécification des exigences

 Collecte des besoins


- Questionnaires EN V :
- Sondages
- Interviews  Composé de 3 phases
- Brainstorming - Conception
 Filtrage des besoins - Réalisation
- Elimination d’ambiguïté, - Validation
incohérences et incomplétude  Enchaînement séquentiel (modèle en
cascade) de gauche à droite, les résultats
Cahier de spécification des besoins ou cahier de des étapes de départ sont utilisés par les
charge étapes d’arrivée
Avantages :
CYCLE DE VIE LOGICIEL - Détection précoce des erreurs
Inconvénients :
 Ensemble des étapes qui composent le
- Faible flexibilité aux changements
processus de développement et
d’utilisation du logiciel

Modèle de cycle de vie : servent de guide pour


structurer et gérer efficacement les projets, en
s'assurant que toutes les activités nécessaires sont
prises en compte et exécutées de manière
appropriée pour atteindre les objectifs fixés

 On a 2 familles de modèles

Itérative et Linéaire
Incrémentale

Prototypage Cascade
Spirale En V
Incrémental
PAR PROTOTYPAGE : - Modèle complet, complexe et général
Inconvénients :
 Enchaîner les développements de - Difficile à appliquer
prototypes et à les soumettre pour
validation/remarque au client

Avantages :
- Le client participe activement dans le
développement du produit
Inconvénients :
- Temps et couts supplémentaires

LES METHODES

Lourde Agile

UP Scrum
RUP
2TUP
INCREMENTAL :
Processus Unifié
 Développer des applications en étendant
Caractéristiques :
PROGRESSIVEMENT ses fonctionnalités.
 Permet d’éviter de TOUT CONCEVOIR, de - Piloté par les cas d’utilisation
TOUT TESTER - Itératif et incrémental
 Extension successive à partir d’un produit
- Centré sur l’architecture
- Orienté risques
« Noyau » du logiciel
Composants :
Avantages :
 4 phases :
- Les intégrations sont progressives - Etude d’opportunité
Inconvénients : - Elaboration
- Risque de fonctionnalités inachevées - Construction
- Transition
 5 activités :
- Expression des besoins
- Analyse
- Conception
- Implémentation
- Test

EN SPIRAL :

 Développement itératif (prototypes)


Avantages :
CONCEPTION :
RUP (Rational Unified Process)
 Est une instance/implémentation de UP  ARCHITECTURE GLOBALE Niveaux
 ARCHITECTURE DETAILLEE conceptuels
Artéfact : élément d’information utilisé lors d’une
activité de développement logiciel PATRONS D’ARCHITECTURE
Activité : opération exécutée au sein d’un état
 Modèle en couches :
Rôle : comportement et responsabilité d’un ensemble  3 couches :
de personnes
- Présentation (IHM)
- Applicative
2TUP (2 Track Unified Process) - Infrastructure
 5 couches :
 Branche fonctionnelle : Capture les besoins
- IHM
fonctionnels
- Logique applicative
 Branche technique : Capitalise un savoir-faire
technique et/ou des contraintes techniques - Métier
 Phase de réalisation : Réunir les deux branches, - Accès donnés
permettant de mener une conception applicative - Infrastructure
 Modèle MVC :
- Model
Agile - Controller
4 valeurs :
- Priorité aux personnes et aux interactions sur les
procédures et les outils ARCHITECTURE PHYSIQUE
- Priorité aux applications fonctionnelles sur une 1-NIVEAU : couches situées sur la même machine
documentation pléthorique
- Priorité à la collaboration avec le client sur la 2-NIVEAUX : séparées sur 2 sites (serveur et postes)
négociation de contrat
- View
- Priorité à l'acceptation du changement sur la
planification
12 principes :
1. Priorité à la satisfaction du client QUALITE DE LA CONCEP TION
2. Accueillir favorablement les changements de ARCHITECTURALE
besoins
 Critères de qualité :
3. Livrer fréquemment des logiciels opérationnels
4. Collaboration étroite entre les parties - Faible couplage
prenantes - Forte cohésion
5. Construire des projets autour de personnes
motivés. PATRONS DE CONCEPTION
6. Conversation face à face
7. Logiciel opérationnel comme principale
mesure de progrès De création De De
8. Maintenir un rythme de développement structure comportement
soutenable Factory Adapter Command
9. Excellence technique et conception Builder Bridge Iterator
10. La simplicité Prototype Composite Observer
11. Les équipes autoorganisées Singleton Facade State
12. Réflexion et adaptation régulières Factory method Proxy Template
method
Problèmes liés au non-respect des critères
ARCHITECTURE ET CONCEPTION DE de qualités :
LOGICIELS - Difficulté de maintenabilité
- Difficulté de réutilisabilité
Logique Physique - Problème de performance
GESTION DE CONFIGURATION des violations d’accès mémoire ou erreurs
de gestion d’exception
LOGICIELLE

 Discipline de gestion qui vise à contrôler Fuite de mémoire :


et gérer les éléments constitutifs d'un
Dysfonctionnement dans les opérations
logiciel tout au long de son cycle de vie.
d'allocation de mémoire. La quantité de
Elle comprend la gestion des versions, la
mémoire utilisée par le logiciel défaillant
gestion des modifications, la traçabilité
va en augmentant continuellement et
des composants, la gestion des baselines
gêne le déroulement des autres logiciels
(lignes de base), et la gestion de la
et les entraîne à des dysfonctionnements
documentation associée
 Les principes de base : Vulnérabilité :
- La journalisation :
 Controller les modifications Faiblesse dans un système informatique
apportées à chaque fichier ou permettant à un attaquant de porter
composant atteinte à l'intégrité de ce système, c'est-
- La gestion des versions : à-dire à son fonctionnement normal, à la
 Gérer les changements confidentialité et l'intégrité des données
▪ Num de version : qu'il contient. On parle aussi de faille de
modification majeure sécurité informatique.
▪ Num de révision : ajout Faute de segmentation :
de fonctionnalités
▪ Num de correction : Dysfonctionnement dans des opérations
correction des fautes de manipulations de pointeurs ou
- La gestion des conflits d'adresses mémoire.
 Optimiste : chaque développeur
Buffer Overflow :
travaille à son rythme (en cas de
conflit intervention manuelle) Le comportement de l'ordinateur devient
 Pessimiste : utilisation de lock imprévisible à cause du Dépassement de
 Architecture centralisée : tampon ou débordement est un bug par
- Tout passe par le serveur (nœuds) lequel un processus, lors de l'écriture dans
 Architecture décentralisée : un tampon, écrit à l'extérieur de l'espace
- Chacun travaille à son rythme de alloué au tampon, écrasant ainsi des
manière indépendante informations nécessaires au processus.

TESTS ET VALIDATION Deadlock ou inter blocage :

Tester c’est exécuter le programme dans Un mécanisme de prévention provoque


l’intention d’y trouver des anomalies ou l'annulation de l'opération lorsque la
des défauts durée d'attente dépasse le délai
Le test logiciel est le maillon principal dans admissible
la chaîne d’assurance qualité produit Dysfonctionnement durant lequel
plusieurs processus s'attendent
ANOMALIES LOGICIELLE S mutuellement, c'est à dire qu'ils attendent
Bug : chacun que l'autre libère les ressources
qu'il utilise pour poursuivre.
Dysfonctionnement causé par un défaut
de conception ou de réalisation METHODES DE TESTS

Crash applicatif ou Deny of Service: Méthode boite noire : fonctionnement externe


(fonctionnalités)
Logiciel cesse de fonctionner d’une
manière inattendue et abrupte à cause
Méthode boite blanche : fonctionnement interne
(code)

Méthode boite grise : combinaison des deux


approches (externe et interne)

TYPES DE TESTS

 Test nominal : données volontairement


valides
 Test de robustesse : données
volontairement invalides
 Test unitaire : tester les fonctions ou les
modules du code par les programmeurs
 Test d’intégration : valider le bon
fonctionnement d’une ou plusieurs
parties
 Test de non-régression : tests liés au
changement
 Test d’administration : se focaliser sur les
aspects d’administration
 Test de sécurité : détecter les
instructions et les failles de sécurité

Vous aimerez peut-être aussi