78
Renoir Boulanger | @renoirb http://bit.ly/Yqa6Wl COMMENT ÉVALUER LA QUALITÉ D’UN SITE SELON LES TECHNIQUES D’INTÉGRATION WEB D’ACTUALITÉ

Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Embed Size (px)

DESCRIPTION

La façon de concevoir des sites Web a beaucoup évolué au cours des deux dernières années. Concevez-vous encore vos sites comme en 2009? Trouvez-vous vos sites lents? Êtes-vous web-responsable? Imaginez si vous étiez capable de gagner du temps. Comment pouvez-vous être certain que votre pigiste, employé ou fournisseur fait un travail de qualité? Nous allons couvrir des techniques clé qui permettent d'optimiser le travail, comment être plus efficace avec votre équipe technique et savoir jauger le niveau d'expérience. L’objectif de la séance est de donner des outils pour évaluer le niveau de qualité d’un site; des pistes pour en améliorer la performance et s’assurer de pouvoir en entretenir le code après plusieurs révisions.

Citation preview

Page 1: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Renoir Boulanger | @renoirbhttp://bit.ly/Yqa6Wl

COMMENT ÉVALUER LA QUALITÉ D’UN SITE SELON LES TECHNIQUES D’INTÉGRATION WEB D’ACTUALITÉ

Page 2: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Renoir Boulanger | @renoirbhttp://bit.ly/Yqa6Wl

... RENDRE LE PROCESSUS AGRÉABLE POUR TOUS

Page 3: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Utopie?

• Documents pour communiquer e!cacement• Réutilisation du code• Balisage constant• Séparer les responsabilités de façon optimale• Rincer, recommencer

Page 4: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Votre interlocuteur risque d’être incisif dans ses exemples, mais son objectif demeure celui d’éviter le gaspillage

inutile de ressources

Avis public!

Page 5: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Sommaire

1. Introduction2. Spéci"cations de projet3. Processus de réalisation4. Indicateurs de la qualité

Page 6: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Qui

[ Développeur web, contractuel chez Ericsson, Passionné des standards web, Reçu formation

par AccessibilitéWeb en 2008, A travaillé avec plusieurs agences web, Natif de Québec, Métalleux qui écoute du Chopin ]

Renoir Boulanger | @renoirb

Page 7: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Plus de 150 sites(décompte arrêté en 2007)

Page 8: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Et des applications web

Projets: Namminik.com et Beebox, 2008, pour TechSolCom Groupe Informatique

Page 9: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Et des applications web

Projets: eTelefilm, portail interne Téléfilm via TechSolCom, 2008 / Union des artistes, via RED L’Agence/Evocatio, 2009-2012

Page 10: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Sommaire

1. Introduction2. Spéci"cations de projet3. Processus de réalisation4. Indicateurs de la qualité

Page 11: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Le nœud.

Page 12: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

• Spéci!cation absente

• Spéci!cation comme un «roman»

• Détails dans une pile de !chiers PSD

... Processus de décision (mal informé?)

Page 13: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Une petite histoire

Client: Microsite «iPad» advisor.ca, pour Rogers Media Publishing via Équisoft, 2011

Stockage provenant de !ls RSS

Interface pour lecture hors-ligne

> dundee.advisor.ca

Page 14: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Imprévus

«Il me semble que ça devrait être inclus»

Page 15: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Modi!er des pages («CMS»)Référencement

Mise en pageStratégie

...

Page 16: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Le client demande

Page 17: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Application!!1

Page 18: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité
Page 19: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Guider le client pour obtenir

• «Qui peut faire quoi»

• Le résultat désiré

• Ce qui apporte de la valeur

http://www.alliancenumerique.com/guideweb.html

+

Page 20: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Rôle/Acteur

“use-case”

«Use case» [Cas de Figure]

Page 21: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

«Mindmap»

Page 22: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Dépendances fonctionnelles et

non-fonctionnelles

Page 23: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

• Par type de tâche

• Conserver questions potentielles

• Prévoir trois scénarios

• Séparer en phases

Évaluation

Page 24: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

f [5 (w + h )]pour chaque demande

f pour «fonctionnalité»

w pour «why» (pourquoi)

h pour «how» (comment)

Page 25: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

document de requis logiciels*

* FRD

Page 26: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Sommaire

1. Introduction2. Spéci"cations de projet3. Processus de réalisation4. Indicateurs de la qualité

Page 27: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

duplication des e!orts

Page 28: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Une petite histoire...

Projet: Entretien site Ville de Sherbrooke, via Tatou Communication Visuelle, 2003-2005

Page 29: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Le «far west»Transfert par disquette 3 1/4 dans

les bureaux de l’hôtel de ville.

Page 31: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Solution: Utiliser le HTML!

Page 32: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Crédit: @adacio slides “Patterns in the process”, http://adactio.com/extras/slides/

Exemple de projet développé en même temps que le design

Page 33: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Crédit: @adacio slides “Patterns in the process”, http://adactio.com/extras/slides/

Maintenant en couleurs!

Page 34: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Comment?

Page 35: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Processus de réalisation en parallèle

• Structure et conventions

• «Wireframe» [squelette]

• Bibliothèque de balisage

• Thème visuel

Page 37: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Redé!nir un «.pager»* di"érentpour chaque projet?!

* Remplacez par n’importe quel élément qui peut être réutilisable

Structure et conventions

Page 38: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

261 déclarations du bleu «facebook»

http://www.stubbornella.org/content/2011/04/28/our-best-practices-are-killing-us/

Page 39: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Crédit: Yandex, Image provenant de la documentation décrivant la méthodologie qu’ils ont créé

BEM[ Block Element Modifier ]

Structure et conventions

usage: communiquer dans tous les corps

métiers

Page 40: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Structure et conventions

Méthodologie pour structurer les balises

introduite par @snookca

Page 41: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Exemple «.media» element, version Twitter Bootstrap, originalement proposé par @stubbornella

Structure et conventions

OOCSS, une autre méthodologie pour

structurer le balisage.

Page 42: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Structure et conventions

Bref:Penser en blocs!

Page 43: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Exemple «.nav» element, et variantes, provenant de Twitter Bootstrap

Structure et conventions

Page 44: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Exemple «.nav» element, et variantes, provenant de Twitter Bootstrap

Structure et conventions

Page 45: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Structure et conventions

<!-- fichier html --><div class=”tabbable variant-alpha”> <div class=”tab-content”> <div class=”tab-pane” id=”tab-1”>Contenu tab 1</div> <!-- .... --> </div> <ul class=”nav nav-tabs”> <li class=”active”><a href=”#tab-1” data-toggle=”tab”>Tab 1</a></li> <li><a href=”#tab-2” data-toggle=”tab”>Tab 2</a></li> </ul></div>

«data-api»

Page 46: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Structure et conventions

Page 47: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

«Wireframe»

Projet: Actumus, via Evocatio/RED L’Agence, 2012

Page 48: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Wireframe

Page 49: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Wireframe

Page 50: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Wireframe

Page 51: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Wireframe

Page 52: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

* «Styleguide»

Bibliothèque de balisage *

Page 53: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Projet: Union des artistes, via RED L’Agence/Evocatio, 2009-2012 («Styleguide»)

Bibliothèque de balisage

Page 54: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Bibliothèque de balisage

Exemple de librarie utilisant KSS

Page 55: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Thème visuel+ compilateurs CSS

Page 56: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

couche «thème»<!-- fichier html --><div class=”tabbable variant-alpha”> <div class=”tab-content”> <div class=”tab-pane” id=”tab-1”>Contenu tab 1</div> <!-- .... --> </div> <ul class=”nav nav-tabs”> <li class=”active”><a href=”#tab-1” data-toggle=”tab”>Tab 1</a></li> <li><a href=”#tab-2” data-toggle=”tab”>Tab 2</a></li> </ul></div>

Page 57: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

$mainColor: #0982c1;.nav { .nav-header { color: $mainColor; }}@mixin error($borderWidth: 2px) {  border: $borderWidth solid $mainColor;  color: darken($mainColor, 90%);}#main .messages { .error { @include error; }}

@mainColor: #0982c1;.nav { .nav-header { color: @mainColor; }}. error(@borderWidth: 2px) {  border: @borderWidth solid @mainColor;  color: darken(@mainColor, 90%);}#main .messages { .error; }

voir Article SASS vs LESS sur CSS-Tricks donne une comparaison plus en profondeur

.nav .nav-header { color: #0982c1; }#main .messages .error { border: 2px solid #0982c1; color: #999999; }

Page 58: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

couche «thème»

/*fichier: assets/projet.less*/

@include “variables.less”

// Fichiers originaux bootstrap en less@import "bootstrap/less/mixins.less";@import "bootstrap/less/reset.less";// ...

@include “projet/modules.less”@include “projet/blocs.less” // etc...

/*fichier: assets/variables.less*/

@import "bootstrap/less/variables.less";

@themeAlphaColor: #cc5200; // ... autres couleurs spécifiques projet

@bodyBackground: #000;@textColor: #FFF;@linkColor: @themeAlphaColor;@linkColorHover: lighten(@linkColor, 15%);

<!-- fichier html --><link rel="stylesheet/less" type="text/css" href="assets/projet.less" /><script>less={env: ‘development’};</script><script src="less.js" type="text/javascript"></script>

Page 59: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

couche «thème»/** * Attention! **/

/* Noms de couleur */.red-text { color: blue; }

/* Sur-spécifité, et aux éléments anonymes */div#myWarning div div { color: purple; }

Page 60: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Outils

• Espace de travail harmonisé (vagrant)

• Gestion des con!gurations (Puppet)

• Déploiement et gestion des paquets (Yeoman)

Page 61: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

$ yeoman server

Page 62: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Sommaire

1. Introduction2. Spéci"cations de projet3. Processus de réalisation4. Indicateurs de la qualité

Page 63: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

des indices qui ne mentent pas

Page 64: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Compression, combinaison et

mini!cation?

Beaucoup de !chiers appelés

Page 65: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Celui-ci l’est!

Aucun code compressé

Page 66: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Répétition de code

Page 67: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Répétition de code

Page 68: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Schéma d’URL bâclé

Di"cile à entretenir

Page 69: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Données tabulaires en image

Page 70: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Impression avec vue regénérée

2. Popup vue regénérée spéci!que

1. Clic «imprimer»

Page 71: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Tag-Soup<li onmouseover=”$(‘#sub_website’).show()” onmouseout=”$(‘#sub_website’).hide()”>

<ol class=”dates” style=”margin-left:20px;list-style-type:disc”>

<div id=”But_Save” class=”button_medium” onclick=”parent.doCheckAll();”

datafld=”save_settings”>Save settings</div>

Histoire vraie!

Page 72: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Autres articles de revue de code

• A list of quality indicators we could !nd on a requirement document

• Ma revue du site a25.com

• Some steps you can look for if you feel your web application is slow

• A quick overview on the advantages to architect your HTML in a Object Oriented approach

• [Snippet] Con!rm before submitting in a modal window using Twitter Bootstrap

Page 73: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Le web à beaucoup changé

Page 74: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

htmlcsstherightway.org

htmlcssdelabonnemaniere.org

Rédaction en cours, ouvert aux “pull requests” : )

Page 75: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

var contributors = [

‘w3c’, ‘microsoft’, ‘apple’, ‘nokia’, ‘intel’

‘mozilla-foundation’, ’hp’, ‘adobe’, ‘google’

‘facebook’, ‘opera-software-foundation’,

];

Page 76: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

renoirb.canonical = {seeAlso: [ github, twitter, forrst, stackOverflowCareers, speakerdeck ],

delicious: “http://del.icio.us/inexisdotnet/”,slides: “http://bit.ly/Yqa6Wl”,

pdf: “http://renoirboulanger.com/files/201302-slides.pdf”href: “http://renoirboulanger.com/”,

};

// Resources disponibles dans les prochaines pages

Renoir Boulanger | @renoirb

Merci! Des questions?

Page 78: Comment évaluer la qualité d'un site web selon les techniques d'intégration web d'actualité

Sources sûres

BibliographieMéthodologies• About HTML semantics

• CSS architecture and continuous deployment

• Introduction BEM

• LESS/SASS best practices

• Our best practices are killing us

• CSS for grown-ups

Styleguide• Future friendly styleguides

• Oli.jp: Styleguides

• GitHub

• Google

Futur• Modular frontend

components

• The CSS of tomorrow

• Move the web forward

Ne pas manquer!

• CSS Selectors (W3C)

• CSS Inheritance

• WebPlatforms.org

• Mozilla developer network

• w3fools: intervention contre w3Schools