Contribution à la conceptualisation de programmes : modèle, implémentation, utilisation et évaluation
Institution:
Paris 8Disciplines:
Directors:
Abstract EN:
Pas de résumé disponible.
Abstract FR:
Cette these propose un modele de caracterisation de l'activite des programmes. Tout programme est decrit selon l'ensemble des calculs qu'il effectue, ceux-ci etant classes en six categories admettant plusieurs variations. Actuellement, ce modele s'applique aux programmes integrant une seule boucle. La caracterisation d'un programme au travers du modele, ou schema, constitue l'explication globale de ce programme, celle-ci revelant sa structure algorithmique et permettant de le rattacher a un ensemble de stereotypes que les programmeurs experimentes connaissent bien. Le schema est egalement la specification abstraite d'un probleme a implementer, celle-ci etant alors representee sous une forme particulierement concise. La description conceptuelle est l'equivalent du programme resume par un schema dont elle est l'explication ou la specification complete. Sur la base des descriptions conceptuelles, trois systemes ont ete implementes: 1. Prisme calcule le schema et la description conceptuelle d'un programme ; il fournit donc une explication de ce programme qui aide a sa comprehension, 2. Signedit genere un programme a partir d'une description conceptuelle ; de ce fait, il introduit un style de programmation qui minimise les interventions du programmeur, 3. Acl est un langage de programmation qui propose d'utiliser les schemas comme primitives ; il integre ainsi des constructions de haut niveau d'abstraction qui favorisent le paradigme de la programmation conceptuelle. Ces systemes ont permis la validation du modele. En effet, pour environ cent cinquante programmes, le programme genere par signedit a partir de la description conceptuelle calculee par prisme est equivalent, en terme de calculs effectues, au programme original. Actuellement, ils sont intensivement utilises pour effectuer les experimentations necessaires a l'extension du modele, notamment vers un modele conceptualisant des programmes comportant plusieurs boucles.