Développement de l’application ALMS Milone Julien
AgendaAgenda Introduction Description de l’application La base de données L’architecture de l’application L’interface utilisateur web L’interface utilisateur Pocket PC Conclusion
IntroductionIntroduction Microsoft Siège social à Redmond, état de Washington, au Etat-Unis Fondé en 1975 par Bill Gates et Paul Allen Plus de employés répartis dans plus de 80 pays dont employés font partie de la recherche et du développement Chiffre d’affaire de plus de 36,84 milliard de dollars Leader mondial du logiciel pour PC
IntroductionIntroduction Microsoft Belux 250 collaborateurs MarketingVenteSupportService Developer & Platform Evangelism informe sur les possibilités offertes par la technologie encourage l'utilisation de la plate-forme Microsoft
AgendaAgenda Introduction Description de l’application La base de données L’architecture de l’application L’interface utilisateur web L’interface utilisateur Pocket PC Conclusion
Description de l’application Application qui permet de gérer un stock d’articles Livre Moc (Microsoft Official Curriculum) DeviceObjet des contacts écoleprofesseur des commandes et des prêts des rapports
Description de l’application Application de type Web (administrateur + lecteur) (expliquer but) Pocket PC (lecteur) (expliquer but ) Outils : ASP.NET, C# et SQL Server Rôles des utilisateurs AdministrateurLecteur
AgendaAgenda Introduction Description de l’application La base de données L’architecture de l’application L’interface utilisateur web L’interface utilisateur Pocket PC Conclusion
La base de données Organisée en 3 parties + 1 Articles Table « parent » : Article Table « enfant » : Book, Moc, Device, Other Contact (professeur, école et département) Gestion (commande et prêt) Utilisateur et rôle
AgendaAgenda Introduction Description de l’application La base de données L’architecture de l’application L’interface utilisateur web L’interface utilisateur Pocket PC Conclusion
L’architecture de l’application Partitionnement d’une application User Interface Layer (interface Web et Pocket PC) Business Logic Layer (Web Services + DLL) Data Access Layer (DLL) Pourquoi partitionner ? Centraliser les règles métiers Centraliser l’accès aux données Flexibilité et évolutivité
L’architecture de l’application
Gestion des utilisateurs et de leurs rôles Création d’un Custom Authentication Identity = identité de l’utilisateur Principal = identity + rôles Stockage du Principal dans l’objet Context.User Création d’un ticket d’authentification Permet de créer un Principal Utilisation de l’en-tête SOAP pour envoyer ce ticket Sécurité
L’architecture de l’application
Sécurisation des Web Methods
AgendaAgenda Introduction Description de l’application La base de données L’architecture de l’application L’interface utilisateur web L’interface utilisateur Pocket PC Conclusion
L’interface utilisateur web Analyse préalable Quelle seront les pages à construire? Que vont-elles devoir réaliser ? Que vont-elles devoir réaliser ? Plan des pages à réaliser Quel sera leur contenu ? Quel sera leur contenu ? De quelles manières seront-elles affichées ? Réalisation (visuelle) du fonctionnement des pages Quelles seront les pages accessibles par les utilisateurs ? Quelles seront les pages accessibles par les utilisateurs ? Adaptation du menu suivant le rôle des utilisateurs
L’interface utilisateur web Analyse Plan des pages à réaliser
L’interface utilisateur web Analyse (très simple) Réalisation (visuelle) du fonctionnement des pages
L’interface utilisateur web Analyse Création de menu suivant le rôle des utilisateurs
L’interface utilisateur web Conception du skin Utilisation de contrôles utilisateurs
L’interface utilisateur web Sécurité FormAuthentication + Custom Authentication Sauvegarde du ticket d’authentification dans un cookie Création d’un Principal à l’aide du ticket Ajout du Principal dans le Context.User Sécurisation des pages web Accès restreint suivant le rôle des utilisateurs Vérification du rôle lors de l’appel d’une page
AgendaAgenda Introduction Description de l’application La base de données L’architecture de l’application L’interface utilisateur web L’interface utilisateur Pocket PC Conclusion
Pocket PC Ressource limitée: vitesse, mémoire Taille de l’écran, saisie d’information particulière Interface utilisateur simple et légère Outil: Compact Framework + SQL Server CE Création de la base de données locale Synchronisation des données provenant de la BD SQL Server à l’aide des Web Services Utilisation du ticket d’authentification (sécurité)
L’interface utilisateur Pocket PC Le menu Les fenêtres « commandes »
L’interface utilisateur Pocket PC Les fenêtres « contacts » La fenêtre « synchronisation »
AgendaAgenda Introduction Description de l’application La base de données L’architecture de l’application L’interface utilisateur web L’interface utilisateur Pocket PC Conclusion
ConclusionConclusion Application Fonctionne et actuellement hébergée Évolutive : couches + Web Services Connaissances : approfondissement de.NET ASP.NET: application sécurisée, robuste et évolutive (couches) SQL Server et SQL Server CE Programmation Pocket PC Nombreuse documentation disponible Expérience en entreprise Situation réelle Mise en place d’un cahier des charges préalable = important Autonomie
Questions ?
Merci !