Fire - Software Engineering at RIT · Nicholas Mancuso Nicholas Stroh Jean-Paul Pietraru Business...

Preview:

Citation preview

Fire

Background

SOFTWARE SUBMISSION AND ASSESSMENT TOOL

MOTIVATION

PROCESS

The Computer Science department at RIThas used various automated systems that enable students to submit programming assignments electronically.

Currently the most popular such tool is ‘try’ developed by Professor Kenneth Reek withthe last major release coming in the early 1990’s.

The advantages to electronic submission isthe ease of file management, logging, and the value added by automated testing of the students’ code.

The Computer Science department wantsto develop a multi-platform replacementfor ‘try’ that expands its applicability, removes some of its shortcomings, and enables its integratability with other front-end tools being developed.

The solution should consist of:

1) Student software tools should allow students to submit electronic files.

2) Grader software tools that will assess and report the results of submissions.

3) Instructor software tools that will speed up the creation of new assignments.

WEB TIER

DATA TIER

BUSINESS TIER

MantaRay

MantaRay MantaRay MantaRay

Application Server

CompSci LabMachine A

MIDDLE TIER

CompSci LabMachine B

CompSci LabMachine C

Distributed Test Processor

InstructorFiles

TestOutput

Test Scripts

StudentFiles

Operational Data Store

File ServerDatabase

Server

SOLUTION

HIGHLIGHTS

Greg GiacovelliShaun Newsum

Nicholas MancusoNicholas Stroh

Jean-Paul Pietraru

Business Logic ModuleProcesses all requests from the Web Tier.

Controller ModuleSystem interface to the Business Tier.

Data Provider ModuleProvides data access and retrieval from the Data Tier.

Web Services ModuleProvides platform interoperability for sending requests to the Business Tier.

Apache StrutsOpen-source web application framework for creating Java-based web applications.

MantaRayOpen-source fully distributed enterprise-grademessaging middleware.

Software Name: FIRETeam Dragonsoft delivered an architectural framework which can be easily extended and built upon to satisfy all of the requirements of the system.

Scalable Multi-platform ArchitectureThe system can be run in any J2EE-compliantapplication server environment. All system tiers can reside on different host machines.

Distributed ProcessingStudent submissions are processed via a distributed network to increase performanceand reduce a single point of failure.

Model-View-Controller Web UIUI presentation is completely decoupled from the UI logic to provide an extensible front-end.

Interoperability via Web ServicesProvides platform-independent access to the back-end functionality of the system.

Greg Giacovelli

Faculty Coach: Dr. J. Fernando Naveda Sponsor: RIT Computer Science Department(Professor James Heliotis)

Data Provider Module

Business Logic Module

Web Services Module

Application ServerWeb Server

Apache StrutsWeb Application Framework

UI Design UI Logic

Controller Module

R1 – The FrameworkDedicated to the elicitation of the system requirements and the creation of the systemarchitecture.

R2 – Submit and GradeImplemented the highest priority functionality.

R3 – Compile and TestDeveloped the complex process of compiling and testing student files.

R5 – GoldApplication of the test suite to use for verification and acceptance testing.

Team Dragonsoft employed a softwareprocess consisting of iterative development models.

R4 – Code CompleteIncorporated all remaining low priority functionality.

Recommended