Scaling up a Web-Based Intelligent Tutoring System Jozsef Patvarczki, Shane Almeida, and Neil Heffernan Computer Science Department Our research team has.

Slides:



Advertisements
Similar presentations
Cultural Heritage in REGional NETworks REGNET Project Meeting Content Group
Advertisements

Performance Testing - Kanwalpreet Singh.
Distributed Systems 1 Topics  What is a Distributed System?  Why Distributed Systems?  Examples of Distributed Systems  Distributed System Requirements.
Chapter 9 Designing Systems for Diverse Environments.
Technical Architectures
Web Server Hardware and Software
Web-based Distributed Flexible Manufacturing System (FMS) Monitoring and Control Student: Wei Liu Instructor: Dr. Chang Apr. 23, 2003.
Distributed Systems Architectures
Conclusion Our prediction model did a good job at predict 8 th grade math proficiency. It can be used to estimate 10 th grade score fairly well, too. But.
Copyright © 2002 Pearson Education, Inc. Slide 4-1 Choosing the Hardware for an E-commerce Site  Hardware platform  Refers to all the underlying computing.
Web Development Using ASP.NET CA – 240 Kashif Jalal Welcome to week – 1 of…
Technion – Israel Institute of Technology Department of Electrical Engineering Software Lab Grades Server on J2EE Technology Edo Yichie Sagee Rosen Supervisor:
Web-Enabling the Warehouse Chapter 16. Benefits of Web-Enabling a Data Warehouse Better-informed decision making Lower costs of deployment and management.
Chapter 4 Database Management Systems. Chapter 4Slide 2 What is a Database Management System (DBMS)?  Database An organized collection of related data.
DATABASE MANAGEMENT SYSTEMS 2 ANGELITO I. CUNANAN JR.
Understanding of Load Testing Tools Especially HP LoadRunner >>>>>>>>>>>>>>>>>>>>>>
Web Programming Language Dr. Ken Cosh Week 1 (Introduction)
Hands-On Microsoft Windows Server 2008 Chapter 8 Managing Windows Server 2008 Network Services.
Server Load Balancing. Introduction Why is load balancing of servers needed? If there is only one web server responding to all the incoming HTTP requests.
Chapter 9 Elements of Systems Design
IS 466 ADVANCED TOPICS IN INFORMATION SYSTEMS LECTURER : NOUF ALMUJALLY 3 – 10 – 2011 College Of Computer Science and Information, Information Systems.
File-Mate 1500 Design Review 1 November 19, 2013 KEVEN ABBOTT, ARCHITECT TYLER CROUSE, SPONSOR LIASON KIANA DELVENTHAL, TEAM LEADER, RECORDER LIAM WESTBY,
Chapter 16 The World Wide Web Chapter Goals Compare and contrast the Internet and the World Wide Web Describe general Web processing Describe several.
Codeigniter is an open source web application. It occupies a very small amount of space in the memory and is most useful for developers who aim to develop.
NETWORK SERVERS Oliver Topping (with a little help from my Mum)
Fundamentals of Database Chapter 7 Database Technologies.
Slide 1 Physical Architecture Layer Design Chapter 13.
Csi315csi315 Client/Server Models. Client/Server Environment LAN or WAN Server Data Berson, Fig 1.4, p.8 clients network.
Orbited Scaling Bi-directional web applications A presentation by Michael Carter
Software Project Documentation. Types of Project Documents  Project Charter  Requirements  Mockups and Prototypes  Test Cases  Architecture / Design.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
Introduction. Readings r Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 m Note: All figures from this book.
Project Overview Graduate Selection Process Project Goal Automate the Selection Process.
SE-02 COMPONENTS – WHY? Object-oriented source-level re-use of code requires same source code language. Object-oriented source-level re-use may require.
1 CS122B: Projects in Databases and Web Applications Spring 2015 Notes 03: Web-App Architectures Professor Chen Li Department of Computer Science CS122B.
Client Server Network Model:
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Jian Gui WANG New Implementation of Agriculture Models APAN19---Jan New Implementations of Agriculture Models Using Mediate Architecture.
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Distributed database system
Session 7B Friday, 29 September 2000 Interactive Computer aided Learning Graphical Interactive Systems, University of Tübingen (Germany) Basic Requirements.
14 1 Chapter 14 Web Database Development Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel.
D R A T D R A T ABSTRACT Every semester each department at Iowa State University has to assign its faculty members and teaching assistants (TAs) to the.
Distributed System Architectures Yonsei University 2 nd Semester, 2014 Woo-Cheol Kim.
Data Communications and Networks Chapter 9 – Distributed Systems ICT-BVF8.1- Data Communications and Network Trainer: Dr. Abbes Sebihi.
Performance Testing Test Complete. Performance testing and its sub categories Performance testing is performed, to determine how fast some aspect of a.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 14 Database Connectivity and Web Technologies.
4/26/2017 Use Cloud-Based Load Testing Service to Find Scale and Performance Bottlenecks Randy Pagels Sr. Developer Technology Specialist © 2012 Microsoft.
Introduction to Model-View-Controller (MVC) Web Programming with TurboGears Leif Oppermann,
DAT602 Database Application Development Lecture 1 Course Structure & Background knowledge.
E-commerce Architecture Ayşe Başar Bener. Client Server Architecture E-commerce is based on client/ server architecture –Client processes requesting service.
Introduction to Node.js® Jitendra Kumar Patel Saturday, January 31, 2015.
Cofax Scalability Document Version Scaling Cofax in General The scalability of Cofax is directly related to the system software, hardware and network.
9 Systems Analysis and Design in a Changing World, Fifth Edition.
Performance Driven Database Design for Scalable Web Applications Jozsef Patvarczki, Murali Mani, and Neil Heffernan Scaling up web applications requires.
Web Programming Language
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
Netscape Application Server
How to interact with the system?
N-Tier Architecture.
Chapter 18 MobileApp Design
CHAPTER 3 Architectures for Distributed Systems
Introduction to Cloud Computing
Jozsef Patvarczki, Elke A. Rundensteiner, and Neil T. Heffernan
How to interact with the system?
Introduction of Week 11 Return assignment 9-1 Collect assignment 10-1
COMPONENTS – WHY? Object-oriented source-level re-use of code requires same source code language. Object-oriented source-level re-use may require understanding.
DD Sir-Infomatics Web Development Part-1.
Web Servers (IIS and Apache)
Presentation transcript:

Scaling up a Web-Based Intelligent Tutoring System Jozsef Patvarczki, Shane Almeida, and Neil Heffernan Computer Science Department Our research team has built a web-based tutor, located at [1], that is used by hundreds of students a day in Worcester and surrounding towns The system’s focus is to teach 8th and 10th grad mathematics and MCAS preparation. Accessibility is an important concern for tutoring systems. Students, teachers, and content creators all must have access to the system. Because of widespread Internet access, Web-based tutoring systems have the potential to provide access to many more users than can be reached with client-based software. We will present how the Assistment system can improve performance and reliability with a fault-tolerant scalable architecture. Introduction Web-based systems virtually eliminate much of time and cost of installing software on individual client machines. We have greater control over content distribution. Software updates and configuration changes are easily manageable Data collection is simplified by a centralized system and reports can be available immediately. The disadvantage of server-based systems is scalability as centralization of resources can create bottlenecks. In order to server thousands of users, we must achieve high reliability and scalability at different levels. Two concerns when running the Intelligent Tutor on a central server are: 1) building a scalable server architecture; 2) providing reliable service to researchers, teachers, and students. We will answer several research questions: 1) can we reduce the cost of authoring ITS; 2) how can we improve performance and reliability with a better server architecture. System Scalability and Reliability Results Reference 1.Razzaq, L, Feng, M., Nuzzo-Jones, G., Heffernan, N.T. et. al (2005). The Assistment Project: Blending Assessment and Assisting. 12th Annual Conference on Artificial Intelligence in Education 2005, Amsterdam 2.Chunqiang Tang, et. al. (2007). A Scalable Application Placement Controller for Enterprise Data Centers. Proceedings of the 16 th international conference on World Wide Web 2007, Canada Ruby on Rails, a free Web application framework based on the open-source Ruby programming language, was used to create mockups of new interface components. We reduced the lines of code from roughly 20,000 to around 5,000. Mongrel, a single-threaded web server for Ruby applications, is used to serve content. Because it is single- threaded, multiple Mongrel application servers are used concurrently in a cluster. During peak times, the database server was constantly at maximum capacity while the application servers remained nearly idle waiting for data According to log data, the tutoring portion of our system spends an average of 2.27 seconds processing a request (standard deviation of 3.39) We calculated the average response time of the most expensive operations in the tutor. Most expensive ones: account creation (\Signup"), the welcome page (\Account"), class assignment page (\Assignment"), and loading the first problem of an assignment (\First Problem"). We captured the average response time of the created test curriculum (\Average Response Time") and the total number of users for that particular day (indicated above the each cluster). Fourth Generation: Rails with Thicker Client Architecture The lightweight interface means our software can be used in schools with limited budgets for computing resources. Beyond a reasonably modern web browser with support for JavaScript, no special software or third- party applications are required to use our system. With a server-based architecture, all changes in content and software happen on our systems and we do not need to push updates to clients. In initial testing of the JavaScript implementation of the tutor, our system spends an average of 0.08 seconds processing a request (standard deviation of 1.43). With just six Mongrel servers, our system is now posed to handle 75 requests per second. Contact: Neil Heffernan, Horizontal scaled configuration -Scalable, Fault-tolerant, and Dynamically configurable Architecture 157