Projects Management is a web application that helps the management of different projects. With Projects Management you can manage Projects, Collaborators, Competences and Tasks. Each Project is composed of different Tasks. Each Collaborator can be assigned to Tasks taking into consideration their Competences and a limit work hours (e.g. 8 hours/day). The attribution is made in an equitable manner.
You are free to reuse, copy, modify, and distribute, but you have to give attribution.
Projects Management uses four sub-modules as dependencies :
- 📁 projectsmanagement-ejb : Business Layer (EJB)
- 📁 projectsmanagement-jpa : Persistence Layer (JPA)
- 📁 projectsmanagement-web : Web Layer
- 📁 projectsmanagement-app : EAR project
These four sub-modules will be included in the folder projectsmanagement-master.
Here is the relationship between these modules :
Projects Management is created with :
- JavaEE 7.0
- EJB 3.2 (Enterprise Java Bean)
- JPA (Java Persistence API)
- CDI
- Hibernate 5.4.16
- JSF 2.1 (JavaServer Faces) with Mojarra 2.3.2. implementation
- PrimeFaces 8
- JavaEE security
- Maven 2
- GlassFish 5
- MySQL 5
Run this script to create the database. The admin credentials will be inserted also :
username: master
password: 123456
Run this command to clone the project along with all the sub-modules :
git clone https://github.com/Kuohamkun/projectsmanagement-bom.git --recursive
- Authentication : JavaEE Security
- General overview of Projects, Collaborators, Competences and Tasks
- List, add, edit and delete collaborators
- Assign/remove competences
- List, add, edit and delete competences
- Statistics showing the number of collaborators for each competence
- List, add, edit and delete projects
Here the creation of projects follows a time allocation rule. The maximum duration in a day is set at 8am, and weekends are disabled.
- List, add, edit and delete tasks
- Assign/remove tasks competences
- Assign work hours to collaborators in a given task. The attribution is made in an equitable manner.