Introduction au Web Engineering
1
Programme
¢ Introduction
¢ Qu'est-ce que l'ingénierie web?
¢ applications Web
¢ l'ingénierie web
¢ Catégories d'applications web
¢ Caractéristiques des applications web
2
1. Introduction
ce cours vise:
¢ a introduire les méthodes et techniques
utilisé dans le développement des
applications Web
¢ Si necessaire le HTML,CSS,PHP,BD
3
1.1 Web engineering methodes et techniques
Ce module comprend les sujets suivants:
¢ approches de développement d'applications
Web
— Les modèles de processus
— gestion de projet Web
¢ Développement de produits
— Ingénierie des exigences
— modélisation des applications Web
— architectures d'applications Web
— Technologies et outils
— Test d’applications web
— maintenance
¢ Aspects de qualité:
4
— Sécurité
1.2 develloppement d’application Web
Utilisateur reçoit le fichier qui Le serveur envoie les fichiers
sera affiché par le navigateur demandé au navigateur
Navigateur
1. L'utilisateur envoie la Le Serveur accepte et
demande traite la requete
Du navigateur
Le Navigateur interprète demande de
l'utilisateur et fait une requete au
serveur approprié
5
1.2 development d’application Web …
• Hyper Text MarkUp Language (HTML)
• Feuilles de style en cascade (CSS)
• Côté client langage de script (JavaScript)
• côté Serveur Langage de script (PHP)
• Langue de base de données (MySQL,…)
• Framework spécialisé (Seaside, …)
6
1.3 Livres
¢ Web Engineering, by Gerti Kappel, Birgit Proll,
Siegfried Reich, Werner Retschitzegger, John Wiley
& Sons; ISBN: 3-89864-234-8
¢ Beginning HTML, XHTML,CSS and JavaScript,
by Jon Duckett, Wiley Publishing; 2009, ISBN: 978-0-
470-54070-1.
¢ Beginning PHP programming, by Matt Doyle,
Wrox publishers, 2009, ISBN: 0470413964
¢ Reference books:
¢ Learn JavaScript, by Chuck Easttom, Wordware
Publishing; 2002, ISBN 1-55622-856-2
¢ Beginning PHP and MySQL by W. Jason Gilmore,
Apress publisher, 4th edition; 2010, ISBN-13
7
(electronic): 978-1-4302-3115-8.
2. Web engineering
• Le Génie logiciel est une discipline d'ingénierie
qui travaille sur tous les aspects de la production
de logiciels
• Le Génie Logiciel est la science et de l'art de
fabriquer des systèmes logiciels importants qui
respectent :
— Le temps
— Le budget
— Ont un rendement acceptable
— Ont un bon fonctionnement
8
2. Web engineering…
¢ ingénierie Web est l'étude du processus, utilise
pour créer des Web applications de haute qualité
¢ ingénierie Web repose en grande partie sur les
principes et activités de gestion present dans le
genie logicielle
¢ ingénierie Web étend le genie Logiciel aux
applications Web
9
2. Web engineering…
¢ L’application systématique et quantifiable
d’approches d'analyse, de conception,
d’implementation, de tests, d'exploitation et
de maintenance d’ applications Web de
haute qualité
dix
3. Web applications
¢ Le WWW a une influence massive et permanente
sur nos vies
— Economie, industrie, éducation, santé, divertissement
¢ Pourquoi?
— global et permanent
— Accès confortable et uniforme
11
3. Web applications…
¢ Le WWW a commencé comme moyen
d'information
¢ Évoluer vers un medium d'application
— services interactifs, données intensive
¢ facteurs distinctifs
— Comment c'est utilisé?
— Technologies et normes Pour le developpement
12
3. Web applications…
¢ Une application Web est un système qui
utilise des normes et technologies du W3C
pour offrir des ressources Web spécifique
aux clients (généralement) à travers un
navigateur
¢ La technologie + interaction
13
4. web engineering
¢ Le Développement d'applications Web reste
largement ad hoc
— imprévues, des événements ponctuels
— Expérience Individuel
— Peu ou pas de documentation pour le code /
conception
¢ Les économies de Court terme conduisent à
des problèmes à long terme en exploitation,
la maintenance, la facilité d'utilisation, etc.
— manque de performance, fiabilité, ergonomie
et l'évolutivité
¢ Parce que les applications Web sont
tellement interdépendants, le problème est 14
composé
4. web engineering…
¢ Les causes profondes de la mauvaise
conception:
— Développement en tant activité de création
— Le développement est "facile"
— Les techniques qui ne doivent pas être utilisés
sont mal appliqué
— Les techniques qui doivent être utilisées sont
pas appliqué
15
4. web engineering…
¢ Probleme avec les projet selon Cutter
— 84% - Le non-respect des objectifs
— 79% - retards de calendrier du projet
— 63% - dépassement du budget
— 53% - Le manque de fonctionnalité
¢ La solution d'ingénierie Web:
— Des objectifs clairement définis
— Le développement incremental
— Une planification minutieuse
— l'audit et itérations continue de l'ensemble du
processus
16
5. Categories des applications web
¢ web centrée sur les documents
¢ applications web interactives et transactionnelles
¢ applications Web basées sur les flux metier
¢ applications web collaboratives et sociales
¢ applications web orientées portail
¢ applications Web ubiquitaire
17
5.1 sites centrée sur les documents
¢A l’origine des applications Web
¢ documents HTML Statique
¢ Manuel mises à jour
¢ Avantages
— Simples, stables, temps de réponse court
¢ Les inconvénients
— Les coûts élevés de gestion des mises à jour
fréquentes et grandes collections
— Plus d'informations inconsistantes /
redondance
¢ Exemple: pages d'accueil statiques 18
5.2 Interactif & transactionel
¢ contenu pas en lecture seule, mais
aussi modifiable
¢ Viennent avec l'introduction de
formulaires HTML
¢ Interactivité Simple
¢ création de page Dynamique
— pages web et liens à d'autres
pages générées dynamiquement
en fonction de la contribution
l'utilisateur 19
5.2 Interactif & transactionel…
¢ mises
à jour du Contenu ->
Transactions
— la connectivité de base de données
— La complexité croissante
¢ Exemples:sites d'information,
systèmes de réservation, banque en
ligne
20
5.3 applications Web basées sur les flux
¢ Conçu pour gérer les processus metier à
travers les départements, organisations et
entreprises
¢ automatise des processus consistant en
plusieurs étapes
¢ La logique métier définit la structure
¢ complexité élevée; entités autonomes
¢ Exemples: B2B et e-gouvernement
21
5.4 applications web collaboratives et
sociales
¢ Environnements Non structure, coopératifs
— Supporte des espaces de travail et donee
partagé pour créer, modifier et gérer
informations partagées
¢ La communication interpersonnelle est
primordiale
¢ Exemple classique: wikis
¢ Le Web social
— méconnaissable traditionnellement,
caractérisé WWW
— Naviguer a travers des communautés
d'intérêt
— Exemples: Les blogs, Facebook, Twitter
22
etc.
5.5 applications web orientées portail
¢ site web spécialement conçu qui apporte
des informations de diverses sources de
façon uniforme
¢ Chaque source d'information a son espace
dédiée
¢ portails spécialisés
— Portails d'entreprises
— portails de marketplace
— portails communautaires
23
5.6 applications Web ubiquitaire
¢ Des services personnalisés offerts partout
via plusieurs périphériques
¢ Encore un domaine émergent
24
(HISTOIRE DU DÉVELOPPEMENT VS
COMPLEXITÉ)
Omniprésent
Web social
collaboratif
Complexité
Basé flux metier
Portail
transactionnelles
Orienté
Interactif
Centree Doc
25
Histoire du développement
6. Characteristique des Applications Web
¢ Comment les applications Web diffèrent des
applications traditionnelles?
¢ 3 dimensions
— basee sur le produits
— basée sur l'utilisation
— basé sur le développement
26
6.1 caracteristique base sur le produit
¢ constituent des caractéristiques liées au
"blocs de base" d'une application Web
¢ Contenu:
— document et multimédia
— exigences de qualité: actuelle,
exacte, cohérente, fiable
27
6.1 caracteristique base sur le produit…
¢ Structure de navigation (Hypertext):
— La non-linéarité
— Problèmes potentiels: Désorientation et
surcharge cognitive
¢ Interface utilisateur (Présentation):
— Apparence
— Auto-explication
28
6.2 caracteristiques basée sur l'utilisation
¢ une plus grande diversité par rapport aux
applications traditionnelles
— Les utilisateurs varient en nombre,
background culturel, les appareils,
emplacement, etc.
¢ Contexte social (Utilisateurs):
— Spontanéité- l'évolutivité
— Groupes Hétérogène
29
6.2 caracteristiques basée sur
l'utilisation…
¢ Contexte technique (réseau et
périphériques)
— Qualité de service
¢ Contexte naturel (lieu et heure):
— globalité
— Disponibilité
30
6.3 caracteristiques basé sur le
développement
¢ L'équipe de développement:
— multidisciplinaire - l'édition
d'impression, développement, le
marketing, l'art et la technologie
¢ Infrastructure technique:
— Le manque de contrôle sur le
côté client
31
Resume
¢ l'ingénierie Web étend Génie logiciel aux
applications Web
¢ Pourquoi l'ingénierie web?
¢ applications Web
¢ Catégories et caractéristiques des applications
web
33