Generating relational database transactions from eb 3 attribute definitions
- 100 Downloads
Abstract
eb 3 is a trace-based formal language created for the specification of information systems. In eb 3, each entity and association attribute is independently defined by a recursive function on the valid traces of external events. This paper describes an algorithm that generates, for each external event, a transaction that updates the value of affected attributes in their relational database representation. The benefits are twofold: eb 3 attribute specifications are automatically translated into executable programs, eliminating system design and implementation steps; the construction of information systems is streamlined, because eb 3 specifications are simpler and shorter to write than corresponding traditional specifications, design and implementations. In particular, the paper shows that simple eb 3 constructs can replace complex SQL queries which are typically difficult to write.
Keywords
Information systems Attributes Pattern matching SELECT statements TransactionsPreview
Unable to display preview. Download preview PDF.
References
- 1.Abrial J.R.: The B-Book: Assigning programs to meanings. Cambridge University Press, Cambridge (1996)MATHGoogle Scholar
- 2.Barros, R.: Deriving relational database programs from formal specifications. In FME 94, pp. 703–723. Springer, Berlin (1994)Google Scholar
- 3.Batanado, P.: Synthèse de transactions de base de données relationnelle à partir de définitions d’attributs EB3. Master’s thesis, Département d’informatique, Université de Sherbrooke (2005)Google Scholar
- 4.Bolognesi T., Brinksma E.: Introduction to the ISO specification language LOTOS. Comp. Netw. ISDN Syst. 14(1), 25–59 (1987)CrossRefGoogle Scholar
- 5.Cousineau G., Mauny M.: The functional approach to programming. Cambridge University Press, Cambridge (1998)MATHGoogle Scholar
- 6.Davies J., Woodcock J.C.P.: Using Z: Specification, Refinement, and Proof. Prentice-Hall, Englewood Cliffs (1996)MATHGoogle Scholar
- 7.Demuth, B., Hußmann, H.: Using uml/ocl constraints for relational database design. In: UML’99, Fort Collins, USA, October. LNCS, vol. 1723, pp. 598–613. Springer, Heidelberg (1999)Google Scholar
- 8.Dupuy, S., Ledru, Y., Chabre-Peccoud, M.: An overview of RoZ: a tool for integrating UML and Z specifications. In: CAiSE, Stockholm, Sweden, June 2000. LNCS, vol. 1789, pp. 417–430. Springer, Heidelberg (2000)Google Scholar
- 9.Edmond, D.: Refining database systems. In: ZUM’95: The Z Formal Specification Notation, Limerick, Ireland, September. LNCS, vol. 967, pp. 25–44. Springer, Heidelberg (1995)Google Scholar
- 10.Elmasri R., Navathe S.: Fundamentals of Database Systems. Addison-Wesley, Reading (2004)MATHGoogle Scholar
- 11.Evans, N., Treharne, H., Laleau, R., Frappier, M.: How to verify dynamic properties of information systems. In: SEFM 2004, Beijing, China, September, pp. 416–425. IEEE Computer Society Press, New York (2004)Google Scholar
- 12.Fowler M.: Patterns of enterprise application architecture. Addison-Wesley, Reading (2002)Google Scholar
- 13.Fraikin, B., Frappier, M.: EB3PAI: An interpreter for the eb 3 specification language. In: 15th International conference on software and systems engineering and their applications (ICSSEA), December (2002)Google Scholar
- 14.Fraikin, B., Frappier, M.: Efficient execution of process expressions using symbolic interpretation. SCP (2006) (submitted)Google Scholar
- 15.Fraikin B., Frappier M., Laleau R.: State-based versus event-based specifications for information systems: A comparison of B and eb 3. Softw. Syst. Model. 4(3), 236–257 (2005)CrossRefGoogle Scholar
- 16.Frappier, M., Fraikin, B., Laleau, R., Richard, M.: APIS—Automatic Production of Information Systems. In: AAAI Spring Symposium, Stanford, USA, March, pp. 17–24. AAAI Press, Menlo Park (2002)Google Scholar
- 17.Frappier M., St-Denis R.: eb 3: An entity-based black-box specification method for information systems. Softw. Syst. Model. 2(2), 134–149 (2003)CrossRefGoogle Scholar
- 18.Garavel, H., Sifakis, J.: Compilation and verification of LOTOS specifications. In: 10th International symposium on protocol specification, testing and verification (PSTV), Ottawa, Canada, June, pp. 379–394 (1990)Google Scholar
- 19.Gervais, F.: EB4 : Vers une méthode combinée de spécification formelle des systèmes d’information. Dissertation for the general examination, GRIL, Université de Sherbrooke, Québec June (2004)Google Scholar
- 20.Gervais, F., Batanado, P., Frappier, M., Laleau, R.: EB3TG: A tool synthesizing relational database transactions from EB3 attribute definitions. In: ICEIS 2006, volume Information Systems Analysis and Specification, Paphos, Cyprus, May, pp. 44–51. NSTICC Press, Portugal (2006)Google Scholar
- 21.Gervais, F., Frappier, M., Laleau, R.: Synthesizing B substitutions for EB3 attribute definitions. Technical Report 683, CEDRIC, Paris, France, November (2004)Google Scholar
- 22.Gervais, F., Frappier, M., Laleau, R.: Generating relational database transactions from recursive functions defined on EB3 traces. In: SEFM 2005, Koblenz, Germany, September, pp. 117–126. IEEE Computer Society Press, New York (2005)Google Scholar
- 23.Gervais, F., Frappier, M., Laleau, R.: Synthesizing B specifications from EB3 attribute definitions. In: IFM 2005, Eindhoven, The Netherlands, November–December. LNCS, vol. 3771, pp. 207–226. Springer, Heidelberg (2005)Google Scholar
- 24.Gervais, F., Frappier, M., Laleau, R., Batanado, P.: EB3 attribute definitions: Formal language and application. Technical Report 700, CEDRIC, Paris, France, February (2005)Google Scholar
- 25.Ginoux, B., Dormoy, J.-L., Jimenez-Dominguez, C., Lucas, J.-Y., Pierre, L.: Descartes: An automatic programming system for algorithmically simple programs. In: IWSSD ’98, Washington, USA, p. 106. IEEE Computer Society, New York (1998)Google Scholar
- 26.Hoare C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)MATHGoogle Scholar
- 27.Hohenstein, U.: Automatic transformation of an entity-relationship query language into SQL. In: 8th International Conf. on Entity-Relationship Approach to Database Design and Querying, Toronto, Canada, October, pp. 303–321. Elsevier, Amsterdam (1989)Google Scholar
- 28.Hohenstein U., Engels G.: SQL/EER—Syntax and semantics of an entity-relationship-based query language. Inf. Syst. 17(3), 209–242 (1992)CrossRefGoogle Scholar
- 29.Jackson M.: System Development. Prentice-Hall, Englewood Cliffs (1983)MATHGoogle Scholar
- 30.Jajodia S.: Translation of entity-relationship diagrams into relational structures. J. Syst. Softw. 4(2/3), 123–133 (1984)CrossRefGoogle Scholar
- 31.JBoss Labs. Hibernate. http://www.hibernate.org (2006)
- 32.Laleau, R., Mammar, A.: An overview of a method and its support tool for generating B specifications from UML notations. In: ASE 2000, Grenoble, France, September, pp. 269–272. IEEE Computer Society Press, New York (2000)Google Scholar
- 33.Leucker, M., Noll, T.: Rapid prototyping of specification language implementations. In: RSP 1999, Clearwater, Florida, USA, June, pp. 60–65. IEEE Computer Society Press, New York (1999)Google Scholar
- 34.Lyngbaek, P., Vianu, V.: Mapping a semantic database model to the relational model. In: ACM SIGMOD, San Francisco. ACM, New York (1987)Google Scholar
- 35.Mammar, A.: Un environnement formel pour le développement d’applications base de données. PhD thesis, CNAM, Paris, December (2002)Google Scholar
- 36.Meyer, E., Souquières, J.: A systematic approach to transform OMT diagrams to a B specification. In: FM’99, Toulouse, France, September. LNCS, vol. 1708, pp. 875–895. Springer, Heidelberg (1999)Google Scholar
- 37.Milner R.: Communication and Concurrency. Prentice-Hall, Englewood Cliffs (1989)MATHGoogle Scholar
- 38.Nguyen, H.P.: Dérivation de spécifications formelles B à partir de spécifications semi-formelles. PhD thesis CNAM, Paris, December (1998)Google Scholar
- 39.OMG. Object constraint language (ocl) http://www.omg.org/technology/
- 40.Prowell S.J., Trammell C.J., Linger R.C., Poore J.H.: Cleanroom Software Engineering: Technology and Process. Addison-Wesley, Reading (1999)Google Scholar
- 41.Qian X.: The deductive synthesis of database transactions. ACM Trans. Database Syst. 18(4), 626–677 (1993)CrossRefGoogle Scholar
- 42.Roscoe A.W.: The Theory and Practice of Concurrency. Prentice-Hall, Englewood Cliffs (1997)Google Scholar
- 43.Schewe, K., Smith, J., Wetzel, I.: Specification and refinement in an integrated database application environment. In: VDM 1991, Noordwijkerhout, The Netherlands, pp. 496–510. Springer, Heidelberg (1991)Google Scholar
- 44.Smith D.R.: A semi-automatic program development system. IEEE Trans. Softw. Eng. 16(9), 1024–1043 (1990)CrossRefGoogle Scholar
- 45.Steinberg, D., Raz, Y., Kantorowitz, E.: Translating errol, a high level, er, structured english language for dbtg databases. In: ER 1987 (1987)Google Scholar
- 46.Subleta, K., Missala, M.: Semantics of query languages for the entity-relationship model. In: ER 1986, Dijon, France (1986)Google Scholar
- 47.Teorey T., Yang D., Fry J.: A logical design methodology for relational databases using the extended entity-relationship model. ACM Comput. Surv. 18(2), 197–222 (1986)MATHCrossRefGoogle Scholar
- 48.Terrillon, J.-G.: Description comportementale d’interface web. Master’s thesis, Département d’informatique, Université de Sherbrooke (2005)Google Scholar
- 49.van Lamsweerde, A.: Formal specification: a roadmap. In: ICSE—Future of SE Track, Limerick, Ireland, June, pp. 147–159. ACM, New York (2000)Google Scholar