Report

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 17

Databases and Information Systems Lab (CS313)

Project Management System

Meghana Sripalle Manasa S

200010028@iitdh.ac.in 200010057@iitdh.ac.in

1 Overview:
Project Management System in a Company, we have considered two interfaces, namely
the manager and the employee. The manager’s role is to assign projects to employees
and monitor them, to consider the employees’ skills and assign projects based on them,
and to set project deadlines.They can also view the updates in the projects assigned by
them in the form of a progress timeline. Employees, on the other hand, are responsible
for working on the assigned project, updating the work done each day, and mentioning
their skills so that the manager can assign projects based on their interests. Keeping
this in mind we have framed tables Manager, Employee, User Manager, User Employee,
Projects, Deadlines, Skills, Updates.

2 Database Schema:
Manager(manager_id, manager_name, phone_no, email)
User_Manager(manager_id, user_id, username, pass)
Employee(emp_id, emp_name, emp_post, phone_no, email)
User_Employee(emp_id, user_id, username, pass)
Projects(project_id, project_name, emp_id, manager_id, details, prereq)
Deadlines(project_id, due_date)
Skills(emp_id, skill)
Updates(project_id, updates, update_date)

3 ER Model:

1
Figure 1: ER Diagram

4 Integrity Constraints:

Relation Primary Key Foreign Key(Referencing table) Not Null


Manager manager id - manager name
User Manager user id manager id(Manager) user name, pass
Employee emp id - emp name, emp post
User Employee user id emp id(Employee) user name, pass
Projects project id manager id(Manager), emp id(Employee) project name
Deadlines project id project id(Projects) -
Skills emp id, skill emp id(Employee) -
Updates project id, project id(Projects) updates
update date

5 Users:
User: company
Password: Company Apple1

create user 'company'@'localhost' identified by 'Company_Apple1';


grant all privileges on Apple.* to 'company'@'localhost';
-- use this command 'mysql -u company -p;' to access the user

2
6 Relational Database Design:
create database Apple;
use Apple;

create table Employee(


emp_id varchar(5),
emp_name varchar(20) not null,
emp_post varchar(20) not null,
phone_no varchar(10),
email varchar(40),
primary key (emp_id));

create table User_Employee(


user_id varchar(5),
username varchar(20) not null,
pass varchar(20) not null,
emp_id varchar(5),
primary key (user_id),
foreign key (emp_id) references Employee(emp_id)
on delete cascade);

create table Manager(


manager_id varchar(5),
manager_name varchar(20)not null,
phone_no varchar(10),
email varchar(40),
primary key (manager_id));

create table User_Manager(


user_id varchar(5),
username varchar(20) not null,
pass varchar(20) not null,
manager_id varchar(5),
primary key (user_id),
foreign key (manager_id) references Manager(manager_id)
on delete cascade);

create table Projects(


project_id varchar(5),
project_name varchar(30) not null,
emp_id varchar(5),
manager_id varchar(5),

3
prereq varchar(80),
details varchar(100),
primary key (project_id),
foreign key (manager_id) references Manager(manager_id)
on delete cascade,
foreign key (emp_id) references Employee(emp_id)
on delete cascade);

create table Deadlines(


project_id varchar(5),
due_date varchar(10),
primary key (project_id),
foreign key (project_id) references Projects(project_id)
on delete cascade);

create table Skills(


emp_id varchar(5),
skill varchar(20) ,
primary key (emp_id,skill),
foreign key (emp_id) references Employee(emp_id)
on delete cascade);

create table Updates(


project_id varchar(5),
updates varchar(100) not null,
update_date varchar(10),
primary key (project_id,update_date),
foreign key (project_id) references Projects(project_id)
on delete cascade);

7 Languages and Technologies Used:


• Frontend: Javascript, html, css, bootstrap

• Backend: Sql, php

8 Interface Designs
To build the UI design, we used technologies like Bootstrap, Javascript and HTML. In
every interface, we have a navigation bar in order to navigate through the pages/sections.
Upon success or failure, we used alerts for indication. The results of various actions are
displayed in the form of tables. There is a sign out button for each interface located on

4
the top right of the page. The profile of the manager or employee is displayed in their
respective home pages along with certain statistics.

9 Workflow and Pages:


INSTRUCTIONS TO RUN THE WEBSITE:

1. If you are using a desktop with the Ubuntu operating system, then place the
source code folder in the var/www/html folder. If you are using a desktop with
the Windows operating system, then place the folder inside the xampp/htdocs
folder.

2. You can go to the browser and type ”http://localhost/<roll number>/” in order


to view the website.

3. The first page that you can view is the ’index.php’ page from which you cam
navigate to either the Manager interface or the Employee interface.

PAGES AND ITS DETAILS:

Home Page(index.php) : In this page, one can observe two interfaces, login as em-
ployee and login as manager

Manager’s Login Page(login manager.php) : Here, the manager can login with
his/her credentials like the username and password. To login as a manager you
can use the credentials of the Manager John. The username is ’John123’ and
password is ’john’.

Manager’s Home Page(home manager.php) : Here, the manager can view the
number of employees, number of managers, number of his/her leading projects
along with his/her profile.

Manager’s Projects Page(projects manager.php) : The manager can view the


projects he or she has assigned to the employees, search for employees with certain
skills, assign new projects to employees, search for projects using their project IDs
and remove projects from the database.

Manager’s Progress Page(progress manager.php) : The manager can view the


updates of the projects performed by his/her employee.

Employee’s Login Page(login employee.php) : Here, the employee can login with
his/her credentials like the username and password. To login as an employee you
can use the credentials of the Employee Rita. The username is ’Rita123’ and
password is ’rita’.

5
Employee’s Home Page(home employee.php) : Here, the employee can view the
number of assigned projects till date, number of current projects, number of
projects due today along with his/her profile and the option to add new skills.

Employee’s Projects Page(projects employee.php) : The employee can view his/her


assigned, ongoing and archived projects.

Employee’s Progress Page(progress employee.php) : The employee can view his/her


updates of the projects and also can insert the new updates he/she has done for
that day.

10 Screenshots:

6
7
8
9
10
11
12
13
14
15
16
11 Conclusion:
We chose the topic of project management system and investigated all possible web page
design options. We tried to make an effective website by implementing various features.
It aided us in expanding our knowledge of SQL queries and beautifying the page with
other frontend technologies.

17

You might also like