INTRODUCTION
Atelier de Génie Logiciel désigne un ensemble de programmes
informatiques permettant eux-mêmes de produire de programmes de manière
industrielle. Il couvre un champ plus large qu’un environnement de
développement. Il est base sur un dictionnaire de données et est interfacé avec
une interface graphique permettant la modélisation suivant un ou plusieurs
formalismes (MERISE ou UML). Il permet de ‘Zoomer’ et d’enrichir un
référentiel d’entreprise suivant plusieurs axes : cycle de vie, domaine de
projet…
Un apport essentiel d’un AGL est de permettre de documenter
automatiquement un programme et de maintenir en permanence à jour cette
documentation, et ce, tout au long de sa conception.
Certains AGL peuvent aller jusqu’à la génération du code ou à l’inverse
peuvent inclure des fonctionnalités de retro-ingénierie et donc analyser pour
modéliser les données contenues dans un programme. Enfin certains peuvent
faciliter la génération de jeux de test.
Un AGL facilite la collaboration de différents programmeurs ainsi que la
maintenance ultérieure des programmes en les incitants à partager les mêmes
méthodes.
Quelques AGL :
- AD-Cycle d’IBM
- AGL/Merise2
- Argo/UML
- Windev de PCSoft.
PRESENTATION DE WINDEV
Windev est AGL complet permettant de développer des applications
Windows dans tous les domaines activités. WinDev est simple mais puissant. «
Simple » ne veut pas dire « simpliste », bien au contraire. Un simple clic dans
une fenêtre correspond souvent à des centaines de lignes de code en
programmation « traditionnelle » ! Et ce simple clic sera souvent bien plus
puissant, bien plus rapide et bien plus fiable que le résultat obtenu par du code
dans l’application finale. Avec WinDev vous ne serez jamais limité, et si vous
désirez programmer un traitement par code, vous pourrez toujours le faire.
Les applications développées peuvent inclure l’accès des informations
stockées dans des bases de données. En standard, Windev inclut un puissant
Les relations permettent de lier les entités entre elles ou les associations
aux entités
♦ Principales manipulations possibles sur un MCD : - Créer un nouveau
MCD - Supprimer un MCD - Renommer un MCD - Vérifier la cohérence du
MCD - Modifier l’affichage du MCD - Déplacer l’affichage du MCD -
Génération du MCD en MLD.
- .HLP : aide au format Winhelp. L'aide sera gérée par l'outil Winhelp de
Windows.
- .CHM : aide au format Compiled Html Help.
4.10- L’éditeur de tests automatisés
Soucieux de la qualité des applications, plusieurs outils de tests sont à
votre disposition : - Le mode test (Go de projet ou Go de fenêtre) qui permet de
tester immédiatement une modification dans votre application - WDTest permet
par exemple de créer des tests de validation et de non-régression.
Pour automatiser ces tests, et augmenter la qualité de vos applications,
vous pouvez désormais faire des tests unitaires automatiques. Grâce à ces tests,
il est encore plus simple de contrôler toutes les fonctionnalités proposées par vos
applications. Chaque test est composé d'un scénario directement éditable dans
l'interface du produit. Ce scénario est écrit en WLangage et peut être modifié à
n'importe quel moment. Ces tests peuvent être lancés par exemple avant chaque
création d'exécutable pour vérifier le bon fonctionnement d'une application après
diverses modifications. WinDev permet de réaliser des tests automatiques sur les
éléments suivants : - fenêtre - collection de procédure – classe exécutable.
Il est possible de créer un test pour une fenêtre spécifique, ou pour toute
une application. Lors de la création du test, à chaque changement de fenêtre
dans l'application, WinDev crée automatiquement un nouveau scénario de test et
enchaîne ce scénario au scénario précédent si nécessaire. Chaque test est associé
à un code WLangage : le scénario du test. Ce scénario est visible sous l'éditeur
de code. Le code des tests peut être modifié. Les tests et le code associé ne sont
pas intégrés à l'exécutable, et ne sont pas livrés en clientèle. Le nombre de tests
d'une application n'a donc aucune incidence sur la taille de l'application livrée en
clientèle. WinDev permet à l'utilisateur d'enregistrer un scénario de test pour le
transmettre au service qualité ou au développeur. L'utilisateur peut ainsi
transmettre simplement un protocole de reproduction difficilement explicable.
Le développeur pourra importer directement le ou les tests dans son projet. Ces
tests pourront être lancés par exemple pour reproduire le problème de
l'utilisateur, et être ainsi ajoutés aux tests automatiques disponibles sur
l'application.
• les tableaux (Un tableau est un type structuré qui permet de regrouper
une série d'éléments de même type. Sur un tableau, il est possible de : - ajouter
un élément- insérer un élément - modifier un élément - supprimer un élément -
trier les éléments, y compris des éléments structurés (structure, classe) -
rechercher des éléments, La taille du tableau peut être : - fixe : c’est utile et
conseillé pour l’exploitation des API Windows - dynamique : le tableau peut
être alloué à la demande. Remarque : Le WLangage gère également les tableaux
associatifs. Un tableau associatif est un type "avancé" de tableau : il permet de
regrouper une série d'éléments du même type. Chaque élément du tableau est
indexé sur n'importe quel type d'information (et non plus simplement sur un
indice numérique, comme dans les autres types de tableau).).
Affectation de Affectation =
valeur
Addition +
Soustraction -
Multiplication *
Opérateurs
Division /
arithmétiques
Reste de la division Modulo()
Incrémentation ++
Décrémentation --
Egal ==
Différent <>
OU logique OU
Opérateurs
ET logique ET
logiques
NON logique PAS
Addition et affectation +=
Opérateurs Soustraction et -=
d’affectation avec affectation
opération
Multiplication et *=
affectation
Division et affectation /=
BOUCLE
<corps de boucle>
SI <Condition> ALORS SORTIR
FIN
- POUR …
POUR <Variable> = <Valeur_initiale> A <Valeur_finale> [PAS <x>]
... ;
FIN
N.B. : Pour toutes les structures itératives, il est possible :
- De forcer la sortie de la boucle en utilisant l’instruction « SORTIR »
avec la syntaxe suivante :
SI <Condition> ALORS SORTIR
- D’ignorer une ou des occurrence(s) particulières de l’itération en
utilisant l’instruction « CONTINUER » avec la syntaxe suivante :
SI <Condition> ALORS SORTIR
7- Déclaration de variables de type tableau
Il faut utiliser la syntaxe suivante pour la déclaration des tableaux
monodimensionnels :
Nom_Variable_Tableau est un tableau de Nb Type_Element ;
Une information dans la variable de type tableau est accessible par
l’expression suivante :
Nom_Variable_Tableau[Indice] ;
8- Déclaration de variables de type enregistrement
Les enregistrements sont appelés structure en W-Langage. Une variable
de type enregistrement est déclarée avec la syntaxe suivante :
Nom_Variable_Enregistrement est une structure ;
Nom_Membre_1 est un Type_Membre_1 ;
Nom_Membre_2 est un Type_Membre_2 ;
…;
Nom_Membre_N est un Type_Membre_N ;
FIN
2- Le projet Windev
Windev permet de créer une application grâce au projet. Un projet est un
ensemble logique d'objets et de traitements (code de programmes W-Langage)
dont le but est de réaliser un objectif donné. Le projet gère :
- Les relations des objets entre eux
- Les relations des objets et des fichiers de données (décrits dans l'analyse liée au
projet).
Un projet ne peut être relié qu'à une seule analyse. Une même analyse
peut être associée à plusieurs projets. Par ailleurs, les différents éléments d’un
projet sont présents dans le répertoire du projet.
Leçon 4 : HyperfileSql
HyperFileSQL est la base de données sécurisée et puissante, livrée en
standard dans WinDev. HyperFileSQL existe en 3 versions :
• HyperFileSQL Classic : mode monoposte et/ou réseau
• HyperFileSQL Client/Serveur
• HyperFileSQL Mobile
Les bases de données HyperFileSQL Classic et HyperFileSQL
Client/Serveur sont supportées :
• sous Windows
• sous Linux
La base de données HyperFileSQL (toutes versions) est librement
diffusable avec les applications développées avec WinDev.
1- HyperFileSQL Classic
HyperFileSQL Classic permet de développer des applications avec une
base :
• monoposte
• réseau
Si HyperFileSQL est en mode réseau, les fichiers de données sont
présents dans un répertoire accessible par les postes utilisateur. Chaque poste
utilisateur accède physiquement aux fichiers de données. Les traitements
(requêtes, lecture / ajout dans un fichier, ...) sont réalisés sur chaque poste
utilisateur.
2- HyperFileSQL Client/Serveur
WinDev permet de créer des applications accédant à des bases de données
HyperFileSQL Client/Serveur. Une application HyperFileSQL Client/Serveur
consiste à exécuter l'application sur différents postes utilisateur (appelés
machines clientes) et à déporter la ou les bases de données et les traitements sur
un poste serveur. Les fichiers de données sont présents sur un poste serveur.
Seul le poste serveur accède physiquement aux fichiers de données. L'ensemble
des traitements (requêtes, lecture / ajout dans un fichier, ...) est réalisé sur le
serveur.
3- Fonctions spécifiques à HyperFileSQL Client/Serveur
Différentes fonctions HyperFileSQL sont spécifiques à la gestion des
données HyperFileSQL Client/Serveur. Ces fonctions permettent principalement
de :
• gérer les utilisateurs et les groupes d'utilisateurs
• gérer les fichiers de données présents sur le serveur
• gérer l'intégrité référentielle
• gérer le serveur
• gérer les procédures stockées
• gérer les triggers serveur
• gérer les tâches planifiées sur le serveur
• gérer les sauvegardes sur le serveur.
Les fonctions spécifiques à la gestion du moteur HyperFileSQL
Client/Serveur sont les suivantes :
Leçon 7 : Projet
1- Création d'un projet WinDev
Un projet ne peut être relié qu'à une seule analyse. Une même analyse
peut être associée à plusieurs projets.
2- Comment le faire ?
Pour créer un projet WinDev:
1. Sélectionnez l'option "Fichier ... Nouveau ... Projet". L'assistant de création de
projet s'ouvre.
2.
6. Pour optimiser les choix proposés par l'environnement, indiquez (si vous
connaissez ces informations) :
7. Indiquez les dates de votre projet. Par défaut, la date de début de projet
correspond à la date de création.
Vous pouvez :
11. Indiquez la taille préférentielle des écrans de vos utilisateurs : la taille de vos
nouvelles fenêtres sera automatiquement adaptée à ce choix. Passez à l'écran
suivant.
12. Sélectionnez les langues gérées. Ces langues seront proposées par défaut
dès qu'une option d'un élément (champ, fenêtre, état, ...) pourra être traduite.
Sélectionnez la langue par défaut en exécution. Cette langue sera utilisée pour
visualiser le projet en exécution. Passez à l'écran suivant.
13. Indiquez si le projet doit utiliser une base de données ou non. Si votre
projet utilise une base de données, la base de données peut exister ou être
nouvelle. Dans le cas d'une nouvelle base de données, un assistant de création de
base de données est automatiquement exécuté à la fin de la création du projet.
3- Les fenêtres
Les fenêtres constituent l'interface principale d'une application WinDev
ou WinDev Mobile. En effet, c'est grâce aux fenêtres que les utilisateurs vont
pouvoir consulter et manipuler des informations. Ces informations peuvent être
Fenêtre basée sur un modèle. Le modèle de fenêtres utilisé est un modèle livré
ou créé précédemment.
3.1- Les différents types de champs
Plusieurs types de champs peuvent être manipulés dans une fenêtre :
Champ de saisie.
Champ OLE.
Libellé.
Champ ActiveX.
Bouton.
Forme.
Image.
Champ HTML.
Sélecteur.
Champ XAML (ou champ DotNet
Interrupteur.
(WPF)).
Liste.
Carrousel.
Combo.
Cube.
Liste image
Superchamp (champ de type
Table.
avancé).
Zone répétée.
Fenêtre interne.
Table hiérarchique.
Barre d'outils.
Arbre.
Code-Barres.
Jauge.
Champ Séparateur.
Ascenseur.
Agenda.
Potentiomètre.
Range Slider.
Spin.
Planning.
Onglet.
Champ ".NET 2.0 (WinForm)"
Boîte à outils.
décrire les structures de données (fichiers, rubriques, ...) utilisées dans votre
projet. L'éditeur d'analyses permet de créer très simplement une analyse. Pour
décrire une analyse, deux méthodes sont à votre disposition :
Tant que l'analyse (le MLD) n'a pas été générée, la description de
l'analyse (c'est-à-dire les fichiers de données) ne pourra pas être utilisée dans le
projet.
WinDev permet de faire à peu près tout ce que l'on désire sur les "chaînes
de texte" facilement.