Tuesday, June 19, 2012

Gestion des comptes utilisateurs - Événements notifiables (pt.1)

Lorsqu'on développe un système qui doit supporter des utilisateurs externes à l'organisation, il faut prévoir des méthodes pour automatiser la gestion des comptes utilisateurs.
  • Activation des comptes
  • Récupération des codes utilisateur
  • Réinitialisation des mots de passe

Liste des applications dans APEXFramework (Pilotage)

  1. SAFP - SIE APEXFramework - Produit
  2. SAFD - SIE APEXFramework - Domaine
  3. SAFU - SIE APEXFramework - Utilisateur
  4. SAFS - SIE APEXFramework - Système
  5. SGA - SIE APEXFramework - Gestion accès

SGA - Sie Gestion Accès


L'application SGA permet l'authentification pour un ensemble d'applications.

Événement notifiable - Activation du compte utilisateur

Lors de la création d'un compte utilisateur, il est préférable de valider l'authenticité d'une personne avec une adresse de courriel valide. Pour ce faire, un courriel sera envoyé à l'utilisateur une fois que ce dernier aura complété le formulaire de création de compte.

Courriel d'activation du compte utilisateur

Le courriel contient uniquement un lien vers SGA afin d'activer le compte. Le lien généré est unique et il est valide que pour une courte période de temps.

Activation du compte utilisateur

Le lien dans le courriel redirige l'utilisateur vers SGA et son compte sera automatiquement activé.

Événement notifiable - Obtention du code utilisateur oublié

À partir de l'écran principal de l'application SGA, un utilisateur peut faire une demande pour obtenir son code utilisateur oublié.

Un message informe l'utilisateur qu'un courriel lui sera expédié.

Courriel d'obtention du code utilisateur

Le courriel contient le code utilisateur qui est utilisé pour s'authentifier dans le système.

Événement notifiable - Réinitialisation du mot de passe

À partir de l'écran principal de l'application SGA, un utilisateur peut faire une demande pour réinitialiser son mot de passe oublié.

Un message informe l'utilisateur qu'un courriel lui sera expédié.

Courriel de réinitialisation du mot de passe

Puisque c'est une très très mauvaise pratique que d'envoyer des mots de passe dans des courriels, le courriel contient uniquement un lien vers SGA pour y réinitialiser le mot de passe. Le lien généré est unique et il est valide que pour une courte période de temps.
N.B. Les mots de passe temporaires dans les courriels sont aussi une mauvaise pratique. Méfiez-vous de ce genre de solution et de ceux qui les proposent...

Le lien dans le courriel redirige l'utilisateur vers SGA et un formulaire de réinitialisation sera automatiquement affiché.

Réinitialisation du mot de passe

Un message informe l'utilisateur que son mot de passe est modifié.

Configuration


Mon prochain article portera sur la configuration de ces événements notifiables. :)

Friday, June 15, 2012

Accessibilité d'une application Web - Contraste des couleurs

L'accessibilité Web regroupe une multitude d'éléments à considérer. Lorsque vient le temps d'analyser le contraste des couleurs sur une page web, on peut utiliser Colour Contrast Analyser, une extension pour Firefox. Juicy Studio offre un moyen simple pour calculer les ratios de luminosité et de contraste. Ce n'est pas le meilleur des outils que j'ai trouvé pour effectuer cette tâche par contre, il est minimaliste et c'est ce qui est préférable pour commencer.

Pour plus d'informations concernant les contrastes entre les couleurs d'arrière plan et d'avant plan: "Ensure that foreground and background color combinations provide sufficient contrast when viewed by someone having color deficits or when viewed on a black and white screen" -World Wide Web Consortium (W3C)
C'est un article qui date de 2000. Pour des informations plus récentes: Standards d'accessibilité du W3C

Colour Contrast Analyser - Extension Firefox

Pour l'exemple, je vais utiliser une application dont le thème est originaire d'un thème proposé par APEX.


Lorsque l'extension Colour Contrast Analyser pour Firefox est installée, il est possible d'y accéder par le menu contextuel. Lorsqu'on exécute les tests, une page s'ouvre dans un nouvel onglet. Cette page contient plusieurs tableaux (sommaires et détails).


Résultats des tests (Tableaux)

Un sommaire permet de rapidement constater s'il y a présence d'éléments problématiques. Heureusement, ce ne sont pas tous les éléments qui sont en conflit avec les normes d'accessibilité Web.

Nous devons apporter un changement au thème car les couleurs du texte et de l'arrière plan d'une rangée d'un rapport SQL n'offrent pas assez de contraste pour répondre aux normes d'accessibilité Web.


Ce qu'il faut retenir


Il est important de faire ce genre de tests lorsqu'on développe des applications "grand public" pour assurer une accessibilité uniforme peu importe la condition physique des utilisateurs.

Thursday, June 14, 2012

SGQRI 008-01- Pièges communs et fausses croyances


« Le standard SGQRI 008-01 énonce les règles permettant à tout site Web, public ou intranet ou extranet, d'être accessible afin de faciliter son utilisation par toute personne, handicapée ou non. »
- Gouvernement du Québec Ministère des Services gouvernementaux

L’adoption de normes et de standard en matière d’accessibilité par le gouvernement apporte son lot de changements pour tous les intervenants du secteur des ressources informationnelles.

Les standards sur l’accessibilité comportent des éléments obligatoires pour les ministères et les organismes. Comment s’assurer que les systèmes développés avec Oracle APEX respectent un maximum de ces standards pour offrir un niveau d’accessibilité qui sera jugé acceptable?

Ce guide fera la lumière sur les problématiques rencontrées au fil de mes mandats. Mes interventions se font en début, en milieu et en fin de parcours. Dans le meilleur des mondes, la résolution de problèmes se fait avant même de les rencontrer. Par contre, il arrive de se faire parachuter en plein milieu du champ de bataille. Il faut alors régler les problèmes existants tout en usant de stratégies pour éviter les embûches à venir.

Un maillon de plus dans la chaîne

Voir l’application de standards en matière d’accessibilité comme une étape de plus dans la chaîne de production est réconfortant pour plusieurs gestionnaires et chargés de projet, car les inconnus sont ainsi regroupés au sein d’une même étape. Rien n’est plus facile que d’ajouter une grille de validation supplémentaire à la phase de contrôle de qualité du projet.

Malheureusement, cette vision est fausse!

L’accessibilité Web passe par une intégration transversale répartit dans chacune des étapes d’un projet. Une planification rigoureuse permet d’éviter les oublies et assure de plus l’assignation des différentes responsabilités et tâches aux bons intervenants dans la chaîne de production Web. Lorsque l’accessibilité est adressée en fin de parcours, il est généralement trop tard pour bien faire les choses. Les budgets et/ou les échéanciers ne permettent pas la révision globale du processus de production. Le choix technologique (dans ce cas-ci Oracle APEX) limite sur certains points l’adoption de standards.
Le meilleur moyen apparaît donc évident, commencer du bon pied pour éviter bien des maux de tête!

Laissons ça aux intégrateurs Web

Donner aux seuls intégrateurs Web le fardeau de rendre un site Web accessible semble à priori normal et simple lors de la planification des échéanciers et de l’affectation des responsabilités et des tâches aux ressources. Pour rendre accessible un site Web, il s’avère normal d’attribuer cette tâche à un des derniers maillons de la chaîne, celui qui assemble à proprement parler les différents modules du système.

Malheureusement, tout cela est faux!

Des décisions et des orientations doivent être prises dès le début du projet, avant même que l’intégrateur Web ne soit désigné. Le chargé de projet doit faire un choix technologique éclairé pour ne pas limiter le respect d’exigences. Les rédacteurs doivent fournir en plus du contenu habituel, les équivalences lorsqu’il y a lieu. Les designers doivent concevoir des interfaces qui s’adaptent aux différentes technologies d'adaptation informatique. Les programmeurs doivent tenir compte des règles et des restrictions dans leur manière de coder.

Standards respectés, vive l’accessibilité

Le respect des standards assure que l’accessibilité est atteinte. La validation du code HTML par un outil quelconque fera la « job ».

Malheureusement, tout cela est faux!

Seule une multitude de tests fonctionnels avec des technologies d’adaptation informatiques permet de valider l’expérience utilisateur. Le choix des technologies dépend des standards adoptés par le marché. Ainsi, JAWS et Window-Eyes sont les progiciels majoritairement utilisé par les organisations nécessitant un niveau d’accessibilité accru.

Trois points importants à retenir

  • Il est primordial pour tout gestionnaire et chargé de projet de comprendre et d’assimiler le caractère transversal de l’accessibilité.
  • L’accessibilité est une responsabilité partagée.
  • Le contrôle de qualité est primordial et trop souvent ignoré.

Wednesday, June 13, 2012

Orientation stratégique d'APEXFramework (AFW)


Bonjour à tous,

Ça fait longtemps que je n'ai pas eu l'occasion d'écrire sur mon blogue. Il faut dire que mon horaire chargé ainsi que mes déplacements fréquents entre Québec et Montréal y sont pour quelque chose.

Depuis les 3 dernières années chez SIE-Solutions, j'ai travaillé sur le développement et la mise en place d'APEXFramework (AFW). Nous sommes fiers d'avoir des client qui couvrent l'ensemble du Québec (de Gatineau à Sept-Îles). Tous nos efforts investis sont récompensés, c'est un réel succès!

Chez SIE, le partage est une valeur essentielle. C'est dans cette optique qu'APEXFramework sera disponible gratuitement à toutes organisations voulant améliorer sa productivité et ses pratiques de développement.

L'orientation stratégique pour AFW 4.1.1 est disponible. Un traduction anglaise sera disponible prochainement. La publication française crée un engouement auquel nous devons répondre en priorité pour le marché local.

Nouvelles en temps réel entourant APEXFramework sur Twitter#orclafw