L'équipe de développement

24
Dirigé par : M. D. R. BENAHACENE Travail Réalisé par : HASSANI Mustapha BENYAMMI Bachir Niveau : 4 eme Année informatique - Cycle long Ministère de l’Enseignement et de la Recherche Scientifique UNIVERSITE AMAR TELIDJI LAGHOUAT FACULTE DES SCIENCES ET DE L INGENIERIE DEPARTEMENT DE GENIE INFORMATIQUE Module Génie Logiciel II TH È ME: Année Universitaire 2006-2007

Transcript of L'équipe de développement

Dirigé par: M. D. R. BENAHACENE

Travail Réalisé par : HASSANI Mustapha

BENYAMMI Bachir

Niveau: 4eme Année informatique - Cycle long

Ministère de l’Enseignement et de la Recherche Scientifique

UNIVERSITE AMAR TELIDJI

LAGHOUAT

FACULTE DES SCIENCES ET DE L’INGENIERIE

DEPARTEMENT DE GENIE INFORMATIQUE

Module Génie Logiciel II

THÈME:

Année Universitaire

2006-2007

13 janvier 2016 L'équipe de développement 2

Plan Introduction.

Construction de l’équipe. Effectif.

Quelques problèmes rencontrés.

Organisation de l’équipe.

Rôles et responsabilités. Structuration de l’équipe.

Interne.

L’architecte

L’abstractionniste

l’ingénieur d’application

Conclusion.

P

L

A

N

D

U

T

R

A

V

A

I

L

13 janvier 2016 L'équipe de développement 3

L’équipe de développement comprend toute

Personne qui a un impacte sur le succès ou

l’échec d’un projet.

Un projet doit respecter le rôle de chaque un de

ces développeurs.

INTRODUCTION

I - Introduction

13 janvier 2016 L'équipe de développement 4

Les personnes sont plus importantes que n’importe quel processus ou matériel.

De bonnes personnes avec un bon processus seront toujours plus performantes que de bonnes personnes avec un mauvais processus.

Les processus qui réussissent ne sont jamais exécutés par des groupes d’agités irresponsables.

Les projets réussis nécessitent à la fois un bon processus et une équipe soudée.

INTRODUCTION

Personnes & Processus

13 janvier 2016 L'équipe de développement 5

II - Construction de l’équipe

CONSTITUTION

La constitution de l’équipe est une tache qui

entre dans les phases préliminaires pour une

bonne gestion de projet.

13 janvier 2016 L'équipe de développement 6

Effectif

Type du projet Taille de l’équipe

Petit 1 ou 2 personnes

Modeste 05 personnes

Complexe 50 personnes

Très complexe 100 personnes

CONSTITUTION

La taille de l’équipe est souvent appuyée

sur les deux facteurs qui sont la nature et la

taille du problème à résoudre.

13 janvier 2016 L'équipe de développement 7

Embaucher des hommes et des femmes intelligents n’est pas suffisant pour la réussite d’un projet, quelques problèmes peuvent être rencontrés:

Manque des développeurs.

1 à 2 % des développeurs sont hyper productifs.

Paiement des ce genre de développeurs.

Même une petite équipe intelligents ne conduisent pas toujours à résoudre certains problèmes complexes.

Un programme bien conçu n’est pas nécessairement un programme répond exactement au besoins (satisfaisant).

Quelques problèmes relatives à la

constitution d’une équipeCONSTITUTION

13 janvier 2016 L'équipe de développement 8

Quelques problèmes relatives à la

constitution d’une équipe (suite …)CONSTITUTION

Plus le personnel est nombreux, plus il est

vraisemblable que le projet échoue.

Un projet orienté objet ayant moins de personnel et

des compétences par rapport à un projet non orienté

objet.

Lorsque la complexité accroît, la taille de l’équipe

accroît aussi.

Assez de personnel sur un projet complexe ne

signifiera pas la terminaison dans les délais prévus.

13 janvier 2016 L'équipe de développement 9

I = n (n - 1) / 2

21 interactions pour 7 personnes

I = n * log n

6 interactions pour 7 personnes

Pourquoi organiser ?

Organisation de l’équipeCONSTITUTION

13 janvier 2016 L'équipe de développement 10

III - Rôles et responsabilitésLes développeurs hyper productifs sont, en moyenne, 4 à 10

fois plus productifs que le développeur moyen .

Problème :

comment construire une équipe motivée à l’aide des développeurs de talent moyens ?

Solution :

Des personnes différentes ont des compétences différentes.

Tout projet logiciel complexe demande un mélange de toutes ces compétences.

Découpage subtil de ces compétences :

Un petit projet les mêmes personnes jouent des rôles déférents.

Un grand projet chaque rôle peut être réalisé par une personne ou plusieurs personnes différentes.

RESPONSABILTES

13 janvier 2016 L'équipe de développement 11

Rôles et responsabilités (suite …)

Chaque groupes prend en charge les tâches d'études, de

développement, de documentation et de gestion du projet.

Toute équipe qui réussit est constituée de trois ensembles

généraux de rôles :

Interne : responsable de la production du logiciel ;

Suppléant : supporte les activités des développeurs

qui travaillent sur l’interne du système ;

Périphérique à frontière du projet et son contexte.

RESPONSABILTES

13 janvier 2016 L'équipe de développement 12

Structuration de équipeCONSTITUTION

Architecte

Abstractionniste

Ingénieur

d’application

Équipe de

développement

Équipe

interne

Suppléant

Périphérique

Directeur

Responsable

de produit

Utilisateur

final

Support

technique

Chef de

projet

Analyste

Intégration

Assurance

qualité

Administrateur

système

...

Responsable

d’outils

13 janvier 2016 L'équipe de développement 13

A - L’équipe Interne (équipe de base)

C’est le groupe des personnes qui touchent au code:

L’architecte Structuration entière du système (10%)

L’abstractionniste Gestion de l’architecture des sous

systèmes (30%)

L’ingénieur d’application Développement et

intégration des classes et des sous systèmes (50%)

Les autres 10% qui reste ont pour des rôles du support.

RESPONSABILTES

13 janvier 2016 L'équipe de développement 14

Activités de L’architecteResponsable de l’évolution et de la maintenance de

l’architecture du système :

Définir l’architecture du logiciel;

Maintenir l’intégrité architecturale du logiciel;

Évaluer les risques techniques lors de la conception du logiciel;

Proposer l’ordre et le contenu des itérations successives et aider lors de leur planification;

Aider lors des phases variées de conception, d’implémentation, d’intégration et d’assurance de la qualité;

Assister les commerciaux pour la définition des futurs produits.

RESPONSABILTES

13 janvier 2016 L'équipe de développement 15

Compétences souhaités de l’architecte

L’expérience : l’expertise du domaine et la conception de

logiciel sont autant essentielles l’une que l’autre;

La direction : l’architecte doit avoir l’intérêt, la confiance,

le charisme et l’autorité nécessaire à la conduite de l’effort

technique;

Proactif et orientée sur les buts : l’architecte ni un

chercheur assistant, ni un technologiste; il doit pouvoir

conduire à la construction d’un produit concret et complet

afin d’affronter la création de système conçue pour le

monde réel.

RESPONSABILTES

13 janvier 2016 L'équipe de développement 16

Résultats attendus par l’architecte

L’architecte est responsable de certaines nombre de

livrables:

Document d’architecture;

Documents de conception de bas niveau;

Document d’aide de conception et de

programmation;

Des éléments des plans de version;

Les résultas des réunions et des revues;

Les audits de conception du système livré.

RESPONSABILTES

13 janvier 2016 L'équipe de développement 17

Activités de l’abstractionniste

C’est un personne qui est responsable de la conception des classes et des catégories de classes. (transforme la vision de l’architecte en réalité).

Identifier les classes , les groupes de classes et les mécanismes relevant du domaine et de l’implémentation;

Concevoir, défendre et négocier l’interface et les services des catégories de classes individuelles et diriger leur implémentation;

Tester les catégories de classes;

Conseiller l’architecte sur l’ordre et le contenu des itérations successives et les planifier;

Épauler et diriger les ingénieurs d’application qui sont sous le contrôle des abstractionnistes;

Remplacer l’architecte pendant son absence.

RESPONSABILTES

13 janvier 2016 L'équipe de développement 18

Résultats attendus par l’abstractionniste

Éléments du document d’architecture:

Documents de conception;

Interfaces et l’implémentation des catégories de

classes et des classes;

Révision et vérification de certaines classes.

RESPONSABILTES

13 janvier 2016 L'équipe de développement 19

Activités de l’ingénieur d’application

Responsable de l’implémentation des classes et des mécanismes invités par l’architecte et les abstractionnistes.

Implémenter, sous la responsabilité d’un abstractionniste, la

conception des classes et des mécanismes dans le contexte d’une catégorie de classes;

Écrire des petits programmes qui fonctionnent dans le langage des classes et des mécanismes dans le contexte d’une catégorie de classe;

Exécuter la conception tactique de classes;

Exécuter le test des classes;

Conseiller l’abstractionniste au regard des risques tactiques;

Participer à la rédaction des revue;

Remplacer l’abstractionniste pendant son absence.

RESPONSABILTES

13 janvier 2016 L'équipe de développement 20

Résultats attendus par l’ingénieur

Un ingénieur d’application est grandement

responsable de la production de code.

Les ingénieurs d’application apporteront souvent

leurs contributions à l’élaboration des documents de

conception et de la documentation utilisateur.

RESPONSABILTES

13 janvier 2016 L'équipe de développement 21

Quelques spécialités

Système d’information: Conception d’interface graphique;

Programmation des bases de données;

Programmation réseaux;

Programmation des transactions;

Sécurité et administration;

Ingénierie; Gestion de périphériques;

Gestion de processus;

Algorithmique

RESPONSABILTES

13 janvier 2016 L'équipe de développement 22

Allocation des ressourcesRESPONSABILTES

Ingénieur d’application

Abstractionniste

Architecte

Conception MaintenanceEvolusion

Ressources

Analyse

Cycle de vie

Ressource : durée, budget, nombre, outils, …

13 janvier 2016 L'équipe de développement 23

Activités du chef de projet

Responsable de la construction de l’équipe de développement et la conduite du projet.

Négocier, établir, coordonner et surveiller les produits livrables du projet;

Établir et conduire le calendrier du projet;

Affecter le personnel au projet;

Assigner le travail à faire à l’équipe;

Gérer le budget du projet;

Faire communiquer les directeurs du projet et la communauté utilisateur.

RESPONSABILTES

13 janvier 2016 L'équipe de développement 24

Conclusion

Les individualités sont importantes mais dans le monde industriel du développement de logiciel les équipes sont encore plus importantes.