Answer the question
In order to leave comments, you need to log in
What is the best way to implement the "University Timetable" application?
Good day!
At the moment, I started designing an android application for the university, in order to create a product useful for students and teachers of our university and gain experience in practical development. This will be my first application.
The essence of the application: Obtaining up-to-date information about the schedule, news and events of our university. The application must send a request that contains information about the group and faculty to the website of the university and receive a response in the form of a file with a schedule.
At the moment, the schedule is posted on the site in .docx format.
Please tell me in what format it is best to provide the timetable on the website of the university, so that the application can read them and present them in a readable form. At the moment I'm looking at JSON. Is there a more efficient approach for this task and what is the best way to implement it?
Answer the question
In order to leave comments, you need to log in
You threaten to create a software package .
To create a functional product, you need to ensure the creation and editing of the schedule, its storage and delivery to the end user (teachers and students).
1. For storage, you need to design and implement a database .
In the database, it is necessary to implement support for various faculties / groups, differentiation of access rights to create / edit, user groups (students-teachers-dean-admins). The simplest and most affordable option is MySQL
2. To transfer data to a mobile phone, you need to design and implement a REST Api. It is implemented as a separate application for the OS on which the university server is running.
3. The application itself is engaged in displaying data.
However, I see a couple of problems here.
1. Human factor. In order for your system to be used, it must be user-friendly. That is, not only for you, but also for those who will watch the schedule, as well as those who will create / edit it.
You won’t automatically convert Word into a database format, and no one wants to learn how to work with a database just to fill in a schedule. Conclusion - you need to make an interface for working with the database for the staff.
Also, far from all Android smartphones, so you leave iOS "in flight". To ensure the availability of the schedule, it is desirable to make a web interface. Then it will be possible to enter from a PC, but by doing this you add another link to your complex.
2. The complexity of the system for implementation. In the absence of experience and by the efforts of one person, it is impossible to study all the topics presented, and even more so to make a quality product.
3. An unobvious, but very important factor - UI / UX , that is, design and usability. This is a separate and rather voluminous task, when for each part of the complex that has an interface, you need to make a design layout, test it on a control group of end users, fix it, and so on.
The scheduling database fits very well into a relational database - I put it personally :-)
but the problem is in the compilers, talk to them, in what form they compose everything. without them or an administrative resource in the form of a rector, it will be very difficult ...
It would be easier if the schedule was simply uploaded to the site as a page, then it would be possible to go through the JSOUP parser and download the necessary data. One guy from my uni did just that.
It is better not to mess with relational databases - it will be inconvenient to store motley information.
Check out www.arangodb.com
If you have access to the backend of the site, then you can read the schedule file and make JSON.
If there is no access to the backend, then you can download the required docx from the site through the application and either read it yourself and display it as a table or run the program installed by the user to read docx (in my opinion, the easiest option to implement).
News and events can be parsed from the site with some kind of jsoup if there is no access to the backend of the site.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question