Formation Qualité du développement objet


  • PATRONS DE CONCEPTION ET MÉTRIQUES QUALITÉ
REFERENCE
 
 
DQUA
DUREE
 
 
2 jours
TARIFS
 
 
1420 € HT
Niveau : Intermédiaire
Classe à distance: Possible

Vous pouvez suivre cette formation en direct depuis votre domicile ou votre lieu de travail. Plus d'informations sur notre solution de classe à distance...

OBJECTIFS :
 

La programmation orientée objet (POO) est le paradigme de programmation le plus utilisé actuellement car c’est sûrement celui qui apporte le plus d’évolutivité, de maintenabilité et de fiabilité aux applications développées.
Malgré ses qualités propres, la POO nécessite beaucoup d’expertise si l’on veut atteindre les critères de qualité demandés par l’industrie. Les développeurs expérimentés et les architectes doivent avoir une connaissance et une compréhension des patterns architecturaux et de conception. Ces patterns recensent les problèmes fréquemment rencontrés dans l’ingénierie logicielle, leurs solutions, leurs conséquences.

En dehors des aspects collaboration et organisation des classes, le code source en lui-même a également des influences sur la qualité finale d’un logiciel. Des standards définissent les caractéristiques qualité d’un logiciel, leurs métriques associées ainsi que les méthodes de calcul par l’analyse du code source. La plateforme SonarQube est l’outil standard de facto qui rassemble tous les outils nécessaires à l’analyse du code source pour tous les langages informatiques. En dehors du calcul des indicateurs, SonarQube permet la mise en place d’une démarche qualité adapté aux spécificités d’un projet. Cet outil s’intègre généralement dans les pipelines d’intégration continue utilisés dans les usines logicielles.

Afin de traiter les 2 axes décrits ci-dessus et de les illustrer avec des outils ou travaux pratiques, ce module est divisé en 2 parties :

  • Les bonnes pratiques de la programmation orientée objet : patrons de conception et d’architecture
  • Qualité du code source et application d’une démarche qualité lors des projets de développement informatique.
PRÉ-REQUIS :
 

Il est important de connaitre un ou plusieurs langages de programmation objet.

PUBLIC :
 

Les profils visés pour cette formation sont les architectes, chefs de projet, développeurs.

PROGRAMME :
 

Jour 1 : Patrons d’architecture et patrons de conception

Introduction aux patterns

Historique des design patterns
Objectifs d’un pattern
Formalisme de description
Distinction design pattern et patterns architecturaux
Typologie des design patterns

Les Patrons de création

Rendre un système indépendant de la façon dont les objets sont créés
Étude des patrons : fabrique abstraite, constructeur, prototype, singleton

Travaux Pratiques :

Reconnaissance d’un pattern d’après le problème posé, implémentation

Les patrons de structuration

Composer des objets pour obtenir de nouvelles fonctionnalités
Identifier des structures de classes abstraites et évolutives
Étude de : adapteur, pont, composite, décorateur, façade, proxy

Travaux Pratiques :

Reconnaissance d’un pattern d’après le problème posé, implémentation

Les Patrons de gestion de collaboration

Identifier des coopérations évolutives
Étude de : chaîne de responsabilités, commande, interpréteur, itérateur, médiateur, mémento, observeur, état, stratégie, patron de méthode, visiteur

Travaux Pratiques :

Reconnaissance d’un pattern d’après le problème posé, implémentation

Patterns architecturaux

Architecture en couche
Architecture MVC
Architecture distribuée : SOA, micro-services

Travaux Pratiques :

Organisation en couche d’une application Web (JavaEE ou .NET)
Framework MVC pour la construction d’interface

Jour 2 : Qualité du code

Introduction à la qualité

Argumentaire pour l’analyse de code
Définition d’une métrique, métriques internes et externes
Modèles qualité du logiciel, les efforts de standardisation, les normes SQuaRE
Mise en œuvre, qualité et intégration continue
Classification et panorama des outils d’analyse
L’offre de Sonar (SonarQube et SonarLint)

Mise en place d’une démarche qualité

Les règles de codage, règles standard, règle propre à un langage, spécifique à un projet
Les transgressions : typologie, classification et sévérité
Notion de dette technique, workflow de résolution des transgressions, rôles projet
Concepts pour adapter la démarche :  profils qualité, leak periods, indicateurs, métriques et portes qualité
Recommandation pour la définition des objectifs et amélioration continue

Travaux Pratiques :

Installation de SonarQube, présentation de l’interface
Analyse d’un projet (Java, C/C++ ou .NET), personnalisation des règles

Fiabilité d’un logiciel

Les bugs
Examens des règles liés aux les bugs pour les différentes technologies Java, C/C++ et .NET
Le rôle des tests dans la fiabilité d’un logiciel. Testabilité d’un logiciel. Typologie des tests.
Couverture des tests, explication du calcul des différents métriques Sonar
Les outils pour les différentes technologies, les objectifs à atteindre

Travaux Pratiques :

Intégration des plugins de couverture de test pour les différentes technologies
Écriture d’une classe de test et visualisation des effets sur la couverture

Maintenabilite

Les sous-caractéristiques et métriques associées
Anti-patterns et code smells, examens de certaines règles
Calcul de la complexité d’un code, complexité cognitive, duplications
La documentation, Importance des APIs, Métriques fournies par Sonar, Documentation non prise en compte par Sonar

Travaux Pratiques :

Comparaison de librairies Open Source, appropriation du code source

Sécurité

Sous-caractéristique de la sécurité : Confidentialité, Intégrité, Non-répudiation, Traçabilité, Authenticité
Examens des règles provoquant des vulnérabilités
Intégration avec SonarQube

Travaux Pratiques

Démonstration d’une vulnérabilté, correction

Performance

Sous-caractéristique de la performance : Utilisation des ressources, temps de réponse, débit
Métriques externes, outillage, surveillance continue, profiling
Modélisation de la charge
L’activité d’optimisation

Travaux Pratiques :

Modélisation de charge d’une application web

S'INSCRIRE À CETTE
FORMATION QUALITÉ DÉVELOPPEMENT
Cliquez sur une date pour vous inscrire
Information pratiques sur
LA FORMATION
Lieu de la formation Paris - LA DEFENSE
Nous contacter 01 43 34 90 94
CETTE FORMATION SUR-MESURE Ce cours est réalisable en intra-entreprise, dans vos locaux ou nos salles de cours CONTACTER NOTRE SERVICE INTRA
D'autres formations
SUR LE MÊME THÈME

3 j

 
Le Test Driven Development (TDD), développement dirigé par les tests est une technique de programmation simple, élégante et efficace. Cette pratique des équipes...

3 j

 
Le code legacy désigne du code présent dans nos applications, difficile à maintenir, souvent de mauvaise qualité et n'ayant pas été testé...

3 j

 

Développement

Maîtriser Clean Code
Le terme « Clean Code » désigne les pratiques, principes et standards qui définissent un code de qualité. Les équipes suivent cette méthode pour...

1 j

 

Développement

Revue de code
La Revue de code est à présent reconnue comme l'une des meilleures pratiques pour améliorer la qualité du développement. Elle apporte de nombreuses...
Plus de formations sur le même thème

Des questions ?

ON VOUS RAPPELLE

Votre formation Qualité du Développement Objet prise en charge à 100% ! *

Depuis 2011, Atlas (ex-Fafiec) a sélectionné PLB Consultant pour vous proposer les meilleures formations autour du développement objet avec .NET, Java et C++.

Sessions inter-entreprise sur Paris et Lille.
Sessions intra-entreprise sur toute la France.

*100% des coûts pédagogiques, offre valable dans la limite des fonds mutualisés dédiés aux actions collectives, en application des critères de prise en charge en vigueur (voir conditions détaillées sur le site d'Atlas)

 

0

Formations
Informatique
et Management
en ligne à ce jour

+ 0

Stagiaires dans nos
salles de cours sur
l'année

0%

De participants
satisfaits ou très
satisfaits de nos
formations

0

Formateurs experts
validés PLB