TestFiles Life Cycle Architecture Chris Byszeski Ooi Hsu Han Amir Kouretchian Sachin Pradhan Quang...
-
Upload
camilla-jocelyn-quinn -
Category
Documents
-
view
214 -
download
0
Transcript of TestFiles Life Cycle Architecture Chris Byszeski Ooi Hsu Han Amir Kouretchian Sachin Pradhan Quang...
TestFilesLife Cycle Architecture
Chris ByszeskiOoi Hsu Han
Amir KouretchianSachin Pradhan
Quang TranPeter Turschmid
Nick Walker
Introduction – What is TestFiles?
A web application targeted towards students Share and distribute old tests, quizzes, notes
and homework assignments Easy access through intelligent searching
over a variety of metadata: Class, title, type of test, instructor, etc
Self-sustaining: provides incentive to contribute
Not a social networking site, but will include a variety of creative personalized features
Functional Specification
Feature Set
User account creation, authentication/login Personalized welcome screen for each user Search (basic & advanced) &
Viewing/downloading testfiles Upload Rating of testfiles
Feature Set
Dynamically generated document page Favorite users management (favorite
uploaders) Quota system Uploader profile page Administrator/Maintenance Page Group control/test files access permissions Notification of new testfiles
Welcome Page
Primary page, “feature gateway” Contains
Advanced Search area List of recent downloads (for rating) Recommended testfiles Favorite user list, with recent uploads Most wanted testfiles Link to profile/settings editor Link to help page
Site Navigation Graph
Login
Welcome Screen
Administrator Page
Admin Login
Results
Test Info Screen
User Info
Edit Profile
Help
Submit Test
Submit Comment
User Submits Password
Help Link
BackEdit Profile Link
Commit Changes
Perform Search QueryBack
Test Choice Back to Results
Link to Comment Editor
Commit Comment
Link to Test Submission Page
Commit Test and Return
Cancel
Link to User Info
Back
Sample Use CaseGoal To download old midterms for a certain class
Primary Actor The user who is seeking for the old midterm
Precondition The user has an account and is logged in.
Successful Postcondition The user is able to download/view the test, and rate it accordingly or get a notification that the user is restricted from downloading the test.
Unsuccessful Postcondition No relevant testfiles is displayed when there are relevant testfiles
Trigger The user searched for the testfiles
Main Success Scenario
Failure Scenario
The user enters username and passwordThe system verifies and logs the user in A personalized welcome screen is displayedUser enters search criterion in search area of welcome pageA list of testfiles matching the criterion are displayed along with its metadata. All restricted testfiles that the user does not have permission to does not display in search result.The user clicks on one of the search resultsThe user can view/download the testfile, rate the testfile, flag the testfile as inappropriate, or add a comment about the testfile
User authentication failsNo relevant testfiles are displayedThe user is restricted from downloading the testfile when the user is allowed to
System Architecture
Architecture Overview
Microsoft IIS Server Microsoft SQL Server ASP.NET C# Basic, well known
web application setup from databases class – standard in industry
Network
IIS Server
SQL Server
ASP.NET Web Interface
C# Webservice
FileSystem
User
Database SchemaUsers
PK UserID
Username Password Graduating Year Email Address School Major Student/Prof/Other Quota InformationFK1 Title(Quiz, Midterm, Final)FK1 ClassFK1 UniversityFK1 InstructorFK1 Submiting User
Tests
PK Title(Quiz, Midterm, Final)PK ClassPK,FK1 UniversityPK InstructorPK,FK2 Submiting User
Date Submitted Overall Rating Keywords Question Types(MC, TF, etc.) Test File School UserID
Groups
PK,FK1 UserIDPK GroupID
Groupname Read/Write
Comments
PK UserID of CommentorPK,FK1 TitlePK,FK1 ClassPK,FK1 UniversityPK,FK1 InstructorPK,FK1 Submitting User
Username of Commentor Comment Text Attached File Title(Quiz, Midterm, Final) Submiting User
Requests
PK,FK2 Title(Quiz, Midterm, Final)PK,FK2 ClassPK,FK2 UniversityPK,FK2 InstructorPK,FK2 Submiting UserPK,FK1 UserID
Date Submitted Quarter/Semester System
College Information
PK School
Quarter/Semester System Forbidden from use
Evolutionary Changes
Database administrators use software for multiple colleges
More advanced commenting on test Copyright issues and test file access control
Team Structure, Schedule, Tasks and Risk Assessment
Team Structure
Division by proficiency ASP Frontend / UI: Nick, Peter Server Backend: Hsu Han Database Design / Data Management: Amir,
Sachin, Chris Research of .NET Implementation Specifics:
Quang
Schedule and Milestones
Two Primary Milestones: Beta (May 9)
Upload/Download, basic search User login, simple but functional user interface
Final (May 30) Full ranking system, user account creation Administrator mode, file discussion system Favorite uploaders, full/advanced search Full welcome screen, finalized user interface
Risk Assessment
Top Five Risks Implementation Difficulties Tool Setup and Use Feature Creep Schedule Conflicts Database Design Other Concerns
Adherence to Project Methodology “Senioritis”
Testing and Documentation
Testing Strategy
Two-prong approach: User testing Code testing
User Testing
Have users test every build Note bugs and functional inadequacies Ensures stable progress Ensures UI is intuitive and easy to use Ensures proper functionality is being provided
Code Testing
Unit testing EVERY DAY Do not leave to the last minute…write unit
tests for every function Database testing
Hard-code data and run queries to ensure correct data is being stored/returned
Builds and Documentation
Nightly builds Ensure stable and promote clean and efficient
code writing Code documentation DAILY
Promotes clean and maintainable code User documentation
After all features are implemented Use user-feedback during user testing