Pascal Chouinard, UQAM Louis Martin, UQAM Table des matières ...

chuckleelephantbutteSoftware and s/w Development

Jun 9, 2012 (5 years and 5 months ago)

442 views

1
TP1 INF2015 AUT 2011
Louis Martin, UQAM
Pascal Chouinard, UQAM
2011-10-11
Table des matières
1. Énoncé .......................................................................................................................................... 1
2. Changement apporté le 2011-09-22 .................................................................................................... 1
3. Précicions apportées le 2011-10-11 .................................................................................................... 1
4. Exemple d’un fichier intrant ............................................................................................................. 2
5. Exemple d’un fichier extrant ............................................................................................................. 3
1. Énoncé
L’objectif du TP1 est de développer un logiciel permettant de calculer les modalités de remboursement de prêt.
Il y a un intrant au programme : un répertoire contenant un certain nombre de fichiers de type JSON, chaque fichier
décrivant les paramètres initiaux d’un prêt à traiter.
Il y a un extrant au programme : un répertoire contenant, pour chaque fichier en intrant, un fichier de type JSON
décrivant les modalités de remboursement du prêt.
Le travail doit respecter des normes de codification et de nommage cohérentes, inclure des tests conséquents et être
sous un système de gestion de version, dans les faits sous Github.
Il est fort possible que des changements soient apportés au TP comme il arrive que ce soit le cas dans la réalité.
L’approche Agile accueille les changements avec joie...
2. Changement apporté le 2011-09-22
Il est demandé de rajouter pour chaque période d'amortissement les trois éléments suivants :
1.Le cumulatif des versements totaux
2.Le cumulatif des intérêts payés
3.Le cumulatif du capital remboursé
L'exemple du fichier extrant ci-dessous a été modifié en conséquence.
3. Précicions apportées le 2011-10-11
Votre programme doit pouvoir s'exécuter à partir d'une ligne de commande de la façon suivante, en prenant pour acquis
que le classpath est défini correctement :
java ca.uqam.inf2015.aut2011.tp1.nom_equipe.Main repertoireIntrant repertoireExtrant
TP1 INF2015 AUT 2011
2
Le nom_equipe est remplacé par le nom de votre équipe. Les noms des répertoires sont également variables.
Dans votre dépôt Github, au plus haut niveau, un fichier portant de nom de build.gradle doit être présent et doit
contenir les éléments suivants :
//
// Louis Martin 2011-10-11
//
// Fichier à inclure sous le répertoire principal de votre dépôt Github
//
apply plugin: "java"
repositories {
mavenCentral()
}
// Inscrivez les dépendances à des bibliothèques externes
// Le site de MavenCentral contient les paramètres à inclure
// Les dépendances ci-dessous sont à titre d'illustration
dependencies {
compile 'com.google.code.gson:gson:1.7.2'
compile 'org.hibernate:hibernate-validator:4.2.0.Final'
testCompile 'junit:junit:4.9'
}
// Indiquez le chemin à partir du présent fichier vers votre code source
// Ci-dessous le chemin utilisé est celui pour un projet NetBeans
sourceSets {
main {
java {
srcDir 'src'
}
resources {
srcDir 'src'
}
}
test {
java {
srcDir 'test'
}
resources {
srcDir 'test'
}
}
}
4. Exemple d’un fichier intrant
Nom du fichier : Test 1.json
{
"id":"Test 1",
"description":"Premier test",
"montant":100000,
"nombreAnnee":25,
"frequenceRemboursement":12,
"tauxInteret":6,
"frequenceComposition":2
}
TP1 INF2015 AUT 2011
3
5. Exemple d’un fichier extrant
Nom du fichier : Test 1.json
{
"id":"Test 1",
"description":"Premier test",
"montant":100000,
"nombreAnnee":25,
"frequenceRemboursement":12,
"tauxInteret":6,
"frequenceComposition":2,
"versementPeriodique":639.81,
"amortissement" : [
{
"période":1,
"capitalDebut":100000.00,
"versementTotal":639.81,
"versementInteret":493.86,
"versementCapital":145.95,
"capitalFin":99854.05,
"versementTotalCumulatif":639.81,
"versementInteretCumulatif":493.86,
"versementCapitalCumulatif":145.95
},
...les autres périodes...
]
}