The development of large MIS software must pay attention to database design

Source: Internet
Author: User
Tags table name

Since the early 80, many computer experts in China have been digging into large enterprises, trying to develop the ideal large-scale mis. Practice has proved that the large number of mis developed, most is not very ideal. Why? According to author further reseach, one of the important reasons is that the database design of MIS is not paid enough attention in the development process, and it is not treated as a top priority. A large MIS, if its database design problem, is a big problem, or fundamentally out of the question. Such mis will not succeed, will only fail. So what should be done about it?

First, the basis of MIS is the database

The MIS system includes two parts, hardware and software. The software of MIS is composed of document plus program. Its documentation is the entire design specification of MIS. Its program, is the whole of MIS algorithm plus the corresponding data structure. The algorithm of MIS is nothing but the algorithm of inputting, modifying, querying, Processing, outputting and menu program. The data structure of MIS mainly refers to various basic tables in database design. It can be said that the basic table is the basis of MIS. Database design is not only the key point of MIS development, but also its difficulty. Say it's the point because it takes a lot of skill to design a good basic table.

The development of MIS is a phased, different stage, corresponding to different databases. In the primary (initial and extended) phase of MIS, the corresponding database is the application database. The so-called application database is a set of basic tables designed for a specific application, which is easy to design, use and maintain. In the intermediate (Control and integration) phase of MIS, the corresponding database is the subject database. The so-called subject database is a set of basic tables designed for a subject, which includes all the application projects within the scope of this topic, the design, use and maintenance of this kind of database are more complicated. In the advanced (data management and maturity) stage of MIS, the corresponding database is a comprehensive database. The so-called comprehensive database, is a large-scale enterprises and institutions of the Integrated Management Information system design of the collection of basic tables, it includes all the themes of the unit, this database design, use and maintenance are very complex, the designers, users and DBA requirements are very high.

Second, the general method of database design

The database design is divided into five steps, namely database requirement analysis, concept design, logic design, physical design and load test. The task of requirement analysis is to transfer the business management documents into data stream, draw out the data flow chart DFD, and complete the corresponding data dictionary, the task of the concept design is to start from DFD, identify the entity and its interrelation, and draw the entity relation graph, namely E-R diagram. The task of logical design is to determine the specific attributes of each entity and relation from the E-R diagram. The task of physical design is to determine the type, width and value range of all attributes, design the primary key and foreign key of the basic table, put all the table name and the field name English culture, complete the corresponding data dictionary, and implement the physical database work in the specific DBMS environment. Load test work runs through the whole process of program testing, the whole input, modification, query, processing, output work, can be regarded as the load test work of the database. It should be noted that the design of large databases is unlikely to be completed once, and the five steps mentioned above are likely to be a continuous iterative process.

Iii. basic tables and other tables

The database in MIS is composed of a set of basic tables, one entity can be described with a basic table, and a complex relation can be described by a basic table. Therefore, a basic table can represent an entity, or it can represent a relationship. A field in a basic table is the property of an entity or relationship. Basic tables are where the underlying data resides, with five basic properties. Atomicity, that is, the data in the table is meta data. Deductive, that is, the data in the table can generate all the output data of the system. Stability, that is, data entry in the table, multiple use, long-term preservation.

Normative, that is, the data in the table satisfies the third paradigm. Objectivity, that is, the data in the table is an objective data, not the subjective imagination of the data.

In the MIS table, in addition to the basic table, there are some non basic tables, such as Code table, intermediate table, temporary table and virtual table (view), they do not belong to the contents of the database, but are in the form of tables, for data entry, query, processing, output to facilitate. Using the five properties of a basic table, it is easy to distinguish between basic and non basic tables. Non-basic table design is not difficult, the basic table design is difficult, the MIS database design, mainly refers to the basic table design.

Four, the database design skill

There are two difficulties in database design, one is how to deal with many-to-many relationship, and the other is how to design primary key. The way to deal with many-to-many relationships is to break up a many-to-many relationship into a one-to-many relationship plus another many-to-many relationship. For example, if there is a many-to-many relationship between the two tables, add a table between the two tables, which should include at least the first two table's primary keys. In this way, a many-to-many relationship is transformed into a two-one-to-many relationship.

In the basic table, the primary key is the unique identification of the record. In general, a primary key is a service for indexing files or for connecting between tables. It is opaque to the user and is only available to programmers. Therefore, the primary key value is best to a string of no physical value, and by the program automatically added to implement. A primary key is a permanently non-null field that, once produced, cannot be modified, but can be copied. By copying, the primary key of the table can be used as a foreign key to that table. To design a database, in addition to overcoming the above two difficulties, we should also adhere to the following principles: that the number of basic tables the less the better; the fewer the primary keys, the better the number of fields.

V. Development mode of MIS

According to the characteristics of our country, the development of large MIS and the design of large database should be divided into two levels, that is, kernel layer and shell layer. The kernel layer corresponds to the rule of law and is designed to be universal. Shell layer corresponding to the rule of man, design pay attention to specificity. With the development of China's economy and the world economy, the core layer of MIS will be enlarged gradually, the shell layer will gradually shrink, and the universality will be strengthened gradually.

At present, the MIS construction of large enterprises and institutions in China, a few units have crossed the primary stage, and began to move towards intermediate or advanced stage. At the same time, database design has said goodbye to the application database period, and began to transition to the subject database or the integrated database. The essential difference between the design of the subject database and the database design is that the former is data oriented and the latter is program oriented. The MIS construction of a large enterprises and institutions is a long and repetitive process. In this process, the application and the output chart may change year round, but the underlying data is stable. As long as we design the basic table-oriented data, not program-oriented, and use the basic table to organize the metadata, we can status quo and avoid the mistakes in mis construction.

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.