Project Report Format Final
Project Report Format Final
Project Report
On
SIOM Placement Assistant
Submitted by
MCA–I
SEM–II
CERTIFICATE
This is to certify that Mr. Mali Atharva Suryakant has successfully completed
his project work entitled “SIOM Placement Assistant” in partial fulfillment of
MCA – I SEM – II Mini Project for the year 2023-2024. He has worked under
our guidance and direction.
Examiner 1 Examiner 2
Date:
Place: Pune
DECLARATION
I certify that the work contained in this report is original and has been done by me under
the guidance of my guide.
The work has not been submitted to any other Institute for any degree or diploma.
I have followed the guidelines provided by the Institute in preparing the report.
I have conformed to the norms and guidelines given in the Ethical Code of Conduct of the
Institute.
Whenever I have used materials (data, theoretical analysis, figures, and text) from other
sources, I have given due credit to them by citing them in the text of the report and giving
their details in the references.
It is very difficult task to acknowledge all those who have been of tremendous help in this
project. I would like to thank my respected guide Ms. Kumudini Manwar for providing me
necessary facilities to complete my project and also for their guidance and encouragement in
my special thanks and immeasurable feelings of gratitude towards Dr. Chandrani Singh,
Director, SIOM-MCA. I wish to convey my special thanks to all teaching and non-teaching
Thank You
Yours Sincerely,
1
and secure online community and social media platform that addresses these issues and
provides a tailored experience for like-minded individuals and students.
2
1.3 Scope of Project:
The scope of the SIOM Placement Assistant System is designed to revolutionize and
streamline the existing placement management process, addressing key challenges and
enhancing overall efficiency. The scope encompasses the following:
Unified Data Hub: The SIOM Placement Assistant System will centralize and automate
the management of student data, eliminating manual formatting and fragmentation issues.
This ensures a seamless and error-free data handling process.
Timely Communication: The system aims to facilitate timely placement notifications to
students, reducing delays and improving overall communication efficiency within the
placement process.
Real-time Application Tracking: The scope includes the development of features that
provide real-time visibility into the count and details of students applying for placement
drives. This empowers the TPO with immediate access to application data.
Automated Data Export: The SIOM Placement Assistant will automate the export of
student data for placement applications, streamlining the process and minimizing the
chances of errors.
Automated Shortlisting: The system will automate the shortlisting process, ensuring a
swift and accurate selection of candidates based on their performance in various rounds.
Efficiency through Automation: The project scope emphasizes reducing manual work and
introducing automation to enhance efficiency and accuracy in data management and
decision-making.
In conclusion, the scope of the SIOM Placement Assistant System aims to create a
more streamlined, efficient, and automated placement management process, addressing the
identified challenges in the existing system. The project focuses on leveraging technology to
enhance the overall effectiveness of the placement process at SIOM.
3
Client-side requirement
HTML5:
HTML5 serves as the backbone of the project, providing the structure and semantic markup
necessary for building web pages. Its rich features facilitate the creation of interactive and
multimedia-rich content, enhancing the user experience.
CSS3:
CSS3 complements HTML5 by enabling precise control over the presentation and styling
of web elements. Leveraging advanced features such as flexbox, grid layout, animations, and
transitions, CSS3 ensures aesthetic coherence and responsiveness across various devices.
PHP:
PHP, a server-side scripting language, empowers the project with dynamic functionality
and interactivity. Through PHP, server-side processes such as user authentication, data
processing, and database interactions are seamlessly executed, contributing to the application's
functionality and user experience.
XAMPP Server:
XAMPP serves as the local development environment, integrating Apache, MySQL, PHP,
and Perl. This all-in-one solution streamlines the setup and configuration of the development
environment, facilitating rapid prototyping, testing, and debugging of the web application.
MySQL Database:
MySQL, a robust relational database management system, forms the backbone of the
application's data storage and retrieval mechanism. Leveraging MySQL, structured data is
4
efficiently stored, queried, and manipulated to meet the application's requirements, ensuring
data integrity and scalability.
TailwindCSS:
TailwindCSS, a utility-first CSS framework, offers a pragmatic approach to styling web
applications. By providing a comprehensive set of utility classes, TailwindCSS accelerates the
development process, allowing for rapid prototyping and consistent design patterns.
Bootstrap:
Bootstrap, a popular front-end framework, further enhances the project's design and
responsiveness. Its extensive library of pre-built components, responsive grid system, and
customizable CSS themes expedite the development process while ensuring cross-browser
compatibility and mobile responsiveness.
In conclusion, the integration of HTML5, CSS3, PHP, XAMPP Server, MySQL
Database, TailwindCSS, and Bootstrap has empowered the project to deliver a sophisticated
web application that excels in both functionality and aesthetics. By leveraging the strengths of
each technology, the project ensures a seamless user experience, efficient data management,
and rapid development iterations. This comprehensive stack not only meets the project's
objectives but also establishes a solid foundation for future scalability and innovation in web
development endeavors
5
2.1 Feasibility Study
The feasibility study is useful to evaluate the cost and benefits of the system requested.
The feasibility study tries to anticipate future scenario of software development. There are three
aspects of feasibility study.
6
To reduce the communication gap between TPO cell and the student.
To manage the details and information of students' placement efficiently.
Reduce paperwork and create a database of the student.
To offer real-time updates to students regarding their placement status.
To allow the generation of customized reports and analytics for the Training and Placement
Cell.
Role:
o View and update system settings and configurations.
2. Placement Staff:
Description: Placement staff members are integral to facilitating the placement process
and assisting students in their career endeavors. They work closely with administrators
to coordinate placement activities, liaise with recruiters, and provide guidance and
support to students.
Role:
o Placement staff can post placement drives, specifying details such as companies, job
roles, and application deadlines.
o They are responsible for updating and managing the placement status of students who
have applied for drives.
o Placement staff generate comprehensive lists of student applications for each placement
drive.
o They have the authority to edit placement drive details as needed, ensuring accuracy
and relevance.
7
3. Student:
Description: Students are the primary beneficiaries of the SIOM Placement Assistant,
utilizing it to explore job opportunities, showcase their skills and qualifications, and
secure placements in reputed organizations. They rely on the platform to access
placement-related information, connect with recruiters, and navigate their career paths.
Role:
o View and update personal profile information, including academic records, skills, and
achievements.
o Upload resumes, cover letters, and other application materials for consideration by
recruiters.
8
3.1 Entity Relationship Diagram (ERD)
9
3.2 Class Diagram
10
3.3 Use Case Diagrams
System Level
11
System Level
12
Module 1: Profile Module
13
Module 3: Student Placement Applications
14
3.4 Activity Diagram
15
Module 2: Placement Drive Module
16
Module 3: Student Placement Applications
17
Module 4: Report Generation
18
3.5 Sequence Diagram
System Level
19
Module 1: Profile Module
20
Module 2: Placement Drive Module
21
Module 3: Student Placement Applications
22
Module 4: Report Generation
23
3.6 Component Diagram
24
3.7 Module and Hierarchy Diagram
25
3.8 Table Design
1. Table Name: admin
Sr. No. Field Type Size Constraint Description
1 id_admin int 11 PRIMARY KEY Id of Admin
2 username varchar 50 NOT NULL Username of Admin
3 password varchar 50 NOT NULL Password of Admin
26
3. Table Name: company
Sr.
Field Type Size Constraint Description
No.
id_compan
1 y int 11 PRIMARY KEY Placement Staff ID
2 name varchar 40 NOT NULL Placement Staff Name
companyna
3 me varchar 40 NOT NULL Placement Staff Designation
4 country varchar 20 NOT NULL Placement Staff Country
5 state varchar 20 NOT NULL Placement Staff State
6 city varchar 20 NOT NULL Placement Staff City
7 contactno varchar 12 NOT NULL Placement Staff Contact No.
8 website varchar 70 NOT NULL Placement Staff Website
9 email varchar 50 NOT NULL Placement Staff Email
10 password varchar 50 NOT NULL Placement Staff Password
DEFAULT Placement Staff About
11 aboutme varchar 255 NULL Details
DEFAULT
12 logo varchar 255 NULL Placement Staff Logo Path
timesta Placement Staff Profile
13 createdAt mp NOT NULL creation timestamp
Placement Staff Profile
14 active int 11 NOT NULL active status
27
5. Table Name: job_post
Sr.
Field Type Size Constraint Description
No.
1 id_jobpost int 11 PRIMARY KEY Placement Drive ID
2 id_company int 11 NOT NULL Placement Staff ID
3 jobtitle varchar 100 NOT NULL Placement Drive Title
Placement Drive
4 description text NOT NULL Description
minimumsalar
5 y varchar 15 NOT NULL Minimum Salary
maximumsalar
6 y varchar 15 NOT NULL Maximum Salary
7 experience varchar 6 NOT NULL Required Experience
Required
8 qualification varchar 20 NOT NULL Qualification
timestam Drive creation
9 createdat p NOT NULL timestamp
28
3.9 Data Dictionary
Sr. Field
No. Name Type Size Constraint Description Table Name
Students about me
1 aboutme text details users
About Placement
2 aboutme varchar 255 Staff company
Active status of users,
3 active int 11 NOT NULL profile company
4 address text Address of Student users
5 age varchar 3 Age of Student users
users,
6 city varchar 40 City Name company
companyn Placement staff
7 ame varchar 40 NOT NULL Name company
Contact No. of users,
8 contactno varchar 11 NOT NULL Student company
9 country varchar 20 NOT NULL Country Name company
country_i
10 d int 11 NOT NULL Country ID states
timesta Created at Date and company,
11 createdAt mp NOT NULL Time job_post
descriptio
12 n text NOT NULL Drive Description job_post
designatio Designation of
13 n varchar 40 Student users
14 dob varchar 12 Date of Birth users
Email of student users,
15 email varchar 50 NOT NULL and staff company
experienc Experience
16 e varchar 3 NOT NULL Required job_post
17 firstname varchar 20 NOT NULL Firstname of User users
18 hash varchar 255 Hash value for user users
Student HSC
19 hsc varchar 5 NOT NULL Marks users
AUTO_INCR
EMENT cities,
PRIMARY Id for state, countries,
20 id int 11 KEY country, city states
21 id_admin int 11 NOT NULL Id of Admin admin
AUTO_INCR
EMENT
PRIMARY apply_job_pos
22 id_apply int 11 KEY Application ID t
29
AUTO_INCR
id_compa EMENT NOT
23 ny int 11 NULL Drive Company ID company
id_compa FOREIGN apply_job_pos
24 ny int 11 KEY Placement Staff ID t, job_post
id_compa
25 ny int 11 NOT NULL Placement Staff ID job_post
FOREIGN Placement Drive apply_job_pos
26 id_jobpost int 11 KEY ID t, job_post
PRIMARY
27 id_user int 11 KEY Id of User users
FOREIGN apply_job_pos
28 id_user int 11 KEY User ID t, users
29 jobtitle varchar 50 NOT NULL Drive Title job_post
30 lastname varchar 20 NOT NULL Lastname of User users
31 logo varchar 255 Logo Path company
maximum
32 salary varchar 15 NOT NULL Maximum Salary job_post
minimum
33 salary varchar 15 NOT NULL Minimum Salary job_post
Placement staff
34 name varchar 40 NOT NULL name company
cities,
Name of Country, countries,
35 name varchar 40 NOT NULL State, City states
passingye Passing year of
36 ar varchar 6 student users
Password of users,
37 password varchar 40 NOT NULL student/staff company
38 pg int 11 NOT NULL Student PG Marks users
phonecod
39 e int 11 NOT NULL Phone Code countries
qualificati Qualification of
40 on varchar 255 student users
qualificati Required
41 on varchar 20 NOT NULL Qualification job_post
42 resume varchar 255 Resume of student users
43 skills text Student skills users
Short Name of
44 sortname varchar 3 NOT NULL Country countries
45 ssc int 11 NOT NULL Student SSC Marks users
46 state varchar 20 State of student users
47 state varchar 20 NOT NULL State Name company
48 state_id int 11 NOT NULL State ID states
apply_job_pos
49 status int 11 NOT NULL Application Status t
50 stream varchar 20 Stream of student users
30
51 ug int 11 NOT NULL Student UG Marks users
Username of
52 username varchar 255 NOT NULL Admin admin
53 website varchar 255 NOT NULL Website company
31
3.10 Sample Input and Output Screens
Landing Page
32
Student Login Page
33
Student Registration Page
34
Admin Dashboard
Staff Dashboard
35
Student Profile List
36
Students Application Page
37
Placement Statistics
38
Edit Profile Page
39
Drive Details Page
40
Post New Drives Page
41
Resume Database Page
42
4.1 Sample Code
Placement-Portal-new/adduser.php
<?php
//Including Database Connection From db.php file to avoid rewriting in all files
require_once("db.php");
43
//sql query to check if email already exists or not
$sql = "SELECT email FROM users WHERE email='$email'";
$result = $conn->query($sql);
//This variable is used to catch errors doing upload process. False means there is some
error and we need to notify that user.
$uploadOk = true;
//Folder where you want to save your resume. THIS FOLDER MUST BE CREATED
BEFORE TRYING
$folder_dir = "uploads/resume/";
//This will get us extension of your file. So myResume.pdf will return pdf. If it was
resume.doc then this will return doc.
$resumeFileType = pathinfo($base, PATHINFO_EXTENSION);
//Setting a random non repeatable file name. Uniqid will create a unique name based on
current timestamp. We are using this because no two files can be of same name as it will
overwrite.
$file = uniqid() . "." . $resumeFileType;
//Next we need to check file size with our limit size. I have set the limit size to 5MB.
Note if you set higher than 2MB then you must change your php.ini configuration and change
upload_max_filesize and restart your server
if ($_FILES['resume']['size'] < 500000) { // File size is less than 5MB
//If all above condition are met then copy file from server temp location to uploads
folder.
move_uploaded_file($_FILES["resume"]["tmp_name"], $filename);
} else {
//Size Error
$_SESSION['uploadError'] = "Wrong Size. Max Size Allowed : 5MB";
$uploadOk = false;
}
} else {
//Format Error
$_SESSION['uploadError'] = "Wrong Format. Only PDF Allowed";
$uploadOk = false;
}
} else {
//File not copied to temp location error.
$_SESSION['uploadError'] = "Something Went Wrong. File Not Uploaded. Try Again.";
$uploadOk = false;
}
$result = mail($to, $subject, $html, $headers); // \r\n will return new line.
//If data inserted successfully then Set some session variables for easy reference and
redirect to login
$_SESSION['registerCompleted'] = true;
header("Location: login.php");
exit();
}
// //If data inserted successfully then Set some session variables for easy reference and
redirect to login
$_SESSION['registerCompleted'] = true;
header("Location: login-candidates.php");
exit();
} else {
//If data failed to insert then show that error. Note: This condition should not come
unless we as a developer make mistake or someone tries to hack their way in and mess up :D
echo "Error " . $sql . "<br>" . $conn->error;
}
} else {
//if email found in database then show email already exists error.
$_SESSION['registerError'] = true;
header("Location: register-candidates.php");
47
exit();
}
48
5.1 Limitations of System:
Integration Limitations:
Integration with external systems or databases may be limited, restricting the seamless
exchange of data between the SIOM Placement Assistant and other platforms used by students
or recruiters.
Data Security Concerns:
Despite efforts to ensure data security, there's always a risk of data breaches or cyberattacks,
especially given the sensitive nature of student and company information stored on the platform.
Scalability Challenges:
As the user base grows, the platform may experience performance issues or slowdowns during
peak usage times, impacting user experience and efficiency.
49
6.1 Proposed Enhancements for System:
Mobile Application Development:
Develop a mobile application for the SIOM Placement Assistant to enhance accessibility and
user engagement. This app will enable students to access placement-related information,
receive notifications about upcoming opportunities, and interact with the platform seamlessly
while on the go.
Expanded Multimedia Support:
Enhance multimedia capabilities by adding support for additional file formats, interactive
media, and real-time collaboration tools. This will facilitate a more dynamic and engaging user
experience, allowing students to showcase their skills and achievements in various formats.
Global Language Support:
Incorporate multilingual support into the SIOM Placement Assistant to make it accessible to a
global audience. By allowing users to interact in their preferred language, this enhancement
will promote inclusivity and diversity within the SIOM community.
50
7.1 Conclusion
In conclusion, the development and implementation of the Web-based SIOM
Placement Assistant mark a significant leap forward in optimizing the operations of the training
and placement department at SIOM. By leveraging modern technologies such as HTML5,
CSS3, PHP, Xampp, Tailwind, and Bootstrap, we have successfully automated tedious manual
processes, thereby enhancing efficiency and transparency in the placement process.
Through this project, we have addressed the limitations of the previous semi-
automated system, streamlining the management of student data and aligning it more closely
with the requirements of recruiting companies. The user-friendly interface not only simplifies
data input and retrieval for students and officers but also serves as a centralized repository for
student information, ensuring better organization and accessibility.
By saving time and manpower previously spent on manual sorting and matching
processes, the SIOM Placement Assistant allows the training and placement department to
focus more on providing quality services to students and forging strong connections with
prospective employers. This not only benefits individual students in their career pursuits but
also contributes to the overall success and reputation of the institution.
51
8.1 Bibliography
8.1.1 Websites
8.1.2 Books
“UML 2.0 in a Nutshell” by Dan Pilone, Neil Pitman Released June 2005 Publisher(s):
O'Reilly Media, Inc. ISBN: 9780596552312
52