======================== Gestion de projet Chorem ======================== -------------------------------------------------- Outil de gestion et de suivi de projet dans Chorem -------------------------------------------------- .. contents:: 1. Bilan projet =============== Le bilan de projet pr��sente divers calculs financiers li��s aux projets. Un certain nombre d'��l��ments sont �� saisir manuellement, les champs en italique sont n��c��ssaires pour les calculs pr��sent dans le bilan/tableau de bord : 1.1. Quotation -------------- :*Interval*: l'intervalle de temps sur lequel se d��roule le devis :description: description du devis :*estimatedDays*: nombre de jours-homme estim��s :*amount*: montant factur�� au client :VAT: taxe �� appliquer au montant :conversionHope: pourcentage de r��ussite du projet :supplier: personne charg��e du dossier dans l'entreprise :customer: personne charg��e du dossier cot�� client :project: projet li�� au devis :category: cat��gorie du devis Pour chaque devis, un ensemble de t��che est associ��. Les calculs effectu��s sur les t��ches sont les m��mes que ceux des devis, seul le calcul de certains ��l��ments diff��rent. Les champs �� saisir manuellement des t��ches est : 1.2. Task --------- :*Interval*: l'intervalle de temps sur lequel se d��roule la t��che :description: description de la t��che :*dayExtension*: jours suppl��mentaire n��c��ssaires pour finir la t��che :*price*: prix factur�� pour la t��che :*estimatedDays*: nombre de jours-homme estim��s :name: nom de la t��che :*status*: statut de la t��che, devant ��tre actualis�� �� chaque modification de statut :*quotation*: devis li�� �� la t��che 1.3. Calculs ------------ Les calculs sont effectu��s gr��ce �� la classe **Calculation** pr��sente dans le package *org.chorem.project*. C'est une classe abstraite qui factorise les calculs des Task et des Quotation. Les classes **QuotationCalculation** et **TaskCalculation** d��finissent les m��thodes sp��cifiques au type d'objet. 1.3.1. TJM [1]_ estim�� ~~~~~~~~~~~~~~~~~~~~~~ Le TJM (ou ADR) est ce qui factur�� au client par jour:: adr = amount / estimatedDays 1.3.2. TJM r��el ~~~~~~~~~~~~~~~ Le TJM r��el est calcul�� en fonction du nombre de `jours r��els`_ :: adr = amount / realDays .. _`jours r��els`: 1.3.3. Jours r��els ~~~~~~~~~~~~~~~~~~ La m��thode realDays() permet de calculer le nombre de jours r��els qu'a pris le projet. Cette m��thode est abstraite dans **Calculation**. La dur��e r��elle d'un devis est la somme de la dur��e de ses t��ches. Le calcul de la dur��e r��elle est effectu��e de deux mani��res diff��rentes, si le devis est termin�� ou non. a. Devis non termin�� ____________________ Si le devis n'est pas termin��, le nombre de jours r��els est ��gal au nombre de jours ��stim�� plus le nombre de jours suppl��mentaire:: realDays = estimatedDays + dayExtension b. Devis termin�� ________________ Si le devis est termin��, le nombre de jours r��els est ��gal �� la somme des temps pass��s sur la t��che (objets Time):: realDays = �� time Le temps est divis�� en jours, en prenant comme diviseur l'horaire journalier de l'employ�� concern��.:: time = hours / employee.dailyHoursWorked 1.3.4. Diff��rence estimation/r��el ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Simple soustraction entre le nombre de jours estim��s et `jours r��els`_:: deltaDays = realDays - estimatedDays .. _`CJM estim��`: 1.3.5. CJM [2]_ estim�� ~~~~~~~~~~~~~~~~~~~~~~ Moyenne des CJM (ou ADC) des employ��s en fonction du pourcentage estim�� (pour un devis, un calcul du pourcentage moyen par employ�� est effectu�� au pr��alable):: estimatedAdc = �� employee.adc*employee.estimatedPercentage .. _`CJM r��el`: 1.3.6. CJM r��el ~~~~~~~~~~~~~~~ Moyenne des CJM (ou ADC) des employ��s en fonction du temps r��el pass��:: estimatedAdc = �� employee.adc*employee.timeSpent 1.3.7. Gain attendu ~~~~~~~~~~~~~~~~~~~ Le gain attendu est calcul�� �� partir du montant, du nombre de jours estim��s et du `CJM estim��`_ :: expectedProfit = amount - (estimatedDays * estimatedAdc) 1.3.7. Gain ou perte r��elle ~~~~~~~~~~~~~~~~~~~~~~~~~~~ Gain ou perte r��alis��e �� la fin du projet, calcul��e �� partir du nombre de `jours r��els`_ et du `CJM r��el`_ :: lossOrProfit = amount - (realDays * realAdc) 1.4. Alertes des t��ches ----------------------- En cas de d��passement des d��lais ou autre d��roulement non pr��vu, des alertes sont affich��es sur le tableau de bord. Voici la liste des ��venements d��clenchant, pour l'instant, des alertes : * La t��che devrait avoir commenc�� (statut "SCHEDULED" alors que la date de d��but est pass��e) * La t��che a ��t�� commenc�� en avance (statut "STARTED" alors que la date de d��but n'est pas pass��e) * La t��che devrait ��tre finie (statut "STARTED" alors que la date de fin est pass��e) * La t��che a ��t�� finie en avance (statut "FINISHED" alors que la date de d��but n'est pas pass��e) 2. Gestion des employ��s ======================= 2.1 Calcul du CJM ----------------- La classe **AdcCalculation** dans le package *org.chorem.project* g��re le calcul du CJM [2]_ (ou ADC). Le co��t journalier moyen d'un employ�� est calcul�� �� partir des donn��es sur un an:: adc = ( (totalExpenses / totalSalaries) /totalTimes) * employee.dailyHoursWorked * employee.dailySalary 2.1.1 D��penses totales ~~~~~~~~~~~~~~~~~~~~~~ Les d��penses totales sont la somme des paiements (FinancialTransaction) effectu��s par l'entreprise sur l'ann��e. Une simple requ��te Wikitty est effectu�� afin de r��cup��rer ces objets FinancialTransaction afin d'effectuer la somme des montants HT:: totalExpenses = �� expense 2.1.1 Salaires totaux ~~~~~~~~~~~~~~~~~~~~~ Somme des salaires des employ��s productifs ayant travaill�� durant l'ann��e, pond��r�� par le taux de productivit��.:: totalSalaries = �� ( employee.salary * employee.productivityRate ) 2.1.1 Total des temps ~~~~~~~~~~~~~~~~~~~~~ Somme des temps travaill�� durant l'ann��e pour les employ��s de l'entreprise:: totalTimes = �� employee.times .. [1] Taux Journalier Moyen (ADR : Average Daily Rate) .. [2] Co��t Journalier Moyen (ADC : Average Daily Cost)