Online Scoring System & Reference Table Updating System for PE of NCU Presented by Chung-lien Tseng Date: 10/28, 2004 Outline Introduction Requirement Analysis Evaluation of Alternatives VBA Introduction Database Design Algorithm of Reference Table Problems and Solutions System Structure and System Display Limitations and Constraints Conclusion Online Scoring System 2 Introduction It was a one-year project for MIS students of NCU Objectives Provide an online system (for equipment & place management) for PE office Facilitate the process of scoring Target users Teachers of PE Students Administer of the system My job-Online Scoring System Online Scoring System 3 Outline Introduction Requirement Analysis Evaluation of Alternatives VBA Introduction Database Design Algorithm of Reference Table Problems and Solutions System Structure and System Display Limitations and Constraints Conclusion Online Scoring System 4 Requirement Discovery Teachers have to calculate the average score and then fill in the official form Past grades can’t be saved and checked Some test items of PE don’t have real scores, such as triple jump, running The reference table of converting test grades into scores of percentage is difficult to be updated, and the data is old Online Scoring System 5 Requirement Analysis To maintain the reference table and take the ability of current students into account Reference Table Updating System To facilitate the process of scoring and keep the past student grades on file Online Scoring System Online Scoring System 6 Outline Introduction Requirement Analysis Evaluation of Alternatives VBA Introduction Database Design Algorithm of Reference Table Problems and Solutions System Structure and System Display Limitations and Constraints Conclusion Online Scoring System 7 Evaluation of Alternatives Use Internet Programming Language For Reference Updating System Internet Programming Language ASP ASP.NET For Online Scoring System Excel with VBA Internet Programming Language (ex: ASP, ASP.NET, script languages) Online Scoring System 8 Why Did I Choose Excel Most of PE teachers are normal users, so the system must be easy to use The scoring system needs lots of fields to be filled in grades, and some fields need to be frozen The scoring system needs a mechanism to transform grades of test into percentage scores automatically Online Scoring System 9 Why Did I Choose Excel (Cont’d)) Easy to learn and use Excel with VBA ASP, Script languages… Almost all PE teachers can use Excel With good interface, it’ll be easy to use Need many writable fields Excel interface is composed of table Need to Can use Excel’s transform score formula function automatically to achieve Online Scoring System Insufficient knowledge to do that Large volume intime transformation takes lots of system resource 10 Outline Introduction Requirement Analysis Evaluation of Alternatives VBA Introduction Database Design Algorithm of Reference Table Problems and Solutions System Structure and System Display Limitations and Constraints Conclusion Online Scoring System 11 VBA Introduction VBA stands for Visual Basic Application Similar to VB Built in every AP of Microsoft Office (Word, Excel…) What’s different with macro? A VBA project may contains several macros Macro: a public sub-process with no parameter Macro can be created by either “macro recorder” or “Visual Basic Editor” Online Scoring System 12 Pros and Cons of VBA Pros Facilitate the use of Microsoft Office Record (compile) a repetitive job as macro, so that we only have to load the macro every time we need to do that job Cons Macro may be a malicious program To avoid being attacked, we can set the security level to “High” or “Medium” Digital Signature Online Scoring System 13 Outline Introduction Requirement Analysis Evaluation of Alternatives VBA Introduction Database Design Algorithm of Reference Table Problems and Solutions System Structure and System Display Limitations and Constraints Conclusion Online Scoring System 14 ER Model teacher (account) teachclass teach course include score enroll reftable testitem link student generate contain take test Online Scoring System refmeta 15 Database Design Online Score System account teacherName, id, password teachclass teacherName, courseName course courseName, courseId, class student studentNo, studentName, studentGender, studentDept, studentGrade score studentNo, courseName, score testitem courseName, itemNo, item, itemPercent test courseName, studentNo, itemNo, testScore Online Scoring System 16 Database Design (Cont’d) Reference Table Updating System testitem courseName, itemNo, item, itemPercent reftable item, result, gender, refScore refmeta item, gender, measure, refSize, refMean, refStd, refSizeStd2, refSizeMean2, refSizeMean Online Scoring System 17 Outline Introduction Requirement Analysis Evaluation of Alternatives VBA Introduction Database Design Algorithm of Reference Table Problems and Solutions System Structure and System Display Limitations and Constraints Conclusion Online Scoring System 18 Reference Table Algorithm Based on past data Average grades of current student have most of percentage of new reference table Use the original algorithm of old system to generate new reference table Online Scoring System 19 Reference Table Algorithm (Cont’d) Algorithm Input of algorithm: mean( X ), std (S) of all grades To calculate joint new data, we X and S of old and 2 need ni , ni X i , n X i and ni S i for 2 i newX ni X i n i n X n S 2 newS i i i 2 i n i new X 2 i=I means the old reference table data Online Scoring System 20 Reference Table Algorithm (Cont’d) Range of real score: 40~100 (40 is the lowest score of PE in NCU) Slope: relation between test grades and scores >0triple jump; <0running Set Upper Bound (UB): a range be deducting later UB= 4* S (UB= X if UB> X ) st is a decided parameter for every score range If the slope>0 between test grades and scores, i.e. direction ratio, st decreases when score increases; otherwise, st increases when score increases Online Scoring System 21 Reference Table Algorithm (Cont’d) elseif i>85 and i<89 then st=0.1 * std elseif i>88 and i<92 then st=0.095 * std lseif i>91 and i<95 then st=0.09 * std elseif i>94 and i<98 then st=0.085 * std elseif i>97 and i<101 then st=0.08 * std end if Example slope>0, i=score for i=41 to 100 if i>40 and i<51 then st=0.135 * std elseif i>50 and i<61 then st=0.13 * std elseif i>60 and i<66 then st=0.125 * std elseif i>65 and i<71 then st=0.12 * std elseif i>70 and i<76 then st=0.115 * std elseif i>75 and i<81then st=0.11 * std elseif i>80 and i<86then st=0.105 * std ub=ub-st score(i)=mean-ub next test grade Triple jump 4.6m 0 Online Scoring System 65 score(i) curve mean grade score ub curve 22 Outline Introduction Requirement Analysis Evaluation of Alternatives VBA Introduction Database Design Algorithm of Reference Table Problems and Solutions System Structure and System Display Limitations and Constraints Conclusion Online Scoring System 23 System Flowchart Online Log in Scoring System Choose course & Scoring mode Add or delete items Save modify reset Print Enter Excel & start scoring Leave Set test items and % Online Scoring System Leave & scoring another course (re-log in) 24 Problems 1. 2. 3. 4. 5. 6. How to transform test grade into score immediately? How to tell whether a test item needs the reference table? How to renew the scores if relative reference table has been updates? How to control or jump to a given field of column? How to transmit data (ex: teacher’s name, course name, etc.) from webpage to Excel? Where to put the Excel program (at server or client)? Online Scoring System 25 Solution 1 1. 2. 3. How to transform test grade into score immediately? Save reference tables in database Load required reference tables at the beginning and when needed Use Excel’s built-in “VLOOKUP()” formula to convert test grade into score Online Scoring System 26 Solution 2 1. 2. 3. How to tell whether a test item needs the reference table? Use Combo Box to list all referenced test items when choosing test items If the listed item is selected link to relative reference table If the teacher types test item himself a normal test item Online Scoring System 27 Solution 3 1. 2. 3. How to renew the scores if relative reference table has been updates? Only record the original test grades when saving file Auto-transform into percentage scores on scoring (i.e. open Excel) Scores can’t be renew immediately if administer updates the reference while someone is scoring Online Scoring System 28 Solution 4 1. 2. 3. How to control or jump to a given field of column? Naming some special fields and every column A column is named after item number or data type (stdno, gender…) it is filled Use Excel’s ‘Range(“name”)’ function to control whole column Online Scoring System 29 Solution 5 How to transmit data (ex: teacher’s name, course name, etc.) from webpage to Excel? Record information needed into database while interface is changing from webpage to Excel 1. • 2. 3. Add a new table “scoreLog” with fields “ipAddress”, “teacherName”, “courseName”, “status”… After opening Excel, running “ipconfig” command by Excel function to get IP address According the IP of the teacher, retrieve required information from database Online Scoring System 30 Solution 6 1. Where to put the Excel program (at server or client)? The Excel program is saved at server 1. 2. 3. 2. Easy to maintain Prevent Excel program from being destroyed More mobility Side effect “Read only” dialog shows when 2 teachers score at the same time Online Scoring System 31 Outline Introduction Requirement Analysis Evaluation of Alternatives VBA Introduction Database Design Algorithm of Reference Table Problems and Solutions System Structure and System Display Limitations and Constraints Conclusion Online Scoring System 32 Reference Table Updating System Choose update mode (add item or update) Log in add new item Set new item information (ex: name, measure unit, slope) Note: Choose items to be updated just update Preview updated reference table Update reference table This system is available only with 2 weeks after school opens. Online Scoring System 33 Reference Table Updating System (Cont’d) Online Scoring System 34 Reference Table Updating System (Cont’d) Online Scoring System 35 Reference Table Updating System (Cont’d) Online Scoring System 36 Online Scoring System Log in Choose course & Scoring mode Add or delete items Save modify reset Print Enter Excel & start scoring Leave Set test items and % Leave & scoring another course (re-log in) Online Scoring System 37 Online Scoring System (Cont’d) Online Scoring System 38 Online Scoring System (Cont’d) Online Scoring System 39 Online Scoring System (Cont’d) Online Scoring System 40 Online Scoring System (Cont’d) Online Scoring System 41 Outline Introduction Requirement Analysis Evaluation of Alternatives VBA Introduction Database Design Algorithm of Reference Table Problems and Solutions System Structure and System Display Limitations and Constraints Conclusion Online Scoring System 42 Limitation and Constraints System Online Scoring System can only be run in Excel 2002 and above Insufficient security for student data and scores The VBA won’t work if user doesn’t agree it to run— need trusted digital signature The transfer process between webpage and Excel is rough Data of reference table are not abundant enough Online Scoring System 43 Limitation and Constraints (Cont’d) External Environment Can’t integrate with system of Office of Academic Affairs Communication with end user is not enough Immature programming technique Online Scoring System 44 Outline Introduction Requirement Analysis Evaluation of Alternatives VBA Introduction Database Design Algorithm of Reference Table Problems and Solutions System Structure and System Display Limitations and Constraints Conclusion Online Scoring System 45 Conclusion It an unfinished project In the future Move all scoring system on the Internet Emphasize on the security of system and database Enhance system performance Online Scoring System 46 Wait a minute … it’s present time!!