Skip to content

Development roadmap

Barbara Post edited this page Jan 22, 2018 · 9 revisions

This is the indicative development roadmap.

  • Analyse globale (entités, principes)

  • Implémentation des entités

  • Implémentation des interfaces des repositories

  • Implémentation des repositories DB-agnostiques

  • Implémentation des repositories pour Sqlite - pas nécessaire

  • Implémentation de EntityRegistrar (DB-agnostique et Sqlite)

  • Création initiale de la DB Security sqlite

  • Module applicatif d'inserts d'initialisation de la DB Security (rôles, groupes, permissions, utilisateurs)

  • Module de calcul des permissions finales d'un utilisateur + test unitaire. Correction oubli. Tags permission_manager, permission_manager_2, user_manager_login.

  • Mise à jour ExtCore 3.1.0

  • Issue #4 : Réalisation des parties manquantes dans le module Security, et de la partie MVC. Scope : page de login, l'authentification, si on est loggué on va sur le dashboard avec un message d'accueil. Se référer à la page d'analyse détaillée Confluence.

    • Réaliser notre UserManager (projet Security)
    • Réaliser les ViewModel (SignInViewodel), Controller (AcccountController) et vues (SignIn et AccessDenied), voir paragraphe "Eléments MVC" de l'analyse détaillée (page Confluence) qui définissent la vue de login et les actions associées.
    • Activation de l'authentification dans l'application via 3 "actions" (cf analyse détaillée)
    • Valider le login/logout/accès au dashboard que si loggué. A terminer (mise au carré + ergonomie)
    • Faire fonctionner un attribut "Authorize" dans Extension 1
      • Implémenter Security.Attributes.Authorize qui ne crashe pas si la policy qu'il référence n'existe pas
      • Paramétrer en DB (par un utilitaire TU) la permission "Admin" de "Extension 1" et l'association au role "Admin". vérifier que l'utilisateur "admin" a accès à la page et "user" a "access denied".
  • Issue #9 : Activation des menus selon les permissions propres à chaque extension : utiliser Security.Common.AuthorizeAttribute pour chaque MenuItem et les interpréter dans le Barebone.

  • Issue #11 : outil de versioning (numéro de version + tag git)

  • Issue #8 : Test de la fonctionnalité de migration EF car on va avoir des modifications DB à gérer. Réaliser les fichiers de la migration initiale et des migrations suivantes quand le besoin s'en fait sentir.

  • Analyse complémentaire des modules à réaliser

  • Issue #19 Interface d'administration dans le projet Security.

2e étape

  • Réflexion sur l'internationalisation et implémentation
  • Issue #7 : Gestion dynamique des extensions. Prévoir une réunion. Réaliser, dans le dashboard, menu Administration>Extensions, une page de gestion des extensions installées (lister, réinitialiser, désactiver, activer). Faire l'analyse détaillée, l'idée est de dire à ExtCore de ne pas charger d'extensions du sous-répertoire, et y stocker les extensions désactivées. Voir https://github.com/ExtCore/ExtCore/issues/44 et l'issue #10 car c'est mieux décrit qu'ici, l'ensemble des choses à faire.
Clone this wiki locally