An Architectural Review of TAKEaTEST.Net Southern California Code Camp California State University, Fullerton January 21-22, 2006 Ben Aminnia Pointer Corporation
2 Primary Goals A Table-Driven Test Taking Tool on the Web Conduct Multiple Test Styles, using the same Test Engine Define Test Groups Accessible by Each Login ID Define New Tests without Creating New Web Pages Store Test Results in a Database
3 Test Styles Style 1 - Multiple Choice Style 2 - Rating Scale of 0 through 5 Style 3 - Rating Scale with 5 Custom Headings Style 4 - Rating Scale with 2-5 Custom Headings Style 5 - Rating Scale of 0 through 5 with User Comments Style 6 - Rating Scale with 2-9 Custom Headings and Optional User Comments
4 Test Style 1 Multiple Choice
5 Test Style 2 Rating Scale of 0 through 5
6 Test Style 3 Rating Scale with 5 Custom Headings
7 Test Style 4 Rating Scale with 2-5 Custom Headings
8 Test Style 5 Rating Scale of 0 through 5 with User Comments
9 Test Style 6 Rating Scale with 2-9 Custom Headings and Optional User Comments
10 Scoring Styles Different Score for each Question (e.g. The Millionnaire) Order of Option Button Reverse Order of Option Button (e.g. Priority Order) None
11 Design Documents Database E/R Diagram Web Page Navigation Chart Sanity Savers Session Variables Stored Procedures Summary
12 Database E/R Diagram
13 Web Page Navigation Chart
14 The Test Engine at a Glance … Interactive Entry via Index.htm Automated Entry via Another Application ASP.NET Test Engine SQL Server Database
15 Different Ways to Launch TAKEaTEST.Net From the Internet … Login with a Shared ID (e.g. Guest) Login with a Private ID (e.g. CodeCamp) Demo From Another Application Necessary Information Passed via Arguments No Login Page – Proceed to Test Group Demo
16 DB Technology Original prototype was in MS Access! Soon converted to SQL Server 2000 A couple of in-line queries Mostly Stored-Procedures
17 DB Connection A Mix of OLEDB and SQLConnect Logic to Identify Local vs. WWW (thus showing certain things in Local mode only) Connection string housed inside the code (NOT in web.config)
18 Deployment Application Development: FP2003 Production: Visual Studio Setup App Database Major Upgrades: Script Minor Upgrades: Redo
19 Capabilities Send test results to designated administrator Via SMTP (not Outlook) My SMTP or Yours Optional
20 Under the Hood …
21 Speaker Evaluation Website: Login ID:codecamp
22 My Contact Information Ben Aminnia