[ieee 2014 37th international convention on information and communication technology, electronics...

6

Click here to load reader

Upload: lejla

Post on 13-Apr-2017

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: [IEEE 2014 37th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO) - Opatija, Croatia (2014.5.26-2014.5.30)] 2014 37th International

Development and Analyses of “ProSysEngine” M-Learning Course Management System

Jovica Saveski*, Majlinda Fetaji*, Bekim Fetaji*, Mirlinda Ebibi** and Lejla Abazi** South East European University, Contemporary Sciences and Technologies, Ilindenska bb, 1200 Tetovo, Macedonia

** International Balkan University, Information Technology, Skopje, Macedonia [email protected], [email protected], [email protected], [email protected], [email protected]

Abstract - The research study investigates the development approach and analyses of m-learning course management system developed as case study. The contribution of the research study is the analyses of the task based instructional strategy and conceptual definition of the assessment methods regarding the level of mobile learning outcomes while assessing different software engineering aspects of development mobile application for Windows phone 8. The analysis also covers the development with primary focus on mobile learning using ASP.NET MVC 5 technology, and design issues for responsive techniques. Finally insights are stated, results of the analyses are provided and recommendations and discussions of the approach are described.

I. INTRODUCTION

Because the constant changing of the technologies, how the learners learn and interact, their demands are constantly growing for different types of learning materials [2], [3]. For example we might say that a professor has shared youtube.com video URL and the professor demands of the student to know the context of the particular video. The older management system did not allow the users to share easily video URL’s [9]. Then the students had to copy the link and transfer it to a web browser, and the content can be easily accessed by a single click, and be opened by a mobile browser quickly and from anywhere at any time.

Figure 1. Mobile Web 2.0 Concept Map[2]

This interoperability has inflicted the need to create new and improved learning systems, that not only could

assist the learning of contents but also speed up the process of interaction, allow different ways of conducting it, and allow for it to be accessed literally from any device or any place.

II. ANALYSES OF M-LEARNING PROJECTS AND TRENDS

An example of mobile learning system called GoLearn from the initial Merrill Lynch pilot is given by ADL Mobile Learning Team [9]. Standards for delivery on the BlackBerry were established in design, technology, security and privacy. The goals of the pilot included proving the access, usage and the effectiveness of learning delivered via the BlackBerry to the global population. Additionally they sought to:

� Deliver training with no degradation to learning effectiveness

� Achieve 25% of eligible participation

� Achieve a comparable average score to the control groups, and

� Obtain a 10% higher completion rate in 10% less time

Over a seven-week period, the learning materials were wirelessly pushed to over 2,100 investment bankers and select support staff.

The outcomes exceeded the goals. Higher scores were obtained in half the time. Bankers who completed the training did so in 54 less minutes and tested higher on the final assessment tests than the remainder of the firm. Mobile users also completed their training twenty days earlier than those who trained via MLU.

According to [8] VPs and higher leveraged the mobile materials the most. Of the 2100 eligible employees, 61% launched the content at least once. 317 people completed 704 courses. Overall the mobile learners obtained a 12% higher completion rate in 30% less time than the control group.

170 employees responded to a survey indicating:

• 99% felt the format and presentation supported the learning

• 100% would complete more training in this format

MIPRO 2014, 26-30 May 2014, Opatija, Croatia

782

Page 2: [IEEE 2014 37th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO) - Opatija, Croatia (2014.5.26-2014.5.30)] 2014 37th International

• More than 75% praised the benefits of convenience, time management and training with no distractions

With this successful pilot, Merrill Lynch moved into the next phase with additional training topics such as onboarding for new hires, ethical decisionmaking, performance management, market abuse, and sexual harassment.

According to [4] there is an increasing number of colleges and universities who are adopting mobile wireless technologies as teaching and learning tools. More than 90% of public universities and 80% of private universities in the US have some level of mobile wireless technologies, such as mobile wireless devices and networks.

According to [4] Task based learning as instructional strategy has been shown as the most appropriate for mobile learning compared with inquiry, project and problem based learning. The user filling the 4 task defined each semester week out of 15 weeks is guided and not left alone but instructed and forced to work regularly and in exact time periods.

An important advantage of the handheld computer and mobile devices in general is that can be accessed from anywhere at any certain time, providing learning resources to be articulated in the learning and other actions [4]. There are advantages in using a mobile device offering individual, private and learning at own pace and learning within specific contexts which can provide ‘reliable cultural and environmental indications for understanding the uses of information which may enhance encoding and recall and enable learners to access relevant information when and where it is needed’. The learners and institutions that consume m-learning systems because of the changing dynamics and can benefit from it.

III. RESEARCH METHODOLOGY

The study focused on fundamental research on m-learning, curent projects and trends, exploratory research regarding the conceptual design and afterwards action research to buidl a software solution to test the insights gained from previous phase. In order to evaluate the results the solution was evaluated from different participants. Participants were students, teaching and administrative staff of the Contemporary Sciences and Technolgies Faculty of the South East European University.

IV. CONCEPTUAL DESIGN

The main purpose of the web application is to provide learning system to students, professors and educational institutions with option to be accessed fryom anywhere at any time. In this regards the web application is available for any internet capable device such as mobile phone devices, mobile touch devices (tablets and slates) and television sets with internet connection through a browser. This application at this first version primarily focuses on knowledge assessment for students with given administration rights to the professors folowing the guidelines from [11].

The M- Learning aspect of this application gives it a huge importance in today’s dynamic world where distance learning and constant connectivity to internet are a regular state. On the other side the usa ge of the ASP.NET MVC 5 framework gives it a huge advantage because it is the latest technology and the easiest framework available to maintain in regards of updating the business logic or the design.

Primarily the idea was to make just a quiz generating application, but during the research study process we realized that what this world lacks of is more learning assessment systems based on mobile learning and using latest and best technologies. Learning assessment systems now are hugely needed not only to evaluate the knowledge of the final user, but also to specify the direction in which the learning process should go and declare where the final user did not pay attention.

This application also has a big advantage in the aspect of scalability, and for development, testing and presentational purposes, will be hosted on the Cloud, a cloud hosted by Microsoft called Windows Azure [13].

In essence the main research questions is: “how to develop a good and easily changeable and maintainable m-learning web application accessible from any device?”

Below is given the Activity diagram in which are represented the activities in a general form for the web application. Represented is the flow of the application. At first the client needs to access the website where he has only access to data that is available to all users. If he wishes to interact with the web application he needs to verify his credentials. He sends his credentials information’s to the ASP.NET identity membership provider [10]. He is then verified by the application using the Azure MS SQL Server.

Figure 2. Activity diagram of the developed solution

If the user gets verified correctly he has access to the web application. If the user wishes to interact with the application, according to his role in the system the user gets different options. In general the user can create, edit and update data on the web application. For example, if the user has a role of administrator he has access to every

783

Page 3: [IEEE 2014 37th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO) - Opatija, Croatia (2014.5.26-2014.5.30)] 2014 37th International

functionality of the web application except for solving quizzes which is a functionality of the web application only accessible to users with the role student [1].

The data is stored on Microsoft SQL Server on Windows Azure Cloud [5], [6], [7], [10], [12]. When the user is finished, if he wants to delete his session, cookies and exit the application he can easily log out.

On figure below is shown the sequence diagram for an example scenario when an administrator is creating a course. Here we have four objects which literally present the Model View Controller software architecture [13]. When the user first demands a website resource he is firstly encountered in the background of http process with the routing rules of the application. In MVC the paths, URL’s or routes are defined in the routing module [12].The application decides where it will send the request to, to which controller it will be directing the user. The controller gets the data from the model which takes the data from within itself connecting to the database and applies its methods and presents the data to the end user using the view [5].

Figure 3. Sequence diagram of the developed solution

Created the following classes: Course, Enroll, Quiz, Question, Answer, StudentQuizTake and studentAnswers. We are using these classes in order to organize my web application in a way that the system has courses which have students enrolled.

In each course created quizzes with questions and answers. Afterwards when the student goes’s to solve a quiz he creates a new instance of the StudentQuizTake class as an object.

The user fills the StudentAnswers class with his answers to the appropriate questions in the quiz. In order to differentiate users from one another will be using the new ASP.NET identity membership provider.

The ASP.NET identity uses the following classes: UserRole class, ExternalLogin class, LoginViewModel class, User class, UserSecret class, RegisterViewModel class, Role class, UserLogin class and ManageUserViewModel class.

Figure 4. Class diagram identity

V. DEVELOPMENT ASPECTS AND APPROACH

The name of the developed solution is Prof Sys Engine, and it is developed in ASP.NET MVC 5.

We have used Microsoft Visual Studio Ultimate 2013 Preview, .NET Framework 4.5 folowing the guideliness from [11] and [13] .

Figure 5. The screenshot of the developed solution

According to [13] Microsoft defines the ASP.NET MVC framework as follows: The Model-View-Controller (MVC) architectural pattern separates an application into three main components: the model, the view, and the controller. The ASP.NET MVC framework provides an alternative to the ASP.NET Web Forms pattern for creating Web applications. The ASP.NET MVC

784

Page 4: [IEEE 2014 37th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO) - Opatija, Croatia (2014.5.26-2014.5.30)] 2014 37th International

framework is a lightweight, highly testable presentation framework that (as with Web Forms-based applications) is integrated with existing ASP.NET features, such as master pages and membership-based authentication. The MVC framework is defined in the System.Web.Mvc assembly.

The developed solution is a cloud application; it is being hosted on Windows Azure Cloud platform by Microsoft. It is using a SQL Server on the cloud. This feature of the web application gives it enormous advantage because it is scalable, flexible and cost friendly. In one in a million case it could happen that the page in its first month of being published online to get thousands of users. Having the web application on the cloud allows me to scale the servers up and get new processors for serving the website, expand database space or the other way around.

Another of its best features is that the security of the application is being provided by a cloud service. Also if the server fails the cloud system transfers the applications to another server and in seconds time it is up.

In order to differentiate the web application users we have created a filter that is used just as an attribute in a declaration of controller classes. The code for the authorization filter follows:

namespace Mvc5website1.Filters{

[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]

public class AuthorizeRedirection : AuthorizeAttribute{

private const string IS_AUTHORIZED = "isAuthorized";

public string RedirectUrl = "~/Error/UnauthorizedUser";

protected override boolAuthorizeCore(System.Web.HttpContextBasehttpContext)

This filter allows us to easily restrict access or allow access to a particular role in the controllers. So just by using “[AuthorizeRedirection(Roles = "student")]” The code communicates with the ASP.NET MVC Framework that will only allow access to the particular action or controller to the users which have a role of “student”.

Also listed all of these classes in the DbContext class called MyDbContext. The DbContext class is used by Entity Framework to reference the already declared classes in the project, in order to allow Entity Framework to understand what the developer wants its business logic/ model work like. Upon starting the application, if the DbContext classes in instantiated the referenced classes or DbSet’s in DbContext are created as entities in a database which connection string have declared in Web.config.

Entity Framework analyses the defined classes and looks at the data types, the relationships declared between the class properties of different classes. If the class contains Data Annotations, Entity Framework uses them to constraint the values, define foreign keys or just change the display name [12].

We have enabled Entity Framework Migrations in the web application project. With the enabling of Entity Framework Migrations allowed automatic migrations, and allowed Entity Framework to update the database model automatically based on the changes made in the classes declared as DbSet’s in my DbContext class. So in the case when wanted to add user pictures to the user class and save that information to the database Entity Framework upon calling detects the changes in the model and applies the changes to the database.

Figure 6. Database migration

The “Update-Database” shown in figure above tries to detect the changes in the model and finds out there is no pending explicit migrations, and finally executes the Seed method. Created a Seed method that populates the database with startup users end roles as seen in the use case diagram there are three user roles and those areadministrator, professor and student. For each role assigned one startup user.

On the screenshot below is shown the management panel where the administrator of the web application can change the roles of the users registered to the web application.

Figure 7. Administrator options available

The following screenshot displays the view for creation of a course. Only the administrator has the right to create courses. Also only he has the privilege to edit or delete them. Professors who are owners of a course, can only edit the information about the course they own, and if they try to change a course that they do not own, the

785

Page 5: [IEEE 2014 37th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO) - Opatija, Croatia (2014.5.26-2014.5.30)] 2014 37th International

Course Controller in the web application will redirect them to an error “Unauthorized”.

Only the administrator has the right to delete a Course from the web application.

Upon Creating a Quiz, the Professor or Administrator will declare the duration of the Quiz. So if a Quiz is declared by the professor with 20 minute mark, the student will only get results for the answers he gave in that period.

Figure 8. Course creation functionality

The only place, that only a student has access to, it is the student controller which is used to display his quiz data and direct the user to solve the quiz. When a student starts to solve a quiz this system notes the time when the user has started solving the quiz. In the meantime for each answers submissions the application stores the student’s answers. After the student finishes the quiz, the result is given to him.

VI. NATIVE MOBILE CLIENT ON WINDOWS PHONE 8 The project also includes a native mobile client on

Windows Phone 8. This native mobile application gives the user who in this case is the student the options to check in the system in which courses he is currently enrolled in, the option to view the quizzes that he needs to solve (he has not solved them yet) and view the names of the quizzes he has already solved. In the case if the user decides to solve another quiz or just visit the web application he can use the button to go to the web application, in which case he is transferred to default browser.

Used a Microsoft HTTP client libraries in order to bring the common functionality of the HttpClient class.

c1 = new HttpClient();

c1.BaseAddress = new Uri("{URL}/api1/");

Figure 9. Native mobile aplication for Windows Phone 8

VII. TESTING

In order to check if the existing and planned functionality of the application is all right, conducted tests on four kinds of display.

First and foremost tested the functionality, usability and design on a Windows 8 (15” display monitor). Afterwards tested it on a 10” android tablet. After summarizing the results of the previous two devices conducted another two tests. One on a 4” Windows phone HTC 8s and finally tested the application on a 42 display using a television set.

The results were satisfying in the means of that in every device the user could access the needed data, functionality and resources. The front end of the web application was equally responsive to the display size and type on every devise.

Engaged and had the help of 10 collaborating testers,who tested the web application and gave me feedback. All of the feedback that was received was positive, and helpful. The beta testers during the time of testing and feedback giving gave advice on some other features that might be implemented in the future.

They successfully managed to access to web application, also it was easy for them to create courses and manage them. They used the panels to create quizzes, and even made a small competition among them taking the quiz.

Five advanced users were among the beta testers which had some kind of knowledge of the process of creating applications. And five of them were regular users which interests were not developing applications, but using it for their own needs and for sharing an expanding the knowledge among people.

Different beta testers got different users roles, some of them were students, some of them were professors and some were administrators.

786

Page 6: [IEEE 2014 37th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO) - Opatija, Croatia (2014.5.26-2014.5.30)] 2014 37th International

VIII. CONLUSION

For the research study and project used ASP.NET MVC 5 and although at the time it is a very new framework it has flawlessly worked during the creation, testing debugging and publishing the project. The web application works in the defined parameters and specs and is equally functional and tested its responsive on a Windows 8 laptop (Asus k52jt), on Android Tablet (10” Quart QP1070), and on HTC 8s Windows Phone (4” mobile phone).

The web application after the testing is evaluated a useful to the students as it is for the professors; it allows interaction between the standing parties. The best feature of the web application is that it is available equally among all capable devices. It saves the precious time of the professors, giving immediate results to the student, without the need for the professor to check each and every one of the quiz takes, if the professor needed to check all of the quiz results by hand. That is another advantage, if the student base expands, the professors cannot manually manage the learning assessment in the same time as they did before.

A great feature is that it can be easily changed, in a way that the market demands. The web application can easily be upgraded to become a big learning management system, with features like no other. Feedback from users can quickly be heard and implemented, thanks to the MVC software architecture pattern.

In the future we can implement a fully grown API, for all kinds of developers, and make it more available to even more devices, such as Raspberry PI, Windows Kinect, and even an electronic news feeder tool.

If this web application is implemented in another institution, it can quickly adapt it to its needs. For example

if this web application is implemented as an assistance tool for conferences guests’ lottery, we can add this functionality fast using Entity Framework Migrations.

For the future work intended is to add more common functionality, such as course based real time chat, messaging, file sharing, library and wiki panel.

REFERENCES

[1] Christian Gross (2008), Beginning C#: From Novice to Professional, 2008

[2] Dominic Betts, Alex Homer, Alejandro Jezierski, Masashi Narumoto, Hanz Zhang (2012), Moving Applications to the Cloud 3rd Edition, 2012

[3] Dominic Betts,Alex Homer, Alejandro Jezierski,Masashi Narumoto,Hanz Zhang (2012), Developing Multi-tenant Applications for the Cloud 3rd Edition, 2012

[4] Fetaji Majlinda., and Fetaji, Bekim., (2008) "Universities go mobile: Case study experiment in using mobile devices" – ITI IEEE conference, Dubrovnik, Croatia, 2008

[5] Jeffrey Palermo, Jimmy Bogard, Eric Hexter, Matthew Hinze, and Jeremy Skinner (2012), ASP.NET MVC 4 in Action, 2012

[6] Jess Chadwick, Todd Snyder, and Hrusikesh Panda (2012), Programming ASP.NET MVC 4, 2012

[7] Jon Galloway , Phil Haack, Brad Wilson, K. Scott Allen (2012), Professional ASP.NET MVC 4, 2012

[8] Judy Brown and Jason Haag (2011), Mobile Learning Handbook, 2011

[9] Kim, S.H., Mims, C., & Holmes, K.P. , ‘An introduction to current trends and benefits of mobile wireless technology use in higher education’. AACE Journal, 14(1) ,2006

[10] Mahesh Chand, (2002) A Programmer’s Guide to ADO.NET in C#, 2002

[11] O’Malley, UoN , G. Vavoula, UoB, J.P. Glew, UoB, J. Taylor (2003) OU,M. Sharples, UoB,P. Lefrere, OU, WP 4 – Guidelines For Learning/Teaching/Tutoring In A Mobile Environment, 2003

[12] Simon Robinson,Christian Nagel,Jay Glynn,Morgan Skinner,Karli Watson,Bill Evjen (2004) Professional C# Third Edition, 2004

[13] Tom Dykstra (2012), Getting Started with the Entity Framework 4.1 Using ASP.NET MVC, 2012

787