A Portable & Intelligence Interview System Supervisor: Dr. Cheng Reynold Cheng Man Fung Kevin...
Preview:
Citation preview
- Slide 1
- A Portable & Intelligence Interview System Supervisor: Dr.
Cheng Reynold Cheng Man Fung Kevin 3035042423 Fung Chin Pan
3035044641 Lau Hiu Tsun 3035042423 Tso Hei Lok 3035043738
- Slide 2
- Agenda Background & Related Work Objectives How to Achieve
Development Platform About Our Application Other Technologies
Utilized Demo Conclusion
- Slide 3
- Background & Related Work
- Slide 4
- Background Difficulties: Manually Paper Work Process
Time-consuming & costly Onsite Interview Site Problem Bad
Network Connection Problem Decision Making How to select a right
candidate Develop an All-in-one Application
- Slide 5
- Related Work Existing System Management of the applicants
information Improvement on user interface & presentation of
data Face-to-face Interview No functionality on Video Conferencing
& Recording
- Slide 6
- Related Work Existing Product Some may include Video
conferencing function Analysis on the effectiveness and consistency
across interviewers Excellent interfaces on managing applicants
information Combined them all together, we get a Portable and
Intelligent Interview System !!
- Slide 7
- Objective
- Slide 8
- Diversity Functionalities to manage information Portability
Handling of bad network connection problem Intelligence Analysis on
interviewee
- Slide 9
- How to Achieve
- Slide 10
- Diversity All-in-one System Text processing, video
conferencing, recording & etc. A Server allowing access from
around the world Keeping information inside confidential
- Slide 11
- How to Achieve Portability Online System Offline System To
handle bad network environment Simple to use
- Slide 12
- How to Achieve Intelligence Statistical Analysis Presentation
of pass data in Charts Comparison among different years of data
Data-mining Text Mining Nave Bayes Classifier
- Slide 13
- Development Platform
- Slide 14
- LAMP Ubuntu, Apache Server, MySQL, PHP5 Developed for a long
time Free & Open-source software
- Slide 15
- Development Platform MVC Model Model View Controller
CodeIgniter Build-in libraries Developed for years
- Slide 16
- IntelliJ IDEA over Eclipse IDE Smarter auto-completion Class
name / method signatures / variables
- Slide 17
- IntelliJ IDEA over Eclipse IDE Optimized Default Controls for
Keyboard Refactoring, error fixing, generation of code Key Binding:
Alt-Insert Key Binding: None (Manual Configuration needed)
- Slide 18
- About Our Application
- Slide 19
- Business Flow Preparation phase System admin (root) create new
round Add staff (helpers / reviewers) to new round Accept student
applicants
- Slide 20
- Business Flow Pre-interview phase Helpers provide summary to
student applicants (helpers comment) Reviewers have a chat by
conferencing with the student applicants of interest Staff add new
students manually if necessary
- Slide 21
- Business Flow On-site interview phase Student Applicants
information prepared Conduct interview and record with video
functionality / camcorder Manage comments and interview videos
(Optional, for offline module only) Upload comments and interview
videos
- Slide 22
- Business Flow Post on-site interview Sundry Item Review
students full record Automated analysis (on-site comment analysis,
map analysis, chart analysis) Email Functionality
- Slide 23
- Special Feature Video Conferencing Impossible to arrange
interviews for all the applicants Video Recording Difficult for
some of the reviewers to participate the onsite interview
- Slide 24
- Special Feature Secure Socket Layer (SSL) application layer
confidentiality symmetric key encryption protection against network
packet capturing software
- Slide 25
- Special Feature Analysis Map analysis Distribution of the
location of university of current year applicants Comment Analysis
Suggestion of whether the student applicants should be accepted or
not Chart analysis Statistical information of current round for
better planning and coordination in future
- Slide 26
- No-Network Capability Endure the unstable, low bandwidth or
even no network situation Develop offline module Manage onsite
comments and interview videos Upload the managed comment with one
click when network is stable
- Slide 27
- Minor items Student list filtering Email Student view
application View application
- Slide 28
- (fyp14003s1.cs.hku.hk) Online Module @ HKUCS System
Architecture Database HTTPS Offline Module Interne t Sync Student
Applicant Info. / Upload Onsite Comment and Video Geolocation with
Unstable/NO Internet Access Web Server + WebRTC Node JS server
Bring into Bring back Manage student applicants onsite interview
comment and video View student applicants information Interview
round management User account management Comments and video
management Analysis Email functionality
- Slide 29
- Database Design
- Slide 30
- Model View Controller (MVC) pattern Passive view model
Controller: communicating component View component: presentation of
data Model: logical evaluation Views further organized Advantage:
separation of code
- Slide 31
- Decorator Pattern Helps filtering of student applicants list
Reduces number of subclasses by decorator chaining Improves code
quality
- Slide 32
- Other Technologies Utilized
- Slide 33
- What is WebRTC? Free open source Real-Time Communications
(RTC)
- Slide 34
- Why WebRTC? No plug-in open source free Standardized
efficient
- Slide 35
- WebRTC work on? Chrome Opera Firefox
- Slide 36
- WebRTC applications do Get streaming Audio Video Other
data
- Slide 37
- WebRTC applications do Get network information IP address Ports
Coordinate signaling communication Exchange information about media
Communicate streaming
- Slide 38
- WebRTC implements APIs MediaStream Audio Video
RTCPeerConnection establish communication channel RTCDataChannel
prepare for signaling
- Slide 39
- MediaStream synchronized streams of media
- Slide 40
- Signaling not specified by WebRTC standardize Choose by WebRTC
app developer Session Initiation Protocol (SIP) Extensible
Messaging and Presence Protocol (XMPP) XMLHttpRequest (XHR) (We use
Socket.io running on a Node server)
- Slide 41
- Signaling Exchange three types of information Session control
messages Network configuration Media capabilities
- Slide 42
- RTCPeerConnection Make the communication of streaming data
between peers. Stable efficient
- Slide 43
- Something about the system Socket.io running on a Node server
currently support 1 to 1 conferencing
- Slide 44
- RecordRTC JavaScript-based media-recording library A recording
solution
- Slide 45
- Security Problems Man in middle Data access right issue Malware
or viruses might be installed
- Slide 46
- WebRTCs Security secure protocols Datagram Transport Layer
Security (DTLS) The Secure Real-time Transport Protocol (SRTP)
Encryption is mandatory Not a plug-in Media access must be granted
explicitly
- Slide 47
- Reviewers comment analysis Nave Bayes Classification Efficient
Tutorials from the internet Data preparation Classified comments
into positive and negative Extract words Calculating Conditional
Probabilities Find the largest value to determine the class
- Slide 48
- Reviewers comment analysis Testing 75% training data, 25%
testing data 24 testing comments (21 positive, 3 negative) Accruacy
90% 19 positive, 5 negative 21 positive comments, 19 of them are
classified as positive 3 negative comments, all of them are
classified as negative
- Slide 49
- Google map geolocation Send a request to google server Short
form or full name also accepted HKU and The University of Hong Kong
Receive response Put a marker on the map
- Slide 50
- Google Chart API Show Statistical data Loading some Google
Chart Library Input data Select options Create chart object Showed
on javascript
- Slide 51
- Technologies Utilized Apache HTTPClient Construction of HTTP
GET and POST messages GSON JSON parsed into and from java object
Guava Creation of structured constant maps by collection
builder.
- Slide 52
- Demo
- Slide 53
- Conclusion
- Slide 54
- Progress- completed Online System E-mail system Video
conferencing Onsite and pre-interview video uploading Search form
of students Managing accounts Managing rounds Analysis on reviewers
comment Reading and modifying comments WebRTC recording in
Firefox
- Slide 55
- Progress- completed Offline system Synchronization with online
system Video saving Viewing student information Modifying reviewers
comments
- Slide 56
- Progress- under development Google map analysis Cross-year
analysis UI design Statistical analysis
- Slide 57
- Progress- to be implemented Beta version for professor testing
Smoke test has done Need further testing for its robustness We are
glad to receive feedbacks for improvement Study WEKA for data
mining Video recording in Google Chrome walk-in student support
Pre-interview conferencing
- Slide 58
- Future Development WEKA a collection of machine learning
algorithms applied directly to a dataset Java code data
pre-processing, classification, regression, clustering, association
rules, and visualization Cross year analysis Provide more
statistical information
- Slide 59
- Future Development Walkin student support Student who did not
register Offline system support Pre-interview conferencing No way
to invite a student to start a conferencing Solution A dialog box
to accept the conferencing
- Slide 60
- Possible Difficulties Reviewers comment analysis Accuracy