=Paper= {{Paper |id=Vol-2494/paper_31 |storemode=property |title=Interactive Approach And Technique of Teaching Future Experts in Database Development |pdfUrl=https://ceur-ws.org/Vol-2494/paper_31.pdf |volume=Vol-2494 |authors=Natalia Titovskaia,Sergei Titovskii,Tatyana Titovskaya,Natalia Pyzhikova }} ==Interactive Approach And Technique of Teaching Future Experts in Database Development== https://ceur-ws.org/Vol-2494/paper_31.pdf
    Interactive Approach And Technique of Teaching Future
                Experts in Database Development

                              Titovskaia N.V.1                     Titovskii S.N.1, 2
                              nvtitov@mail.ru                   sntitovsky@rambler.ru

                             Titovskaya T.S.1                      Pyzhikova N.I.1
                             nesesser@inbox.ru                    pyzhikova@kgau.ru

                1
                    Krasnoyarsk State Agrarian University, Krasnoyarsk, 660049, Russia
                        2
                          Siberian Federal University, Krasnoyarsk, 660041, Russia




                                                      Abstract
                       Currently, in connection with the introduction of information technolo-
                       gies in all spheres of human activity, the need for IT specialists is grow-
                       ing up increasingly. Therefore, educational institutions are tasked to
                       train such specialists who are able to provide all stages of the life cycle
                       of information systems. Since the quality of an information system is
                       determined by the quality of database development, the questions of
                       their correct design are becoming a key element in preparing students
                       in the field of applied informatics. The analysis of existing methods
                       of database design teaching showed that insufficient attention is paid
                       to the initial stages of database design. This paper proposes a teach-
                       ing methodology aimed to eliminate these shortcomings. The proposed
                       method involves two-stage training with internship between the stages,
                       which allows, at the beginning of the second stage, to conduct training
                       in the analysis of the subject area and conceptual database designing
                       with specific examples of real enterprises and organizations. The results
                       of applying this methodology confirms its effectiveness both in terms
                       of acquiring knowledge, skills and abilities, as well as motivating stu-
                       dents to professional activities, forming a holistic picture of the design
                       process, and understanding the practical value of acquired knowledge.
                       Keywords: education, design, database, interactive learning, teaching
                       methods, information systems, conceptual design, infological design.




1    Introduction
In the modern world, information systems are being introduced and developed in almost all spheres of human
activity. The database is the core, or rather the “heart” of any information system. The quality of database
Copyright 2019 for this paper by its authors.
Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0).
In: Jože Rugelj, Maria Lapina (eds.): Proceedings of SLET-2019 – International Scientic Conference Innovative Approaches to
the Application of Digital Technologies in Education and Research, Stavropol – Dombay, Russia, 20-23 May 2019, published at
http://ceur-ws.org
design has the most significant influence on the quality of the developed information system. Therefore, the
design and development of databases is a relevant area of activity for information system developers [Dat06,
Cod79].
    The wide range of applications of information systems leads to the need in an increasing number of information
system developers.
    The current situation in the IT-technology market poses a task for universities to train an increasing number of
IT-specialists in the field of information systems design. They are assigned the tasks of developing and designing
databases, client database applications that are integral parts of any information system, as well as maintenance
and upgrading of these systems.
    This problem is solved by training the bachelors in the field of "Applied Informatics". Students receive corre-
sponding competences when studying the course "Databases". This course is fundamental on which many other
professional disciplines are based. Qualitative mastering of the discipline requires students to have additional
knowledge in the field of programming database applications, which should be studied in the respective preceding
disciplines.
    The existing methods of teaching the “Database” discipline have a number of shortcomings, and the issues
related to database design are not fully developed.
    The presented work sets as its task the development of a methodology for training future specialists, first of
all, the database design process, a step-by-step mastering of the discipline from acquiring basic knowledge and
skills in the field of databases to developing a working prototype of an information system whose core is the
database.


2   Problems Of Database Design Learning
Modern methods of teaching the discipline "Databases" mostly involve the use of ready-made examples of specific
databases, designed in advance by the teacher [Sve12, Dro15]. Such training databases, as a rule, contain a small
number of tables, key fields, relationships and their types, as well as often information that should be stored
in this database, are already predetermined. This approach gives students the ability and skills of a technical
nature to create databases in specific DBMS. The holistic picture of database design remains outside the student’s
knowledge, the study of the discipline in this case does not arouse interest among students. This approach -
“learning by example”, is justified only at the initial stage of studying the discipline.
    In addition, it is necessary for students to feel the practical significance of their development, to realize the
possibility of its further use.
    Often, the whole process of studying the “Database” discipline in a number of techniques comes down to
performing a step-by-step sequence of simplest actions from handbook, in which elementary operations of creating
a pre-designed database are described. Performing these elementary actions, students often lose their main goal
in studying the discipline [Moz15, Yak12].
    In addition, in some methodologies (especially when working with Access DBMS), the authors seek to show
all the possibilities of creating one or another database object (table, report, form, query). This approach leads
to the fact that the meaning and purpose of the operation being performed are lost, which in turn causes a lack
of understanding of the generality or difference of the listed operations.
    In most of the proposed methods, the main stages of database design are practically absent: - analysis of the
subject area, - conceptual design.
    This is understandable when a student is already offered a specific composition of a future database. These
stages are the basis, foundation for the creation of any database. Without competent and high-quality imple-
mentation of these stages, it is impossible to design a workable database and, accordingly, the information system
itself, corresponding to its purpose in the subject area.
    Unfortunately, at the present time there are practically no formal methods for teaching students to perform
the analysis and conceptual design. Basically it uses the professional developer’s experience of designing such
systems. This experience is quite difficult to convey to the student, so these steps can be equated to “art” in the
database design process. Relevant and up to date is a quote from the book [Cyc85] which was published almost
30 years ago “It is always easy to characterize the methodology at the conceptual level, it is very difficult to put
it into practice. The stumbling block is the difficulty understanding the essence of the subject area (for example,
the difficulty of understanding the mechanism of the organization’s activities) and adapting it to new, possibly
better conditions of functioning. ”
   In the proposed methods, the stages of analysis and design of the database are proposed to be considered
with examples far from the real subject area. Such models are often greatly simplified. They practically do not
explain how to select and structure data to create an infological data model in the course of conceptual design
[Sch06, Kar04, Gol06]. This approach is justified when studying database design issues, since the diversity of
subject areas cannot be interconnected into a single model for the design process.
   Such knowledge and experience can be acquired only by completing the independent design of several databases
of specific subject areas for real enterprises and organizations.
   Thus, there is the problem of teaching the discipline "Database", which is the lack of elaboration of the
methodology of teaching the conduct of the stages of analysis and conceptual design.

3   Development Of Methodology
Considering the points listed above, the process of studying the discipline "Database" is carried out in several
stages (fig. 1):
   - educational and fact-finding stage,
   - practical stage.
   Studying successively every step of training in a discipline, students ultimately acquire the necessary skills
and abilities in designing and developing databases.




                               Figure 1: The stages of learning database design.
   The educational (traditional, classic) stage (fig. 2) is divided into the following sub-steps:
   1. the initial stage
   2. stage of in-depth mastering of the subject.
   At the initial stage the theoretical material are studied:
   - theoretical basis of databases,
   - stages of database evolution,
   - data models, the concept of an entity, attributes, keys,
   - types of relationships between entities,
   - principles of maintaining integrity in the relational data model,
   - relational algebra and relational calculus - an initial acquaintance.
   The practical work of the initial stage of teaching the discipline is:
   - in exploring the capabilities of the DBMS on the example of MS Access. At this stage, students perform a
series of laboratory and test work on a previously proposed database structure. Students are introduced to the
possibilities of creating and populating database objects: tables, forms, reports, queries, macros;
   - in exploring the capabilities of the structured query language SQL. When performing queries, there is an
initial acquaintance with the capabilities of this language. However, the use of MS Access DBMS does not fully
enable mastering the SQL language. Therefore, a full study of the capabilities of the structured query language
occurs in the second stage;
   - in obtaining knowledge and practical familiarity with the principles of maintaining the integrity of the
relational data model. Students begin to understand the difference between the parent and child table; rules for
organizing relationships between them, rules for entering, changing, deleting data in these entities;
   - in study, using the example of a specific database, the principles of working with modern CASE technologies,
in particular, data modeling using the Oracle Developer Data Modeler. The creation of modern information
systems is a complex task, which solution requires the special tools. These include CASE-tools that allow you
to systematize and automate all stages of software development. Data modeling is a tool for formal collecting
data related to the business process of a particular enterprise.




                           Figure 2: Scheme of the educational and fact-finding stage

   The second step in the development of educational and fact-finding stage is a more in-depth study of the
discipline. At this stage in the theoretical material are studied in detail:
   - stages of database design;
   - a database design is considered together with the teacher, on a specific subject area, in an interactive mode,
with group discussion:
   - describes the business processes of the subject area in an interactive mode with the teacher;
   - the analysis stage, conceptual design, datalogical design are carried out, and a physical model of an educa-
tional database on a specific subject area is projected with the support of a teacher and a group discussion of
design moments;
   - an in-depth study of the capabilities of the structured query language SQL;
   - in-depth study of relational algebra and relational calculus and their implementation in SQL and application
on the created database model.On the practical lessons of the in-depth study of the educational and fact-finding
stage: - using the skills of working with Oracle Developer Data Modeler, students independently build a logical
and physical model of an exemplary domain database designed previously with a teacher;
   - with a client-server environment students implements a database, designed in collaboration with the teacher.
The implementation is not done using the CASE-tool Oracle Developer Data Modeler, which allows students
to automatically implement the physical SQL-script of the database being created, but by using live SQL tools
using the SQL command line or Oracle SQL Developer and Oracle 10g XE DBMS. It gives practical skills and
visibility when creating databases;
   - students learn to use the theory of relational algebra and calculus through a variety of SQL queries to the
database created (nested, multi-table, with conditions, grouping and sorting).
   Practice-oriented stage (fig. 3) is divided into: - internship,
   - designing a database for particular enterprise (in the form of a course project),
   - database implementation,
   - user interface design.
   The internship at a real enterprise is an essential component in the process of becoming and preparing the
future specialist for professional activities.
   The goal of the internship is to familiarize students with the structure of the organization, the main business
processes, systems and means of their automated support and management, as well as the creation of motivational
guidelines for the student in relation to future professional activities.




                             Figure 3: The components of the practice-oriented stage

    The materials collected during the internship are a valuable source of information for designing and developing
a database for the needs of a particular enterprise. The ability to design a database for a particular enterprise
and its departments, as well as ability to develop a client part for working with a database, is an integral part
of the specialist educating process.
    The purpose and objective of the practice is a detailed analysis of the whole enterprise. At the beginning
students:
    - analyze the activities of the enterprise and develop models of business processes implemented in the enterprise;
    - marks a business process for which the database will be designed in the future;
    - collect a list of documents used in this business process;
    - on the basis of the collected documents and the survey of potential users receive information that should be
stored in a database;
    - on the basis of source documents and a survey of potential users receive a list of output documents that the
database should generate;
    - on the basis of the identified list of input and output documents and the survey of potential users, the
requirements for the user interface (client application) are developed.
    Such tasks are set for students when they are sent to practice in real production and enterprises. This is the
list that, ideally, the teacher would like to see from the students. However, in fact, everything does not look so
perfect. Let us examine the reasons for the current state of affairs.
    1. Student problems in the process of internship:
    - students face a number of organizational and practical difficultieswhen analyzing a company for the database
creation. Organizational difficulties lie in the limited availability of information about the activities of the en-
terprise, because this information is a commercial secret. Information about suppliers, customers, financial
statements is almost completely closed. The most open information is about the structure of commodity prod-
ucts produced by the enterprise, personnel potential, information about the organizational and legal form of
management, the organizational structure of the enterprise;
    - the information gathered by students in practice covers many business processes that sometimes have weak
links with each other. But since the student cannot independently separate the “grain from the chaff,” he is
instructed by the teacher to collect about the enterprise activities as much information as possible;
    2. Student problems at the initial design stage:
    - when developing a database, students are lost in the variety of information collected;
    - at present, many business operations at agricultural enterprises are not automated, and accounting is done
manually, by recording information in various kinds of journals;
    - students cannot independently select and specify business processes to be automated; - cannot select potential
database users;
    - in self-design make a lot of mistakes.
  The proposed technique assumes a spiral database design, shown in fig. 4.




                                            Figure 4: Interactive Design.
   The first spiralof interactive design.
   The solution of students’ problems, as experience shows, is the individual work of the teacher with each
student, during which:
   - firstly, the student must again analyze the activities of the enterprise with the teacher’shelp. The student
briefly tells the teacher about the activities of the enterprise, the technological processes in production, the
enterprise business processes, the participants of these business processes, the information that appears on these
business processes, and about the documentation that is used in the organization of these business processes;
   - secondly, the teacher with the leading questions helps the student to narrow the boundaries of the subject
area to develop a future database;
   - thirdly, the teacher helps the student to select those business processes that will be automated later,in other
words, which will be implemented in the database;
   - fourthly, in an interactive form, the teacher helps to determine the list of participants in business processes
who will be users of the database in the future; highlighted the list of potential users. At this stage, the student
should answer the question “for whom is the future database being created?”
   The second spiral of interactive design
   The work of the teacher and student assistance continues. It consists in the following:
   - detail business process. The student begins to describe in more detail all the components of this business
process. In this step, the teacher helps the studentdecide on:
   - a list of information that must be stored in the database being developed;
   - the nature of the information;
   - participants;
   - the documentation used to implement this business process;
   - on the basis of the information provided, the student, in collaboration with the teacher, develops a conceptual
and infological (logical) database model, which identifies entities and relationships in the form of logical definitions
between these entities that implement the selected business process. At this stage, teacher assistance is necessary,
as he has more experience in database design. At this design stage, it is useful and clear to use the ER - model;
   - at the next stage, the student independently designs a logical and datalogical model (determines the keys,
attributes, types of relationships).
   The third spiral of interactive design.
   The next important step is the specification of the database components:
   - The teacher offers the student to “expand” the tables, which means filling the tables with several data. At
this step, the student identifies errors in the definition of attributes, complements or removes unnecessary ones;
there is a clarification of the types of relationships, the transformation of many-to-many relationships in one-to-
many relationships and so on. This entire stage is drawn by hand with a pencil on paper. It is very difficult for
a student to immediately design a database with CASE.
   - The standard procedure of normalization is carried out as described in [Dat06], [Pus99], [Pus99], [Khr15],
[Khr09], [Khr08], [Gri11]. The developed logical model is checked for compliance with normal forms (at least up
to NFBK, and if necessary, further to the fourth and fifth normal forms). At this step, teacher review is also
required, as students do not have practical experience to detect all errors during the normalization process.
   After eliminating all errors in design, students can independently develop a database at the physical level
without the teacher’shelp, so at the first stage of study (training) the corresponding skills have already been
obtained:
   - Using CASE-tools Oracle SQL Developer Data Modeler students create a logical, datalogical database model,
and then implement it into a physical model.
   - The stage of physical implementation in the proposed methodology of teaching the database design and
implementation on a specific subject area is carried out by students almost independently using Oracle Database
11g XE. Here they are “manually” using the capabilities of the structured query language SQL, and PL / SQL
create objects for the future database, such as
   - tables,
   - requests,
   - indexes,
   - cursors,
   - representation,
   - triggers.
   The next step is to develop a user interface, which is a required element in educating.
   As practice shows, when studying a database course, students practically do not know what the final software
product will be- an information system based on the database being developed. Therefore, after the imple-
mentation of the database, students design the client part of the information system necessary for the users’
convenience. Thus, the design of the database goes into the design of an information system (IS).
   At this stage, students should return to the users’requirements defined at the previous stage. Based on the
needs of each user, they should make a list of interface elements that are intuitive to each user.
   Education programming issues necessary for the development of the client application, it is impractical to
include in the database course, therefore, consideration of programming issues supporting this stage of the
information system development is made in separate disciplines, which are trained in previous periods of the
specialists training cycle. The methodology for teaching client-side programming is beyond the scope of this
discipline, which concerns database development.
   On the basis of the received list, the composition of the forms, the purpose and content of each form, the list
of data present on all forms is determined. At the same time, it is desirable to draw students’ attention to the
correspondence of the interface elements with the concepts and terms that each user uses in his subject area.
Such a match will ensure the ergonomics of the user interface.
   Students should pay attention to the issues of ensuring information security: authorization, differentiation of
rights of access to information for different users by organizing a corresponding list of interface elements.
   For training on issues related to client-side development, students develop forms, reports, filters, queries,
graphs and charts using the Embarcadero RAD Studio software environment.
   As part of the functional structure of the information system, the following subsystems are distinguished:
   - dataentrysubsystem;
   - data acquisition and processing subsystem;
   - datastoragesubsystem;
   - subsystem of output, generation and visualization of reports.
   The data entry subsystem includes a greeting module, an authorization module, a main menu module, and a
database code identification module. The greeting module is a form on which a picture with a greeting is placed.
The authorization module is presented in the form of a window on which the login and password fields are
located. The entered information is compared with the database of identification codes, in case the identification
is successful the user gets access to the main form of the application.
   The storage subsystem contains tables with attributes, links and keys of the designed database, in which
specific information about customers, employees, services, suppliers, materials, orders and shipments of the
enterprise is displayed.
   ODBC / BDE technology is used to connect the application and the database. The application interacts
with the database using special components: Database component creates a connection to the database, Table
component communicates with one table, Datasource component exchanges information between the display
components and the database table.
   The information processing subsystem, which contains modules for working with information: adding, deleting,
editing, viewing, sorting and filtering data.
   On each form there are buttons corresponding to each of the modules.
   The output subsystem provides information in a form that is convenient for user perception. All designed
directories and journals are available in screen form and in document form.
   To implement information output in the form of reports, the Rave Reports generator is used. The connection
of the data source to the reports using the BDE access technology is provided by the TRvSystem component.
The TRvProject component is used for report and application interaction. This component provides viewing
and printing.
   The proposed teaching method allows us to give a comprehensive picture of the design and application of
databases.

4   Results
After using this technique for several years of teaching, we found that by the end of the course “Databases”,
students form a fairly complete picture of the information system creation and the place of database design in
this process. The use of information about the business processes of a particular enterprise is a strong incentive
for motivating students to further study the design of information systems, arouses their interest, since students
see and understand the practical value and applicability of their projects.
   The proposed technique makes students iteratively return to the same questions at different depths of their
study. Such an organization of the educational process deepens theoretical knowledge, expands practical skills,
reinforces knowledge, forms the required competencies. Working with more than one DBMS provides students
with an understanding of the universality of the basic principles of working with a DBMS, eliminating fears
before switching to a new database management system, and developing sustainable skills for working with
DBMS, which will greatly facilitate the transition to other database management systems.
   The practical orientation of the training gives students an understanding of the practical applicability of
their educational work, as well as the value of future professional activities and stimulates a deeper study of
professional disciplines.
   These results are confirmed by the fact that when preparing thesis, at least 50% of students choose topics
related to the development of information systems, the core of which is a database.

5   Discussion
As a result of the analysis of database design teaching methods, it was concluded that they do not fully cover
issues related to the initial stages of database design: the stage of analysis of the subject area and the stage of
conceptual design.
   There are techniques focused on getting initial information about database design [Dro15], [Moz15], [Mozg15].
In these methodologies, practical training is carried out on an example database, pre-designed in MS Access.
Theoretical training consists in presenting general topics of the relational databases theory, initial information on
logical, conceptual, datalogical design. Physical implementation is assumed using the MS Access environment.
These techniques do not form students’ knowledge of conducting a domain analysis, definition of data that
must be stored. These techniques insufficiently form an understanding of the principles of designing information
systems in general, and databases in particular. The developed methodology provides internship, which forces
students to collect all the necessary information, subsequently used to develop aninformation system prototype
from beginning to end.
   There is a group of techniques [Chu17], [Osi16], [Pus99], [Khr08], [Gri11], [Ahm15], [Yan11], [Sar10], [Har12]
that focus on the formal principles of downward design based on functional dependencies and the process of
normalization. These techniques consider the problem of design from a formal mathematical point of view and
give students a deep understanding of the mathematical and logical foundations of databases. However, in
these methods, insufficient attention is paid to the practical orientation of the development, which is one of the
fundamental points of the proposed methodology.
   A number of publications consider specific issues of database design, such as potential users polling methods
[Par16], tips on specific database design issues [Edi16], [Dja13], [Dav07], and issues of increasing productivity
in the database physical implementation [Sye18]. In conjunction with the methodology proposed in this paper,
which covers the entire cycle of database design, the materials of these works can be invaluable in teaching the
design of databases.
   The reason for the development of the proposed methodology was that the analysis and logical design for a
specific subject area of a real enterprise causes significant difficulties for students during the work on creating
a database and, in general, an information system. On the basis of many years of experience, a methodology
was developed for interaction between a teacher and a student while working on the creation of a prototype
information system, and in particular a database. The proposed technique has shown good results in teaching
students design issues. Interactivity and practical orientation of training requires a lot of time from the teacher.
The internship attendance leads to the peculiarities of the discipline: it should be held in two semesters, with
practice between them.
   But, despite these features, the results of applying this approach allow us to conclude that it is applicable.
Positive aspects of its use outweigh all the difficulties of organizing the educational process.


6   Conclusion
This paper presents a methodology for teaching the course “Databases”, focused on eliminating gaps in students’
knowledge of the database design initial stages. The basis of this technique is multi-stage interactive training,
during which students repeatedly return to the same design issues, but at different depth levels of knowledge
gained.
    The proposed methodology is based on two-stage training with work experience between them.
    The first stage is educational. The theoretical part of this stage examines in detail the theoretical foundations
of databases and the structured query language SQL. The practical part is aimed at obtaining practical skills in
MS Access, as well as the skills of using CASE - tools such as Oracle SQL Developer Data Modeler, Oracle SQL
Developer using Oracle Database 11g XE. At this stage, pre-designed educational databases of enterprises are
used as tasks.
    After the first stage of training, students are sent to internship at real enterprises. The purpose of the practice
is to analyze the activity of an enterprise in order to identify business processes that are the object of automation.
    The second stage is practice-oriented. It consists in the complete design of an information system for a
particular enterprise. It covers all the design stages: from the analysis of the subject area to the development of
an information system prototype, including the client application.
    In the process of designing a prototype, the individual work of a teacher with each student is assumed. In
this case, the teacher acts as an expert, critically evaluating and guiding the student to obtain correct results.
    Practical orientation of the proposed teaching method forms the student’s holistic view to the information
system development, and also arouses interest among students due to the practical applicability of the results of
their work.
    Years of experience in using the proposed methodology shows its effectiveness, since the majority of graduates
in their work on the thesis choose topics related to the design of databases and information systems as a well-
known and learned area of knowledge and skills.


References
[Dat06] C. J. Date. Introduction to database systems [In Russian]. Moscow, Williams, 2006.

[Cod79] E. F. Codd. Extending the Database Relational Model to Capture More Meaning. // ACM Transactions
        on Database Systems. 4(4), pp. 397–434, 1979.
[Sve12]   A. V. Svetlov. Methodology features of teaching the course "Databases" for the training direction of
          undergraduate "Applied informatics" [In Russian]. // Modern Technology in Education. Bulletin of
          Volgograd State University. Series 6: University Education. 13, pp. 74-79, 2012.

[Dro15] A. N. Drobahina. Methodology of database design learning [In Russian]. // Information and Commu-
        nication Technologies in Pedagogical Education. 4 (37), pp. 56-60, 2015.

[Moz15] A. E. Mozharova. Guidelines for the study of the module "Designing of information systems with a
        relational data model" in the course "Information systems designing" [In Russian].// Information and
        Communication Technologies in Pedagogical Education. 4 (37), pp. 46-50, 2015.

[Yak12] Z. T. Yakhina A. L. Osipova, I. S. Rizaev. Database design methodology in the learning process[In
        Russian]. // Educational Technologies and Society. Vol. 15, 1, pp. 525-536, 2012.

[Cyc85] D. Cycritzis, F. Lokhovsky. Data models [In Russian]. Moscow, Finance and Statistics, 1985.

[Sch06]   T. E. Schepakina. Perfection of training to databases and database management systems on the basis of
          client-server technologies. Pedagogical sciences candidate dissertation, 13.00.02 [In Russian]. Moscow,
          2006.

[Kar04] O. V. Kartashova. Methodology of distance learning of economics specialties students in computer
        science (on the example of the topic "Databases"). Pedagogical sciences candidate dissertation, 13.00.02
        [In Russian]. Yaroslavl, 2004.

[Gol06] O. L. Golitsina, N. V. Maksimov, I. I. Popov. Databases [In Russian]. Moscow, Forum-Infra-M, 2006.
        [Tit17] N. V. Titovskaia, S. N. Titovskii. An approach to effective database design training [In Rus-
        sian]. // The Interaction of Science and Society: Problems and Prospects. Articles collection of the
        International Scientific and Practical Conference. Kazan, International Center for Innovative Research
        "Omega science", pp. 108-111, 2017.

[Pus99] A. Yu. Pushushnikov. Introduction to database management systems. Part 1. The relational data
        model: Tutorial [In Russian]. Ufa, Publishing House of the Bashkir University. 1999.

[Pus99] A. Yu. Pushushnikov. Introduction to database management systems. Part 2. Normal forms of rela-
        tionships and transactions: Study Guide [In Russian]. Ufa, Publishing House of the Bashkir University.
        1999

[Khr15] V. Yu. Khramov, A. I. Kustov, E. B. Khanov. Methods and tools for database design [In Russian].
        Voronezh, Voronezh Center for Scientific and Technical Information. 2015.

[Khr09] V. Yu. Khramov. Algorithm of synthesis of relational database schema based on functional dependencies
        [In Russian]. // Information and Space. 1, pp. 93-101. 2009.

[Khr08] V. Yu. Khramov Design methodology for distributed databases of automated real-time systems [In
        Russian]. // Information and Space. 4, pp. 106-113. 2008.

[Gri11]   S. A. Gritsenko, V. Yu. Khramov. The rules for converting an extended entity-relationship model
          into a relational data model for a top-down database design [In Russian]. //Voronezh State University
          Bulletin, Series: Systems Analysis and Information Technology. 1, pp. 114-121. 2011.

[Mozg15] P. I. Mozgaleva, O. M. Zamyatina, K. V. Gulyaeva. Database design of information system for stu-
        dents project activity management. // Proceedings of 2014 International Conference on Interactive
        Collaborative Learning, ICL 2014. pp. 886-890. 2015.

[Chu17] I. L.Chudinov, V. V. Osipova, Y. V. Bobrova. The methodology of database design in organization
        management systems. // IOP Conf. Series: Journal of Physics: Conf. Series. Vol. 803, pp. 1-5. 2017.
        doi:10.1088/1742-6596/803/1/012030.

[Osi16]   V. V.Osipova, I. L Chudinov. A. S. Seidova. Formalized approach in relational database design. // Key
          engineering materials. Vol. 685, pp. 930-933. 2016. doi:10.4028/www.scientific.net/KEM.685.930.
[Ahm15] R. Ahmad, W. A. Chyi, A. Sarlan, R. Kasbon. Guiding novice database developers in database schema
        creation. // IEEE Conference on e-Learning, e-Management and e-Services. Article 7081243. 2015.
        doi:10.1109/IC3e.2014.7081243

[Yan11] Yang, F.-J. A virtual tutor for relational schema normalization. // ACM Inroads, 2(3),pp. 38-42. 2011.
        doi: 10.1145/2003616.2003632
[Sar10]   .Z. Saringat, R. Ibrahim, N. Ibrahim, T. Herawan. On database normalization using user interface
          normal form. // Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial
          Intelligence and Lecture Notes in Bioinformatics), 6215 LNCS. pp. 571-578. 2010. doi: 10.1007/978-3-
          642-14922-171.
[Har12] S. Hartmann, M. Kirchberg, S. Link. Design by example for SQL table definitions with functional
        dependencies. // VLDB Journal. 21 (1), pp. 121-144. 2012. doi: 10.1007/s00778-011-0239-5.
[Par16]   E. Paradis, B. O’Brien, L. Nimmon, G. Bandiera. Design: selection of data collection methods. //
          Journal of graduate medical education. 8 (2). pp. 263–264. 2016. doi:10.4300/JGME-D-16-00098.1
[Edi16]   J. Edison.    13 Blog articles on database design best practices and tips. 2016. Available at
          https://www.vertabelo.com/blog/notes-from-the-lab/13-blog-articles-with-database-design-tips-
          and-best-practices (accessed May 2 2019).

[Dja13] S. Djajasaputra. Database Guidelines (RDBMS/SQL). SOA, Java, Software Development.2013.
        Available at http://soa-java.blogspot.com/2013/01/database-guidelines-rdbmssql.html (accessed May
        2 2019).
[Dav07] L. Davidson.    Ten Common Database Design Mistakes. 2007. Available at https://www.red-
        gate.com/simple-talk/sql/database-administration/ten-common-database-design-mistakes/ (accessed
        May 2 2019).
[Sye18]   A.A. Syed. Physical Database Design Techniques to Improve Database Performance. // International
          Research Journal of Engineering and Technology (IRJET). Vol. 5, 6, pp. 2335-2337. 2018. Available at
          https://www.irjet.net/archives/V5/i6/IRJET-V5I6435.pdf (accessed May 2 2019).