Systematic Identification of Preconditions from Set-Based Integrity Constraints Amel Mammar * , Frédéric Gervais ** , Régine Laleau *** * LASSY, Université du Luxembourg 6 rue Richard Courdenhove-Kalergi, L-1359 Luxembourg-Kirchberg amel.mammar@uni.lu ** CEDRIC, CNAM-IIE 18 allée Jean Rostand, 91025 Évry Cedex, France frederic.gervais@usherbrooke.ca *** LACL, Université Paris 12 IUT Fontainebleau, Route forestièreHurtault, 77300 Fontainebleau, France laleau@univ-paris12.fr ABSTRACT. Maintaining integrity constraints in information systems is a real issue. In our previ- ous work, we have defined a formal approach that derives B formal specifications from a UML description of the system. Basically, the generated B specification is composed of a set of vari- ables modeling data and a set of operations representing transactions. The integrity constraints are directly specified as B invariant properties. So far, the operations we generate establish only a reduced class of constraints. In this paper, we describe a systematic approach to identify preconditions that take a larger class of invariants into account. The key idea is the definition of rewriting and simplification rules that we apply to the B invariants. RÉSUMÉ. La préservation des contraintes d’intégrité fait partie des problèmes soulevés lors de la conception d’un système d’information. Dans nos travaux antérieurs, nous avons défini une approche formelle qui génère des spécifications B à partir d’une description UML du système. Concrètement, la spécification B est composée d’un ensemble de variables d’état qui modé- lisent les données et d’une liste d’opérations qui représentent les transactions. Les contraintes d’intégrité sont alors exprimées comme des propriétés d’invariance. Jusqu’à présent, les opé- rations générées ne préservaient qu’une classe réduite de contraintes. Dans ce papier, nous décrivons une approche systématique afin d’identifier les préconditions pour une plus grande classe d’invariants B. L’approche proposée se base sur des règles de réécriture et de simplifi- cation que nous appliquons sur les invariants B. KEYWORDS: Integrity constraints, formal specification, B language, invariant, precondition. MOTS-CLÉS : Contraintes d’intégrité, spécification formelle, langage B, invariant, précondition.