1 / 15

Currency Converter

31 juillet 2012. Currency Converter. LOG530 - Été 2012 Michaël Groulx Sylvain Michaud Antoine Morin Guillaume Sigouin. Plan de la présentation. Présentation du système source Rétro-ingénierie et architecture Diagramme de classes Organisation relationnelle Analyse Étapes d'ingénierie

tayten
Download Presentation

Currency Converter

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 31 juillet 2012 Currency Converter LOG530 - Été 2012 Michaël GroulxSylvain MichaudAntoine MorinGuillaume Sigouin

  2. Plan de la présentation • Présentation du système source • Rétro-ingénierie et architecture • Diagramme de classes • Organisation relationnelle • Analyse • Étapes d'ingénierie • Présentation du système mobile • Démonstration • Avantages et inconvénients • Améliorations possibles • Conclusion • Difficultés rencontrées • Leçon apprise • Questions

  3. Définitions préalables CSV : Comma-separated values = Valeurs séparées par des virgules. Toast : Une notification à l'utilisateur.

  4. Présentation du système source

  5. Rétro-ingénierie et architecture Rétro-ingénierie pour récupérerl'architecture Trois étapes : • Décompilation avec DJ Java Decompiler • Diagramme de classe avec Eldean ESS-Model • Organisation relationnelle avec Structure 101

  6. Diagramme de classe classes indépendantes de l'interface utilisateur classes définies dans des librairiesexternes classes en lien avec l'interface utilisateur

  7. Organisation relationnelle Classes principales de l'application

  8. Analyse • Utilisation de composantes Swing • Présence de code puant • Quatre Data Class(classes ne contenant que des get/set) • Une Schizophrenic Class(multiples abstractions) • Plusieurs Long Method(code très volumineux) • Utilisation de librairies externes • appframework-1.0.3 (simplification de Swing) • swing-worker-1.1 (gestion des fils d'exécution)

  9. Étapes d'ingénierie • Code smell: Long Method • Corrigé par le refactoring Extract Method • Remplacement des Data Class • Réutilisation de code • Patron Most valuable first

  10. Démonstration du système mobile

  11. Démonstration Cas d'utilisation 1 : Convertir 600 $ canadien en franc suisse. Cas d'utilisation 2 : Convertir 2000 $ canadien en livre sterling.

  12. Avantages et inconvénients Avantages : • Consultation possible partout et en tout temps • Extensibilité du cadriciel Android • Frais de commercialisation peu élevés • Maintenance améliorée Inconvénients : • Multitude de téléphones Android • Non disponible sur d'autres plateformes

  13. Améliorations possibles • Utilisation de la géolocalisation • Affichage des valeurs des devises • Historique des valeurs des devises • Personnalisation de l'interface • Personnalisation de la mise à jour des devises automatique

  14. Conclusion Difficultés rencontrées : • Le code source n'était pas fourni • L'ajout d'images dans un Spinner est complexe • Conversion des devises en fonction du nombre de décimal • Temps d'adaptation à l'environnement de développement Leçon apprise : • Pas toujours réutiliser le code (Exemple : fichier CSV)

  15. Questions

More Related