M. Abadi, L. R. Lamportam98-]-j, L. Abrial, and . Mussat, The Existence of Refinement Mappings Introducing Dynamic Constraints in B, Digital Systems Research Center B'98 : Recent Advances in the Development and Use of the B Method, pp.83-128, 1988.

M. [. Amghar, A. Meziane, and . Flory, Using Business Rules within a Design Process of Active Databases, Journal of Database Management, vol.11, issue.3, pp.3-15, 2000.
DOI : 10.4018/jdm.2000070101

]. R. Bac78 and . Back, On the Correctness of Refinement in Program Development, 1978.

]. R. Bac88 and . Back, A Calculus of Refinements for Program Derivations, Acta Informatica, vol.25, issue.6, pp.593-624, 1988.

]. P. Bat05 and . Batanado, Synthèse de transactions de base de données relationnellè a partir de définitions d'attributs EB 3, 2005.

E. [. Bolognesi and . Brinksma, Introduction to the ISO specification language LOTOS, Computer Networks and ISDN Systems, vol.14, issue.1, pp.25-59, 1987.
DOI : 10.1016/0169-7552(87)90085-7

J. [. Bolton, J. Davies, and . Woodcock, On the Refinement and Simulation of Data Types and Processes, IFM 99, pp.273-292, 1999.
DOI : 10.1007/978-1-4471-0851-1_15

G. [. Berry, B. Gonthier, F. Blazy, R. Gervais, and . Laleau, The Esterel synchronous programming language: design, semantics, implementation, ZB2003 : Formal Specification and Development in Z and B, pp.87-152, 1992.
DOI : 10.1016/0167-6423(92)90005-V

URL : https://hal.archives-ouvertes.fr/inria-00075711

R. [. Back and . Kurki-suonio, Decentralization of Process Nets with Centralized Control Object-Oriented Analysis and Design With Applications A CSP Approach to Action Systems, PODC 1983 csp2B : A Practical Approach to Combining CSP and B. In FM'99, pp.131-142, 1983.

]. R. Bvw98, J. Back, . Von-wright-[-cm98-]-g, M. Cousineau, . L. Mauny-[-csw02-]-a et al., The Functional Approach to Programming [Cor06] Correct System Design Group. Moby/OZ. http://csd. informatik.uni-oldenburg.de/ ~ moby Refinement of Actions in Circus Reformulation et vérification de propriétés temporelles dans le cadre du raffinement de systèmes d'´ evénements An Overview of RoZ : A Tool for Integrating UML and Z Specifications, Refinement Calculus : A Systematic Introduction. Graduate Texts in Computer Science. Unifying Classes and Processes. Software and Systems ModelingDij76] E.W. Dijkstra. A Discipline of Programming CAiSE'00DW96] J. Davies and J.C.P. Woodcock. Using Z : Specification, Refinement , and Proof, pp.9-36, 1976.

A. Evans, H. Treharne, R. Laleau, and M. Frappier, How to verify dynamic properties of information systems, Proceedings of the Second International Conference on Software Engineering and Formal Methods, 2004. SEFM 2004., pp.416-425, 2004.
DOI : 10.1109/SEFM.2004.1347547

URL : https://hal.archives-ouvertes.fr/hal-01224670

F. B. Fraikin, M. Frappier, and R. Laleau, Specification Language State-Based versus Event- Based Specifications for Information Systems : A Comparison of B and EB 3, ICSSEA 2002 Software and Systems Modeling, pp.3-5236, 2002.

M. Frappier, B. Fraikin, R. Laleau, M. Richardfl03-]-m, R. Frappier et al., Combination and Implementation of Processes and Data : from CSP-OZ to Java Proving Event Ordering Properties for Information Systems [For97] Formal Systems (Europe) Ltd. Failures-Divergences Refinement : FDR2 User Manual : An Entity-Based Black-Box Specification Method for Information Systems, APIS -Automatic Production of Information Systems. In AAAI Spring Symposium ZB2003 Software and Systems Modeling ICEIS 2006, volume Information Systems Analysis and Specification, pp.17-24, 1999.

]. F. Gbfl06b, P. Gervais, M. Batanado, R. Frappier, and . Laleau, Génération automatique de transactions de base de données relationnellè a partir de définitions d'attributs EB 3 The RAISE Specification Language : A Tutorial, AFADL 2006 VDM'91, pp.25-39, 1991.

]. F. Bibliographie-[-ger06 and . Gervais, EB 4 : Vers une méthode de spécification formelle des SI, pp.561-576, 2006.

M. [. Gervais, R. Frappier, and . Laleau, Synthesizing B Substitutions for EB 3 Attribute Definitions, Technical Report CE- DRIC, vol.683, 2004.
URL : https://hal.archives-ouvertes.fr/hal-01124941

]. F. Gfl05b, M. Gervais, R. Frappier, and . Laleau, Synthesizing B Specifications from EB 3 Attribute Definitions, IFM 2005, pp.207-226, 2005.

M. [. Gervais, R. Frappier, and . Laleau, Refinement of eb 3 Process Patterns into B Specifications, LNCS, vol.4355, pp.201-215, 2007.
DOI : 10.1007/11955757_17

URL : https://hal.archives-ouvertes.fr/hal-01125252

M. [. Gervais, R. Frappier, P. Laleau, and . Batanado, EB 3 Attribute Definitions : Formal Language and Application, 2005.
URL : https://hal.archives-ouvertes.fr/hal-01223280

M. [. Gervais, R. Frappier, and . St-denis, Software Specification Methods, chapter, ISTE, vol.3, pp.259-274, 2006.

J. [. Guttag and . Horning, Larch : Languages and Tools for Formal Specification, 1993.
DOI : 10.1007/978-1-4612-2704-5

T. [. Gane and . Sarson, Structured Systems Analysis : Tools and Techniques, 1979.

J. [. Garavel and . Sifakis, Compilation and Verification of LOTOS Specifications, PSTV 1990, pp.379-394, 1990.

W. [. Galloway and . Stoddart, Integrated Formal Methods, INFORSID'97, pp.549-576, 1997.

]. Y. Gur93 and . Gurevich, Evolving Algebras : An Attempt to Discover Semantics, In Current Trends in Theoretical Computer Science. World Scientific, 1993.

]. Y. Gur95 and . Gurevich, Evolving Algebras 1993 : Lipari Guide. In Specification and Validation Methods, 1995.

]. D. Har87 and . Harel, Statecharts : A Visual Formalism for Complex Systems, Science of Computer Programming, vol.8, pp.231-274, 1987.

G. [. Hohenstein and . Engels, SQL/EER???syntax and semantics of an Entity-Relationship-based query language, Information Systems, vol.17, issue.3, pp.209-242, 1992.
DOI : 10.1016/0306-4379(92)90014-E

H. [. Hoare and . Jifeng, Unifying Theories of Programming, 1998.

]. C. Hoa69 and . Hoare, An Axiomatic Basis for Computer Programming, Communications of the ACM, vol.12, issue.10, pp.576-583, 1969.

]. C. Hoa85 and . Hoare, Communicating Sequential Processes, 1985.

]. C. Hoa03 and . Hoare, The Verifying Compiler : A Grand Challenge for Computing Research, Journal ACM, vol.50, issue.1, pp.63-69, 2003.

]. U. Hoh89 and . Hohenstein, Automatic Transformation of an Entity- Relationship Query Language into SQL, ER'89, pp.303-321, 1989.

]. V. Ill91 and . Illingworth, Dictionnaire d'informatique. Hermann, 1991.

[. Iso, Dictionary of Computer Science : the Standardized Vocabulary, 1997.

]. M. Jac83 and . Jackson, System Development, 1983.

]. I. Jac94 and . Jacobson, Object-Oriented Software Engineering -A Use Case Driven Approach, 1994.

]. K. Jen96 and . Jensen, Coloured Petri Nets : Basic Concepts, Analysis Methods and Practical Use, 1996.

]. C. Jon90 and . Jones, Systematic Software Development using VDM, 1990.

]. R. Lal02 and . Laleau, Conception et développement formels d'applications bases de données. HabilitationàHabilitationà diriger des recherches, 2002.

]. Y. Led98 and . Ledru, Identifying Pre-conditions with the Z/EVES Theorem Prover, ASE 1998, pp.32-41

A. [. Laleau and . Mammar, An overview of a method and its support tool for generating B specifications from UML notations, Proceedings ASE 2000. Fifteenth IEEE International Conference on Automated Software Engineering, pp.269-272, 2000.
DOI : 10.1109/ASE.2000.873675

URL : https://hal.archives-ouvertes.fr/hal-01124519

T. [. Leucker and . Noll, Rapid prototyping of specification language implementations, Proceedings Tenth IEEE International Workshop on Rapid System Prototyping. Shortening the Path from Specification to Prototype (Cat. No.PR00246), pp.60-65, 1999.
DOI : 10.1109/IWRSP.1999.779032

]. A. Mam02 and . Mammar, Un environnement formel pour le développement d'applications base de données, 2002.

K. [. Misra and . Chandy, Parallel Program Design : A Foundation, 1988.

F. [. Mammar, R. Gervais, and . Laleau, Systematic Identification of Preconditions from Set-Based Integrity Constraints, INFORSID 2006, pp.595-610, 2006.
URL : https://hal.archives-ouvertes.fr/hal-01125172

]. R. Mil80 and . Milner, A Calculus of Communicating Systems, 1980.

C. [. Marca and . Mcgowan, Formal Models and Semantics, volume B of Handbook of Theoretical Computer Science, chapter Operational and Algebraic Semantics of Concurrent Processes SADT : Structured Analysis and Design Techniques A Theoretical Basis for Stepwise Refinement and the Programming Calculus The Specification Statement, Mor88] C. MorganMor90] C. Morgan. Programming from Specifications FM'99, pp.287-306517, 1987.

]. H. Ngu98, . Nguyenpj03-]-f, D. Peschanski, and . Julien, Unified Modeling Language [Pel86] P. Pellaumail. La méthode AXIAL. ´ Editions d'Organisation, 1986. [Pet81] J.L. Peterson. Petri Net Theory and the Modeling of Systems When Concurrent Control Meets Functional Requirements, or Z + Petri-Nets [Pnu77] A. Pnueli. The Temporal Logic of Programs The Temporal Semantics of Concurrent Programs, ZB2003, volume 2651 of LNCS FOCS. Linger, and J.H. Poore. Cleanroom Software Engineering : Technology and Process, pp.79-97, 1977.

M. J. Rumbaugh, W. Blaha, F. Premerlani, W. Eddy, . Lorenson-[-rfb88-]-c et al., Object-Oriented Modeling and Design Conception des systèmes d'information : la méthode REMORA. Eyrolles The Theory and Practice of Concurrency, The Z/EVES System. In ZUM'97, pp.72-85, 1988.

J. [. Smith and . Derrick, Specification, Refinement and Verification of Concurrent Systems -an Integration of Object-Z and CSP. Formal Methods in Systems Design, pp.249-284, 2001.

]. G. Smi00 and . Smith, The Object-Z Specification Language, 2000.

]. J. Spi92 and . Spivey, The Z Notation : a Reference Manual, 1992.

H. [. Schneider and . Treharne, Communicating B Machines, ZB2002, pp.416-435, 2002.
DOI : 10.1007/3-540-45648-1_22

URL : http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.22.5500

J. [. Sampaio, A. L. Woodcock, and . Cavalcanti, Refinement in Circus, LNCS, vol.2391, pp.451-470, 2002.
DOI : 10.1007/3-540-45614-7_26

]. A. Tan92 and . Tanaka, On Conceptual Design of Active Databases, 1992.

]. Ter05 and . Terrillon, Description comportementale d'interfaces web, 2005.

A. [. Tardieu, R. Rochfeld, and . Colleti, La méthode MERISE : principes et outils. ´ Editions d'Organisation, 1983.

S. [. Treharne and . Schneider, Using a Process Algebra to control B OPERATIONS, IFM'99, pp.437-457, 1999.
DOI : 10.1007/978-1-4471-0851-1_23

S. [. Treharne and . Schneider, How to Drive a B Machine, ZB2000, pp.188-208, 2000.
DOI : 10.1007/3-540-44525-0_12

]. J. Ull88 and . Ullman, Principles of Database and Knowledge-Base Systems, 1988.

S. [. Widom and . Ceri, Active Database Systems, 1996.

A. [. Woodcock and . Cavalcanti, The Semantics of Circus, LNCS, vol.2272, pp.184-203, 2002.
DOI : 10.1007/3-540-45648-1_10

]. N. Wir71 and . Wirth, Program Development by Stepwise Refinement, Communications of ACM, vol.14, issue.4, pp.221-227, 1971.

E. [. Yourdon and . Constantine, Structured Design, 1979.

. Un-membre-peut-emprunter-un-livre, Lend) si ce dernier est disponible. L'attribut nbLoans représente le nombre de prêts d'un membre. La date d'´ echéance d'un prêt est représentée par dueDate. Tout membre doit rendre un livre emprunté (Return)

. Un-membre-peut-réserver-un-livre, Reserve) si ce dernier est déjà emprunté par un autre membre. Plusieurs membres peuvent réserver le même livre. L'attribut position indique la position d'un membre dans la liste de réservation d

D. Qu, il est retourné, un livre qui a ´ eté réservé peutêtrepeutêtre récupéré (Take) par le membre dont la position estégalèestégalè a 1 dans la liste de réservation. Tant qu'un membre n'a pas récupéré un livre, il peutàpeutà tout moment annuler (Cancel) sa réservation

E. Diagramme and C. La-figure, 1 représente le diagramme ER de l'exemple. Les signatures des actions sont les suivantes : Acquire(bId : bookKey Set, bTitle : Title Type ? ) : void Discard(bId : bookKey Set) : void Modify(bId : bookKey Set, newTitle : Title Type ? ) : void DisplayTitle(bId : bookKey Set) : (title : Title Type ? ) Register(mId : memberKey Set, lD : NAT ) : void Unregister(mId : memberKey Set) : void C.4. SYNTH`ESESYNTH` SYNTH`ESE DE TRANSACTIONS 221

>. , !. Doctype, . System-"-er2sql, and . Dtd, > <entityModel> <property projectName="EB3 Attribute Definition /> <entity name="book" type="strong" label="book entity type" > <attribute name="bookKey" type="numeric" size="5" scale="2" key="true"/> <attribute name="title" type="varchar" size="20"></attribute> </entity> <entity name="member" type="strong" label="member entity type" > <attribute name="memberKey" type="numeric" size="5" key="true"/> <attribute name="nbLoans" type="numeric" size="5" null="false"/> <attribute name="loanDuration" type="numeric" size="3" null="false"/> </entity> <relation name="loan" label="loan association" > <attribute name="dueDate" type="date"/> <participant refEntity="member" participation="partial" cardinality="1" role=relation> <relation name="reservation" label="reservation association" > <attribute name="position" type="numeric" size=, 2006.

A. C. Exemple-de-la-biblioth-`-equebiblioth-`-biblioth-`-eque-/-*-*-*-entity-type-book and *. Book, bookKey(s)== match last(s) with NULL-> {}, Acquire(bId,_) -> book.bookKey(front(s))\/{bId}, Discard(bId) -> book.bookKey(front(s))-{bId}s))

. Book, title(s,bId)== match last(s) with NULL -> NULL, Acquire(bId,bTitle) -> bTitle, Discard(bId) -> NULL, Modify(bId,newTitle) -> newTitle, _ -> book.Title(front(s),mId)

. Member, loanDuration(s,mId)== match last(s) with NULL -> NULL, Register(mId,lD) -> lD, Unregister(mId) -> NULL, _ -> member.loanDuration(front(s),mId)

/. and *. Association-loan-*-/-loan, loan(s)== match last(s) with NULL -> {}, Lend(bId,_,_) ->loan.loan(front(s))\/{bId}, Return(bId) -> loan.loan(front(s))-{bId}, Take(bId,_,_) -> loan.loan(front(s))\/{bId}s))

A. C. Exemple-de-la-biblioth-`-equebiblioth-`-biblioth-`-eque-return, ) -> NULL, Transfer(bId,mId,_) -> mId, Take(bId,mId,_) -> mId, _ -> book.borrower(front(s),bId)

A. Table, A. Fkreservation_book, and F. Key, ResultSet rset0 = connection.createStatement().executeQuery("SELECT C.memberKey, A.nbLoans+1 "+ "FROM eb3Tempmember C,member A "+ "WHERE C.memberKey = "+ mId+

}. Else, Classic" ) { connection.createStatement().executeUpdate("UPDATE loan SET "+ "dueDate = CURRENT_DATE+"+var0+

}. While, next()) { connection.createStatement().executeUpdate("UPDATE member SET nbLoans = "+rset0.getDouble(2)+ " "+ "WHERE memberKey = "+ rset0

G. Memberkey, G. Memberkey, I. G. Select, G. Memberkey, D. Bookkey-=-"-+-bid+ et al., + "FROM reservation F,reservation G "+ "WHERE F.bookKey = "+ bId+AND F.memberKey = "+ mId+AND F.position < G.position ) "+ "AND G.memberKey IN (SELECT H.memberKey "+ "FROM reservation, memberKey) NOT IN ( "+ "SELECT "+bId+",B.memberKey "+ "FROM eb3Tempreservation B "+ "WHERE B.memberKey = "+ mId+ " ) "+ "AND D.bookKey = "+ bId+

}. While, next()) { connection.createStatement().executeUpdate("UPDATE reservation SET position = "+rset1.getDouble(3)+ " "+ "WHERE bookKey = "+ rset1, AND memberKey = "+ rset1.getDouble

}. Catch, Exception e ) { try{ connection.createStatement().executeUpdate("DROP TABLE eb3Tempreservation"); connection, rollback(

}. Catch, SQLException s){ System.err.println(s.getMessage(

?. F. Gervais, M. Frappier, and R. Laleau, Generating Relational Database Transactions From Recursive Functions Defined on EB^3 Traces, Third IEEE International Conference on Software Engineering and Formal Methods (SEFM'05), pp.7-9, 2005.
DOI : 10.1109/SEFM.2005.23

URL : https://hal.archives-ouvertes.fr/hal-01125046

?. F. Gervais, M. Frappier, and R. , Laleau : Synthesizing B specifications from EB 3 attribute definitions, 5th International Conference on Integrated Formal Methods (IFM 2005), pp.207-226, 2005.

?. F. Gervais, P. Batanado, M. Frappier, and R. Laleau, EB 3 TG : A tool synthesizing relational database transactions from EB 3 attribute definitions, 8th International Conference on Enterprise Information Systems Volume Information Systems Analysis and Specification, pp.24-27, 2006.
URL : https://hal.archives-ouvertes.fr/hal-00145866

?. F. Gervais, M. Frappier, and R. Laleau, Refinement of eb 3 Process Patterns into B Specifications, 7th International B Conference Janvier, pp.17-19, 2007.
DOI : 10.1007/11955757_17

URL : https://hal.archives-ouvertes.fr/hal-01125252

?. F. Gervais, P. Batanado, M. Frappier, and R. Laleau, Génération automatique de transactions de base de données relationnellè a partir de définitions d'attributs EB 3, Atelier Approches Formelles dans l'Assistance au Développement de Logiciels, pp.15-17, 2006.

?. A. Mammar, F. Gervais, and R. Laleau, Systematic identification of preconditions from set-based integrity constraints, 24ème Congrès INFORSID Juin. INFORSID, Volume II, pp.1-3, 2006.
URL : https://hal.archives-ouvertes.fr/hal-01125172

?. F. Gervais, EB 4 : Vers une méthode de spécification formelle des systèmes d'information, 24ème Congrès INFORSID, pp.1-3
DOI : 10.3166/isi.12.4.69-93

?. S. Blazy, F. Gervais, and R. Laleau, Une démarche outillée pour spécifier formellement des patrons de conception réutilisables, Workshop Objets, Composants et Modèles dans l'ingénierie des SI (OCM-SI 2003), pp.5-9, 2003.

?. P. Batanado, F. Gervais, M. Frappier, and R. Laleau, EB 3 TG : Un outil de génération de transactions de base de données relationnelle pour EB 3 . Session Outils de l'Atelier AFADL Rapports techniques ? F. Gervais : Réutilisation de composants de spécification en B, pp.15-17, 2002.

?. S. Blazy, F. Gervais, and R. Laleau, Un exemple de réutilisation de patterns de spécification avec la méthode B. Rapport technique 395, 2002.

?. F. Gervais, EB 4 : Vers une méthode combinée de spécification formelle des systèmes d'information. Examen de spécialité, 2004.

?. F. Gervais, M. Frappier, and R. , Laleau : Synthesizing B substitutions for EB 3 attribute definitions. Rapport technique 683, 2004.
DOI : 10.1007/11589976_13

?. F. Gervais, M. Frappier, R. Laleau, and P. , Batanado : EB 3 attribute definitions : Formal language and application, 2005.

?. F. Gervais, M. Frappier, and R. , Laleau : Vous avez dit raffinement ? Rapport technique 829, 2005.

?. A. Mammar, F. Gervais, and R. , Laleau : Generating B preconditions from typical IS invariants. Rapport technique, LASSY, 2006.

?. F. Gervais, M. Frappier, and R. Laleau, Defining and proving B preconditions for the patterns of EB 3 process expressions, 2006.