Viktor Riabinin
Faculty of computer science and technology (CST)
Department of computer engineering (CE)
Speciality Systems programming
Development of the knowledge base and web-based application for the preparation and processing of examination tasks
Scientific adviser: Professor Volodymyr Svjatnyj
Contact information
Gmail: ryabinin.victor@gmail.com
Skype: wikt0r_r
Content
2. Goal and tasks of the master thesis
3. Status of the project at the time of writing this abstract
3.2 Results of my work
3.3 Further implementation of the project
1. Theme urgency
There are a lot of situations when a large number of users need access to some information, read this data and edit it. Information is common to all users and can not be located on each client machine. Web-based applications – software that is accessed by users over a network such as the Internet – are used to solve the problems like this.
Web-based application is a good solution of all these problems because:
– provide access to a common information for a large number of users at the same time;
– do not depend on the operating system installed on the user's computer.
This approach is chosen for the implementation the tasks of the master's work.
2. Goal and tasks of the master thesis
There are some types of application requirements. Most important of them are functional and interface requirements.
2.1 Functional requirements
The developed application must have next features:
– providing the user with information from the database, ability to edit this data, delete it or add new;
– validation of a new data and changes saving;
– generating of examination papers using information stored in the knowledge base.
There are also the additional requirements to the application. They are listed next.
It is necessary to provide centralized storage of a data, to organize access to it to multiple users, and prevent the conflicts and errors.
Another feature that should have the application is multi-lingual. At the moment, application should support three languages: German, English and Russian.
If you delete any of the data associated information should not be lost. The same data can be edited by different users. Questions may relate to several topics, and the answers - only to one question. All these features must be included in the data structure.
2.2 Interface requirements
The interface requirements of application are listed here:
– availability of forms to display the requested information (the list of users, topics, questions, etc.);
– availability of forms to edit the information. Since the questions and answers to them can have mathematical formulas on the form must be present editor to create them;
– availability of the correct instrument to display errors.
Of course, all these creating and editing forms must contain background information and tips to simplify work with them.
2.3 Tools for application development
The appropriate solution of the described problem is the development of Web-based application. This will ensure the fulfillment of such requirements as the central repository of information, simultaneous access to multiple users. Structure of Web-application in general and the transmission direction information in it are shown in Figure 1.
Figure 1 – General web-based application structure
For writing server-side Web-based applications chosen programming language Java. Interface for writing client-side and server-side binding, will be used Vaadin. This is - a platform open-source framework for building rich Internet applications.
Storage of information is performed in the database. As the database will be used by PostgreSQL - a powerful object-relational database management system, open source. The database structure is shown in Figure 2.
Figure 2 – Database structure
To communicate with the database logic of the application will be used hibernate - library of the programming language Java, designed to solve the problems of object-relational mapping (object-relationalmapping - ORM).
Summary: the use of these approaches and tools allows you to put forward all the functionality of the application and its interface requirements.
3. Status of the project at the time of writing this abstract
The application is being developed for use in the University of Stuttgart, Germany. Developing of application was started by two HLRS (The High Performance Computing Center Stuttgart - High Performance Computing Center Stuttgart) employees – Yevgen Dorozhko and Yuriy Yudin. Therefore, the following is the status of the project at the time I started working with him, the results of the work done by me and plans for further development of the project.
3.1 Status of the project at the the time of beginning of my work
At the time I started working on the project, some of it has already been implemented. Specifically, was developed by the original structure of the data and in accordance with its established base. Created by two of the application module. Core - the core of the application responsible for the implementation of the application functionality. UI - part of the application that implements the user interface.
Core module already contains the following components:
– data exchange with the knowledge base;
– logging.
UI module contains the following components:
– forms which contain lists of teachers, subjects and questions;
– question creating form.
3.2 Results of my work
At this point in the course of working on a project I worked on most of the user interface module. In addition, I had to implement some of the functionality (editing and deletion) that required the amendment of the module Core. Below is a list of changes I made in the project:
– editing and deleting items have been added to;
– modified fields in some tables in the database for the expansion of the application: the topics, which include questions that are not removed from the database, but only marked as deleted (similar subjects, which include any subject);
– check the compatibility of it with the previously written code, removed both found a few bugs, and the newly arisen.
There is a screenshot of the edit and view forms in the figure 3 below there.
Figure 3 – An example of the already existing forms of the application interface
3.3 Further implementation of the project
During my further work on the development of an application will be made as follows:
Upon completion of these steps, the application will verified. After checking and correcting errors will start to use it.
5. Conclusion
Theme of master's work is highly specialized and not at the application level. It is very relevant: Web-applications today are widespread and have high popularity. Approaches, tools and technologies used in the design of the application is also used to create a variety of other projects.
In writing this essay master's work is not yet complete. Final completion: December 2013. Full text of the work and materials on the topic can be obtained from the author or his manager after that date.
References
1. Карл Вигерс. Разработка требований к программному обеспечению. Пер, с англ. – М.: Издательско-торговый дом Русская Редакция
, 2004. – 576с., ил.
2. Б. Скотт, Т. Нейл. Проектирование веб-интерфейсов. Пер. с англ. – СПб.: Символ-Плюс, 2010. – 352 с., ил.
3. Marko Grönroos. Book of Vaadin: 4th Edition. Published: 2012-11-08. Copyright © 2000-2012 Vaadin Ltd
4. Э. Фримен, К. Сьерра, Б. Бейтс. Паттерны проектирования. – СПб.: Питер, 2011. – 656 с., ил.
5. Герберт Шилдт. Java. Полное руководство, 8-е изд.: Пер. с англ. – М.: ООО И.Д. Вильямс
, 2012. – 1104 с., ил.
6. Christian Bauer, Gavin King. Hibernate in action. ©2005 by Manning Publications Co. All rights reserved.
7. Internet resource of the Vaadin Framework. – https://vaadin.com/homel
8. Internet resource of the SpringFramework. – http://www.springsource.org/
9. Internet resource of the HibernateORM. – http://www.hibernate.org/
10. Internet resource of the PostgreSQL. – http://www.postgresql.org/