Spécification et Modélisation Informatiques
Sessions de formation
(Fuseau horaire : Europe/Paris)
Aucune session n'est visible pour le moment
Présentation
Public, conditions d'accès et prérequis
Prérequis : connaissance générale de l'informatique, bases de la programmation et de la méthodologie de développement.
Objectifs
Le but du cours est de présenter les outils mathématiques (logique, automates, logique de Hoare etc), utiles pour la spécification et la modélisation de systèmes informatiques. Ils constitue les base du génie logiciel, des réseaux, de la conception et du développement, des bases de données, des systèmes d'information et des systèmes transactionnels. A ce titre, ils sont sous-jacents à de nombreux enseignements du cursus.
Contenu
Outils conceptuels (un sous-ensemble significatif doit être traité)
- Automates
- Expressions régulières et automates finis à états
- Propriétés de clôture
- Algorithmes de déterminisation, minimisation
- Calcul des Prédicats et Théorie des Ensembles
- Calcul des Prédicats : validité, prouvabilité, correction, complétude, indécidabilité.
- Théorie des Ensembles : ensembles, relations, fonctions
- Preuve de programme
- contrat de fonction, pré-post-conditions, invariants de boucles
Exemples d'utilisation
Les exemples du cours porteront sur des applications.
Pour les automates finis, ces applications comportent la modélisation d'automatisme (distributeur de billet, ascenseur), la modélisation de protocoles, des diagrammes
d'états-transition UML, la correction orthographique. Par ailleurs, on illustrera l'ajout de contraintes OCL sur un modèle UML.
Le cours pourra aborder également les rapports entre spécification logique et le modèle relationnel des bases de données. Les notions de dépendance fonctionnelle et de de forme normale seront mises en relation avec les concepts ensemblistes.
Concernant la preuve de programme, des algorithme simple sur les nombres et sur les graphes pourraont par exemple être utilisés.
Tous ces sujets ne seront pas nécessairement tous couverts par le cours, qui pourra mettre l'accent sur une partie seulement de ces exemples d'application.
Modalités d'évaluation
- Contrôle continu
- Projet(s)
- Examen final
Examen écrit éventuellement complété d'une note de contrôle continu sanctionnant des devoirs, projets ou autres travaux personnels.