A simple database management system which designed to manage hospital. The system should be able to keep track of the records of the doctors, patients, nurses, and other hospital staff. The main aim is to minimize the paperwork of the hospital as minimum as possible, if not completely.
- Database - PostgreSQL
- Database management - Java/Python
- User Interface - Java
- Tests - Python
The initial functionalities requested are as follows:
-
Multi user account system
-
Monitoring the whole hospital system
-
Management of all types of users’ account
-
Notice Board
-
Appointment Management
-
View Appointments
-
Notifications
-
Medical History
-
Invoice Management
-
Medical Report Management
-
Internal Communication
-
Responsive User Interfaces
- Clone repository
- Setup SDK 11 version in IntelliJ
- Go to File -> Project Structure -> Modules -> '+' -> JARs or Directories
- Select
project-ram/libs/openjfx-11.0.2_linux-x64_bin-sdk/javafx-sdk-11.0.2/lib
- Go to File -> Project Structure -> Libraries -> '+' -> Java
- Select
project-ram/libs/postgresql-42.2.20.jar
- Click Apply and OK
- Run 'GUI_Main.main()'
- Go to Run -> Edit Configuration -> Modify Options -> Add VM Options
- Add this:
<path-to-folder>/project-ram/libs/openjfx-11.0.2_linux-x64_bin-sdk/javafx-sdk-11.0.2/lib
- Install PostgreSQL
sudo apt install postgresql
- Open file
/etc/postgresql/10/main/pg_hba.conf
- Replace md5 with trust
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv4 local connections:
host all all 127.0.0.1/32 trust
- Restart service
sudo service postgresql restart
- Populate database by running
cd project-ram/sql && ./populate.sh
- (Optional) To delete database
cd project-ram/sql && ./drop.sh
-
The project "Hospital management system" was selected
-
Updated the Readme page
-
Selected product owner: Renat Valeev
-
Selected technologies to be used: PosgreSQL, Python, Java
-
Determined the Initial Client Features
-
Wrote a simple program to make sure everything is correct
-
Finish work from Sprint0 (created branch policy, [user story] and [task] templates)
-
Created database schema
-
Created Use case diagram of the project
-
Update documentation
-
Finish work from Sprint 1
-
Read and understand Continuous integration in github (curret issue: never worked with GitHub Action, need more time to get used to it)
-
Made initial user interface
-
Update documentation
- Fill the database by random values (took files from the Internet with random names and surnames)
-
Connected database to java
-
Generated data for tests
-
Finilize GUI
-
Add tests for app
-
Update documentation
Relational Scheme:
GUI:
Text areas are name, surname, login, age, role.
Buttons are for clean data and to perform search query by name, surname, login, age, role.
-
Alfiya Musabekova [email protected]
-
Renat Valeev [email protected]
-
Marina Nikolaeva [email protected]