Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Projet IFT3150
Scoti
Développé par : Louis-Edouard LAFONTANT
Présentation
▪ Conception d’une plateforme de communication et collaboration pour étudiant avec des outils d’organisation.
▪ Besoins
▪ Poser et répondre à des questions
▪ Rester informer des annonces et nouvelles
▪ Organiser et planifier son travail
▪ Collaborer et partager avec d’autres étudiants
Introduction
1. Analyse des besoins
2. Conception et modélisation
3. Implémentation
4. Tests et documentation
5. Démonstration de l’application
6. Conclusion et perspectives
7. Période de questions
Plan de la présentation
✓Application mobile (app.)
✓Section Journal de l’app.
✓Section Fichiers de l’app.
✓Section Questions de l’app.
✓Suivre les bonnes pratiques de design et faire des tests.
✓Conception d’un RESTful API
✓Utiliser la base de données de l’app. comme cache
Solutions
Faire plus d’activités à partir de son téléphone
Centraliser l’information
Mieux organiser son travail
Trouver plus facilement des réponses et explications
Utilisable par tout étudiant
Ouvert à l’ajout d’autres app.
Fonctionner hors-ligne
Besoins
Analyse des besoins
Cas d’utilisations
Conception
▪Modèle relationnel robuste, normalisé et flexible.
▪API suivant l’architecture REST RESTful API
▪ Support de HATEOAS
▪Authentification avec JWT
▪Conception par patrons
Stabilité et abstraction des paquetsDiagrammes de paquets UML
Modélisation
Visual Studio 2017
ASP.NET Core + Xamarin
Implémentation
▪ SGBD : SQL Server
▪ Framework: ASP.NET Core
▪ Multiplateforme, Modularité
▪ Dependency injection
▪ Routage
▪ORM : Entity Framework (EF) Core – Code first
▪ Repository pattern – communication avec la base de données
▪ Utilisation de DTO pour le transfert de données
▪ Patrons: Constructeurs, Singleton, Adapteur, Observateur, MVC
Implémentation du backend
▪ Plateforme: Xamarin + MVVM Light Toolkit
▪ Réutilisation de 70% du code
▪ Performance proche du natif
▪ UI natif
▪ Architecture Model-View-ViewModel (MVVM)
▪ Implémentation du patron Model-View-Controller (MVC)
▪ Model: données de l’application; communique avec VM
▪ View: informe VM des actions de l’utilisateur
▪ ViewModel: expose les données de M et commandes possibles à V
▪ Application du Material Design et des principes de design
Implémentation du frontend
▪ Tests unitaires avec xUnit
▪ Tester tous les endpoints de l’API
▪ Tester les Helpers
▪ Style Arrange-Act-Assert (AAA)
▪ Utilisation de Mock object
Tests structurels
▪ Utilisation de Postman
▪ Simuler un client
▪ Valider le Content-type
▪ Valider le contenu
▪ Tests de performance (<200ms)
▪ Tests à la fumée
▪ Programme compile et s’exécute
▪ API répond aux requêtes
▪ Base de données créée
▪ Application mobile roule
Tests fonctionnels
Tests
• Créer un compte
• Connexion
• Section Journal
• Section Questions• Voir les questions et réponses
• Ajouter une question
• Voter une réponse
• Sections Fichiers• Lier un compte Dropbox
• Naviguer dans un dossier
• Partager un fichier
Démonstration
▪ Base de données complété
▪API complété, testé et documenté
▪App. mobile incomplète mais fonctionnel et utilisable
▪ Bonne expérience de ASP.NET Core, Xamarin et Postman
▪ Roadmap:
▪ Compléter l’application mobile
▪ Ajouter les fonctionnalités de Requête
▪ Faire les tests d’intégration et d’utilisabilité
Conclusion
Questions