Journal of Software Maintenance and Evolution: Research and Practice Consistent Database Sampling as a Database Prototyping Approach

Requirements elicitation has been reported to be the stage of software development when errors have the most expensive consequences. Users usually find it difficult to articulate a consistent and complete set of requirements at the beginning of a development project. Prototyping is considered a powerful technique to case this problem by exposing a partial implementation of the software system to the user, who can then identify required modifications. When prototypiug data-intensive applications a so-called prototype database is needed.This paper investigates how a prototype database can be built. Two different approaches are analysed, namely test databases and sample databases; the former populates the resulting database with synthetic values, while the latter uses data values from an existing database. The application areas that require prototype databases, in addition to requirements analysis, are also identified. The paper reports on existing research into the construction of both types of prototype databases, and indicates to which type of application area each is best suited. This paper advocates for the use of sample databases when an operational database is available, as is commonly the case in software maintenance and evolution. Domain-relevant data values and integrity constraints will produce a prototype database which will support the information system development process better than synthetic data. The process of extracting a sample database is also investigated.

[1]  Kenneth Baclawski,et al.  Quickly generating billion-record synthetic databases , 1994, SIGMOD '94.

[2]  Perdita Löhr,et al.  Enhancing the Quality of Conceptual Database Specifications through Validation , 1993, ER.

[3]  Heikki Mannila,et al.  Small Armstrong relations for database design , 1985, ACM SIGACT-SIGMOD-SIGART Symposium on Principles of Database Systems.

[4]  Bing Wu,et al.  The Butterfly Methodology: a gateway-free approach for migrating legacy information systems , 1997, Proceedings. Third IEEE International Conference on Engineering of Complex Computer Systems (Cat. No.97TB100168).

[5]  Heikki Mannila,et al.  The power of sampling in knowledge discovery , 1994, PODS '94.

[6]  Ian Sommerville,et al.  Software engineering (5th ed.) , 1995 .

[7]  Elaine J. Weyuker,et al.  Analyzing Partition Testing Strategies , 1991, IEEE Trans. Software Eng..

[8]  Antonio L. Furtado,et al.  The CHRIS consultant-a tool for database design and rapid prototyping , 1990, Inf. Syst..

[9]  Jesus Bisbal,et al.  Database Sampling to Support the Development of Data-Intensive Applications , 2000 .

[10]  Jane Grimson,et al.  Generalising the Consistent Database Sampling Process , 2000 .

[11]  Jeffrey F. Naughton,et al.  A scalable hash ripple join algorithm , 2002, SIGMOD '02.

[12]  Boris Beizer,et al.  Black Box Testing: Techniques for Functional Testing of Software and Systems , 1996, IEEE Software.

[13]  Bing Wu,et al.  Building Consistent Sample Databases to Support Information System Evolution and Migration , 1998, DEXA.

[14]  Gianfranco Lamperti,et al.  Software Prototyping in Data and Knowledge Engineering , 1999 .

[15]  Hugh Noble The automatic generation of test data for a relational database , 1983, Inf. Syst..

[16]  Michael Stonebraker,et al.  Migrating Legacy Systems: Gateways, Interfaces, and the Incremental Approach , 1995 .

[17]  Frank Olken,et al.  Random Sampling from Databases , 1993 .

[18]  Andreas Zamperoni,et al.  Validating Database Components of Software Systems , 1994 .

[19]  Eugene Miya,et al.  On "Software engineering" , 1985, SOEN.

[20]  Jon M. Kerridge,et al.  Modelling test data for performance evaluation of large parallel database machines , 2004, Distributed and Parallel Databases.

[21]  Pamela Zave Classification of research efforts in requirements engineering , 1997, ACM Comput. Surv..

[22]  Bing Wu,et al.  Legacy Information Systems: Issues and Directions , 1999, IEEE Softw..

[23]  Darrel C. Ince,et al.  Software prototyping, formal methods, and VDM , 1988 .

[24]  Jane Grimson,et al.  Database sampling with functional dependencies , 2001, Inf. Softw. Technol..