A Platform for Interactive Software Experiments in Massive Open Online Courses

Massive open online courses enjoy a surge of popularity: Numerous platforms such as Coursera, Udacity, edX and many more offer a variety of high-quality courses to learners worldwide. Hasso Plattner Institute is operating its own platform openHPI where selected courses are available. These platforms are well-suited for the presentation of video and reading material and offer opportunities for interaction in web forums. Assignments, however, are usually limited to simple quizzes or basic question & answer tasks, although, a very important component of teaching are practical assignments that allow students to gather hands-on experiences. With InstantLab, we have created a self-service web platform for interactive software experiments that is used in our curriculum: Experiments are provided as VM images which are executed on our in-house private cloud and accessed over a remote-desktop connection embedded in the web browser – requiring no additional software on the users computers. In this paper, we discuss how interactive software experiments can be added to state-of-the-art MOOCs using the example of openHPI and InstantLab. We propose XCloud – a hybrid cloud architecture that takes into consideration the unique challenges of MOOC scenarios of scaling issues and resource management for anonymous users. It provides the following benefits to MOOC infrastructures: hosting in a private cloud with support for dynamic scale out to public cloud resources in peak load situations; support for live hands-on experiments with single machines and networks of machines; support to access a limited set of machines with special hardware resources (e.g. GPUs, hardware accelerators); and a trust-based access control scheme that can be used to achieve self-managing resource assignment. We report on our practical experiences with InstantLab and outline its transition to the XCloud architecture. This effort bridges the two fields of computer science and education research: Collected data and practical experience from the from our platform can be used to improve the quality of distance learning and its didactic methods.

[1]  Vijay Varadharajan,et al.  A Trust based Access Control Framework for P2P File-Sharing Systems , 2005, Proceedings of the 38th Annual Hawaii International Conference on System Sciences.

[2]  Yuval Elovici,et al.  Detection of malicious code by applying machine learning classifiers on static features: A state-of-the-art survey , 2009, Inf. Secur. Tech. Rep..

[3]  Kirsti Ala-Mutka,et al.  A study of the difficulties of novice programmers , 2005, ITiCSE '05.

[4]  David M. Eyers,et al.  Using trust and risk in role-based access control policies , 2004, SACMAT '04.

[5]  Tal Garfinkel,et al.  A Virtual Machine Introspection Based Architecture for Intrusion Detection , 2003, NDSS.

[6]  Tony Jenkins,et al.  The motivation of students of programming , 2001, ITiCSE '01.

[7]  D. Kolb Experiential Learning: Experience as the Source of Learning and Development , 1983 .

[8]  Srimat T. Chakradhar,et al.  Supporting GPU sharing in cloud environments with a transparent runtime consolidation framework , 2011, HPDC '11.

[9]  Marko Hassinen,et al.  Learning programming by programming: a case study , 2006, Baltic Sea '06.

[10]  Indrajit Ray,et al.  TrustBAC: integrating trust relationships into the RBAC model for access control in open systems , 2006, SACMAT '06.

[11]  Andreas Polze,et al.  Predictable interactive control of experiments in a service-based remote laboratory , 2008, PETRA '08.

[12]  Christoph Meinel,et al.  Designing MOOCs for the Support of Multiple Learning Styles , 2013, EC-TEL.

[13]  Audun Jøsang,et al.  A survey of trust and reputation systems for online service provision , 2007, Decis. Support Syst..

[14]  Sumit Gulwani,et al.  Automated feedback generation for introductory programming assignments , 2012, PLDI.

[15]  Randy H. Katz,et al.  A view of cloud computing , 2010, CACM.

[16]  Andrés Marín López,et al.  TrustAC: Trust-Based Access Control for Pervasive Devices , 2005, SPC.

[17]  Andreas Polze,et al.  Trends and challenges in operating systems—from parallel computing to cloud computing , 2012, Concurr. Comput. Pract. Exp..

[18]  Brian D. Noble,et al.  When Virtual Is Better Than Real , 2001 .

[19]  Boris Balacheff,et al.  Trusted virtual platforms: a key enabler for converged client devices , 2009, OPSR.

[20]  Andreas Polze,et al.  Heterogeneous adaptive component-based applications with Adaptive.Net , 2005, Eighth IEEE International Symposium on Object-Oriented Real-Time Distributed Computing (ISORC'05).

[21]  Christoph Meinel,et al.  Introducing hands-on experience to a Massive Open Online Course on openHPI , 2013, Proceedings of 2013 IEEE International Conference on Teaching, Assessment and Learning for Engineering (TALE).

[22]  Claudia Eckert,et al.  A formal model for virtual machine introspection , 2009, VMSec '09.

[23]  Jeremy Sugerman,et al.  GPU virtualization on VMware's hosted I/O architecture , 2008, OPSR.

[24]  Andreas Polze,et al.  NQueens on CUDA: Optimization Issues , 2010, 2010 Ninth International Symposium on Parallel and Distributed Computing.