ELSE INSERT INTO book(bookKey,title) /* insert statement */
VALUES (#bId,#ttl);
END;
COMMIT;
Such a transaction could be simplified by the analysis of EB
3
process expressions.
4 Conclusion
In this paper, we have presented an overview of an algorithm that synthesizes rela-
tional database transactions from EB
3
attribute definitions. Synthesized programs can
be used in concrete implementations of EB
3
specifications; their algorithmic complexity
is similar to those of manually written programs. Our programs introduce some over-
head, because they systematically store the current values of attributes before updating
the database, in order to ensure correctness. We plan to optimize these programs by
analysing dependencies between update statements and avoid, when possible, these in-
termediate steps. By focusing on the translation of attribute definitions, the resulting
transactions do not take the behaviour specified by the EB
3
process expression into ac-
count. This work must now be coupled with the analysis and/or the interpretation of EB
3
process expressions. Several papers deal with the synthesis of relational implementa-
tions. Most of the time, refinement techniques are used, like in [2] for Z and [11] for B
specifications, which are orthogonal in specification style to EB
3
[4].
References
1. Cousineau, G., Mauny, M.: The Functional Approach to Programming. Cambridge Univer-
sity Press, Cambridge (1998)
2. Edmond, D.: Refining Database Systems. In Proc. ZUM’95, Limerick, Ireland, 7-9 Septem-
ber 1995. LNCS, Vol. 967, Springer-Verlag (1995) 25-44
3. Fraikin, B., Frappier, M.: EB3PAI: an Interpreter for the EB
3
Specification Language. In
Proc. 15th Intern. Conf. on Software and Systems Engineering and their Applications, Paris,
France, 3-5 December 2002. CMSL, Paris (2002)
4. Fraikin, B., Frappier, M., Laleau, R.: State-Based versus Event-Based Specifications for In-
formation Systems: a Comparison of B and EB
3
. Software and System Modeling, to appear
5. Frappier, M., Fraikin, B., Laleau, R., Richard, M.: APIS - Automatic Production of Informa-
tion Systems. In Proc. AAAI Spring Symposium, Stanford, USA, 25-27 March 2002. Techn.
Rep. SS-02-05, AAAI Press (2002) 17-24
6. Frappier, M., St-Denis, R.: EB
3
: an Entity-Based Black-Box Specification Method for Infor-
mation Systems. Software and System Modeling, 2(2) (2003) 134-149
7. Gervais, F., Frappier, M., Laleau, R.: EB
3
Attribute Definitions: Formal Language and Ap-
plication. Technical Report 700, CEDRIC, Paris, France (2005)
8. Gervais, F., Frappier, M., Laleau, R.: Synthesizing B Substitutions for EB
3
Attribute Defini-
tions. Technical Report 683, CEDRIC, Paris, France (2004)
9. Hoare, C. A. R.: Communicating Sequential Processes. Prentice-Hall (1985)
10. ISO: Database Language SQL. International Standard ISO/IEC JTC1/SC21, doc. 9075
N5739 (1992)
11. Mammar, A.: Un environnement formel pour le d
´
eveloppement d’applications base de
donn
´
ees. Ph.D. thesis, CNAM, Paris (2002)
88