DocumentCode
3026231
Title
Generating Relational Database Transactions From Recursive Functions Defined on EB^3 Traces
Author
Gervais, Frédéric ; Frappier, Marc ; Laleau, Régine
Author_Institution
Dept. de d´´Inf., Sherbrooke Univ., Que.
fYear
2005
fDate
7-9 Sept. 2005
Firstpage
117
Lastpage
126
Abstract
EB3 is a trace-based formal language created for the specification of information systems (IS). Attributes, linked to entities and associations of an IS, are computed in EB3 by recursive functions on the valid traces of the system. We aim at synthesizing relational database transactions that correspond to EB3 attribute definitions. Each EB3 action is translated into a transaction. EB3 attribute definitions are analysed to determine the key values affected by each action. Some key values are retrieved from SELECT statements that correspond to first-order predicates in EB3 attribute definitions. To avoid problems with the sequencing of SQL statements in the transactions, temporary variables and/or tables are introduced for these key values. Generation of DELETE statements is straightforward, but distinguishing updates from insertions of tuples requires more analysis
Keywords
SQL; formal languages; formal specification; information systems; recursive functions; relational databases; specification languages; transaction processing; DELETE statement; EB3 attribute definition; SELECT statement; SQL statement; first-order predicate; information system specification; recursive function; relational database transaction; trace-based formal language; tuple insertion; Application software; Communication system software; Control systems; Design methodology; Formal languages; Formal specifications; Information systems; Relational databases; Software systems; Software tools;
fLanguage
English
Publisher
ieee
Conference_Titel
Software Engineering and Formal Methods, 2005. SEFM 2005. Third IEEE International Conference on
Conference_Location
Koblenz
Print_ISBN
0-7695-2435-4
Type
conf
DOI
10.1109/SEFM.2005.23
Filename
1575900
Link To Document