Central Online Grading System COGS Dec15-21 dec1521.sd.ece.iastate.edu.

Slides:



Advertisements
Similar presentations
A Toolbox for Blackboard Tim Roberts
Advertisements

LeadManager™- Internet Marketing Lead Management Solution May, 2009.
Managing Your Network Environment © 2004 Cisco Systems, Inc. All rights reserved. Managing Cisco IOS Devices INTRO v2.0—9-1.
T-FLEX DOCs PLM, Document and Workflow Management.
Accounting & Billing System for the WEB Centre GDP 19 Donna Crawford (dc899) David Newman (drn101) Chris O’Neill (ckjon101) Amit Shah (ams401) Supervisor.
Jun Peng Stanford University – Department of Civil and Environmental Engineering Nov 17, 2000 DISSERTATION PROPOSAL A Software Framework for Collaborative.
Maintaining and Updating Windows Server 2008
Slide 1 of 9 Presenting 24x7 Scheduler The art of computer automation Press PageDown key or click to advance.
R. Lange, M. Giacchini: Monitoring a Control System Using Nagios Monitoring a Control System Using Nagios Ralph Lange, BESSY – Mauro Giacchini, LNL.
These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
Presented by INTRUSION DETECTION SYSYTEM. CONTENT Basically this presentation contains, What is TripWire? How does TripWire work? Where is TripWire used?
Web Application Architecture: multi-tier (2-tier, 3-tier) & mvc
Automatic Software Testing Tool for Computer Networks ARD Presentation Adi Shachar Yaniv Cohen Dudi Patimer
Spring Roo CS476 Aleksey Bukin Peter Lew. What is Roo? Productivity tool Allows for easy creation of Enterprise Java applications Runs alongside existing.
.NET, and Service Gateways Group members: Andre Tran, Priyanka Gangishetty, Irena Mao, Wileen Chiu.
WEEK 1 CS 361: ADVANCED DATA STRUCTURES AND ALGORITHMS Dong Si Dept. of Computer Science 1.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
Virtual Mechanics Fall Semester 2009
Trimble Connected Community
The Collaborative Imaging Grid (CIG) Edward Marsh, Kurtis Heimerl, Andrew Urhausen, Paul Javid, Aneesa Awaludin, Austin Cargol.
PHASE 4 SYSTEMS IMPLEMENTATION Application Development SYSTEMS ANALYSIS & DESIGN.
ABSTRACT Zirous Inc. is a growing company and they need a new way to track who their employees working on various different projects. To solve the issue.
Social Network for Behavior Change Team #11: Gavin Monroe Nicholas Schramm Davendra Jayasingam Client: Yolanda Coil Advisor: Simanta Mitra.
EDU MANAGER Presented By : us at :
ISU Alumni Association Online Store Abstract The Iowa State University Alumni Association desires a complete overhaul of their online store. The current.
Module 7: Fundamentals of Administering Windows Server 2008.
Tutorial 121 Creating a New Web Forms Page You will find that creating Web Forms is similar to creating traditional Windows applications in Visual Basic.
CSU - DCE Internet Security... Privacy Overview - Fort Collins, CO Copyright © XTR Systems, LLC Setting Up & Using a Site Security Policy Instructor:
{ Graphite Grigory Arashkovich, Anuj Khanna, Anirban Gangopadhyay, Michael D’Egidio, Laura Willson.
Online Translation Service Capstone Design Eunyoung Ku Jason Roberts Jennifer Pitts Gregory Woodburn Kim Tran.
CSE 548 Advanced Computer Network Security Document Search in MobiCloud using Hadoop Framework Sayan Cole Jaya Chakladar Group No: 1.
Microsoft SharePoint Server 2010 for the Microsoft ASP.NET Developer Yaroslav Pentsarskyy
Software Project Documentation. Types of Project Documents  Project Charter  Requirements  Mockups and Prototypes  Test Cases  Architecture / Design.
An application architecture specifies the technologies to be used to implement one or more (and possibly all) information systems in terms of DATA, PROCESS,
Module 5: Configuring Internet Explorer and Supporting Applications.
Dec07-02: Prototype Parking Meter Phase 8 Bret Schuring: Team Leader Pooja Ramesh: Communications Wilson Kwong, Matt Swanson, Alex Wernli.
1 CMPT 275 High Level Design Phase Modularization.
Experiment Management System CSE 423 Aaron Kloc Jordan Harstad Robert Sorensen Robert Trevino Nicolas Tjioe Status Report Presentation Industry Mentor:
SMS Software Distribution. Overview  Explaining How SMS Distributes Software  Managing Distribution Points  Configuring Software Distribution and the.
PwC New Technologies New Risks. PricewaterhouseCoopers Technology and Security Evolution Mainframe Technology –Single host –Limited Trusted users Security.
 Registry itself is easy and straightforward in implementation  The objects of registry are actually complicated to store and manage  Objects of Registry.
INTRUSION DETECTION SYSYTEM. CONTENT Basically this presentation contains, What is TripWire? How does TripWire work? Where is TripWire used? Tripwire.
Remote Control of Home Appliances PROJECT PLAN Team: ◦ Elie Abichar –CE ◦ Chris Tefer –CE ◦ Ananta Upadhyaya.
Wireless and Mobile Security
PHP Error Handling & Reporting. Error Handling Never allow a default error message or error number returned by the mysql_error() and mysql_errno() functions.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Louisiana Tech Capstone Submitted by Capstone 2010 Cyber Security Situational Awareness System.
Software Engineering Issues Software Engineering Concepts System Specifications Procedural Design Object-Oriented Design System Testing.
Team Members Charles Dunbar Ben Kallal Ankit Patel Peter Purcell Kody Reynolds 1 IRP Presentation Client Lisa Hein-Iowa Natural Heritage Foundation Faculty.
CentralCampus Group: May13-26 – William Van Walbeek & Paul Wilson Client: Google, Muthu Muthusrinivasan Advisor: Manimaran Govindarasu Abstract Introduction.
By Douglas Copas and Mark Perry.  Currently available small business based commercial inventory management systems are either prohibitively expensive.
Glink for Java: applet, application and an API for integrating access to Bull, IBM, UNIX and Minitel systems with your Java based e-business applications.
ECpE Student Database Team 21 Adviser: Tien Nguyen ECpE and Tony Moore.
Grid Execution Management for Legacy Code Architecture Exposing legacy applications as Grid services: the GEMLCA approach Centre.
Aaron Corso COSC Spring What is LAMP?  A ‘solution stack’, or package of an OS and software consisting of:  Linux  Apache  MySQL  PHP.
 Project Team: Suzana Vaserman David Fleish Moran Zafir Tzvika Stein  Academic adviser: Dr. Mayer Goldberg  Technical adviser: Mr. Guy Wiener.
Maintaining and Updating Windows Server 2008 Lesson 8.
Christopher Seeley, Ralph Mattiaccio Ken Bodzak, Will Abeel, Danielle Maginnis.
ClickOnce Deployment (One-click Deployment)
Advanced Higher Computing Science
Types for Programs and Proofs
Statistical database Debbie Becker Developed by.
Software Support Framework
Complete 1z0-161 Exam Dumps - Pass In 24 Hours - Dumps4download.us
Week 1 Gates Introduction to Information Technology cosc 010 Week 1 Gates
The Application Lifecycle
Lecture 1: Multi-tier Architecture Overview
Google App Engine Ying Zou 01/24/2016.
ClickOnce Deployment (One-click Deployment)
Web Application Development Using PHP
Presentation transcript:

Central Online Grading System COGS Dec15-21 dec1521.sd.ece.iastate.edu

Problem Statement ●Cpr E 185 has weekly programming practices ●Blackboard is a frustrating interface o Cannot display.c or.txt files o Downloading, compiling, and running student code is tedious

Solution Overview The goal of COGS: Streamline the grading process ●Features o Intuitive Assignment creation o Easy student submission o Secure compiler o Automatic testing o Cheating detection o Streamlined grading o Blackboard Integration

Conceptual Sketch

Resources and Risks ●Resources: o Virtual Machine Server ●Risks: o Security o Hosting student data o Blackboard interfacing

Project Divisions ●Web Team o Zend Framework o User Interface o Blackboard Interfacing o Database Communication o Members  Forrest Scott  Katie Widen  Daniel McDonough ●Systems Team o Grader o Authentication/Security o Cheating Detection o Members  Zachary Lones  Daniel Riechers

Detailed Design - Front End ●Zend Framework o Open Source o Object Oriented o MVC structure o Modular o Secure o High Performance

Detailed Design - Front End Complex Diagram Simplified

Detailed Design - Front End ●Zend Autoloader o Resource Loading o Object Building o Security o Configurable Routes

Detailed Design - Front End ●Zend Controllers o M-V-C o The “Brains” of the Front End o Communicates with Back End o Forms, Plugins, Modules

Detailed Design - Front End ●Doctrine 2 Database o M-V-C o MySQL o Object Oriented o Lazy loading o Custom Macros o Auto Hydration

Detailed Design - Front End ●ZendFramework Views o M-V-C o PHP + HTML o Final Stage

Detailed Design - Grading Complex Diagram Simplified

Detailed Design - Grading ●Student Submits o Custom execution inputs o Back end runs o Returns errors, outputs o Last submission is used

Detailed Design - Grading ●T.A. Grading o Streamlined grading pages o Can create new execution o Alerts when cheating detected o Notes viewable by students o Upload to Blackboard via.csv file

Detailed Design - Security ●Prevents stalled code using timers ●All student code is run in a chrooted environment o Minimal filesystem ●The system uses a Mandatory Access Control policy o Transparent to administrators

Detailed Design - Chroot Filesystem ●Adds level of system protection ●Prevents student software from interacting with the filesystem. o Changing system configuration o Installing Malware o Gathering system information

Mandatory Access Control (MAC) ●Forces permissions o Permissions limit user access to  Files  System Calls ● Devices ● Shared Resources ● Network ●We used SELinux for MAC o SELinux is an implementation of MAC by NSA

Detailed Design - SELinux ●Policy is transparent to administrators. o Policy should not limit administration o Policy should not need modification ●Policy is extra strict on student code executions. o System calls are whitelisted ●SELinux Aware Firewall o Further limits network traffic

Front End Requirements ●Administration (Add/Remove/Edit) o Classes o Instructors ●Instructors (Add/Remove/Edit) o Assignments o Students o Submission Scores ●Students o Upload Assignments o Check Results

Back End: Grader Requirements ●Preliminary Report o Shows compiler errors and warnings o Includes students custom inputs and resulting outputs o Shows results of unit tests ●Final Report o Everything in Preliminary Report of final submission o Include additional tests and static analysis o Returned to student after Instructor has written grades and comments

Back End: Cheating Detector Requirements ●Cheating Report ○ Displays code similarities across submissions ○ Generates a cheating confidence score ●Run cheating detection algorithm on students’ final submissions ●Report is viewable by Instructors if cheating is detected.

Security Requirements ●Use Mandatory Access Control to encapsulate student code. ●Use a chroot environment to encapsulate student code. ●Use a firewall that restricts unauthorized network communication ●The student code will be allowed to execute the following system calls: ○read○ close ○write○ open ○create

Integration Requirements ●Web server executes the grader ●Grader returns its output to the web server via stdout ●Web server stores grader results in database ●Blackboard integration is handled manually via.csv

Non-functional Requirements ●Streamline the process: make grading as intuitive as possible ●Mandatory Access Control will be transparent to system administrators ●All external dependencies will be verified to be secure and reliable o Shibboleth o Zend plugins o Runtime libraries ●Maintainable ●Extreme care taken when handling student information

Test Plan - Front End ●Manual testing for individual components ●Alpha testing using a small group of students and single instructor ●Beta testing using a larger volume of students and multiple instructors

Test Plan - Backend ●All backend modules (Grader, Cheating detection) are unit tested with Google Tests. ●The SELinux Policy and security encapsulation are tested manually.

Current status and Future Plans Current Status

Questions?