Epreuve de spécialité STG GSI, sept. 2010, métropole :
Cas Banque Nationale.
Réponse AJAX

CAS Banque Nationale

Matériels et documents autorisés :

Liste des dossiers :

Liste des documents à exploiter :

Si le texte du sujet, de ses questions ou de ses annexes vous conduit à formuler une ou plusieurs hypothèses, il vous est demandé de la (ou les) mentionner explicitement dans votre copie.

La BN est une banque dont le siège social est situé à Paris. Elle possède des succursales en province. Des activités sociales et culturelles sont proposées au personnel de la BN par le comité central d'établissement (CCE) qui a également un rôle économique et consultatif. Le CCE est composé de vingt salariés élus pour quatre ans. Il dispose d'une subvention de fonctionnement qui est fonction de la masse salariale brute.

Il est divisé en quatre sections sous la responsabilité d'un bureau : la section Action Sociale gère les aides sociales (aides à la petite enfance, aides aux études…), la section Loisirs Jeunes propose des séjours aux enfants du personnel âgés de 4 à 18 ans, la section Loisirs Adultes propose des séjours aux membres du personnel. La section Économique du CCE exerce principalement ses compétences dans l’expertise et la veille économique et sociale.

On ne traite ici que de la gestion des séjours assurée par la section Loisirs Jeunes, qui dispose pour cela, de l’infrastructure informatique matérielle et logicielle présentée sur le document 1.

La gestion des séjours met en œuvre différents processus :

Ces processus mobilisent plusieurs applications. En effet, le logiciel principal, ACLce, spécialisé dans la gestion de comité d'entreprise et acquis en 1999, ne répondait pas à tous les besoins fonctionnels. Aussi, des applications Microsoft Access ont été développées en interne. Voici une présentation succincte des applications utilisées pour la gestion des séjours :

Dossier 1 : La gestion des inscriptions aux séjours d'été

Documents à exploiter :
Document 2 : Extrait du formulaire papier de demande d’inscription
Document 3 : Schéma du processus de gestion des inscriptions aux séjours d’été
Document 10 : Schéma des échanges entre applications

Le processus décrit ci-après est schématisé dans le document 3.

Les secrétaires du service Coordination de la section Loisirs Jeunes saisissent dans le logiciel ACLce les formulaires papier de demandes d’inscription (voir document 2) transmises par les agents. Il y a en moyenne 3 000 demandes par an. La saisie des demandes d’inscription est réalisée après vérification. Si la demande est valide, elle est enregistrée. Dans le cas contraire, la demande d’inscription accompagnée du motif du refus est retournée à l’agent demandeur.

Le responsable de la section Loisirs Jeunes déclare : « Lorsque nous procédons à la saisie des demandes, toute la section est mobilisée. C’est long et fastidieux, c’est pour cela que nous nous fixons une limite de 15 jours pour effectuer toutes les saisies ».

Une semaine après la date limite de retour des bulletins d’inscription, le responsable de la section Loisirs Jeunes extrait les demandes du logiciel ACLce. L’extraction, présentée dans le document 10, fournit le fichier Demandes.txt contenant les caractéristiques de chaque demande d’inscription. Ce fichier est importé dans l’application Priorités qui va affecter un nombre de points à chaque demande.

Suite à ce traitement, une liste des demandes, triée selon le nombre de points affectés, est éditée à partir de l’application Priorités.

Une commission composée d’employés de la section Loisirs Jeunes procède alors au premier tour d’affectations en étudiant les dossiers dans l’ordre fourni par cette liste des demandes. Le premier choix formulé sur la demande est étudié. Si le séjour souhaité est déjà complet, on essaie de satisfaire le second choix s’il a été formulé sur la demande et ensuite éventuellement le troisième, jusqu’à ce qu’une place disponible soit trouvée. Les affectations possibles sont enregistrées au fur et à mesure dans le logiciel ACLce et un courrier est envoyé aux parents pour les informer de l’affectation retenue.

Suite à cette première commission, la liste des séjours pour lesquels il reste des places disponibles est établie. Lorsqu’aucun choix n’a pu être satisfait pour une demande, une lettre de refus accompagnée de la liste des séjours pour lesquels on dispose encore de places disponibles est envoyée aux parents.

Les familles disposent alors de deux semaines pour choisir un séjour dans cette nouvelle liste. Sans réponse par courrier dans le délai imparti, la section Loisirs Jeunes considère que la famille ne souhaite pas donner suite à la demande de séjour.

Un second tour d’affectations est alors effectué pour étudier les nouvelles demandes ; ce second tour d’affectations est similaire au premier.

Lorsque toutes les affectations issues du second tour ont été saisies, le responsable de la section Loisirs Jeunes extrait les affectations du logiciel ACLce. L’extraction fournit le fichier Affectations.txt qui sera importé (document 10) :

1.1. En justifiant votre réponse, indiquer si le processus de gestion des inscriptions aux séjours d’été est un processus métier ou un processus support pour le CCE. Préciser ce qui déclenche ce processus.

Votre réponse n°1
1.2 Rédiger une note à destination du responsable de la section Loisirs Jeunes expliquant le déroulement de l’activité « saisie des demandes d’inscription 1er tour » en répondant notamment à ces questions :
a) Quel acteur est chargé de cette activité ?
Votre réponse n°2
b) À quel moment la réalise-t-il ?
Votre réponse n°3
c) Quelle(s) tâche(s) réalise-t-il ?
Votre réponse n°4
d) Quelle(s) application(s) informatique(s) utilise-t-il ?
Votre réponse n°5
e) Quelle(s) décision(s) doit-il prendre ?
Votre réponse n°6
f) Combien de temps est consacré à l’activité ?
Votre réponse n°7

1.3. Reproduire cette activité sur votre copie, en la complétant si nécessaire, dans le respect du formalisme « événement-résultat ».

Votre réponse n°8

La saisie des demandes d’inscription par un formulaire en ligne est envisagée.

1.4. Décrire l’impact de cette mise en place sur le schéma événement-résultat du processus (document 3).

Votre réponse n°9

1.5. Le premier tour d’affectations peut-il avoir lieu sans la liste des demandes triée selon le nombre de points ? Justifier la réponse à l’aide du document 3.

Votre réponse n°10

Dossier 2 : La gestion des priorités d’affectation aux séjours

Documents à exploiter
Document 1 : Architecture matérielle et logicielle de l’infrastructure informatique de la section Loisirs Jeunes
Document 3 : Schéma du processus de gestion des inscriptions aux séjours d’été
Document 4 : Code VBA de la fonction de calcul du nombre de points
Document 5 : Extrait du schéma relationnel de la base de données Priorités

À chaque campagne, les membres de la commission d'affectation de la section Loisirs Jeunes sont confrontés au fait que le nombre d’inscrits qui postulent pour un séjour peut être supérieur à la capacité du centre. Il faut donc mettre en œuvre une règle pour traiter de la manière la plus équitable possible le dossier de chaque enfant en appliquant des critères objectifs et transparents.

On affecte à chaque enfant un nombre de points calculés à partir des données relatives à la campagne de l’année précédente.

Deux critères sont retenus pour le calcul des points :

Ainsi pour l’été 2010, seront pris en compte le degré de satisfaction et le type de séjour obtenus au cours de l’été 2009.

L'application Priorités dispose d’une fonction qui calcule le nombre de points de chaque enfant. Plus le nombre de points est important, moins l’enfant sera en position de priorité pour l’année suivante. Cette fonction reçoit deux arguments : le degré de satisfaction et le type de séjour obtenu lors de la saison précédente. Le document 4 présente le code VBA de cette fonction.

2.1 a) Un jeune a participé en 2009 à un séjour en Corse qu’il avait demandé en second choix. En étudiant le code de la fonction présentée dans le document 4, indiquer le nombre de points qui lui sera affecté pour 2010.

Votre réponse n°11

b) Un adolescent n’a pas demandé de séjour en 2009. Indiquer le nombre de points qui lui sera affecté en 2010. Commenter cette situation.

Votre réponse n°12

c) Indiquer où se trouve définitivement mémorisée l’information relative au nombre de points après traitement de la fonction nbPoints( ).

Votre réponse n°13

Au cours du processus de gestion des inscriptions aux séjours (document 3) les applications fournissent des informations aux acteurs à l’aide de requêtes SQL.

2.2 Écrire la requête qui délivre la liste des demandes pour les enfants nés en 2004 ou 2005, avec pour chaque enfant, le nombre de points, la date de naissance de l’enfant, le numéro d’inscription, les nom et prénom de l’enfant. Elle sera triée par nombre de points puis date de naissance.

Votre réponse n°14

Indiquer l’activité du processus qui génère cette liste.

Votre réponse n°15

À l'issue du processus "gestion des inscriptions aux séjours d'été", une lettre informant du caractère prioritaire de leur demande pour l'année suivante est envoyée aux parents dont un enfant n'a pas été affecté.

2.3 Rédiger la requête qui permet d'obtenir la liste des enfants concernés.

Votre réponse n°16

Indiquer l'événement de l'activité "extraction des affectations" qui nécessite l'utilisation de cette requête.

Votre réponse n°17

Au cours de la session 2010, le responsable de la commission rencontre un problème avec le poste n°2 : après avoir lancé l'extraction du fichier des demandes du logiciel ACLce, il ne parvient pas à accéder au serveur ACLce pour importer le fichier dans la base de données Priorités. La configuration IP de son poste indique les informations suivantes :

Carte Ethernet Connexion au réseau local :

Suffixe DNS propre à la connexion	:
Description . . . . . . .  . . . .	: Realtek RTL8139/810x Fast Ethernet NIC Connection
Adresse physique . . . . . . . . .	: 07-AE-35-BE-3D-9A
DHCP activé. . . . . . . .. . 	. . 	: Non
Adresse IP. . . . . . . .  . . . .	: 172.16.10.135
Masque de sous-réseau . . . . . . 	: 255.255.255.0
Passerelle par défaut . . . . . . 	: 172.16.0.70
Serveurs DNS . . . . . . . . . .  	: 172.16.0.75

2.4 À l’aide des informations ci-dessus et de l’architecture matérielle et logicielle décrite dans le document 1, identifier l’origine du dysfonctionnement et proposer une solution.

Votre réponse n°18

Dossier 3 : L’échange de données avec l’agence de voyages

Document à exploiter
Document 6 : Extrait du fichier XML des titres de transport

À l’issue du processus d’affectation, une secrétaire du service Acheminement transmet les caractéristiques des billets de train ou d’avion qu'elle souhaite acheter à l’agence de voyage avec laquelle elle travaille. L’agence transmet alors les billets au secrétariat du service Acheminement et envoie la facture au responsable du service Acheminement. Ce dernier signe la facture et la transmet au service Comptabilité du CCE. Le règlement et son suivi ne font pas partie du domaine d'étude.

Les secrétaires du service Acheminement envoient, par courrier, les billets aux parents des enfants concernés. Elles transmettent aux directeurs la liste des enfants qui se rendent dans leur centre et leur horaire d'arrivée puis transmettent à chaque animateur les caractéristiques de l'accompagnement qu'il a en charge (numéro de vol ou de train, horaire du voyage, nom des enfants) et son titre de transport.

Les caractéristiques des billets à réserver sont transmises à l’agence de voyage dans un fichier XML dont un extrait vous est fourni dans le document 6.

3.1 Expliquer pourquoi le CCE utilise un fichier XML pour transmettre les caractéristiques des billets.

Votre réponse n°19

Pour des raisons commerciales, l'agence souhaite distinguer le nombre de billets destinés aux animateurs et le nombre de billets destinés aux enfants pour chaque voyage.

3.2 Indiquer la modification à apporter au fichier XML pour que l'agence puisse obtenir cette information.

Votre réponse n°20

Dossier 4 : Un projet d'évolution

Documents à exploiter
Document 2 : Extrait du formulaire papier de demande d’inscription
Document 7 : Tableau des tâches du projet d’évolution
Document 8 : Éléments de budget
Document 9 : Extrait du script saisieInscription.php
Document 11 : Jeux d’essai « Saisie des demandes d'inscription »

Le CCE possède, depuis 3 ans, un site intranet présentant l’ensemble de ses activités. Les agents de la banque peuvent y consulter la liste des séjours proposés.

Il est envisagé que les agents saisissent directement leurs demandes d’inscription sur le serveur de l’intranet qui héberge également un serveur de base de données MySQL.

En effet, le temps passé à la saisie des 3000 demandes (4 minutes en moyenne par demande) pèse sur l’organisation et le fonctionnement de la section Loisirs Jeunes. Les 12 agents de la section, qui ont d’autres tâches, ne peuvent consacrer qu’au plus 25% de leur temps (35 heures/semaine) à la saisie durant la quinzaine réservée à cette opération.

4.1 Évaluer la charge horaire liée à la saisie de toutes les demandes.

Votre réponse n°21

Comparer ce résultat au temps global que les agents peuvent y consacrer.

Votre réponse n°22

Si les demandes d’inscription sont faites en ligne par les agents, il sera nécessaire de procéder au contrôle des informations et à la validation de chacune des demandes.

Ces opérations pourront être confiées à quelques secrétaires qui se consacreront exclusivement à ce travail.

Après avoir procédé à des tests, la durée moyenne estimée pour contrôler et valider une demande est d’une minute.

Une fois validée, les demandes seront transférées du serveur de base de données MySQL dans l’application ACLce par une procédure automatisée.

4.2 Présenter les avantages apportés par cette solution, y compris sur l’ensemble des prestations fournies par la section Loisirs Jeunes.

Votre réponse n°23

En mai 2009, le CCE a proposé un stage à un étudiant afin qu’il développe le formulaire de saisie des demandes d’inscription aux séjours. Une première version a été réalisée en présence de M. Arnaud, membre de la section Loisirs Jeunes du CCE. La maquette est présentée dans le document 11.

4.3 Proposer des améliorations à la maquette, dans le but de réduire les erreurs de saisie.

Votre réponse n°24

4.4 Écrire sur votre copie le code HTML correspondant à la saisie de la « zone académique ».

Votre réponse n°25

M. Arnaud souhaite que la liste déroulante permettant de renseigner le numéro de service, affiche les libellés et les numéros des services. Le script saisieInscription.php, dont un extrait est présenté dans le document 9, permet la saisie des informations relatives à une demande d’inscription.

4.5 Compléter ce script sur la copie, en numérotant les lignes modifiées afin de satisfaire le besoin exprimé par M. Arnaud.

Votre réponse n°26

Le projet confié au stagiaire n’a pu être mené à terme. La section Loisirs Jeunes décide donc de faire appel à la société de services qui a déjà réalisé son site intranet : la SSII ProwebCE.

Le site web existant comportera le formulaire de saisie en ligne des demandes d’inscription, une page permettant à un agent de consulter ses demandes ainsi que des pages pour la consultation des séjours proposés. Une évolution de la base de données sera nécessaire.

La société ProwebCE a transmis les éléments de coûts présentés dans le document 8 au CCE de la BN.

4.6 Déterminer le coût total du projet supporté par le CCE. Détailler les calculs.

Votre réponse n°27

ProwebCE propose une première planification (en jours) de ce projet, en utilisant une personne pour chaque rôle et des informations issues du document 7.

Ce planning prévisionnel ne donne pas satisfaction au responsable de la section Loisirs Jeunes : il souhaite réduire la durée d’au moins 5 jours. Il demande à ProwebCE de mobiliser davantage de ressources.

4.7 En se reportant au tableau des tâches présenté dans le document 7, dire s’il est possible de satisfaire cette exigence. Établir le nouveau diagramme de Gantt permettant de prévoir la réduction de la durée totale du projet.

Votre réponse n°28

Documents

Document 1 : Architecture matérielle et logicielle de l’infrastructure informatique de la section Loisirs Jeunes

Document 2 : Extrait du formulaire papier de demande d’inscription

Document 3 : Schéma du processus de gestion des inscriptions aux séjours d’été (2 pages)

Document 4 : Code VBA de la fonction de calcul du nombre de points

1	Public Function nbPoint(satisfaction As Integer, typeSejour As String) As Integer
2	'  Degré de satisfaction :
3	'    1 : si le jeune a obtenu le séjour correspondant à son 1er choix l'année précédente
4	'    2 : si le jeune a obtenu le séjour correspondant à son 2nd choix l'année précédente
5	'    3 : si le jeune a obtenu le séjour correspondant à son 3ème choix l'année précédente
6	'    4 : si le jeune a obtenu le séjour correspondant à son 4ème choix ou s'il a obtenu un séjour ne 
7	'          correspondant à aucun de ses voeux ou bien s'il n'est pas parti l'année précédente
8	'  Type de séjour obtenu l'année précédente :
9	'     - Itinérant étranger 
10	'     - Corse
11	'     - Fixe étranger
12	'     - Rencontre internationale
13	'     - Séjours linguistiques
14	'     - France continentale
15	'     - Non renseigné (chaîne vide) si aucun séjour l’année précédente
16	
17	If satisfaction = 1 Then
18		nbPoint = 30
19	Else
20	If satisfaction = 2 Then
21		nbPoint = 20
22	Else
23	If satisfaction = 3 Then
24		nbPoint = 10
25	Else
26		nbPoint = 0
27	End If
28	End If
29	End If
30	    
31	If nbPoint <> 0 Then
32		Select Case typeSejour
33			Case "Itinérant étranger", "Corse":
34				nbPoint = nbPoint + 20
35			Case "Fixe étranger", "Rencontre internationale":
36				nbPoint = nbPoint + 15
37			Case "Séjours linguistiques":
38				nbPoint = nbPoint + 10
39			Case "France continentale":
40				nbPoint = nbPoint + 5
41		End Select
42	End If
43      
44	End Function

Document 5 : Extrait du schéma relationnel de la base de données Priorités

Sejour (code, libelle, codeType, trancheAge, capaciteAccueil, dateDebut, dateFin, lieu)
	Clé primaire :	code

Agent (matricule, nom, prenom, rue, ville, codePostal)
	Clé primaire :	matricule

Inscription (numero, matriculeAgent, nomEnfant, prenomEnfant, dateNaissanceEnfant, sexeEnfant, codeSejourChoix1, codeSejourChoix2, codeSejourChoix3, codeSejourAffecte)
	Clé primaire    : numero
	Clés étrangères : matriculeAgent en référence à matricule de Agent
			  codeSejourChoix1 en référence à code de Sejour
			  codeSejourChoix2 en référence à code de Sejour
			  codeSejourChoix3 en référence à code de Sejour
			  codeSejourAffecte en référence à code de Sejour

Priorite (matriculeAgent, nomEnfant, prenomEnfant, nbrPointsObtenus)
	Clé primaire :	matriculeAgent, nomEnfant, prenomEnfant
	Clé étrangère :	matriculeAgent en référence à matricule de Agent
	

Informations complémentaires :

Document 6 : Extrait du fichier XML des titres de transport

10
20
30
40
50
60
70
80
90
100
110
120
130
140
150
160
170
180
190
200
210
220
230
<reservationBillets>
<destination>
	<typeTransport>avion</typeTransport>
	<villeDepart>Paris-Charles de Gaulle</villeDepart>
	<villeArrivee>Prague</villeArrivee>
	<dateDepart>06/07/2010</dateDepart>
	<nombreDeBillets>60</nombreDeBillets>
</destination>
<destination>
	<typeTransport>train</typeTransport>
	<villeDepart>Paris</villeDepart>
	<villeArrivee>Bordeaux</villeArrivee>
	<dateDepart>27/07/2010</dateDepart>
	<nombreDeBillets>200</nombreDeBillets>
</destination>
<destination>
	<typeTransport>avion</typeTransport>
	<villeDepart>Athènes</villeDepart>
	<villeArrivee>Paris-Orly</villeArrivee>
	<dateDepart>28/07/2010</dateDepart>
	<nombreDeBillets>120</nombreDeBillets>
</destination>
</reservationBillets>

Document 7 : Tableau des tâches du projet d’évolution

Description des tâchesDurée
(jours)
Tâches
précédentes
Etude préalable
AAnalyse des besoins3-
Réalisation
BÉvolution de la base de données3A
CFormulaire saisie des demandes et page de consultation4B
DPages dynamiques de saisie et consultation des séjours4B
EGénération du fichier XML des demandes d’inscription2B
FIntégration et tests3C, D, E
Déploiement
GDocumentation2C, D, E
HMise en exploitation2F
IFormation2H

Document 8 : Éléments de budget

Etape du projetChargesProfil
Étude3 j/h Chef de projet
Évolution base de données3 j/hAdministrateur base de données
Développements
- Formulaire saisie des demandes et page de consultation
- Pages dynamiques de saisie et consultation des séjours
- Génération du fichier XML des demandes d’inscription
- Intégration et tests

4 j/h
4 j/h
2 j/h
3 j/h
Développeur Web
Documentation2 j/hDéveloppeur Web
Formation2 j/hChef de projet
Mise en exploitation2 j/hAdministrateur site Web

Les charges j/h sont valorisées de la manière suivante :
Rôle Taux jour-homme hors taxes
Chef de projet
Administrateur base de données
Développeur Web
Administrateur site Web
450 €
380 €
250 €
100 €

Document 9 : Extrait du script saisieInscription.php

1010
1020
1030
1040
1050
1060
1070
1080
1090
1100
1110
1120
1130
1140
1150
1160
1170
<tr>
	<td>Service : </td>
	<td><select name="service">
	<?php
			$sql="SELECT num FROM Service";
			$result=mysqli_myquery($sql, $connexion);
			$lgService=mysqli_fetch_array($result);
			while ($lgService==TRUE)
			{
				$numService=$lgService["num"];
				echo "<option value='$numService'>$numService</option>";
				$lgService=mysqli_fetch_array($result);
			}
	?>
		</select>
	</td>	
</tr>	

Extrait du schéma relationnel de la base de données MySQL au site du CCE de la BN(www.ccebn.com) :
Service (num, libelle) 
	Clé primaire :  num

Document 10 : Schéma des échanges entre applications

Document 11 : Jeux d’essai « Saisie des demandes d'inscription »