Beruflich Dokumente
Kultur Dokumente
B.Tech.
by
2016
i
CANDIDATES DECLARATION
We hereby certify that the work, which is being presented in the report, entitled Multi-
client, Single Server Teaching Aid with Integrated Attendance Management Sys-
tem based on Android, in partial fulfillment of the requirement for the award of the
Degree of Bachelor of Technology and submitted to the institution is an authentic
record of our own work carried out during the period May 2016 to September 2016 un-
der the supervision of Prof. Aditya Trivedi and Dr. Wilfred Godfrey. We also cited
the reference about the text(s)/figure(s)/table(s) from where they have been taken.
This is to certify that the above statement made by the candidates is correct to the best
of my knowledge.
ABSTRACT
Representing more than half of the presently used hand-held gadgets, Android, as an
Operating System, has provided clients with a great chance to implement, innovate
and initiate a great number of things, right from the comforts and convenience of their
cell-phones. Beginning as a phone OS, the variety of gadgets compatible with Android
is guiding the business sector towards greater PC involvement in mobile computing,
with grapevines suggesting that Intel and some of its partners are working on some lap-
top prototypes running on Atom Processors. Thus the requirement for versatility and
mobility has ascended quickly. Individuals have begun creating applications for every
other need. The first part of the project involves Android Application Development of a
teaching aid implementation based on Multiple Screen Casting technology that serves
to ease the task of teachers/professors as well as the students by opening up a more
dynamic and efficient communications bridge between the two. The slides presented
by professors are wirelessly routed to android devices of students, with an option to
register doubts as well. Moreover, the application also features a floating canvas over
the slides that empower professors to write/draw upon slides, and the same would also
be transmitted to the students device. This will usher in more productive teaching ses-
sions, as well as reducing the effort by a great extent. The second part of the project
involves introducing a whole new Attendance System for use in ABV-IIITM Gwalior,
using Android enabled devices boasting of many features such as batch and subject
segregation. This would serve as an effective management tool resulting in the reduc-
tion of the no. of man hours spent in managing the attendance for each of the subjects
for the semester. The professors wont have to do double the work, i.e. take pen paper
attendance and then upload onto the machines. A simple, easy to use interface makes
attendance marking a much more lucid experience, and is surely one trouble lessened
for our esteemed faculty members.
ACKNOWLEDGEMENTS
We would like to express our utmost gratitude to Prof. Aditya Trivedi and Dr. Wilfred
Godfrey for having faith in us and allowing us to carry out a project on a technology
that was quite challenging. They helped massively by directing us over the course of
the undertaking, motivating us to take up new difficulties along the road, and simultane-
ously, providing us with most valuable suggestions and constructive criticisms. Despite
having a hectic schedule and very little time at their disposal, they always had time to
listen to us and solve our problems, even suggesting valuable modifications to the appli-
cation system. This application, in its totality, owes its very existence to them, and we
can never thank them enough for making this journey of making an android application
from scratch worthwhile and immensely fruitful. Thank you sirs.
We also extend our heartfelt thanks to all well wishers and peers who in some way
or the other were part of the application making process, however small or big it may be.
Lastly, we owe a big thank you to our institute for providing us with the opportunity of
making an application that would help make a difference in our immediate surrounding,
and benefit a large number of people.
(Ashish Krishna) (Ansul Sharma) (Ankit Bansal)
Contents
ABSTRACT ii
LIST OF TABLES v
LIST OF FIGURES vi
1 INTRODUCTION 2
1.1 Need for a new Application . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1 Pre-existing Applications . . . . . . . . . . . . . . . . . . . . . 2
1.1.2 Drawbacks of pre-existing apps . . . . . . . . . . . . . . . . . 3
1.1.3 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.4 Strengths of the new Application . . . . . . . . . . . . . . . . . 4
1.2 Multi-Screen Casting . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.1 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.2 General Constraints . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 IIITM Gwalior Attendance Marking System in Android . . . . . . . . . 6
1.3.1 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.2 Application Overview . . . . . . . . . . . . . . . . . . . . . . 7
1.3.2.1 General Constraints . . . . . . . . . . . . . . . . . . 7
1.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5 Report Organization . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
iv
CONTENTS v
4 RESULTS 29
4.1 Technical Implementation-Technologies Used . . . . . . . . . . . . . . 29
4.1.1 Android Studio IDE and ADT . . . . . . . . . . . . . . . . . . 29
4.1.2 Apache Server . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.1.3 PHP Scripting . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.1.4 MySQL Database . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.1.5 Screencast . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.1.6 Socket Programming . . . . . . . . . . . . . . . . . . . . . . . 31
4.1.7 Other tools used . . . . . . . . . . . . . . . . . . . . . . . . . 32
4.2 UI Screenshots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2.1 Master Side . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2.2 Receiver Side . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
4.3 DB Screenshots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
REFERENCES 48
List of Tables
vi
List of Figures
4.1 a. Splash Screen || b. Set Port Screen || c. Set Port Dialog || d. M Cast
Menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2 a. Browsing and selecting PDF file || b. Demonstration of Canvas-
Fetching pre saved canvases || c. Attendance Menu || d. Registration of
New Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.3 a. Selecting Class and Mode of Attendance || b. Submit Attendance ||
c. Submit Attendance || d. Take Attendance(Mark As Present) . . . . . 35
4.4 a. Attendance List || b. Download as CSV file || c. Options for sharing
CSV file || d. View Attendance by Date Dialog . . . . . . . . . . . . . 36
4.5 a. Attendance of the date fetched || b. Dialog to download from web ||
c. Webview opened for download || d. Reseting Progress Dialog . . . . 37
4.6 a. View of doubt || b. Demonstration of interchange module || c. Master
Privileges granted to client . . . . . . . . . . . . . . . . . . . . . . . . 38
4.7 a. Login/Registration Page || b. Register Form || c. Login Form || d. C
Cast Home Screen . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
vii
LIST OF FIGURES 1
ABBREVIATIONS
INTRODUCTION
This chapter includes the details of Screen Casting, Multi Screen Casting, Attendance
Marking System (AMS), other related existing applications and the need thus, for mak-
ing this application. This would further elucidate in the best manner possible, the major
identified objectives of the project.
(ii) Explain Everything: This is a popular educational aid application that is helpful
in teaching sessions. It functions as a collaborative and interactive whiteboard
with advanced canvas options that can be used to record interactive sessions and
later uploaded at one s convenience.
(iii) All Cast: This is a screen casting application that supports multimedia streaming
to devices. Files like video and images can be streamed live to a device from a
source device. Only one client is supported at a time. Transactions happen over
Wi-Fi network.
2
CHAPTER 1. INTRODUCTION 3
(iv) Educreations: This application records screen animations and also functions like
a whiteboard which is used to capture screen drawings. The main drawback of
the application is that it is supported only on iPads.
(v) VideoScribe HD: This application is one of the pioneer applications in the do-
main of whiteboard animation, or fast drawing, as it is called. It has proven very
useful in teaching/classroom related activities.
1.1.3 Objectives
The following are the broad objectives of the application based on the above discussion:
(i) To make a classroom friendly application that revolutionalizes the way things are
taught.
(iii) Finding a way out for the students to reach out to professors with their doubts in
the most subtle and efficient manner.
(i) Ability to cast to multiple clients: All the pre-existing applications have casting
capability limited to just one screen. The new application is based on a revo-
lutionary new concept, that of simultaneously casting to multiple screen over a
Wi-Fi Network. Video/Screen Content can be simul-casted to client devices very
efficiently and fast.
(ii) Integrated Doubt Module: The app also features of an integrated doubt mod-
ule, which works in two ways: It guarantees total anonymity to students asking
questions thus doing away with the problem of groupthink and shyness, and also
facilitates the professors in efficient redressal of doubts. This module is unheard
of in any other application.
(iii) Interchange Module: This empowers the client devices to switch places with
the master device by gaining master privileges temporarily. The privileges are
granted by the master device and are subject to master s consent. The master, if
it wishes, might withdraw privileges at any given point of time. This helps any
student to broadcast his/her screen to the class in an even of mass-doubt, and get
the same resolved by the master.
(v) Security and Privacy: Most of the communications that is involved in this ap-
plication is encrypted with MD-5 encryption thus guaranteeing greater security.
Also the registration and login modules guarantee security to the users.
(vi) Network Connectivity: The application has been optimised for superior perfor-
mance on a Wi-Fi network. The same will be discussed later.
CHAPTER 1. INTRODUCTION 5
(vii) Canvas Overlay: The application features a canvas on top of a presentation being
casted live to devices, that acts as a floating whiteboard, a concept unheard of
before. This will be taken in greater detail in succeeding sections.
For further simplification, the application has been bifurcated in to 2 broad divisions,
which are listed in the succeeding sections.
(i) Screen sharing (Multicasting Node screen to clients) for classroom slideshows.
(ii) Doubt removal (Queuing up doubts for resolution with absolute privacy)
(iv) Ability to draw upon the canvas/slides and the same being relayed to client devices
in real time.
This application deploys use of socket programming along with a host of APIs. In
particular, we have used ScreenCast Libraries, tweaking it a little bit for faster per-
formance, and enabling multi-client support as the library only supports single client
streaming. Also, use of Gesture libraries has been made for the sake of Canvas editing.
We have utilized an Apache Server with PHP and MySQL support for remote database
use. The information exchange to or from the database happens with the assistance of
PHP scripts and as JSON objects. The android end of the user application handles these
JSON objects through HTTP clients.
(a) Any Android Enabled Handheld (running on Android v5.0 and above)
CHAPTER 1. INTRODUCTION 6
Software
(e) Client End : Network Enabled system with Android Studio and ADT Plug-in (for
emulator use and debugger)
(ii) Then, forward the attendance records to the concerned authority (Administra-
tive/Academic Section).
(iii) Digital attendance is limited till now to M.Tech/Ph.d scholars for issues related to
stipends, and is yet to be implemented in day to day classes.
(iv) The digital attendance till date is in the form of biometric imprint, and is used on
a very limited scale.
(ii) The lodged attendance with the help of mobile device would be immediately for-
warded to the database via network connectivity
(iii) Attendance/Absence marked through simple user interface employing colour schemas
making the experience hassle free
CHAPTER 1. INTRODUCTION 7
(i) Hardware
(a) Any Android Enabled Handheld (running on Android v5.0 and above)
(ii) Software
1.4 Summary
This chapter managed questions like why the application was made and what does it
stand for. Outline or general working standards have been given. The issue proclama-
tion for each has been itemized and dissected well. The nature of these prototypes has
been clarified. A presentation into why Android was chosen as target OS has addition-
ally been given.
CHAPTER 1. INTRODUCTION 8
This section will broadly deal with the first part of the application developed, which is
screen casting to many clients at a given point of time. The chapter will also discuss
the various modules involved in greater details.
2.2 Modules
This section describes the modules used in the Multi-Screen Casting feature of the
application in greater detail.
9
CHAPTER 2. MULTI-SCREEN CASTING AND IMPLEMENTATION 10
This module takes care of the authentication part involved in the Multi-Screen Casting
process. As elucidated in the figure 2.1, the authentication process is carried out in the
following manner:
(b) User is also provided with a Port number by the master device which serves as a
OTP for the particular class the user wishes to be a part of. The same gets registered
in the database.
(c) Prior to this, the Master device resets all IPs which might get retained in the
database from the previous sessions.
(d) The user now logs into the session by the credentials used while registering.
CHAPTER 2. MULTI-SCREEN CASTING AND IMPLEMENTATION 11
This module deals with the doubts that might arise from the clients side. As shown in
figure, it is done in the following way:
(b) The doubt gets registered on the master device, and is maintained in the form of a
queue.
(c) The client may view his/her doubts at any point of time by pressing the View
Doubts button.
(d) The client may choose to delete his/her doubts at any point of time by long pressing
the registered doubt in the View Doubt menu.
The things on the Master Device side are a little different. The same have been enu-
merated as below:
(a) The master device can view doubts registered by all client devices via View Doubt
Button.
(b) The Master device may choose to remove an active registered doubt by long press-
ing the doubt in the view doubts menu.
The doubts can be lodged with the master device using this module in a safe and
secure way. The doubts are registered to the master device through MD-5 encryption,
CHAPTER 2. MULTI-SCREEN CASTING AND IMPLEMENTATION 12
hence leading to a faster, more secure 2-way communication. The Master device also
yields the power to discard the doubts from active list upon its successful redressal.
Also, the application gives the power to client devices to assume temporarily role of a
master device for casting of client screen to other client and master screens (Interchange
module) which will be dealt in detail in the next section.
Figure 2.2 depicting the above features have been shown for convenience.
This Module deals with the interchange procedure involved in the screen casting pro-
cessing. In this process, the master privileges to cast to all client devices are temporarily
bestowed upon a chosen client device, which then moves forward to cast upon success-
fully receiving a notification. The details have been enumerated as below:
(a) The client which is to assume Master Privileges sends its IP to the server which
relays it to the Master Device.
(b) The Master device then saves the IP address of the client.
(c) The Master then sends its IP address to the server, which relays the same to the
client device which is to assume master privileges.
(d) The client then saves this IP address. Status is set to 1, which triggers a notification.
(e) Upon receiving the notification, the casting process initiates in 10-15 seconds.
CHAPTER 2. MULTI-SCREEN CASTING AND IMPLEMENTATION 13
(a) The files in use are not required to be stored on the device. They might be fetched
from the server conveniently.
(b) During interchange process, the client which has assumed master privileges might
not have the presentation stored locally. It may fetch the same from the FTP server.
CHAPTER 2. MULTI-SCREEN CASTING AND IMPLEMENTATION 14
aster 1.png
As shown in figure 2.4, the primary interface design for the master device features
3 subdivisions. The first one deals with the authentication process, the second one
with the functions related to screencast, and the third one deals with the IP addresses
and database transactions. Splash screen implementation for Master Interface has been
inspired from AndroidHive.info (2016).
CHAPTER 2. MULTI-SCREEN CASTING AND IMPLEMENTATION 15
g Receiver 1.png
Figure 2.5 shows the client interface design, which again has 2 broad subdivisions.
One pertaining to the registration process and the other with the logging in process.
Both have been demonstrated clearly in the figure.
CHAPTER 2. MULTI-SCREEN CASTING AND IMPLEMENTATION 16
The above diagram, Figure 2.6, is a Use Case Diagram of the Multi-Screen Cast-
ing. Standard notations and symbols have been used, depicting the intricate relation-
ship between various classes such as MainActivity, EncodingAsyncTask, VideoChunk,
SenderAsyncTask etc. as shown.
CHAPTER 2. MULTI-SCREEN CASTING AND IMPLEMENTATION 17
png
Figure 2.7 describes relationships between classes and entities used in the making
of the app, as is clear from the same. Requisite labeling has been done for simplification
of explanation.
(b) Contents of the canvas are then further sent to all client devices.
(c) The canvas also has advanced editing features such as Pen color, Change from pen
to eraser, option to select between already saved canvas etc.
b. VideoChunk.java
c. PdfFileRenderer.java
(a) Renders the PDF files into images suitable for streaming through screen casting.
d. FileBrowser.java
e. EncoderAsyncTask.java
(a) The video chunks are divided and then further converted to format fit for transmis-
sion through socket programming.
(b) Utilises an active connection such as Wi-Fi for communication through socket pro-
gramming.
f. JSONParser.java
(a) JSON stands for JavaScript Object Notation is the most popular way to serialize
and transmitting data over network. In android, application uses JSON to transmit
data over networks and JSON data is parsed, while it is received from cloud servers
and from some where else.
(b) JSON provides data in form of object that is to be parsed while reading from source
and a JSON object is created, whenever data is to be transmitted over network or
any source to destination.
(c) If function is -POST-, then a HTTP Client sends instructions that is contained in
params to the remote server. which is designated by url. The received response doe
contains no appreciable data apart from success or failure execution information
when this connection method is used.
CHAPTER 2. MULTI-SCREEN CASTING AND IMPLEMENTATION 19
(d) If function is -GET-, then a HTTP Client sends information that is contained in
params to the remote server, which is designated by url. The response is received
from the server having the required data when this connection method is used.
(e) The received response is built to string-text and encoded into the JSON format
which is parsed later by other objects to retrieve information.
g. SenderAsyncTask.java
(b) This data is then sent via Socket Programming to multiple devices.
(c) The recipient devices are the ones connected to the active network, hence utilising
the sockets.
(d) This hence sends the encoded data for rendering on client devices.
h. FTPServer.java
This helps put the selected file on the FTP server for further transmission to client
devices.
i. WebDownload.java
(a) This allows master device to download a file which is not present on local storage
from internet (third party source).
j. MakeMaster.java
(a) This class involves transfer of powers of master device to a client device.
(b) A client device might assume role of a master device temporarily in order to demon-
strate an item of importance to all other client devices and the master device.
k. ResetSession.java
l. ReceiverAsyncTask.java
(a) The encoded video chunks that are sent from the master device to the client device
are received at the client end.
CHAPTER 2. MULTI-SCREEN CASTING AND IMPLEMENTATION 20
(b) This is done via socket programming, utilizing a port number (OTP).
m. CreateDoubt.java
(b) The doubts hence created are maintained in the form of a queue at the master device
end.
(c) Parameters like Nature of doubt, Name are to be entered, and a time stamp is added.
n. ViewDoubt.java
(a) This class facilitates viewing of doubts at the master device end.
(b) All active doubts are shown on the master device upon clicking the required button.
(c) Options to remove/delete a doubt from the queue upon its successful resolution is
also made available.
CHAPTER 2. MULTI-SCREEN CASTING AND IMPLEMENTATION 21
Module.pdf Module.pdf
The process at the receiver side (or the client device) via ScreenReceiverTest.apk is
also shown in Figure 2.9.
Module.pdf Module.pdf
Doubt module workflow, and is as shown via diagram in Figure 2.10. The steps for
lodging a doubt and also viewing them, as also described in the preceding sections are
once again shown via workflow diagram.
module.pdf module.pdf
2.7 Summary
This chapter dealt with the first half of this project which was casting screen content
from a master device to many client devices. Also, its many features, such as Doubt
module (which facilitates doubt registration by students in real time) and Canvas (which
facilitates drawing/writing over slides in order for the professor to emulate whiteboards-
like experience digitally) were discussed in details along with its software modules. The
screenshots for testing purposes of both the User Interface (UI) and the database have
also been shown in the section.
Chapter 3
This chapter will broadly outline the need for making the Attendance Marking System
(AMS) part of the application and other details. This part of the application is integrated
into the Master Device module of our application.
(b) Moreover, the digital aspect of the attendance system is limited to the M.Tech stu-
dents/Ph.D scholars in the form of biometric attendance system of which also a
major part is done manually.
(c) The day to day attendance affairs are still taken attended to in the form of pen and
paper attendance marking, which is a painfully slow and erroneous process.
(d) It also tends to take up a lot of useful classroom time which might be put to some
other productive use.
(e) The written system of attendance also generates a lot of paperwork, wasting paper
in the process.
24
CHAPTER 3. IIITM GWALIOR ATTENDANCE MARKING SYSTEM 25
(f) The management of the same becomes very difficult for the designated departments
(Academic/Administration).
(g) Also, accessing the information related to attendance becomes very difficult as it is
very cumbersome to go through so many pages of document.
(i) Next to zero transparency is prevalent in the current system, which is not desirable
at all.
(j) The present system is also not equipped properly to accommodate students from
different course/disciplines in special classes as far as attendance is concerned.
3.1.2 Objectives
(a) To design an application that simplifies the attendance marking process.
(b) The designed application should thereby aim at saving precious time for more im-
portant activities.
(c) The designed application would thus try to usher in greater productivity and effi-
ciency.
(d) The application should offer flexibility to the users in its options.
(e) The application should render attendance in a format hat is readable on other de-
vices/platforms.
(b) The AMS effectively cuts down the large amounts of time taken to register atten-
dance in day to day affairs.
(c) The AMS maintains multiple database for both datewise as well as class-wise at-
tendances, which can be accessed easily at the touch of a button.
(d) The AMS also features an Export as CSV option, which renders the attendance
readable on other devices/platforms as well.
(e) The application offers two modes to take attendance: MARK AS ABSENT and
MARK AS PRESENT, giving more flexibility to the end user.
CHAPTER 3. IIITM GWALIOR ATTENDANCE MARKING SYSTEM 26
3.2 Modules
This section gives details of the modules used in the Attendance Marking feature of the
application.
png
(a) Firstly, master device registers a classroom by entering its name and the number of
students in the class.
(c) The database houses two Tables: One for storing total count of attendance of a
particular class, and the other for storing datewise attendance for the class.
(d) Next, the master moves to mark the attendance of the class.
(e) Master can mark attendance in two modes: MARK AS ABSENT and MARK AS
PRESENT.
(f) Upon selecting the mode and specifying the class, the master then marks attendance
of the class by tapping on the button hence poplated from the database depending
on the total number of students in the class
(g) The marked attendance is then submitted which is reflected in the database.
CHAPTER 3. IIITM GWALIOR ATTENDANCE MARKING SYSTEM 27
(h) Also, the marked attendance can be exported in .CSV format which provides users
with cross platform readability.
The details of the database and its screen-shots have been provided towards the end
of the chapter in section 3.6.
Module.pdf Module.pdf
3.5 Summary
The chapter dealt with the second part of our project - IIITM Gwalior Attendance Mark-
ing System. This was designed keeping the needs in mind as shown in the previous
sections. The requisite classes were shown for further elucidation, and the sequence
workflow was also shown for in depth analysis of the working of this part of the an-
droid application system. Also, the figures showing the process in greater detail were
elucidated in text.
Chapter 4
RESULTS
29
CHAPTER 4. RESULTS 30
wheel and implementing their own system of storing and retrieving data, these software
simply use specialised database programs. To make it easy for other programs to access
data through them, many database software support a computer language called "SQL"
(often pronounced as "sequel"). SQL was specially designed for such a purpose. Pro-
grams that want the database software to handle the low-level work of managing data
simply use that language to send it instructions. There are many databases that sup-
port the use of SQL to access their data, among them MySQL and PostgreSQL. In
other words, MySQL is just the brand of one database software, one of many. The
same goes for PostgreSQL. These two databases are very popular among programs that
run on websites (probably because they are free), which is why one often sees one or
both of them being advertised in the feature lists of web hosts, as well as being listed
as one of the "system requirements" for certain web software (like blogs and content
management systems).
4.1.5 Screencast
From the website whatis.com (2016), A screencast is a digital video recording that
captures actions taking place on a computer desktop. Screencasts, which often con-
tain voice-over narration, are useful for demonstrating how to use specific operating
systems, software applications or website features.
Screencast production requires some kind of video-capture software and a micro-
phone. The software, which can be a desktop client or web-based service, captures
and synchronizes the video and audio files and compresses the completed movie into a
format that can be shared.
4.2 UI Screenshots
This section shows all the screenshots of the working application.
[a ] [b ]
[c ] [d ]
Figure 4.1: a. Splash Screen || b. Set Port Screen || c. Set Port Dialog || d. M Cast Menu
CHAPTER 4. RESULTS 34
[a ] [b ]
[c ] [d ]
[a ] [b ]
[c ] [d ]
[a ] [b ]
[c ] [d ]
Figure 4.4: a. Attendance List || b. Download as CSV file || c. Options for sharing CSV
file || d. View Attendance by Date Dialog
CHAPTER 4. RESULTS 37
[a ] [b ]
[c ] [d ]
Figure 4.5: a. Attendance of the date fetched || b. Dialog to download from web || c.
Webview opened for download || d. Reseting Progress Dialog
CHAPTER 4. RESULTS 38
(a) (b)
(c)
[a ] [b ]
[c ] [d ]
(a)
(b)
(c)
(d)
Figure 4.8: a. Ask Doubt Dialog || b. View/Delete Doubt Dialog || c. Notification for
master privilege || d. Menu displayed after interchange
CHAPTER 4. RESULTS 41
4.3 DB Screenshots
Full page images in the subsequent pages show the database and its features. This
further elucidates structure of database and its components as discussed in previous
sections. Figures 4.9 to 4.13 illustrate the same.
This chapter deals with the future scope of the developed application as well as draws
conclusions of the Modus Operandi of the application.
5.1 Conclusion
The other applications present in the market were found to be grossly inadequate, and
lacking behind vis a vis this new app, and hence the reason for its development. Not
only does this app provide seamless communication among many devices, it also fea-
tures many new features like doubt removal module and an integrated attendance man-
agement system never seen on an app of this kind. This has been illustrated in the table
on the next page (Table 5.1).
The app thus will go a long way in reducing the burden of our esteemed faculty
members, and would thus be our way of saying thank you for their sustained support
and guidance all these years. Not only will this reduce the burden of our professors,
this would also result in greater classroom engagement and more productive session,
with more time remaining at the disposal of the faculty members due to pruning of the
unnecessary time lost (due to processes like attendance marking).
This app truly would herald in a transparent system where students and faculty
members both seek to benefit a lot.
46
CHAPTER 5. CONCLUSION AND FUTURE SCOPE 47
MD-5 Encryption O X X
Canvas Overlay O X X
Drawable Canvas O O O
Video Quality X X O
(b) Complexity regarding the login/registration process might be tackled with in the
future.
(c) Use of newer technologies like Li-Fi may lead to great improvements in the near
future.
(g) The attendance module may be tweaked for compatibility with various courses
taken in a single class.
Bibliography
[1] Ableson, F., Collins, C. and Sen, R.: 2009, Unlocking Android, Manning Publica-
tions Co.
[6] Lee, W.-M.: 2012, Beginning android 4 application Development, John Wiley &
Sons.
[7] Meier, R.: 2012, Professional Android 4 application development, John Wiley &
Sons.
[8] Murphy, M. L.: 2009, The Busy Coders Guide to Advanced Android Develop-
ment, CommonsWare, LLC.
[11] Rogers, R., Lombardo, J., Mednieks, Z. and Meike, B.: 2009, Android application
development: Programming with the Google SDK, OReilly Media, Inc.
49
BIBLIOGRAPHY 50