www.cned.fr DÉVELOPPEMENT D’APPLICATIONS Élisabeth Martins Da Silva BTS Service
www.cned.fr DÉVELOPPEMENT D’APPLICATIONS Élisabeth Martins Da Silva BTS Services informatiques aux organisations – 1re année COURS CONNECTÉ À VOTRE AVENIR Les cours du CNED sont strictement réservés à l’usage privé de leurs destinataires et ne sont pas destinés à une utilisation collective. Les personnes qui s’en serviraient pour d’autres usages, qui en feraient une reproduction intégrale ou partielle, une traduction sans le consentement du CNED, s’exposeraient à des poursuites judiciaires et aux sanctions pénales prévues par le Code de la propriété intellectuelle. Les reproductions par reprographie de livres et de périodiques protégés contenues dans cet ouvrage sont effectuées par le CNED avec l’autorisation du Centre français d’exploitation du droit de copie (20, rue des Grands Augustins, 75006 Paris). © CNED 2013 Sommaire Conseils généraux 3 Séquence 1 : Approche d'un développement d'application 7 Séquence 2 : Travail sur un existant 33 Séquence 3 : Accès aux bases de données 41 Séquence 4 : Tests et documentation 57 Séquence 5 : Back office et RAD 73 Séquence 6 : Travail collaboratif : gestion de versions 83 Séquence 7 : Mise en ligne 89 Séquence 8 : Autocorrection 99 8 2946 TG PA 00 Page 3 Conseils généraux Conseils généraux Présentation générale du module Ce module intervient au second semestre de la première année, dans le cadre du cours 2946 « Développement d’applications ». Le référentiel lui réserve 4 heures de cours/TP par semaine sur 15 semaines, ce qui représente un volume total de 60 heures. Il faut cependant compter beaucoup plus d’heures de travail personnel pour le développement (vous passerez certainement beaucoup de temps sur le fascicule de TP). Ce module concerne les deux options de la formation (SLAM et SISR), cependant il a plus d’importance pour l’option SLAM. À l’examen, il va intervenir à différents niveaux. L’épreuve écrite U5 « Production et fourniture de services » comportera une partie sur les notions de programmation, qui sera bien sûr plus importante pour l’option SLAM, mais qui existera aussi pour l’option SISR. L’épreuve technique U4 « Conception et maintenance de solutions informatiques » sera, pour l’option SLAM, une démonstration des capacités acquises entre autres dans ce cours. Enfin, en ce qui concerne l’épreuve orale U6 « Parcours de professionnalisation », là encore, en particulier pour l’option SLAM, l’utilisation professionnelle des notions acquises sera primordiale. Pour l’option SISR, les épreuves U4 et U6 peuvent être l’oc- casion de montrer aussi des capacités en programmation, toujours appréciables dans ce domaine. Connaissances nécessaires pour aborder ce module Il est nécessaire d’avoir acquis les connaissances abordées dans le module 2944 « Base de la programmation » (procédural et surtout événementiel) ainsi que le module 2943 « Exploitation des données » (en particulier le SQL). Organisation du module Ce module se présente en trois fascicules. Le fascicule de « cours », le fascicule de « tra- vaux pratiques » et enfin le fascicule de « devoirs ». Le fascicule de cours contient les informations minimales utiles aux deux options : il est donc à étudier dans son intégralité quelle que soit l’option. Le fascicule de travaux pra- tiques comporte un ensemble de TP qui ne sera pas à aborder de la même façon suivant votre option : vous trouverez toutes les explications au début du fascicule de travaux pratiques. Les TP seront à réaliser à votre rythme en parallèle du cours, mais en respectant au moins les conseils suivants : Les TP 1 à 8 peuvent être réalisés dès la séquence 1 terminée. Les TP 9 à 11 ne peuvent être réalisés qu’après avoir étudié la séquence 3. Même si certaines séquences s’appuient sur l’application réalisée en TP, vous avez le droit d’avancer le cours même si les TP ne sont pas abordés. En fin de première séquence, vous trouverez toutes les indications nécessaires pour aborder les TP. N’essayez pas de faire directement les travaux pratiques sans suivre les indications du cours. Vous avez deux devoirs à renvoyer : Le premier devoir va uniquement porter sur les connaissances abordées dans le fascicule de cours, le second devoir va porter sur les connaissances abordées dans le fascicule de Travaux pratiques. 8 2946 TG PA 00 Page 4 Conseils généraux Organisation du fascicule Ce fascicule s’articule en huit séquences : Séquence 1 « Approche d’un développement d’application » : permet d’aborder toutes les notions théoriques qui concernent le développement d’applications, en particulier dans le domaine du web. C’est à l’issue de cette séquence que les TP peuvent être réa- lisés. Séquence 2 « Travail sur un existant » : montre comment aborder des modifications sur une application existante. Cette séquence prend appui sur l’application créée en TP. Cependant, même si vous n’avez pas terminé les TP, vous pouvez aborder cette séquence car elle utilise la correction officielle. Séquence 3 « Accès aux bases de données » : présente la notion de curseurs pour accéder à une base de données à partir d’un programme. Séquence 4 « Tests et documentation » : présente la notion de tests unitaires ainsi qu’un outil de génération de documentation technique. Séquence 5 « Back office et RAD » : explique l’importance et le rôle du back office et une technique pour le générer automatiquement à l’aide d’un RAD. Séquence 6 « Travail collaboratif : gestion de versions » : montre comment installer et utiliser un outil de gestion de versions, en particulier utile pour le travail collaboratif. Séquence 7 « Mise en ligne » : explique tout ce qu’il faut savoir pour mettre en ligne un site. Séquence 8 « Autocorrection » : contient la correction des exercices de ce fascicule. Seules les séquences 1 à 4 comportent des exercices avec les corrections en séquence 8. Les séquences 5 et 6 vous invitent à réaliser directement des manipulations de confi- gurations et de tests. Enfin la séquence 7 est une séquence informative qui deviendra indispensable si vous avez besoin de mettre en ligne un site. Les séquences sont à traiter de préférence dans l’ordre en réalisant bien, à chaque fois, les exercices demandés. Le cours comporte volontairement peu d’exercices car le fasci- cule de TP est très volumineux pour donner la priorité au développement d’applications, puisque c’est l’objectif de ce module. Logiciels nécessaires Plusieurs séquences vont faire appel à certains logiciels. En plus des logiciels nécessaires dans le fascicule de travaux pratiques, vous allez utiliser les logiciels listés ci-dessous (vous trouverez aussi toutes les explications au moment où vous aurez besoin de ces logiciels). PHPMaker Ce logiciel est un RAD pour le PHP. Il peut être facilement trouvé en faisant une recherche « télécharger phpmaker ». Il se trouve par exemple sur le site www.01net.com. Version utilisée lors de la création de ce cours : 8.0.2. 8 2946 TG PA 00 Page 5 Conseils généraux Subversion Ce logiciel est un logiciel serveur de gestion de versions. Il peut être récupéré directe- ment sur le site officiel : subversion.tigris.org Récupérez le fichier setup pour Windows de subversion (dans Projects/subversion). Version utilisée lors de la création de ce cours : Setup-Subversion-1.6.0.msi Tortoise Ce logiciel est un client pour communiquer avec Subversion. Il peut être récupéré direc- tement sur le site officiel : http://tortoisesvn.net/downloads.html phpDocumentor Ce logiciel permet de générer une documentation technique. Il peut être récupéré direc- tement sur le site officiel : http://www.phpdoc.org/ Version utilisée lors de la création de ce cours : PhpDocumentor-1.4.3.zip Bon courage ! 8 2946 TG PA 00 Page 7 Séquence 1 Approche d'un développement d'application Séquence 1 Approche d’un développement d’application Cette séquence présente les notions fondamentales liées au développement d’applica- tions. Vous allez mieux cerner les techniques et les outils existants dans ce domaine. La présentation approfondit l’aspect développement web avec une mise en pratique dans le fascicule de travaux pratiques. X Prérequis Pour mieux appréhender cette séquence, il faut avoir des connaissances de base dans le développement et dans la manipulation des données. Pour cela, il est préférable d’avoir fait les modules 2943 et 2944. X Capacités attendues en fin de séquence Avoir compris les enjeux d’un développement d’application et l’ampleur des domaines concernés. X Contenu 1. Notions de développement d’application ...................................................... 8 2. Problème de persistance des données .......................................................... 10 3. Outils de développement .............................................................................. 13 4. Introduction au développement web ........................................................... 20 5. Identifi cation des besoins .............................................................................. 26 Synthèse ......................................................................... 29 8 2946 TG PA 00 Page 8 Séquence 1 Approche d'un développement d'application 1. Notions de développement d’application L’approche d’un développement d’application n’est pas la même pour un projet nécessi- tant 30 personnes sur 2 ans et pour un projet nécessitant une personne sur 4 semaines. Cependant, les grandes lignes sont similaires. Il faut savoir repérer les besoins, contrôler l’opportunité d’informatiser et les solutions les plus adaptées, en accord avec les attentes et les possibilités financières du client. Ensuite vient la phase de développement qui peut être abordée de différentes façons. À travers les "cycles de développement", vous aurez un très rapide aperçu des grands modèles possibles pour gérer la phase de développement. À travers les "couches applicatives", vous comprendrez mieux quelles sont les uploads/s1/ developpement-application-cours.pdf