VIETNAM NATIONAL UNIVERSITY, HANOI
UNIVERSITY OF ENGINEERING AND TECHNOLOGY
Nguyen Trong Viet
A SOCIAL NETWORK FOR STUDENT JOB
MARKET
Major: Computer Science
HA NOI - 2013
i
VIETNAM NATIONAL UNIVERSITY, HANOI
UNIVERSITY OF ENGINEERING AND TECHNOLOGY
Nguyen Trong Viet
SOCIAL NETWORK FOR STUDENT JOB MARKET
Major: Computer Science
Supervisor: Dr. Le Sy Vinh
HA NOI - 2013
AUTHORSHIP
“I hereby declare that the work contained in this thesis is of my own and has not been
previously submitted for a degree or diploma at this or any other higher education
institution. To the best of my knowledge and belief, the thesis contains no materials
previously published or written by another person except where due reference or
acknowledgement is made.”
Signature:………………………………………………
SUPERVISOR’S APPROVAL
“I hereby approve that the thesis in its current form is ready for committee examination
as a requirement for the Bachelor of Computer Science degree at the University of
Engineering and Technology, Vietnam National University, Hanoi.”
Signature:………………………………………………
ACKNOWLEDGEMENT
Firstly, I would like to express my respect and my special thank to my supervisor
Dr. Le Sy Vinh, University of Engineering and Technology, Vietnam National
University, Hanoi for the enthusiastic guidance, warm encouragement and useful
research experiences.
Secondly, I am grateful to all the teachers of University of Engineering and
Technology, Vietnam National University, Hanoi for their invaluable knowledge
which they taught to me during four academic years.
I greatly appreciate, University of Engineering and Technology, VNU, Hanoi for
their encouragements and insightful comments. Moreover, I thank to my classmates in
K54CA Computer Science: Vu Trung Kien, Do Thi Bac, Tran Van Binh, Pham Van
Hoa, Nguyen Van Thang for supporting me during four years and especially helping
me to complete testing this system.
Last but not least, my family is really the biggest motivation behind me. My
parents and my brother always encourage me when I have stress and difficulties. I
would like to send them my gratefulness and love.
iv
ABSTRACT
The purpose of this study was to investigate to build a website that acts as a social
network for students and manager of companies. The website provides environment
for students to test knowledge and skills. It also helps managers as a channel for
contacting students in easy way. Another aim was to build a big and plentiful data
source of multiple choice questions by contributing from manager users of system.
Finally, the process of building a website was pointed out.
To accomplish, software development process was applied to build a website. The
first step, system requirements specification was done. There were many requirements
they consisted of functional and non-functional requirements listed. The second,
database was analyzed and designed. The website used MySQL – an open source
relation database management system – to manage database. The works of collecting
data have been started when database was created. The third, website was designed
layout and implemented. The CakePHP framework was used as platform for
developing. The fourth, from the first version to existing version were tested and tried
by my classmates they helped me point out system logic errors and graphical user
interface errors. The works of upgrading and errors correcting were consecutively
done. The website could be applied in fact from existing version but it still has been
upgrading and developing with more function.
The results of this study were a powerful website with many functions and friendly
user interface. The database was also contributed more than 200 multiple choice
questions. Besides, finishing this project gave me more experiences and skills for
website development as well as system development. I also enriched my knowledge
and tried solve problems in fact.
v
Tables of Contents
List of Figure. ................................................................................................................. v
List of Table.................................................................................................................. vii
ABRREVATIONS ......................................................................................................viii
Chapter 1 INTRODUCTION ......................................................................................... 1
1.1
Motivation ......................................................................................................... 1
1.2
Contribution and Thesis Overview ................................................................... 1
Chapter 2 RELATED WORK ........................................................................................ 3
2.1
Basic Knowledge .............................................................................................. 3
2.2
Related Work .................................................................................................... 4
Chapter 3 SYSTEM ANALYSIS AND DESIGN.......................................................... 8
3.1.
System Analysis ................................................................................................ 8
3.2.
Database Design .............................................................................................. 12
3.3
System Module ............................................................................................... 21
Chapter 4 IMPLEMENTATION AND RESULTS...................................................... 24
4.1
Platform and technology ................................................................................. 24
4.2
User Interface .................................................................................................. 27
Chapter 5 CONCLUSIONS ......................................................................................... 38
References…………………………………………………………………................39
vi
List of Figures
Figure 2-1 - Client-server illustration…………………………………………………7
Figure 2-2-1 - Website www.freelancer.com................................................................8
Figure 2-2-2 - Website www.vietnamworks.com..........................................................9
Figure 2-2-3- Website kenhsinhvien.net………………………………………………6
Figure 2-2-4: OpenViki Social Network………………………………………………7
Figure 2-2-5: Zing me Social Network………………………………………………...7
Figure 3-1-1-1 - Student User Use-Case……………………………………………..10
Figure 3-1-1-2 - Manager User Use-Case……………………………………………10
Figure 3-1-1-3 Admin Users Use-Case………………………………………………11
Figure 3-2-1-1 - User Entity Diagram………………………………………………..12
Figure 3-2-1-2 - Question Entity Diagram…………………………………………...13
Figure 3-2-1-3 - Wall Entity Diagram………………………………………………..13
Figure 3-2-1-4 - Post Entity Diagram………………………………………………..14
Figure 3-2-1-5 – Category Entity Diagram…………………………………………..14
Figure 3-2-1-5 – Point Entity Diagram………………………………………………15
Figure 3-2-2 – Relationship Between Entities Diagram……………………………..16
Figure 4-2-1 – Home Page…………………………………………………………...27
Figure 4-2-2 – Login Page…………………………………………………………...28
Figure 4-2-3 – Register Page…………………………………………………………28
Figure 4-2-4-1 – List Post Page………………………………………………………29
Figure 4-2-4-2 – Detail Post Page……………………………………………………29
vii
Figure 4-2-5 User Profile Page……………………………………………………….30
Figure 4-2-6 User’s Wall Page……………………………………………………….30
Figure 4-2-7 List Student Page……………………………………………………….31
Figure 4-2-8 List Company Page……………………………………………………..31
Figure 4-2-9-1 Setting Page…………………………………………………………..32
Figure 4-2-9-2 Answer Sheet Page…………………………………………………...32
Figure 4-2-10 Question Management Page…………………………………………..33
Figure 4-2-11 User Management Page……………………………………………….33
Figure 4-2-12 Creating Post Page…………………………………………………….34
Figure 4-2-13-1 Adding New Question Page………………………………………...34
Figure 4-2-13-2 Upload File Page……………………………………………………35
Figure 4-2-14 Filter Page…………………………………………………………….35
viii
List of Tables
Table 3.2.3.1 - User Table……………………………………………………..18
Table 3.2.3.2 - User category table…………………………………………….19
Table 3.2.3.3 - Question table………………………………………………….20
Table 3.2.3.4 - Question category table………………………………………..20
Table 3.2.3.5 - Wall table………………………………………………………21
Table 3.2.3.6 - Post table……………………………………………………….21
Table 3.2.3.7 - Comment table…………………………………………………21
Table 3.2.3.8 - Point table………………………………………………………22
Table 3.2.3.9 - Answered Question Table………………………………………23
ix
ABRREVATIONS
CSM
Content management system
MVC
Model-View-Controller pattern
CakePHP
Framework CakePHP
MySQL
MySQL relational database
management system
RDBMS
Relational database management
system
x
Chapter 1
INTRODUCTION
1.1
Motivation
Nowadays, information technology is applied in large range of real life from
economics, education, healthcare, agriculture to geotechnical, military, Astronomers.
It helps people not only in communication but also solve complicated problems.
Power of information technology is uncompromising. Trying to use benefit of
information technology is always making more benefits.
In higher education, on the last year at university, most of students must find
internship address to practice as a required subject. In my school, University of
Engineering and Technology, students face many difficulties in work finding
appropriate address as well as how easy to contact with manager of companies or
supervisors. Besides, many companies also face with difficulties about how to find
excellent candidates and how to contact them in convenient way.
From this fact, we have developed a system call “Internship Social Network” for
students and manager of companies to solve these problems. System enables managers
to public their company notices and reports. Besides, managers could also add
questions to system. Student users could take part in exam that generated by system
and get points from this work. These point values could be useful information for
managers to choose appropriate students for their work.
1.2
Contribution and Thesis Overview
This thesis describes about process building a website call “Internship Social
Network” using framework CakePHP. Website provides environment for student who
want to find companies to intern and for manager of companies to find student who is
suitable for job. Website acts as a social network and a contest tool. Students after
signing up and update profile could take part in examination to test their knowledge.
Managers after sign up and update profile could post notice about recruitment and
report about results of last recruitment as well as contributing question to system.
Website is designed for a moderate volume of users. I have integrated FCK Editor in
1
website for easy to create a post and add question on manager session and admin
session.
The rest of this thesis is organized as follows:
Chapter 2, related works are presented. First of all, I present about some basic
concepts that relate to my system. The next, I mention about website freelancer.com –
a website in which users could post a project to hire or apply a project. And the last, I
refer to vietnamworks.com – a website for people to create curriculum vitae and find
jobs.
Chapter 3 shows the process of doing analysis and design of system. On analysis
phase, the first thing I present is the work of collecting system’s requirements they
consist of functional requirements and non-functional requirements. The second, I
show use-case models that are suggested for system. On design phase, I mention about
entities on system, the relationships between them and structure of database that used.
On the last of chapter, I discuss about system modules consisting of structure and
function of these modules.
Chapter 4 is devoted to mention about technology that I choose for my project. I will
discuss a little bit about CakePHP framework. I show structure of CakePHP, how
installing and using CakePHP framework. At the end of chapter, I cover about MVC
Model on web development.
Chapter 5 is spent to present about implementation of website. As well as showing
user interface of system. It will show what users really see and work with on system.
The last thing I cover about sample data that I have used.
2
Chapter 2
RELATED WORK
2.1
Basic Knowledge
Client-server
server system : Client-server
Client server system act like this client’s browser sends query
to server, for example retrieve homepage of website. After that, server accepts query
and analysis. If needed, server will use database and retrieve information from
database or update database, it depends on what kind of client’s query. After
retrieving data from database server will response to client. Among connection, client
and server use “3-way
way hands shake” to connect with each other. [1]
Figur 2-1 - Client-server illustration
Figure
Social networks:: A social network is a social structure of people in a electronic
environment. There are many dyadic ties between users of social network, it makes
social space. Do not like a regular website, social network is system that enables users
to make
ke social values between users. [2]
[
Content management system: A Content Management System (CMS) is a computer
program that allows publishing, editing and modifying content as well as mainte
maintenance
by a central interface. Such systems of content management provide procedures to
manage workflow in a collaborative environment. These procedures can be manual
steps or an automated cascade. [3]
3
2.2
Related Work
On this section, I will cover about some website systems. These websites have some
similar attributes with my system.
2.2.1 Website www.freelancer.com
The website www.freelancer
reelancer.com is the site where users could post project to hire
someone complete it. Besides, other users could apply it, and with permission of
owner of applied project, users could be hired to do this project.
Figure 2-2-1
2
- Website www.freelancer.com
Freelancer is a channel to help connect between people who want to hire someone and
others who want to find a work. People could also receive certificate from freelancer
if they pass examination that suggested by freelancer.com, there are many contest in
this system. Employee and Employer can made payment in trust way through
freelancer.com and it make payment more safely.
4
2.2.2 Website www.vietnamworks.com
Vietnamworks.com is a famous site for finding job and finding candidates for job in
Vietnam. Anyone that visit site could find job they want by type a phrase of name of
job and submit to find. But to apply for this job, guests must register and update
profile after that apply for this job.
Figure 2-2-2
2
- Website www.vietnamworks.com
Vietnamworks.com gets more queries from users because it only shows job from
companies that it has relationships. Besides, it only shows 30 day old notice from
company. It is also famous because having more than 200 new job posted per day.
One feature Vietnamworks.com provides users is suggesting some career tip. Most of
them are useful with Vietnamese and many people just visit this site to read tip only.
Vietnamworks.com is also the most successful site for finding job in Vietnam. Many
employers always pose announcement in this site whenever they want to find some
candidates for jobs.
5
2.2.3 Website Kenhsinhvien.net
The website kenhsinhvien.net is one of the most famous sites for students. In this site,
student can register as member and see posts from moderators and administrator of
website.
Figure 2-2-3:
2
Website Kenhsinhvien.net
This site classifies content to many
man categories depends on aspect
ect of knowledge. Each
category may have many articles. In site, usually the most considered topic is shown
in home page. Besides, the site also provides a forum for member to contact with each
other and discuss. This site is one of sites do “Grade Fame System”
System” well. Member will
get higher grade if they visit site more and post more. With high grade, you could get
many incentives from website like bandwidth or gift and so on.
2.2.4 OpenViki – Social Network for student
OpenViki is a social network that developed by a student from Hanoi University of
Science and Technology. It firstly helps students who are learning in this university
could contact, share and learn with others. It is a successful product that made by
student. OpenViki uses Wordpress platform.
OpenViki
iki enables student register as member, after signing up student could update
profile and share information in site’s wall. Members could contact with each other
through inbox system of site. Users could also sign in using their Facebook account. If
someone uses Facebook account whenever he updates his Facebook’s status it will
automatically posed in OpenViki’s wall.
6
Figure 2-2-4:
2
OpenViki social network
2.2.5 Zing Me – The biggest Vietnamese social network
Zing me is the biggest social network in Vietnam.
Vietnam. It is developed by VNG
Corporation. Like other famous social network, it has many application
applications that
integrated in.
Figure 2-2-5:
2
“Zing me” social network
Members of Zing me could share something in their wall. They could use many
applications from Zing, some of them must charge to use. Zing me is attractive
because of electronic content of it.
7
Chapter 3
SYSTEM ANALYSIS AND DESIGN
3.1. System Analysis
On this section, system analysis is presented. First of all is requirements, it consists of
functional requirements. The second is non-functional which is not required in
function. The last is mention about use-case models.
3.1.1. Functional Requirements Specification
To build system, I have put myself on the position of users and administrator to
proposal useful requirements. These functional requirements are suggested
System developed for student, manager of companies and admin.
System enables guests to register new account, log in to system to use system
function, logout when finish session works.
System enables manager users post to system their notice about their
recruitment reports and requirements and also manage these notice like editing
or deleting. Student can see post of managers as a list. Admin could delete any
post that created by manager users.
System enables student users to take part in contest in multiple-choice format.
Students do not need to do repeat question and students get point from a right
answer. After students complete the test, not display answer of separate
question. Just give him score
Companies’ manager users could add questions to system. Questions must be
in multiple-choice format with four options of answer. On work creating
question, manager could add separately questions or upload a given format file.
Managers could delete questions that they contributing.
Managers could filter student according to a given criteria.
Each user has a profile, it is public with everyone. User could update his own
profile after logging in.
Each manager user and student user has his wall. User could put a message on
his wall, post a message in other’s wall. User could put comments on each
post.
8
Admin could see list user on system and delete any user.
Admin could add new question to system and upload a given format file to add
questions as well as deleting questions.
3.1.2. Non-functional Requirements Specification
In this website, beside these above functional requirements, there are some nonfunctional requirements that are necessary for system. These below have been
integrated in processing of develop system:
In the work of register, people must type username longer than three characters
and password not shorter than six characters. Username that registered must be
unique. When user type account for log inning, password must be hidden
characters. After user log out of system, cookie must be deleted after user log
out.
Not using directly SQL statement in source code to prevent SQL attacks.[4]
System must be easy to upgrade.
System must manage failure request like page not found or request deny.
3.1.3. Use-case Models
Use-case models present the tasks actors do in system. In my website, there are three
main actors: student, manager and administrator.
3.1.1.1 Student Users
First job, student must sign up to use advance function of system. If a guest visit
website, he just see post from manager and information about website.
After log in, student could update his status like the way people do with other social
network like Facebook or Zing me. And comment something on his own status or
status of whom he follows. He also could delete comment and status post by him or
anything in his wall. Student could take examination. In system, only student may
take part in testing session. Student could update his profile. Student could follow
someone, after that he could see their posts on wall or anything in their walls.
9
- Xem thêm -