Ñåíèí Ä.Ñ., ê.ò.í.,
äîö. Áóëàòîâ Ë.Í., ê.ô.í., äîö. Òþðèíà Ñ.Þ.
Èâàíîâñêèé
Ãîñóäàðñòâåííûé Ýíåðãåòè÷åñêèé Óíèâåðñèòåò èì Â.È.Ëåíèíà
Development of corporate database to enhance studying
process
The article discusses
the issue of development software that is
supposed to help to maintain, analyze and optimize a studying process and as a
result increase its efficiency.
Nowadays many organizations
tend to automate internal management processes using modern software.
This allows to decrease effort of administration and collect huge amount of
data about the organization in order to perform post-processing and analysis. In
future, such approach may help to optimize business processes and as a result save
money and other resources.
Studying may be considered
a business process too. Therefore, in this sphere the same approaches of
running and estimation may be applied. We consider the studying process as separate
steps, which include preparing, maintenance and handling some particular
documents. In Russia, the list of such documents includes a curriculum and the report
with marks. In Ivanovo State Power University, this list is extended with
document which contains data about students’ rating - special parameter that is
calculated based on student’s marks.
Currently in the university
we already have the system that is used to help the heads of the departments to run all documentation related to studying and
marks. However, this system was developed using outdated technology of database
management designed by Microsoft - MS Access. At the same time, this system is
not distributed among the departments, and is
used as standalone application on local
machines of the heads of the departments. Moreover,
maintenance of some parts of this system left much to be desired. Sometimes one
can find data that does not satisfy model of
relational database.
On the other hand,
there is a system called “Contingent” which is used to process all data related
to students: admission to the university, expulsion, etc. It was developed with
modern and popular in CIS technology called “1C:Enterprise”. It provides all
necessary mechanisms and primitives to create software specific to particular
business sphere. Moreover, there are special types of data storages that are developed to perform data analysis against
it. At the same time “1C:Enterprise” hides all details related to communication
with database which helps to define convenient information model without
thinking about how to implement this model in a database.
Based on this, there
were three different ways to develop a new system of maintenance of studying
process: fix disadvantages of inherited systems; use “1C:Enterprise”; or use
absolutely new technologies. We decided to use “1C:Enterprise” because it
contains everything that was supposed to be a part of the system in future.
Moreover, if we decide to use new technologies we should create some additional
system or subsystem of data transfer between newly created product and
“Contingent”. We must do this because automation of studying process needs
information about students. Therefore, the investigation resulted in conclusion
to implement the system as part of the “Contingent”.
The project consists
of two stages – development and preparing the system for usage. Let us consider features and problems that are related to
development process.
First of all, we needed
to formulate acceptance criteria of developed system. Based on experience of mentioned
system where we found many problems with data in database it was decided to put
principles of reliability and correctness of data in the foundation of this
system. Fortunately, “1C:Enterprise” has built-in programming language that may
be used to express rules of data validation via code. The next criterion is the
intelligent processing of existing data in order to show relevant information
as hints. To implement it we can also use mechanisms of “1C:Enterprise” that
allows us easily find information and has a lot of built-in functionality to
work with standard components of a system. The next criterion is accumulation of
huge amount of data from different sources to perform analysis.
Second, we needed to
define expected components to be created.
First of all, documents should reflect existing ones, but, at the same time,
we added additional documents to make relations between separated parts of
business process more understandable. For instance, we introduced a new
document that contains estimated number of students to be taught in the
university next year. It does not have analogue in real life but it will help
us to analyze efficiency of departments in future.
In addition, we
understood that users need some additional components to have retrospective
information about students’ progress. After some investigation we found out
that users need not only information about one student but also about groups of
students. System should also provide data about students that have missed
assignment. As a result, all required information is provided in the form of
data processors – it is also a feature of
“1C:Enterprise”; such components may contain some custom logic and
interface that cannot be a part of existing items or have no equivalent as a
document.
Finally, since one of
acceptance criteria is analysis of big amount of data we added special data
storages, which have built-in mechanisms of indexing and optimization queries
to data. They are called registries in terms of “1C:Enterprise”. We added
registries, which contain information about students’ marks and rating. Since
registries have quick access to data and the university deals with a lot of reports,
we decided to add several ones to prove that the system can be used not only to
maintain data but also to perform complex data selection and representation on
daily basis.
After the development
was finished, the system needed to be prepared for usage. On this stage, we
faced with the lack of existing data in the system. We could start to use the
system to work with data on first year students, but the system did not have
any information about students of higher courses. Therefore, we needed to load
data from existing systems; moreover, this process included not only data
extraction, but also conversion it to internal types and validation of loaded data.
Such sequence of operations is called ETL(Extract, Transform, Loading).
ETL is the common name for a group of methods that is widely used in
OLAP-systems.
There are two
different ways to implement ETL-process: use existing products or implement our
own solution using built-in programming language. Since we did not have
different source of data and we needed to perform loading once, it was decided
to create own loading system and implement it as a data processor. Since we
knew structure of existing systems’ databases, we used direct, raw SQL queries
to load data in the data processor. After extraction the data is grouped into
components of the system: curriculum, reports with marks and rating list. After
that, these items are loaded into the system according to strict sequence of
loading: curriculum, reports with marks and rating list.
The important part of
loading is data cleaning. As I mentioned above the system is supposed to be a
source of big amount of reports which are checked by controlling authorities, so
one of the most important requirements is correctness and reliability of data.
To satisfy such criteria we already have mechanisms of self-verification and
self-analysis to find wrong data inside the documents and other components. Firstly,
data is cleaned at transformation step where the system corrects wrong data
such as redundant or duplicated records, incorrect information about discipline
in curriculum and so on. Then, on loading step, the system uses built-in
mechanisms of self-validation. User performs the final verification. He or she
compares reports generated by the system (based on loading data) with reports,
which are stored in the university, or reports generated by old systems.
In conclusion, I
would like to say that all goals and targets were reached. Now I am sure that
the system has all critical characteristics, which were mentioned as acceptance
criteria. Moreover, I can strongly say that accumulation of information in the corporate
database allows us to conduct huge amount of different analytical researches to
find approaches to increase efficiency of studying process in Ivanovo State
Power University, to get full information about dynamics of students’ marks in
different selections of data for long period. Furthermore, this data will help
us to automate other parts of university routine based on accumulated data.
Ëèòåðàòóðà:
1. Îðåøêîâ Â.È. Áèçíåñ-àíàëèòèêà: îò äàííûõ ê çíàíèÿì: Ó÷åáíîå ïîñîáèå. 2-å èçä., èñïð. / Â.È. Îðåøêîâ, Í.Á. Ïàêëèí – Ñïá.: Ïèòåð, 2013. – 704 ñ.
2. Ðàä÷åíêî Ì.Ã. 1Ñ:Ïðåäïðèÿòèå 8.2 Ïðàêòè÷åñêîå ïîñîáèå ðàçðàáîò÷èêà / Ì.Ã. Ðàä÷åíêî, Å.Þ. Õðóñòàëåâà. – Ì.: ÎÎÎ «1Ñ-Ïàáëèøèíã», 2009. – 872 ñ.