International Conference «Mathematical and Information Technologies, MIT-2016»

28 August – 5 September 2016

Vrnjacka Banja, Serbia – Budva, Montenegro

Hmelnov A.E.   Bychkov I.   Rugnikov G.М.   Гаченко А.С.   Fereferov E.S.  

Methods for automation of development of information systems using specifications of database applications

Reporter: Hmelnov A.E.

The automated information systems (AIS) are systems designed for collection, storage, processing, analysis and visualization of information. Besides from some sophisticated specialized algorithms, the main purpose of the major part of AIS is to provide a convenient access to relational database management systems (DBMS) to allow users to perform CRUD (create, read, update, delete) and search operations.  So we’ll consider the systems, which provide user interface to DBMS, and later on we’ll call the systems database applications.
The main disadvantage of the modern software development technologies (like MDA, ORM) is that they force programmer to write a lot of similar code, which differs only in table and field names. Though the technologies may help to generate some part of the code, the programmer will have to perform a lot of similar work anyway, and he will have to rewrite all the code to reflect the changes in the structure of the database which inevitably occur during its lifecycle. The database interaction code parts contain and use some information about database tables, fields and their relations, but this information is intermixed with some typical code patterns, like that for opening tables, retrieving fields and their values and so on.
Our approach is based on the use of specifications of database applications (SDA). The SDA should provide the minimum required information in its pure form about database tables, their fields, the links between them and their usage in the database application. All the other tasks are performed by general algorithms, directed by SDA. We have developed the general SDA-directed algorithms for generation of user interfaces, interactive query building, report generation, GIS interaction, etc, and software, which is based upon the algorithms. The software allows to obtain a full-featured database application by development of SDA, with the specification being rather small and not containing code duplicates. Some nonstandard tasks can further be solved by plug-in modules, which extend capabilities of the main application.
We can afford to spend much more efforts to develop a general SDA-directed algorithm than when developing a specialized code for solving the same task for a particular table using the traditional technologies. It allows to create more sophisticated user interfaces with richer capabilities.
The suggested approach and the SDA-based software were used for development of dozens of custom AIS. It provides consistent user experience for all the applications developed, simplifies software maintenance, redesign and re-engineering. It also allows to integrate some specifications to create complex database applications (say, for a top manager) from the simpler ones.

To reports list

© 1996-2019, Institute of computational technologies of SB RAS, Novosibirsk