Upload
hortense-kelly-miller
View
215
Download
1
Tags:
Embed Size (px)
Citation preview
MOSS
Final Presentation
-Senior Project-
MOSS
Presentation Agenda
• Introduction / Project Definition• Requirements / Analysis• Project Plan• System Design• Implementation• Testing• Deployment / Training• Demo• Retrospective Thoughts• Questions / Answers
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 SIU ProblemCurrent SIU Problem
• Not easy to interface with MOSS
• 2 week lifetime of MOSS reports.
• No locality of MOSS reports.
• Student drop box does not enforce a homework naming convention
• Student drop box does not enforce an assignment due date
MOSS
Requirements AnalysisRequirements Analysis
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 report 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 with instructor class spreadsheets.
• Thin client / Web hosted functionality.
• Local archive of MOSS reports.
• Provide student drop box system
MOSS
MOSS
Project PlanProject Plan
MOSS
CodeCopRequirements
AnalysisDocument
Client System Requirements
• Contract
• Ethics Document
• Project Plan
• Software Style Guide
• Software Design Document
• Database Dictionary
• Test Plan
• Installation Guide
• Version Description Document
• Users Manual / Training
• Presentations
• Demonstrations
Microsoft
Source Safe
Configuration
Management
CodeCop Development ProcessCodeCop Development Process
MOSS
Code Cop Project Lifecycle
Contract signed by client
CS425 final presentation
CS499 final presentation
Everyone
Keith
Alan
Ryan
Everyone
Rhonda
MOSS
System DesignSystem Design
MOSS
System OverviewSystem Overview
MOSS Server System 1. MOSS Application 2. Email Server 3. Email Client
CodeCop System 1. CodeCop Application 2. WEB Server (IIS) 3. Database (Access2000) 4. Zip, Tar, UUEncode, UUDecode 5. Email Client 6. Email Server
From Home 1. IE6
From School 1. IE6
INT
ER
NE
T
MOSS
Deployment ModularityDeployment Modularity
Inte
rnet
MS Internet Information Server
StorageSIU-E
Code CopSystem
IE6SIU-E Users
Element Functions Interface
Storage
CC Login.ASP
JVM
SQL I/OMS Access DB
ZIP Engine
JET DB Engine
Code Cop
Application
Mail Server
UUE Mail Client
MOSS Application
MOSS
PingFile I/O
ASPMail Send
JMail Receive
Co
mm
un
ica
tion
Su
bs
ys
tem
FunctionalInterface
Send / ReceiveMOSS Services Ethernet
Code Cop System
Physical 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
Admin Services
Instructor Services
File I/O Services
FunctionalInterface
Ethernet
Physical InterfaceC
om
mu
nic
atio
n S
ub
sy
ste
m
Service Requests
Report Notification
MOSS Results
MOSS
Interface DiagramInterface Diagram
UserBrowser
HTTP
HTTP
HTTP
HTTP
HTTP
HTTP
SMTP
HTTP
HTTP
HTTP
HTTP
HTTP SMTP
SMTP
HTTP
MOSS
Entity Relationship DiagramEntity Relationship Diagram
MOSS
Access RelationshipsAccess Relationships
MOSS
Design Logic Between Modules
Session Variables in ASP.
Querystrings used to pass information from one page to another.
MOSS
Hardware/Languages
1. Hardware Decisions: Windows 2000 dedicated server
2. Languages: ASP, HTML, SQL, Visual Basic, Java, C++
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
Implementation Requirements
File Type: Quantity.ASP 105.C 3.CLASS 4.CLS 3.CPP 4.CSS 19.DLL 17.EXE 1.FRM 2.GIF 88.H 6.HTML 23.IDL 1.JAVA 2.LIB 1.MDB 1Other 53
Total 333
MOSS
Development Tools / Software
• Microsoft Visual Studio 6.0 Enterprise Edition
• Third Party Components:
• ASPMail 4.0 – Used for sending email messages via SMTP
• ASPUpload – Used to upload files from client to server
• JMail – Used for receiving email messages using POP3
• Nerv – Used to ping MOSS before sending service requests
• ZaksDir – Used to retrieve file & folder names in CodeCop.DLL
MOSS
Code Cop User Interfaces
Four Main User Interfaces
1. Login Page
2. Instructor Menu
3. Student Menu
4. Administrator Menu
MOSS
Code Cop User Interfaces
MOSS
TestingTesting
MOSS
CodeCop Test Plan
1. Inspection testing
2. Module testing
3. Integration testing
4. System testing
5. Acceptance testing
MOSS
Deployment Plan
• Installation on CS Dept. Windows 2000 Server
• Entire CodeCop application will be in one place
• Training
•Sessions with the client
•Online help
•Manual
All 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
Demonstration
MOSS
Retrospective Thoughts…• Spiral Lifecycle Model worked well for us to mitigate risk
• We functioned well as a team by recognizing each other's strengths and valuing each other's opinion
• We made all decisions as a group and usually combined all of our ideas when a decision had to be made
• We allowed each other to exercise independence while working on their own individual task
• We communicated on a very regular basis to make sure things were rolling and we were on track
MOSS
Retrospective Thoughts…• Everyone was allowed to volunteer for tasks instead of being assigned
things things they couldn’t do
• Everyone had an opportunity to learn something new, HTML, ASP, COM, and Java script
• Felt lucky cause I had a good group to work with
• Everybody had fun
MOSS
Questions / AnswersQuestions / Answers