Projet : Système Fiscal et Comptable de la Tunisie (FAST)
Poste : 3 consultants pour une mission d’audit qualité du logiciel
Durée de la mission : du 01 juillet au 31 octobre 2021
Durée estimée : 15 semaines
Le projet FAST travaille en étroite collaboration avec le ministère de l’économie, des finances et de l’appui à l’investissement pour améliorer le climat des affaires par l’optimisation des processus d’affaires, la mise à niveau et/ou la mise en place des services en ligne aux contribuables. Cela optimisera le coût de la gestion, diminuera le coût de la conformité et augmentera les recettes fiscales.
Le système d’information fiscal et de recouvrement « RAFIC » est composé de plusieurs applications développées à différentes périodes en utilisant des technologies variées et obsolètes. Ceci a créé des limites dans l’utilisation de ce système et en a rendu sa maintenance difficile. Afin de pallier ces limites, le Ministère des finances a envisagé sa refonte et a défini les lignes directrices du système d’information fiscal et de recouvrement cible à mettre en œuvre sur plusieurs phases.
Une première phase a été déjà initiée au début de l’année 2020 comportant essentiellement la conception et le développement de deux applications.
La première est une application intranet (Back office) qui comprend les fonctionnalités de gestion des données de base relatives à la population fiscale, la gestion de la nomenclature des activités, la gestion des contribuables et leurs obligations, etc.
La deuxième application est un portail ‘self-service’ (Front office), qui est un système de guichet offrant une première panoplie de services en ligne délivrés par le ministère des finances.
Une approche de co-développement a été adoptée durant cette phase avec l’assistance d’un prestataire de développement ayant mis à la disposition du centre informatique du ministère des finances (CIMF) un groupe de développeurs expérimentés. Le projet a atteint un niveau d’avancement considérable mais il n’a pas été achevé malgré les efforts déployés. Les solutions ont été développées principalement avec le ‘Framework’ de développement ‘Oracle ADF (Java EE)’ qui est basé sur le modèle des trois (03) couches ‘MVC’.
Dans ce cadre, le ministère de l’économie, des finances et de l’appui à l’investissement a sollicité du projet FAST une assistance technique pour financer une mission d’assurance qualité logicielle qui couvre principalement l’aspect structurel et technique (architectural & code) du périmètre d’intervention mentionnée ci-dessus afin de finaliser la mise en exploitation de cette première phase dans les plus brefs délais.
- Objectifs et description de la mission
L’objectif principal de cette mission est de mener des activités d’audit/assurance qualité sur les aspects techniques et structurels du projet de la refonte du système d’information fiscal et de recouvrement ‘RAFIC’ phase1 (Application intranet et Portail web self-service).
Cette mission vise à vérifier si les produits finaux respectent les exigences techniques et de qualité ainsi que les bonnes pratiques, repérer les dysfonctionnements causés par les fautes de développement et d’implémentation (niveau architectural & code) et réduire au maximum les risques d’apparition d’anomalies de tout type et genre.
Les travaux menés dans cette mission proposeront également les meilleurs choix technologiques à adopter pour le développement des nouveaux téléservices planifiés dans une phase ultérieure.
Les consultants en audit qualité logicielle formeront un groupe homogène (01 chef d’équipe et 02 collaborateurs), travailleront en équipe et seront responsables sans s’y limiter aux activités suivantes :
- La conception et la préparation de la mission d’audit qualité.
- Audit qualité aux différents niveaux : unitaire, d’intégration et de système (niveau 1).
- Audit qualité de la migration des données (niveau 2).
- Audit qualité de l’acceptation des utilisateurs-UAT (Niveau 3).
- Analyse des alternatives des choix technologiques à adopter pour la mise en place de nouveaux téléservices.
Ainsi, ils seront chargés d’exécuter nombreux types de tests de qualité au cours de ces phases, en particulier :
- Tests de régression (manuels/automatiques),
- Tests structurels et non-fonctionnels,
- Tests de fiabilité ou de l’utilisabilité
Activités |
Tâches |
Livrables |
- La conception et la préparation de la mission d’audit/ assurance qualité
|
- Définir avec le ‘MoF/FAST la stratégie de l’audit qualité à développer.
- Spécifier les environnements des tests qualité (matériel, logiciels et outils).
- Configurer les Frameworks et outils de tests-qualité choisis et identifiés conjointement avec le ‘CIMF/FAST’.
- Spécifier conjointement avec le CIMF et FAST le taux de couverture de l’audit qualité au niveau unitaire par rapport à la totalité du code, les jeux des données et les workflows à tester.
- Identifier les principales classes de test par module, les conditions d’acceptation, les cas de test.
- Concevoir et planifier les scénarios et scripts de tests automatisés (le cas échéant).
- Concevoir un(des) modèle(s) de matrice de traçabilité de test.
- Consolider les différents documents et livrables techniques (Plan(s)/Cas de tests qualité/Scripts /Jeux de données à tester) définis et conçus dans cette phase de préparation.
|
1.Stratégie et feuille de route des tests.
2.Plans/scripts/ jeux des données des tests. |
- Audit qualité aux niveaux unitaire, d’intégration et de système (niveau 1)
|
Audit qualité au niveau unitaire
- Fournir le plan des tests qualité pour le niveau unitaire.
- Définir pour chaque module les classes et les méthodes de test à développer (le code des classes de tests implémentés doit être clair, simple et compréhensible par l’équipe du ‘CIMF’ chargée du projet, ainsi il doit contenir toutes les annotations et les méthodes d’assertion nécessaires supportées par le Framework des tests unitaires ainsi que des ‘mocks’ pour éviter les problèmes des dépendances le cas échéant.
- Pour les classes à tester, les étapes seront principalement :
- Instanciation et initialisation de la classe à tester ;
- Définition/généralisation des arguments pour la/les méthode(s) à tester ;
- Généralisation des résultats jusqu’au leurs succès selon les exigences ou les valeurs des données de sortie désirées.
- Analyser les fichiers de configuration définis au préalable dans le plan des tests qualité au niveau unitaire.
- Analyser et documenter les résultats des tests par rapport aux risques résiduels, aux défauts, aux statuts de l’exécution des tests, au statut de la couverture des tests et fournir les recommandations nécessaires au CIMF/ l’équipe ‘Ministère des finances/FAST’ pour l’acceptation des livrables.
Audit qualité au niveau d’intégration
- Fournir les plans, cas des tests qualité et scripts détaillés pour le niveau d’intégration.
- Fournir toute autre documentation nécessaire.
- Définir mutuellement avec l’équipe CIMF/FAST, les prérequis et les outils pour les tests, les configurations et installations nécessaires pour la mise en place de l’environnement de test.
- Exécuter les tests qualité d’’intégration nécessaires entre les modules/ contrôleurs conformément aux plans et exigences approuvés et documenter les résultats.
- Analyser et documenter le gap entre les exigences techniques/non-fonctionnelles et les résultats d’intégration pour chaque module/composant/contrôleur ou autre élément.
- Continuer à réaliser les tests qualité au niveau d’intégration d’une manière itérative avec diverses combinaisons de Composants/ modules/ contrôleurs en adoptant des complexités de plus en plus élevées.
- Vérifier l’adoption des dernières versions des ‘Frameworks’, outils et composants lors du développement des différents livrables et applications, le respect des standards recommandés et règles de sécurité, l’architecture logicielle adoptée, le style, l’organisation et la qualité du code.
- Vérifier l’intégration des composants/modules/contrôleurs avec éventuellement des modules/composants extérieurs (portail self-service, API/webservices de l’application intranet).
- Effectuer les tests qualité au niveau d’intégration et vérifier divers jeux des données (entrées/sorties) et leurs cohérences avec les exigences attendues et l’efficacité des workflows.
- Analyser et documenter les résultats des tests de qualité par rapport aux risques résiduels, aux défauts, aux statuts de l’exécution des tests, au statut de la couverture des tests et fournir les recommandations nécessaires au CIMF/ l’équipe ‘Ministère des finances/FAST’ pour l’acceptation des livrables.
Audit qualité au niveau système
- Fournir les plans, cas des tests et scripts détaillés pour l’audit qualité au niveau système.
- Fournir toute autre documentation nécessaire
- Identifier les jeux des données à tester et à déployer aux scripts.
- Vérifiez que tous les modules développés sont cohérents avec les normes de l’ergonomie des IHM (interface homme machine).
- Vérifier si les différentes interfaces- utilisateur et les résultats ont respectés les bonnes pratiques et élaborés conformément aux exigences et aux plans de test de qualité (responsivité des interfaces, le temps de chargement)
- Elargir la couverture des tests appliqués et inclure les interactions avec les bases des données et les composants externes.
- Effectuer des tests négatifs (Appliquer autant que possible des données invalides).
- Evaluer les exigences de sécurité et d’accessibilité selon les bonnes pratiques.
- Analyser et documenter les résultats des tests par rapport aux risques résiduels, aux défauts, aux statuts de l’exécution des tests, au statut de la couverture des tests et fournir les recommandations nécessaires à l’équipe CIMF/FAST pour l’acceptation des livrables.
|
3.Plan et cas de tests.
4.Code source des tests.
5.Résultats des cas de tests, documentation et recommandations |
3. Audit qualité de la migration des données (niveau 2) |
- Fournir les plans, cas des tests et scripts détaillés pour le niveau ‘de migration des données’.
- Fournir toute autre documentation nécessaire.
- Vérifier la cohérence des données par rapport à la base de données d’origine et contrôler leurs flux dans le(s) nouveau(x) système(s) (Ex : vérifier que les données sont migrées dans les bons champs et tables, vérifier le format, les tailles, types)
- Vérifier que le format et type des champs des données d’entrée respectent les règles de gestion et les processus métiers.
- Vérifiez que les processus d’importation/exportation des données
entre les nouvelles bases des données et celles d’origine ainsi qu’avec d’autres sources des données (le cas échéant) fonctionnent correctement.
- Evaluer la/les méthodologie(s) et approche(s) de la migration des données adopté(es), et exécuter avec un test à blanc (“dry run”) pour mettre à l’épreuve leurs fonctionnement correct.
- Analyser et documenter les résultats des tests par rapport aux risques résiduels, aux défauts, aux statuts de l’exécution des tests, au statut de la couverture des tests et fournir les recommandations nécessaires à l’équipe CIMF/FAST pour l’acceptation des livrables.
|
6.Plans et jeux des données des tests à déployer.
7. Rapports consolidés des résultats des cas des tests et d’analyse des données et tendances. |
4.Audit qualité de l’acceptation des utilisateurs-UAT
(Niveau 3) |
- Fournir les plans, cas des test et scripts détaillés pour l’audit qualité au niveau d’acceptation des utilisateurs’ (niveau opérationnel).
- Fournir toute autre documentation nécessaire.
- Proposer les tests opérationnels à exécuter, à savoir enregistrement et restauration des données dans un cas d’incident, efficacité de reprise après sinistre.
- Analyser et documenter les résultats des tests par rapport aux risques résiduels, aux défauts, aux statuts de l’exécution des tests, au statut de la couverture des tests et fournir les recommandations nécessaires au CIMF/FAST pour l’acceptation des livrables.
|
8.Plan de tests, jeux des données et prérequis/ exigences.
9.Rapports d’exécution de tests.
10. Rapport de défaillances, corrections appliquées et recommandations. |
5.Analyse des alternatives des choix technologiques à adopter pour la mise en place de nouveaux téléservices. |
- Proposer les meilleurs choix technologiques possible à adopter pour la mise en œuvre de trois modules additionnels ayant pour objets : l’enregistrement des sociétés/actes en ligne, télédéclaration et télépaiement ainsi que la gestion des créances constatées. Ces téléservices seront interopérables et synchronisés principalement avec le nouveau système, objet de cette consultation.
- Réaliser un benchmarking international à travers des exemples de portails et solutions réussis semblables en objectifs et fonctionnalités aux téléservices proposés déployés dans d’autres pays
|
11. Recommandations des alternatives des choix technologiques à adopter pour la mise en place de nouveaux téléservices et leurs intégrations avec le Framework ‘oracle ADF’. |
NB : En plus des activités et livrables mentionnées ci-dessus, d’autres activités/tâches/livrables liées au périmètre du projet peuvent être affectés par le responsable de l’objectif 2 ‘équipe FAST’.
La durée des travaux est estimée comme suit :
Activité |
Durée |
La conception et la préparation de la mission d’audit/assurance qualité |
02 semaines |
Audit qualité aux niveaux unitaire, d’intégration et de système (niveau 1) |
12 semaines |
Audit qualité de la migration des données (niveau 2) |
Audit qualité de l’acceptation des utilisateurs (Niveau 3) |
Analyse des alternatives des choix technologiques à adopter pour la mise en place de nouveaux téléservices |
01 semaine |
Total |
15 semaines |
La mission est prévue pour commencer en mois de Juillet 2021. La période d’exécution sera définie par la date de signature du contrat et se poursuivra pendant environ 15 semaines avec des ruptures de travail.
La mission se déroule à Tunis, en Tunisie.
Les consultants relèvent du chef d’équipe de l’objectif 02 du projet FAST qui lui-même est sous la supervision du chef du projet FAST en Tunisie.