+ All Categories
Home > Documents > 002 CSP315 Presentations

002 CSP315 Presentations

Date post: 14-Apr-2018
Category:
Upload: mansha99
View: 214 times
Download: 0 times
Share this document with a friend

of 68

Transcript
  • 7/29/2019 002 CSP315 Presentations

    1/68

    Under Guidance of:

    Prof. M. Balakrishnan

    CSP315- Android Based Attendance System

    1

    Android Based Attendance

    SystemPresentation 1

    Pallav Agrawal

    2009CS50250

    Ankush Jindal

    2009CS50234Harsh Gupta

    CSP-315

  • 7/29/2019 002 CSP315 Presentations

    2/68

    Outline

    CSP315- Android Based Attendance System

    2

    Motivation

    Objectives

    System Requirements

    Design Details

    Interesting Decisions

    Milestones

    Status So Far

  • 7/29/2019 002 CSP315 Presentations

    3/68

    Motivation

    CSP315- Android Based Attendance System3

    Taking attendance in large classes is

    cumbersome

    repetitive

    Consumes valuable class time

    Universality of mobile phones motivates to make

    better use of this technology.

  • 7/29/2019 002 CSP315 Presentations

    4/68

    Objectives

    CSP315- Android Based Attendance System4

    Automating user identification via Android Based

    protocol.

    Develop and Implement attendance system .

    Create an android mobile application to provide a

    consistent UI to interact with the system.

  • 7/29/2019 002 CSP315 Presentations

    5/68

    System Requirements

    Hardware Software

    CSP315- Android Based Attendance System5

    AndroidBased

    Application

    Studentsphones

    AndroidPhone

    Server Eclipse IDE

    Android SDK

    Apache web server

    Drupal CMS

  • 7/29/2019 002 CSP315 Presentations

    6/68

    Design Details

    CSP315- Android Based Attendance System6

  • 7/29/2019 002 CSP315 Presentations

    7/68

    High Level Architecture Diagram

    CSP315- Android Based Attendance System7

  • 7/29/2019 002 CSP315 Presentations

    8/68

    Concept Diagram

    CSP315- Android Based Attendance System8

  • 7/29/2019 002 CSP315 Presentations

    9/68

    Mobile Application Higher Level

    Details

    CSP315- Android Based Attendance System9

  • 7/29/2019 002 CSP315 Presentations

    10/68

    Web Service Design

    CSP315- Android Based Attendance System10

  • 7/29/2019 002 CSP315 Presentations

    11/68

    High Level Architecture Of Web

    Server

    CSP315- Android Based Attendance System11

  • 7/29/2019 002 CSP315 Presentations

    12/68

    Web Site Design

    CSP315- Android Based Attendance System12

  • 7/29/2019 002 CSP315 Presentations

    13/68

    Professor/Host

    CSP315- Android Based Attendance System13

    by humancmd

    by automatedscheduling

    Initialisation

    Search in range

    Ping proxy check

    push to db

    Store

  • 7/29/2019 002 CSP315 Presentations

    14/68

    Android Based Activity

    CSP315- Android Based Attendance System14

    Detection of visibleDevices

    Receipt andStorage Of Data

    Extract macaddresses

    Comparison ofreceived addresses

    with registeredaddresses

    User intervention tooverride presence

    of student

    Proxy AttendanceChecking

    Saving attendancefor the session

    Sync with serveron internetconnection

  • 7/29/2019 002 CSP315 Presentations

    15/68

    Interesting Decisions

    CSP315- Android Based Attendance System15

  • 7/29/2019 002 CSP315 Presentations

    16/68

    Points of Discussion

    CSP315- Android Based Attendance System16

    Proxy Attendance Persistent problem that needs to be addressed

    Need a robust solution

    Present Ideas:

    Random checks by professor.

    Manual verification of headcount.

  • 7/29/2019 002 CSP315 Presentations

    17/68

    Points of Discussion

    CSP315- Android Based Attendance System17

    Creation of simple app to authenticate student

    E.g. Entering a password for verification Does not solve proxy problem

    Can cause distraction during class

  • 7/29/2019 002 CSP315 Presentations

    18/68

    Ease of Use on Mobile

    Application

    CSP315- Android Based Attendance System18

    Mobile app to have features for enabling plugins.

    Some examples of plugins are:

    Automatically take attendance as per schedule.

    Proxy attendance based (discussed earlier).

  • 7/29/2019 002 CSP315 Presentations

    19/68

    Database Features

    CSP315- Android Based Attendance System19

    Integration with Kerberos Authentication.

    Providing secure and encrypted access to the

    database.

    Automated Initialization of the database for courses.

    Permission Centric model with different privileges to

    each kind of user.

    Provision of administrative users to police entire

  • 7/29/2019 002 CSP315 Presentations

    20/68

    Milestones (completed)

    CSP315- Android Based Attendance System20

    Design [1st June]

    Procure Hardware [14th July]

    Sanity Check [19th July]

    Database @Android [26th July]

    Navigation GUI @Android [5th August]

  • 7/29/2019 002 CSP315 Presentations

    21/68

    Milestones

    CSP315- Android Based Attendance System21

    Hardware Calibration [12th August]

    Bare Bones Web Service [30th August]

    Security Enhancements [22nd Sep]

    Proxy Plugins Development [12th Oct]

    Scheduling Plugins Development [20thOct]

  • 7/29/2019 002 CSP315 Presentations

    22/68

    Milestones

    CSP315- Android Based Attendance System22

    Polish GUI [27th Oct]

    Creation of ProjectPoster

    Final Demo

  • 7/29/2019 002 CSP315 Presentations

    23/68

    Present Status

    CSP315- Android Based Attendance System23

    DesignSanity

    Check

    Database@Android

    Website

  • 7/29/2019 002 CSP315 Presentations

    24/68

    Present Status

    CSP315- Android Based Attendance System24

    Navigation

    GUI

    Bare bonesWeb Service

  • 7/29/2019 002 CSP315 Presentations

    25/68

    Immediate Steps

    CSP315- Android Based Attendance System25

    Calibration

    Sync withwebserver

  • 7/29/2019 002 CSP315 Presentations

    26/68

    Tasks and Scheduling

    CSP315- Android Based Attendance System26

  • 7/29/2019 002 CSP315 Presentations

    27/68

    Task Distribution

    CSP315- Android Based Attendance System27

    Harsh

    Design ofdatabase onmobile app.

    Sending andreceiving data@

    android end

    Ankush

    Design of theAndroid Based

    Activity

    Communicationof the web

    server and app

  • 7/29/2019 002 CSP315 Presentations

    28/68

    Task Distribution

    CSP315- Android Based Attendance System28

    Pallav

    Design of theMobile User

    Interface

    Security inconnections

    Deeksha

    Design of theweb serverdatabase

    Implementationof the website

  • 7/29/2019 002 CSP315 Presentations

    29/68

    Hiccups

    CSP315- Android Based Attendance System29

    Delay in procuring android phone. Procured two weeks before semester started.

    Rescheduled plan accordingly.

    Unable to access database from entire campus

    network

    Solved by setting up database on

    poorvi.cse.iitd.ac.in

  • 7/29/2019 002 CSP315 Presentations

    30/68

    Hiccups

    CSP315- Android Based Attendance System30

    Windows Phone 7Android Based API not exposed in Mango ( ver.

    7.5)

    Android Based API expected to be out in Next

    Update -2012.

  • 7/29/2019 002 CSP315 Presentations

    31/68

    Project Weblink

    http://sites.google.com/site/csp315attend/

    CSP315- Android Based Attendance System31

  • 7/29/2019 002 CSP315 Presentations

    32/68

    CSP315- Android Based Attendance System32

    Thank You

  • 7/29/2019 002 CSP315 Presentations

    33/68

    Under Guidance of:

    Prof. M. Balakrishnan

    CSP315- Android Based Attendance System33

    Android Based Attendance

    SystemPresentation 2

    Pallav Agrawal

    2009CS50250

    Ankush Jindal

    2009CS50234Harsh Gupta

    CSP-315

  • 7/29/2019 002 CSP315 Presentations

    34/68

    Design Details

    CSP315- Android Based Attendance System34

  • 7/29/2019 002 CSP315 Presentations

    35/68

    Recap

    CSP315- Android Based Attendance System35

  • 7/29/2019 002 CSP315 Presentations

    36/68

    Android App Re-imagined

    CSP315- Android Based Attendance System36

    InitialDesign

    Course 1

    Details OfAttendees

    AttendanceLog

    Course 2

  • 7/29/2019 002 CSP315 Presentations

    37/68

    Android App Re-imagined

    CSP315- Android Based Attendance System37

    New

    Design

    ContactList Courses Meetings

  • 7/29/2019 002 CSP315 Presentations

    38/68

    Android App Re-imagined

    CSP315- Android Based Attendance System38

    Contact List

    Professors ofsame dept

    Other Profs Students ofsame dept

    Otherstudents

    All CourseAttendees

  • 7/29/2019 002 CSP315 Presentations

    39/68

    Android App Re-imagined

    CSP315- Android Based Attendance System39

    Courses

    Course1

    Ids ofattendees

    AttendanceLog

    Scheduleetc

    ..

  • 7/29/2019 002 CSP315 Presentations

    40/68

    Android App Re-imagined

    CSP315- Android Based Attendance System40

    Meetings

    Group 1

    Meeting1

    Ids ofattendees

    Invitationresponse

    status

    Log ofPresentPeople

    .

  • 7/29/2019 002 CSP315 Presentations

    41/68

    Permission Model - Choices

    Person Centric Course Centric

    CSP315- Android Based Attendance System41

    Create list of people

    who can edit the

    attendance logs ofone person. [tas ,

    profs, course

    coordinator]

    Very Rigorous.

    Pretty Cumbersome.

    Create list of

    privileged people for

    each course. Each of these people

    can edit attendance of

    any attendee.

    Less rigorous.

    More Flexible and

    very practical

  • 7/29/2019 002 CSP315 Presentations

    42/68

    Project Status

    CSP315- Android Based Attendance System42

  • 7/29/2019 002 CSP315 Presentations

    43/68

    LDAP & Kerberos Integration

    CSP315- Android Based Attendance System43

    Automated initialization from LDAP List of courses

    List of attendees

    Course Coordinators

    Identification of user groups

    Integrated with the Kerberos authentication

  • 7/29/2019 002 CSP315 Presentations

    44/68

    LDAP Integration - Leaks

    CSP315- Android Based Attendance System44

    Only course coordinator in LDAP Other profs have to manually registered for each

    course with super privileges.

    TAs are not available in LDAP.

    Any super of the course can manually add TAs

  • 7/29/2019 002 CSP315 Presentations

    45/68

    Initialization Of Database On App

    CSP315- Android Based Attendance System45

    Relevant Data is sent over to the app oninitialization.

    Codes:

    CA: Course Add

    CD: Course Delete

    SA : Student Add

    SM : Student Modify

    SD : Student Delete

    SP: Student Proxy

  • 7/29/2019 002 CSP315 Presentations

    46/68

    Networking : Server App

    CSP315- Android Based Attendance System46

    Transaction Of Attendance Logs Transaction Of Updated Mac Addresses

    Transaction Of Proxy Attendance

    JSON encoding is used for transaction of strings.

  • 7/29/2019 002 CSP315 Presentations

    47/68

    Network Security

    CSP315- Android Based Attendance System47

    Web server uses https(128 bit encryption) for allcommunications

    Web site

    Android app

    Installation of website certificate is integrated withthe app installation (automatic).

  • 7/29/2019 002 CSP315 Presentations

    48/68

  • 7/29/2019 002 CSP315 Presentations

    49/68

    How to get MAC addresses?

    CSP315- Android Based Attendance System49

    Proposed Solutions: Direct Input from user

    User looks up Android Based MAC address and enters into

    profile via webpage

    Different Procedures as per manufacturer of the phone Windows Program

    Design of windows program

    Display a list of Android Based Connections in range and

    corresponding MAC addresses.

  • 7/29/2019 002 CSP315 Presentations

    50/68

    Experimentation

    CSP315- Android Based Attendance System50

    Run experiment in Labs Short circuits:

    User registration

    Course Attendees Lookup

    Data to be recorded:

    Number of people present.

    Number of people found to be present.

    Maximum distance to which a person was

    registered present.

    Number of people in proximity but not marked

    present.

  • 7/29/2019 002 CSP315 Presentations

    51/68

    Open Questions

    CSP315- Android Based Attendance System51

    How to find maximum number of connections thatcan be identified by a mobile phone?

  • 7/29/2019 002 CSP315 Presentations

    52/68

    PRESENTATION 3

    Android Based Based Attendance

    Project

  • 7/29/2019 002 CSP315 Presentations

    53/68

    RECAP

  • 7/29/2019 002 CSP315 Presentations

    54/68

    OBJECTIVES

    Identify people by mac

    addresses

    Automate attendanceprocess for large classes

  • 7/29/2019 002 CSP315 Presentations

    55/68

    System Design

  • 7/29/2019 002 CSP315 Presentations

    56/68

    Deliverables

    Android app

    Web server

    Desktop app toregister users

  • 7/29/2019 002 CSP315 Presentations

    57/68

    Project status

  • 7/29/2019 002 CSP315 Presentations

    58/68

    Progress before Presentation2

    CSP315- Android Based Attendance System58

    Website

    Web service

    Automatic initialization(ldap)

    Web interface

    App

    Android Based ping

    Encrypted Communication

    Kerberos integration

  • 7/29/2019 002 CSP315 Presentations

    59/68

    Progress after presentation 2

    CSP315- Android Based Attendance System59

    Meetings support added

    Android App

    Diagnostic activity coded.. Results later.

    Experimentation

    SMTP email sending deployed.

    Website

  • 7/29/2019 002 CSP315 Presentations

    60/68

    Meeting

    CSP315- Android Based Attendance System60

    Adhoc meetings: Create meeting on the spot

    On the spot querying of web server may be

    required.

    Preplanned meetings:

    Send invitations via web interface.

    Relevant entries can be synced in advance.

  • 7/29/2019 002 CSP315 Presentations

    61/68

    Desktop Application

    CSP315- Android Based Attendance System61

    Need : Register students mac-address. Requirements:

    Portable and easy to run.

    Independent of Android Based stack.

    Does not allow mac address sharing

    Kerberos Authentication

    Implementation:

    Uses Android Based stack provided by python-

    bluez

  • 7/29/2019 002 CSP315 Presentations

    62/68

    Experiment

    CSP315- Android Based Attendance System62

    Maximum range till which a person may beidentified?

    Maximum number of people that can be

    identified?

    Are we missing out any people in the vicinity?

    How much battery is consumed?

    How much time is needed to find n people?

    How much time should the application run?

  • 7/29/2019 002 CSP315 Presentations

    63/68

    Maximum Range

    CSP315- Android Based Attendance System63

    Without any obstructions:54 m With one wall in the middle: 12m outside wall

  • 7/29/2019 002 CSP315 Presentations

    64/68

    Battery Consumed

    CSP315- Android Based Attendance System64

    39

    39.5

    40

    40.5

    41

    41.5

    42

    42.5

    10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 200

    Number of people found

    Battery Level

    Battery Level

  • 7/29/2019 002 CSP315 Presentations

    65/68

    Time taken to detect People

    CSP315- Android Based Attendance System65

    0

    50

    100

    150

    200

    250

    300

    350

    400

    450

    500

    10 20 30 40 50 60 70 80 90 100 110 120 130 140 150 160 170 180 190 200

    Tiemi

    nseconds

    Number of people

  • 7/29/2019 002 CSP315 Presentations

    66/68

    Running time of app?

    CSP315- Android Based Attendance System66

    Keep a count of number of people found inprevious 40 seconds.

    Stop when count==0

  • 7/29/2019 002 CSP315 Presentations

    67/68

    Next steps

    CSP315- Android Based Attendance System67

    Store photographs of students in the androiddatabase.

    Add proxy catching heuristics to code

    Randomly display names of present people

    Add scheduling functionality to the app so that itcan run on itself as per a timetable.

    Stress testing , checking for any open loops.

  • 7/29/2019 002 CSP315 Presentations

    68/68

    Thank you


Recommended