LOG230 - Cours #2
Plan
Le plan sert à contrôler et à vérifier nos connaissances sur le projet. Il permet de le montrer aux clients et de connaître les ressources matérielles et humaines.
Les problèmes humains sont les problèmes les plus difficiles contrairement aux problèmes techniques qui sont les plus faciles.
Planification et gestion de projet
Le suivi de projet sert à comprendre les problèmes et les besoins du client. On doit être capable de concevoir un système pour résoudre le problème. On doit connaître: temps nécessaire pour créer et finir le système et les coûts. Le plan est donc indispensable pour répondre à ces questions.
Project Deliverables
Documentations - Demonstrations of functions, prototype, subsystems, accuracy, reliability-fiabilité, performance, security.
- Plan
- Collection de phases, d'activités, d'interactions entre les activités (dépendances), d'estimé de la durée de chaque activité et du moment où le produit sera complété.
- Activité
- Élément du projet qui se déroule pendant un temps déterminé.
- Élément avec une durée, une date de fin, une activité précédente dépendante.
- Contient un [endpoint, milestones, jalon] qui à 99% est un livrable.
- L'activité se déroule en série, en parallèles.
- Cheminement Critique
- Chemin le plus long dans un projet. Il faut évaluer chaque branche-chemin.
- Liste des activités avec un "Slack Time" à 0.
Real Time: Temps nécessaires
Available Time: temps disponible avant d'aller sur le chemin critique.
Slack Time (float): Available Time - Real Time.
Slack Time: Lastest start time - earliest start Time
Il faut connaître: le nombre de personne, leur tâche, qui fait quoi.
- Connaître les ressources
- La paie ($)
- L'expérience (h,$)
- Disponibilité
- Sous-Traitance
- Expérience
- Technique
- Gestion des Ressources
- Gestion des Clients
- Gestion des Risques
- Finances
Facteurs des ressources humaines
- Ability to perform the work
- Interest in the work
- Experience with similar [application, tool, languages, techniques, development, environment]
- Training (if not enough experience)
- Ability to communicate and to share responsability with others
- Management skills
Work Styles
- Extroverts: tell their thoughts.
- Introverts: we have to ask for suggestions (listen)
- Intuitives: base decisions on feelings
- Rationales: base decisions on facts, opinions
Lines of communications
n * (n - 1) / 2: Lines of communication when n is number of person.
A team size should be 12 or 13 persons max.
Problèmes potentiels
- But réunion n'est pas clair
- Participants sont non préparés
- Les responsables sont absents ou en retard
- Conversation hors sujet (loin du but)
- Participations discutent / dominent ou ne participent pas
- Décisions non prises en oeuvre
Qualité
- Communication
- Codage
Organisation du projet
Structure de l'équipe
- Historique de travail (background) des membres d'équipe
- Le nombre de personnes sur l'équipe (moins de 15)
- Les types de tâches, modèle de gestion clients/ress.
Chief Programmer team (one-to-one)
Chief Programmer, his assistant, Senior Programmer, Librarian, administrator, test team under Assitant. Junior Programmer under Senion Programmer.
Egoless Approach
- Holds everyone equally responsible
- Criticism is made of the product or the result, not the people
- All team members vote on a decision
Highly Structural
High Certainty, Repetition, Large
Loosely Structured (libre)
Uncertainty, new techniques or technology, small projects, creative [R & D]
Costs
Facilities and Environnment (10%), Staff: 50-80%, Tools: 10%, Training: 15%.
Estimation techniques
- Expert Judgement
- Algorithmic
[(pessimistic + 4 optimistic + most likely uess)/6] - Machine-Learning Method
[Expert System Approach]. Learn from the post project. Product The Future Cost. - Finding the model for your situation
- Neural Network approach
Chaque noeud a sa méthode ou son algorithme way of analysing. (Database, données historique) - Expert Judgement Delphi Technique
1. Ask each individual predictions secretly. 2. Calculate average estimate. 3. Present the estimate to the group. 4. Allow them to raise. - Case-based Reasoning (CBR)
Construire un historique de cas. Utiliser le CBR Système. Comment décrire les cas?- Nouveau problème comme cas
- Retrouver cas similaires
- Réutiliser les connaissances
- System. Suggérer nouvelle solution
Case-board Reasoning (CBR)
COCOMO, Boehm: COnstructive COst MOdel
COSMIC FFP [ets]. ISO.
PRED (x/10): précision, MMRE: erreurs...
Autres
Contrat: Plan de projet, Architecture, Gestion
Risque
- Évènement non désiré qui a des conséquences négatives
- Gérer les risques, comprendre et contrôler les risques
- Risque générique commun à tout logiciel
- RIsque spécifique: vulnérabilités particulières d'un projet donné.
Probability: occurence d'arriver. Exposure: (impact x probability)
Facteurs de risques
- Manque de personnel
- Échéanciers et budgets peu réalistes
- Développer les mauvaises fonctions
- Développer mauvaises UI (interface usager)
- Surfaire (gold plating), dépassement des coûts
- Changement continuel des exigences
- Déficience des tâches accomplies par les équipes extérieurs (sous-traitance)
- Déficience des composantes de v. extérieurs
- Performances en temps-réel déficientes
- Déficiences des capacités de l'équipe de développement
User / last definition
- Team: any collection of people responsible for producing a givent (desired) result.
- Stakeholder: anyone affected by that result or the way in which the result is achieved.
- Accounting: a report of what you have done, are doing, or plan to do.
- Consequences: with the goal of doing only what makes sens for team and stakeholders.