The document presents a framework and architecture for providing programming education as a cloud computing service. It discusses the requirements and features needed for administrators, instructors, and students. It then describes the implementation of a C++ workbook application developed using Google App Engine, which divides users into the three roles and includes features like automatically grading programming assignments. Future work includes adding more services and allowing educational institutions to benefit from the low costs and ease of use of the cloud-based system.
Original Description:
gs
Original Title
Framework and Architechture Programming Education Ennvironment as Cloud Service1
The document presents a framework and architecture for providing programming education as a cloud computing service. It discusses the requirements and features needed for administrators, instructors, and students. It then describes the implementation of a C++ workbook application developed using Google App Engine, which divides users into the three roles and includes features like automatically grading programming assignments. Future work includes adding more services and allowing educational institutions to benefit from the low costs and ease of use of the cloud-based system.
The document presents a framework and architecture for providing programming education as a cloud computing service. It discusses the requirements and features needed for administrators, instructors, and students. It then describes the implementation of a C++ workbook application developed using Google App Engine, which divides users into the three roles and includes features like automatically grading programming assignments. Future work includes adding more services and allowing educational institutions to benefit from the low costs and ease of use of the cloud-based system.
Framework and Architecture for Programming Education Environment as a Cloud Computing Service Outline Introduction Requirements of Programming Education Cloud Services Framework and architecture of Programming Education Cloud Service Implementation of cloud C++ workbook Conclusions & future work References Questions
Introduction What is cloud computing ? Cloud Computing characteristics Cloud Computing services in academics organizations What is E-learning Model of E-learning cloud education Architecture of E-learning Cloud What is Cloud Computing? Definition Cloud computing is a type of computing that provides simple, on-demand access to pools of highly elastic computing resources Or even more concise and clearly Cloud computing is a style of computing where computing resources and are easy to obtain and access, simple to use, cheap, and just work Cloud Computing Characteristics On demand self service Broad network access Resources pooling Rapid elasticity Measure service Cloud Computing Services in Academics Organizations
Used as personal workspace Convenient tool to make teaching and learning interactive Provide opportunity for ubiquitous computing No need to backing up everything No need to copy all stuff from one PC to another Provide large amount of processing power Definition E-learning comprises all forms of electronically supported learning and teaching. The information and communication systems, whether networked learning or not, serve as specific media to implement the learning process
What is E-learning? Model of E-learning Cloud Education
Servers
Technologies E-learning Cloud Cloud Provider Cloud users Continue Cloud provider is responsible for Building and maintaining e-learning cloud Providing technical support to e-learning cloud
Cloud users request to cloud provider for services to e- learning cloud E-learning cloud will provide the services accessed based on users
Service
Figure : Architecture of E-learning Cloud
Software Resource
Compute Cloud Storage Cloud SaaS Resource Management PaaS IaaS Users Education Management Teaching Evaluation Education Platform Content Delivery Content Creation Application Architecture of E-learning Cloud Components are divided into five different layers Hardware Resource layer Software Resource layer Resource management layer Service layer Application layer Our work only focus on Application layer
Requirements of Programming Education Cloud Services
Cloud computing services for providing programming education includes C++ Workbook which has various user centric provision and administration functions There are requirements for Administrator Instructor Student
Administrator
Instructor
Student Figure : Roles for users of programming education cloud service Create Announcement Join Classroom View Results View Announcement Solve Problem Set View logs and result Manage Classrooms Manage Problem set Manage Question Problem Manage Logs Manage users Manage classroom Framework and Architecture of Programming Education Cloud Service
Services offered in Programming Education Environment include Logging of programming activities Program Plagiarism detection Programming workbook Automatic programming marking To demonstrate the working mechanism of the framework C++ Workbook is designed and developed as a Software as a Service (SAAS)
Figure: Architecture of Programming Education as Cloud Service Cloud computing 1 s t
g e n e r a t i o n
2 n d
g e n e r a t i o n
3 r d
g e n e r a t i o n
Architecture for programming workbook as cloud computing service E-workbook E-learning P u b l i c
P r i v a t e
C o m m u n i t y
H y b r i d
I A A S
P A A S
Programming activities logging Plagiarism detection Automatic programming marking Programming workbook Continue The architectural components of the application have been divided into three sections so that each section includes a set of functions for three specific user roles i.e. Administrator, Instructor and Student This is illustrated by Following Figure Student Instructor Administrator SAAS PAAS IAAS C++ WORKBOOK ONLINE APPLICATION DEVELOPMENT Data Storage Center Backup and Recovery Computation of Score Figure : Architecture of C++ workbook as cloud service Implementation of Cloud C++ Workbook C++ WORKBOOK uses Google App Engine for the platform and infrastructure services Application is developed in java Target users are divided into three categories representing Administrator Instructor Student
Figure : A Screenshot of the C++WORKBOOK main page Continue Administrator Features Responsible for managing accounts of students and instructor Creating classrooms Allocating new instructor to existing classrooms Updating question banks Handling management of changes in application
Figure: Administrator main page
Figure : Setting questions for the question bank
Continue Instructor Features Lecturer who teaches programming subject through the system is able to Create classroom Assign his teaching assistant to be instructor for his class Assign students to selected classroom Create a problem set of exercise/quiz/exam Select questions from the question bank for the problem set Supervise students assigned to him by giving advices in terms of solving questions Monitor students progress Figure : Instructor main service
Figure : Instructor page for creating problem set Figure : Announcement module interface Continue Student Features A student who has been registered by the system administrator has the right to Request to join any classroom available Complete exercise/quiz/exam that has been assigned for the selected classroom Find the right answers and marks from the response to the exercise/quiz/exam, since the system automatically calculates marks Figure : A student screenshot for result and marks Conclusion and Future Work Study presented discuss the challenges of e-learning and the potential of cloud computing to improve management of e-learning system We have proposed a framework for programming education as a cloud service which combines the elements from current practices of e-Workbook, e- Learning and cloud computing technologies The concept of e-learning environment through the use of a new technique such as cloud computing technology can be materialized in educational institutions in various stages
Continue. Academic institutions can benefit economically using cloud computing environment because of minimal cost for administration, and maintenance, high uptime and ease of usage Future work is adding remaining services References [1] Amir Mohamed Elamir,Norleyza jailani*,Marini Abu Baker. Framework and Architecture for Programming Education Environment as a Cloud Computing Service, The 4 th International Conference on Electrical Engineering and Informatics,2013.Page No.1299-1308
[2] Mell P., and Grance T. Effectively and Securely Using the Cloud Computing Paradigm, National Institute of Standards and Technology, Information Technology Laboratory. 2009. http://gat1.isoc.org.il/conf2010/handouts/Yesha_Sivan.pdf