Retour au portfolio

EasySave - Logiciel de Sauvegarde

Logiciel de sauvegarde professionnel évolutif développé en C#/.NET avec architecture MVC

Interface EasySave
Technologies Utilisées
C#.NET 8.0WPFMVCSHA-256JSONDoxygenJIRAGitScrum
Contexte du Projet

Projet académique réalisé dans le cadre d'un éditeur logiciel fictif (ProSoft), visant à développer un logiciel de sauvegarde performant et évolutif destiné à des utilisateurs professionnels.

L'objectif était de créer une solution fiable et simple d'utilisation, avec de fortes attentes en termes de performance et de maintenabilité du code.

Évolution par Versions

Version 1 - Base CLI

  • • Interface en ligne de commande (CLI)
  • • Création jusqu'à 5 travaux de sauvegarde
  • • Sauvegardes complètes ou différentielles
  • • Gestion des logs et états (JSON/XML)

Version 2 - Interface Graphique

  • • Interface graphique WPF moderne
  • • Sauvegardes illimitées
  • • Chiffrement SHA-256 intégré
  • • Détection de logiciels métiers bloquants

Version 3 - Optimisations Avancées

  • • Sauvegardes en parallèle pour les performances
  • • Gestion des priorités par extensions de fichiers
  • • Contrôles avancés : pause/relance/arrêt
  • • Console déportée avec communication par sockets
Architecture Technique

Architecture MVC

  • • Séparation claire Modèle / Vue / Contrôleur
  • • Modularité et maintenabilité du code
  • • Évolutivité assurée pour les versions futures

Technologies Core

  • • C# / .NET 8.0 pour les performances
  • • System.IO pour la gestion avancée des fichiers
  • • Persistance des données en JSON
  • • Chiffrement sécurisé SHA-256
Gestion de Projet

Méthodologie Agile

  • • Méthodologie Scrum avec sprints définis
  • • Gestion des tickets et backlogs via JIRA
  • • Rétrospectives et amélioration continue

Versioning et Documentation

  • • GitHub avec workflow Git complet
  • • Branches organisées : feature, dev, release, main
  • • Documentation générée avec Doxygen + PDF
Résultats et Apprentissages

Réalisations

  • • Logiciel modulaire et maintenable livré
  • • Évolutivité prouvée sur 3 versions majeures
  • • Interface utilisateur intuitive et professionnelle
  • • Performance optimisée avec sauvegardes parallèles

Compétences Développées

  • • Développement C#/.NET avancé
  • • Architecture logicielle MVC
  • • Gestion de projet agile (Scrum)
  • • Versioning Git et workflow collaboratif