moss final presentation -senior project-. moss presentation agenda project definition requirements...

52
MOSS Final Presentation -Senior Project-

Upload: kory-dickerson

Post on 30-Dec-2015

217 views

Category:

Documents


3 download

TRANSCRIPT

MOSS

Final Presentation

-Senior Project-

MOSS

Presentation Agenda

• Project Definition• Requirements Analysis• System Design• Project Plan• Code Cop Screen Shots• Questions / Answers

MOSS

Team MembersTeam Members

• Rhonda Schuyler – Web Developer, Lead Tester• Ryan Riebeling – Lead Programmer• Keith Gorrell – Lead Analyst• Al Gillis – Project Coordinator, Editor

MOSS

Organizational PlanOrganizational Plan

Upper Management

Bryon Ehlmann

Project Coordinator

Al Gillis

Lead Programmer

Ryan Riebeling

Lead Analyst

Keith Gorrell

Web Dev / Tester

Rhonda Schuyler

Client

Steve Klien

MOSS

Current SIU ProblemCurrent SIU Problem

• Believe it or not, there are some CS students at SIU that do NOT code their own programming assignments.

• Instructors need a way to check multiple programming assignments for similarity.

• Doing this by hand takes way too long.

• There exists an application hosted by U.C. at Berkeley called MOSS (Measure Of Software Similarity) that compares programs, but currently, the process of requesting MOSS services is not convenient.

MOSS

Current MOSS ProblemsCurrent MOSS Problems

• Command line interface to run a Perl script for UNIX.

• Not integrated with SIU student drop boxes.

• No GUI or MOSS I/O automation.

• 2 week lifetime of MOSS reports.

• No locality of MOSS reports.

MOSS

Requirements AnalysisRequirements Analysis

MOSS

Requirements AnalysisRequirements Analysis

• Client interview sessions.

• Perl script analysis and functional decomposition.

• Prototype of MOSS service requests.

• Subsequent review of MOSS reports.

• Constant review with client.

MOSS

http://moss.cs.berkeley.edu/~moss/results/675443542

View Results within 14 days

Current View of MOSS ReportsCurrent View of MOSS Reports

MOSS

RIS

K

• Create attachments from file groups made from user selections.

• Automatically send MOSS requests via email with attachments.

• Automatically retrieve, open, and parse MOSS reports.

• Automatically web tunnel into MOSS reports URL.

• Automatically store MOSS reports to local web page.

MOSS Risk Mitigation ItemsMOSS Risk Mitigation Items

MOSS

Our SolutionOur Solution

The Code Cop System requirements:

• Easy to use GUI.

• Automated MOSS I/O.

• Integrate student drop boxes into the system.

• Integrate with instructor class spreadsheets.

• Thin client / 100% Web hosted functionality.

• Local archive of MOSS reports.

MOSS

Development PlatformDevelopment Platform

Windows 2000 because:

• Client requirements.

• Our groups programming skill set.

• Readily available development tools.

• SIU Web pages are hosted on MS IIS.

MOSS

Functional RequirementsFunctional Requirements

Instructors:

• Can create, edit, or delete courses.

• Can add, edit, or delete students from courses.

• Can switch students between sections.

• Can bundle MOSS requests from multiple sections.

• Can specify base files to be sent to MOSS.

• Local archive of MOSS reports.

• MOSS reports posted to Web site.

• Student uploads are filename constrained.

• Set homework deadline.

MOSS

Functional RequirementsFunctional Requirements

Administrator:

• Can add, edit, or delete users.

• Can add, edit, or delete courses.

Student:

• Can submit their programs via a Web interface.

• Can view the status of their directory.

MOSS

MOSS Report Use CaseMOSS Report Use Case

MOSS

Administrator Use CaseAdministrator Use Case

MOSS

Student Use CaseStudent Use Case

E-R Model

Student

Instructor

Course

N

N

Class

DropBox

Takes

1

InstanceOf

1

TeachesN 1

Assignment

PlacedIn

Produces1

M

N

N

1

HasAccess

1

N

UploadsTo1

N

GivesN

HasN

1

Results

Moss

Returns

N

1

Views

N

1

ProducesN

M

Files

Has

1

N

Assignment Name AssignmentID AssignmentKey DueDate ClassKey InstructorKey

Class ClassID ClassKey Year Semester SectionNumber CourseKey InstructorKey

Course CourseID Name CourseKey

DropBox Name Location BoxKey BoxID InstructorKey

Files FileID FileKey Name IsBase StudentKey AssignmentKey BoxKey

Instructor UserName InstructorKey LastName FirstName Password HasResult Privilege

PlacedIn BoxKey FileKey

Program

Results InstructorKey ClassKey Location IsNew ResultsID

Student StudentKey LastName FirstName Password StudentID Privilege UserName

Takes StudentKey ClassKey

UploadsTo UploadTime UploadDate StudentKey BoxKey StudentID BoxID

AssignmentKey FileKey

MOSS

System DesignSystem Design

MOSS

System OverviewSystem Overview

MOSS Server System 1. MOSS Application 2. Email Server 3. Email Client

SIU-E Code Cop System 1. SIU-E Code Cop Application 2. FTP Drop Box 3. WEB Server (IIS) 4. Database (Access2000) 5. Zip, Tar, UUEncode, UUDecode 6. Email Client 7. Email Server

From Home 1. IE5

From School 1. IE5

INT

ER

NE

T

MOSS

Deployment ModularityDeployment Modularity

Inte

rnet

MS Internet Information Server

Mail Server

StorageSIU-E

Code CopComputer

SIU-E Users

SIU-E Student

Drop Box

Element Functions Interface

Storage

CC Login.ASP

JVM

SQL I/O

MS Drive Mapping

MS Access DB

ZIP Engine

JET DB Engine

Code Cop

Application

Mail Server

UUE Mail Client

MOSS Application

Storage

MS Internet Information Server

MS Drive Mapping

FTP Drop Box Login

MOSS

Storage IE5 / Netscape

Mail ClientFile I/O

User Browser

Co

mm

un

ica

tion

Su

bs

ys

tem

FunctionalInterface

Send / ReceiveMOSS Services Ethernet

Code Cop SystemPhysical Interface

MOSS

Email ServicesClient/Server

Web ServicesHTTP Tunnel

DB ServicesSQL/Access

File I/O ServicesDrop Box

Runtime ServicesVBS / COM / JVM / DLL

Co

mm

un

ica

tion

Su

bs

ys

tem

Co

mm

un

ica

tion

Su

bs

ys

temStudent Services

DB Admin Services

Instructor Services

File I/O Services

FunctionalInterface

Ethernet

Physical Interface

Co

mm

un

ica

tion

Su

bs

ys

tem

Service Requests

Report Notification

HTTP Results

MOSS

Interface DiagramInterface Diagram

MOSS

Code Cop User Interfaces

Four Main User Interfaces

1. Login Page

2. Instructor Menu

3. Student Menu

4. Administrator Menu

Web Site Organization

Login

AdminMenu

UserPage

CoursePage

AddCourse

EditCourse

Logout Level

Home Level

AddUser

EditUser

UploadProgram

ChangePassword

ViewProgram

Files

StudentMenu

InstructorMenu

PopulateClass

AssignmentsUpload

Program

CreateMOSSReport

ViewResults

StudentList Page

AdminMenu

EditStudent

AddStudent

EditAssignment

AddAssignment

Add BaseFiles

MOSS

AdministratorAdministrator

CodeCop Login

Admin Menu

Session("UserType") = "Admin"

User List PageCourse List Page

Add User Edit UserEdit CourseAdd Course

Change Password

CodeCop.mdb

AdministratorAdministrator

CodeCop Login

Admin Menu

Session("UserType") = "Admin"

User List PageCourse List Page

Add User Edit UserEdit CourseAdd Course

Change Password

Add CourseAdd User

Modify Course

Modify User

Modify Password

Logout

CodeCop.mdb

InstructorInstructor

CodeCop Login

Instructor Menu

Session("UserType") = "Instructor"

Populate Class Assignment List Page

Assignment Add Assignment Edit

Add Base Files

Upload Student Program Create Moss Request View Results Student List Page

Student EditStudent Add

Change Password

CodeCop.mdb

Admin Menu

InstructorInstructor

CodeCop Login

Instructor Menu

Session("UserType") = "Instructor"

Populate Class Assignment List Page

Assignment Add Assignment Edit

Add Base Files

Upload Student Program Create Moss Request View Results Student List Page

Student EditStudent Add

Change Password

Modify Assignment

Add Assignment

Import Students

Logout

Modify Password

Add Student

Modify Student

CodeCop.mdb

Admin Menu

StudentStudent

CodeCop Login

Student Menu

Session("UserType") = "Student"

View Program FilesUpload Page Change Password

CodeCop.mdb

StudentStudent

CodeCop Login

Student Menu

Session("UserType") = "Student"

View Program FilesUpload Page Change Password

Logout

Modify PasswordCodeCop.mdb

MOSS

Design Logic Between Modules

Session Variables in ASP.

Querystrings used to pass information from one page to another.

MOSS

Project Plan

MOSS

Hardware/Languages

1. Hardware Decisions: Windows 2000 dedicated server

2. Languages: ASP, HTML, SQL, Visual Basic, Java

MOSS

Implementation Requirements

Resources:

•Code Cop will require space on the CSFS2 server.

•Must have Internet access.

•Requires an email account to send/receive info.

•Microsoft Access database.

•Microsoft Internet Information Server.

MOSS

Development Tools / Software

• Microsoft Visual Studio 6.0 Enterprise Edition

• Third Party Components:

• ASPMail 4.0 – used for sending email messages using SMTP

• JMail – used for receiving email messages using POP3

MOSS

Test Plan

The Lead Tester is responsible for developing a system of testing which includes:

• Lo-fi and Hi-fi prototyping at the early stages of development.

• Making sure that all features agreed upon are in the application.

• Debugging and Testing of all Routines.

MOSS

Test Plan (cont.)

Documentation will include:

• Why the test is being conducted

• How the test will be conducted

• Where the test will be conducted

• When the test will be conducted

• Who will conduct the test

Every test will be documented

MOSS

Deployment Plan

• Installation on CS Dept. Windows 2000 Server

• Entire CodeCop application will be in one place

• Training

• Client and other instructors will need to learn the UI

• Student Web Interface (optional per Instructor)

MOSS

Deployment Plan (cont.)

• Operation (continued)

• CodeCop System will need very little maintenance

• Requires server to be up and running

• Requires server to maintain a connection to network

MOSS

Code Cop Project Lifecycle

Contract signed by client

CS425 final presentation

CS499 final presentation

Everyone

Keith

Alan

Ryan

Everyone

Rhonda

Requirements Met?

All user interfaces Web based Student uploads filename controlled Student uploads are time constrained No student project build capability from drop box Instructor override of all student constraints Instructor / Administrator control of all user accounts Windows based MOSS interface MOSS bundling of multiple class sections Automatic background processing of MOSS transactions Permanent / local archive of all MOSS reports

MOSS

MOSS

Code Cop Screen Shots

MOSS

Questions / AnswersQuestions / Answers