cloud-based smart classroom
DESCRIPTION
smart classroomTRANSCRIPT
Cloud ClassroomRui Chen, Hao-Yu Hsieh, Jen-Chieh Huang
Outline• Motivation & Goals• Technical Details• iOS App Architecture• EC2 Server Architecture
• Demo & Conclusion & Future work
Motivation• You find yourself in a presentation, and …• You just have no slides, and you don’t know what the guy is
talking about.• You’re just late, and too far to read the screen…• And …
• In a code review/discussion meeting,• How do people exchange code pieces?
The Cloud Classroom includes• Class management
• User sign-in and sign-up• Create/delete class• Join/leave class• Instructor privileges
• Material sharing• Real-time material sharing• Support for various material types• Presentation privilege transferring
• Multi-platform support• Mobile devices – iOS• Desktop platform – OS X, Windows
System Overview
iOS App Architecture
iOS App Architecture - View Controllers
Login
Page
Settings
Classlist
InClass
view
Slide view
Text view
Class info
iOS App Architecture - Model• Multiple views/view Controllers share a single model -
Message Center. • Since our application logic is almost based on the responses from
the server and instructors, we use a single model as control center to deal with all communication between server and iOS app. In this way, we can easily implement the app in different type of iOS device.
• Model (3 layers)• Message Center: it’s the interface to view controllers• Communication Handler: it deals with message sending, receiving,
queuing, and error checking• Socket Connection: it handles socket connection
• iOS SDK only supports to Core Foundation level
iOS App Features• Energy Saving• After receiving all expected responses, the app will close
socket connection and switch to push notification mode until having another request to send.• Use timeout mechanism to avoid the case that it doesn’t
disconnect because of missing any expected response.
• High tolerance for incorrect states• Since push notification is not reliable, the app is able to be
recovered from most incorrect states that caused by missing messages from server.
Server Software Architecture
Conclusion• By all the entities, we successfully create a real-time
material sharing system.• Students and Instructor can share the materials to one
another.• All operations are performed in real-time.• Access control and privilege control are also supported.
• Toward a more efficient system• Use passive update to reduce power consumption.• Separate data server and signaling server to enhance the
system capacity.• Introduce database system (SQLite) to increate the
scalability.
Future Work• Toward a more security classroom• Secure messages• Anonymous access• Content watermarking
• Enabling a more active participation• Online discussion• Instant question
• Full multimedia experience• Read-time multimedia experience• Courseware anywhere anytime