Reverse Engineering User Interfaces for Interactive Database Conceptual Analysis

  • Ravi Ramdoyal
  • Anthony Cleve
  • Jean-Luc Hainaut
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6051)


The first step of most database design methodologies consists in eliciting part of the user requirements from various sources such as user interviews and corporate documents. These requirements formalize into a conceptual schema of the application domain, that has proved to be difficult to validate, especially since the visual representation of the ER model has shown understandability limitations from the end-users standpoint. In contrast, we claim that prototypical user interfaces can be used as a two-way channel to efficiently express, capture and validate data requirements. Considering these interfaces as a possibly populated physical view on the database to be developed, reverse engineering techniques can be applied to derive their underlying conceptual schema. We present an interactive tool-supported approach to derive data requirements from user interfaces. This approach, based on an intensive user involvement, addresses a significant subset of data requirements, especially when combined with other requirement elicitation techniques.


Information systems engineering Requirements engineering Data-base engineering Human-computer interfaces reverse engineering 


  1. 1.
    Rosson, M.B., Carroll, J.M.: Usability Engineering: Scenario-Based Development of Human-Computer Interaction. Morgan Kaufmann, San Francisco (October 2001)Google Scholar
  2. 2.
    Fischer, G.: Beyond ‘couch potatoes‘: From consumers to designers and active contributors. First Monday 7 (2002)Google Scholar
  3. 3.
    Vosburgh, J., Curtis, B., Wolverton, R., Albert, B., Malec, H., Hoben, S., Liu, Y.: Productivity factors and programming environments. In: ICSE, pp. 143–152 (1984)Google Scholar
  4. 4.
    Brogneaux, A.F., Ramdoyal, R., Vilz, J., Hainaut, J.L.: Deriving user-requirements from human-computer interfaces. In: Proc. of 23rd IASTED Int’l Conf., pp. 77–82 (2005)Google Scholar
  5. 5.
    Vilz, J., Brogneaux, A.F., Ramdoyal, R., Englebert, V., Hainaut, J.L.: Data conceptualisation for web-based data-centred application design. In: Dubois, E., Pohl, K. (eds.) CAiSE 2006. LNCS, vol. 4001, pp. 205–219. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  6. 6.
    Batini, C., Ceri, S., Navathe, S.B.: Conceptual database design: an Entity-relationship approach. Benjamin-Cummings Publishing Co., Inc. (1992)Google Scholar
  7. 7.
    Hainaut, J.L.: The transformational approach to database engineering. In: Lämmel, R., Saraiva, J., Visser, J. (eds.) GTTSE 2005. LNCS, vol. 4143, pp. 95–143. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  8. 8.
    Pizano, A., Shirota, Y., Iizawa, A.: Automatic generation of graphical user interfaces for interactive database applications. In: Proc. of the 2nd Int’l Conf. on Information and Knowledge Management (CIKM 1993), pp. 344–355. ACM, New York (1993)CrossRefGoogle Scholar
  9. 9.
    Shoval, P., Shiran, S.: Entity-relationship and object-oriented data modeling-an experimental comparison of design quality. Data Knowl. Eng. 21(3), 297–315 (1997)zbMATHCrossRefGoogle Scholar
  10. 10.
    Choobineh, J., Mannino, M.V., Tseng, V.P.: A form-based approach for database analysis and design. Communications of the ACM 35(2), 108–120 (1992)CrossRefGoogle Scholar
  11. 11.
    Terwilliger, J.F., Delcambre, L.M.L., Logan, J.: The user interface is the conceptual model. In: Embley, D.W., Olivé, A., Ram, S. (eds.) ER 2006. LNCS, vol. 4215, pp. 424–436. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  12. 12.
    Rollinson, S.R., Roberts, S.A.: Formalizing the informational content of database user interfaces. In: Ling, T.-W., Ram, S., Li Lee, M. (eds.) ER 1998. LNCS, vol. 1507, pp. 65–77. Springer, Heidelberg (1998)Google Scholar
  13. 13.
    Nuseibeh, B., Easterbrook, S.: Requirements engineering: a roadmap. In: Proc. of the Conf. on The Future of Software Engineering, pp. 35–46. ACM Press, New York (2000)Google Scholar
  14. 14.
    Davis, A.M.: Operational prototyping: A new development approach. IEEE Softw. 9(5), 70–78 (1992)CrossRefGoogle Scholar
  15. 15.
    Kösters, G., Six, H.W., Voss, J.: Combined analysis of user interface and domain requirements. In: Proc. of the 2nd Int’l Conf. on Requirements Engineering, pp. 199–207. IEEE Computer Society, Los Alamitos (1996)Google Scholar
  16. 16.
    Yang, F., Gupta, N., Botev, C., Churchill, E.F., Levchenko, G., Shanmugasundaram, J.: WYSIWYG development of data driven web applications. Proc. of the VLDB Endowment 1(1), 163–175 (2008)Google Scholar
  17. 17.
    Ravid, A., Berry, D.M.: A method for extracting and stating software requirements that a user interface prototype contains. Requir. Eng. 5(4), 225–241 (2000)zbMATHCrossRefGoogle Scholar
  18. 18.
    Chikofsky, E.J., Cross, J.H.: Reverse engineering and design recovery: A taxonomy. IEEE Software 7(1), 13–17 (1990)CrossRefGoogle Scholar
  19. 19.
    Hall, P.A.V.: Software Reuse and Reverse Engineering in Practice. Chapman & Hall, Ltd., Boca Raton (1992)Google Scholar
  20. 20.
    Hainaut, J.L.: Introduction to database reverse engineering. LIBD Publish (2002),
  21. 21.
    Tseng, V.P., Mannino, M.V.: Inferring database requirements from examples in forms. In: Proc. of the 7th Int’l Conf. on ER Approach, pp. 391–405 (1988)Google Scholar
  22. 22.
    Ram, S.: Deriving functional dependencies from the entity-relationship model. Commun. ACM 38(9), 95–107 (1995)CrossRefGoogle Scholar
  23. 23.
    Yao, H., Hamilton, H.J.: Mining functional dependencies from data. Data Min. Knowl. Discov. 16(2), 197–219 (2008)CrossRefMathSciNetGoogle Scholar
  24. 24.
    De Marchi, F., Petit, J.M.: Semantic sampling of existing databases through informative armstrong databases. Information Systems 32(3), 446–457 (2007)CrossRefGoogle Scholar
  25. 25.
    Cohen, W.W., Ravikumar, P., Fienberg, S.E.: A comparison of string distance metrics for name-matching tasks. In: Proc. of IJCAI 2003 Workshop on Information Integration on the Web (IIWeb 2003), pp. 73–78 (2003)Google Scholar
  26. 26.
    Winkler, W.E.: String comparator metrics and enhanced decision rules in the fellegi-sunter model of record linkage. In: Proc. of the Section on Survey Research Methods, pp. 472–477 (1990)Google Scholar
  27. 27.
    Fellbaum, C.: WordNet: An Electronic Lexical Database. MIT Press, Cambridge (1998)zbMATHGoogle Scholar
  28. 28.
    Jiménez, A., Berzal, F., Cubero, J.C.: Mining induced and embedded subtrees in ordered, unordered, and partially-ordered trees. In: An, A., Matwin, S., Raś, Z.W., Ślęzak, D. (eds.) ISMIS 2008. LNCS (LNAI), vol. 4994, pp. 111–120. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  29. 29.
    Batini, C., Lenzerini, M., Navathe, S.B.: A comparative analysis of methodologies for database schema integration. ACM Computing Surveys 18(4), 323–364 (1986)CrossRefGoogle Scholar
  30. 30.
    Spaccapietra, S., Parent, C., Dupont, Y.: Model independent assertions for integration of heterogeneous schemas. The VLDB Journal 1(1), 81–126 (1992)CrossRefGoogle Scholar
  31. 31.
    DB-Main: The official website,
  32. 32.
    Limbourg, Q., Vanderdonckt, J., Michotte, B., Bouillon, L., López-Jaquero, V.: Usixml: A language supporting multi-path development of user interfaces. In: EHCI/DS-VIS, pp. 200–220 (2004)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Ravi Ramdoyal
    • 1
  • Anthony Cleve
    • 2
  • Jean-Luc Hainaut
    • 1
  1. 1.Laboratory of Database Application Engineering - PReCISE Research Center, Faculty of Computer ScienceUniversity of NamurBelgium
  2. 2.INRIA Lille-Nord Europe, LIFL CNRS UMR 8022University of Lille 1France

Personalised recommendations