The Web-SynDic Project: Development of Software for Remote Solving Linear Diophantine Equations in Non-negative Integers
Non-negative linear Diophantine equation (NLDE) is an equation with integer coefficients and non-negative integer solutions. We present Web-SynDic project, within the scope of which a web-system, oriented to a particular class of homogenous NLDE systems, associated with formal gram-mars (homANLDE systems), has been developed. For solving these systems perspective polyno-mial solving algorithms based on syntactic analysis methods are used. These algorithms are of in-terest for solving different mathematical modeling computation tasks.
Developed Web-SynDic system is meant for remote execution of demonstration, testing, ex-perimental analysis and comparing solvers for homANLDE systems. The system supports imple-mentation of syntactic solving algorithm and two alternative solvers. Two test homANLDE system generation algorithms allow to build, solve and save homANLDE systems and their sets. Web-SynDic allows to access measuring computation burden of solving (time and memory) and homANLDE system characteristics. Web-SynDic system users are given an opportunity to manage generating and solving parameters: homANLDE system dimension, coefficients, used resources and some other restrictions. User registration is supported. The Web-SynDic system is based on a client-server architecture (thin client). The main subsystems are a client part, web server, data storage and distensible set of external generators and solvers. User has no direct access to algorithms, he only gets the results of their work.
The Web-SynDic developers are the students of Computer Science Department of Petro-zavodsk State University. Development included two iterations, classic waterfall model was used at both stages. After finishing the first iteration alpha, beta and mass stress testing were carried out. On analyzing research results the second iteration was carried out.
The project combines important mathematical problem and modern software engineering methods. The system presented renders computation service for researchers. Also the system allows to execute distributed testing of generation and solving algorithms. In education the similar software products allow to train high-tech software development experts.