12/29/2009 A Mysterious Message Tim Krause, Ph.D. C Computing & New Media Technologies ti & N M di T h l i Oct. 16, 2009 3rd Annual Critical Thinking Conference UW –– Stevens Point UW Designing Performance Tasks Identify the Learning Outcomes Identify the Essential Elements of the Task Build the Task Create a Scoring Guide 1 12/29/2009 A Mysterious Message • Basic Skills: – Demonstrate Demonstrate an understanding of conditional an understanding of conditional statements, loops and arrays in JavaScript – Demonstrate an understanding of how to work with Unicode characters in manipulating variable‐length strings – Efficiently write JavaScript and use functions as a means of re using code means of re‐using code – Effectively structure, comment and organize your code – Accurately interpret linguistic rules and translate into appropriate code A Mysterious Message • Higher‐order thinking skills: – Correctly interpret rules and policies presented in professional documents – Adequately defend a position – Tailor documents based on purpose and audience – Understand some of the ethical considerations associated with the uses to which technology may be put 2 12/29/2009 Essential Elements This is a blended task: – Decrypting the message does require some higher D ti th d i hi h order thinking: • Linguistic and pattern analysis • Understanding the role of subordination and replication • Applying the concept of re‐use – However, this is is also about the mastery of y JavaScript – And, this is also about ethics and the evaluation of arguments Situation (Where? Who?) Context: This is a simulated situation where 3 12/29/2009 Situation (Where? Who?) Role: the student is asked to play the role of a new junior developer who Situation (Where? Who?) Challenge or problem: has been asked to decipher a suspicious looking email, and to then develop a policy regarding encryption. 4 12/29/2009 Products / Performances (What? Why?) Products / Performances (What? Why?) Product: Decrypting the message demonstrates mastery of basic yp g g y skills and Purpose: Allows the student to accomplish the first portion of the performance task and Audience: A di Teaches students how to format and structure code so that it is readable, reusable and modifiable by other developers 5 12/29/2009 Products / Performances (What? Why?) Product: Writing the memo asks students to research a complex g p issue, synthesize information and construct a defendable position so that Purpose: Students start thinking about the broader implications for how we use technology in the workplace with Audience: a non‐technical audience in mind, like a manager, for example. Parameters (How? When?) Resources: Closed: themselves, their textbook and instructor, linguistic analysis examples and rules Open: Google generally, Lynda.com, scholarly articles, third‐party policies on privacy 6 12/29/2009 Closed Set Resources: Context Code (Replace words) Steganography Secret Writing Substitution Cipher (Replace Letters) Cryptography Transposition key key algorithm plaintext cipher text algorithm plaintext Closed Set Resources: Message 7 12/29/2009 Closed Set Resources: Patterns • The three most common letters in the English language are e, t and a. Write a function that counts the occurrences of all 26 letters, and displays the three most common. ll 26 l d di l h h • Vowels appear before and after more letters than consonants. For each of the three letters identified by pattern #1, count how often each appears either immediately before or immediately after other letters. Display your results. • The two letters that are adjacent to the most other letters should be assumed to be the vowels e h ld b d b h l and a. The remaining d Th i i letter should be assumed to be the letter t. Closed Set Resources: Patterns • The letters ee appear more often than aa in plaintext English. Identify the most common duplicate pair for the top two letters. The most common should be assumed to be the letter e; the remaining the letter a should be assumed to be the letter e; the remaining, the letter a. • The only two one‐letter words in the English language are a and i. Identify the remaining one‐letter word, and assume it to be the letter i. • In the English language, the letter h often precedes the letter e. Substitute that letter for the letter h. • The most common three letter words in English are the and and. Use a simple prompt for the user to make the corresponding substitutions. • Use a simple prompt that asks the end‐user to: – Continue: y/n y/ – Identify a letter (X) and a substitution (y) – Confirm their results 8 12/29/2009 Closed Set Resources: Hints • The cipher text has been provided in all upper‐case letters. Knowing what you do about Unicode to help with your analysis, replace upper‐case letters with their lower‐case letters with their lower case plain text letters as you make substitutions. plain text letters as you make substitutions • Work in small steps. For example, I might need to know how many characters are in the cipher. Figure out how to count all of the characters in the cipher. Note that this includes blank spaces. Next count total letters, but exclude spaces. • Frequency analysis should resemble the format represented by Table 1. The goal of your frequency analysis is to assist with troubleshooting. Percentages should total close to 100%, although rounding may produce marginally different results. Your table will also help you confirm that the correct letters are being identified in step 1 correct letters are being identified in step 1. • Your analysis of adjacency (step 2) should resemble the format represented by Table 2. • Identify patterns in your JavaScript. Where possible create functions so that you re‐use as much code as possible. Closed Set Resources: Frequency Analysis 9 12/29/2009 Closed Set Resources: Adjacency Analysis Parameters (How? When?) How: Individually Time Frame: Two weeks (the bulk of one for coding; the remainder for policy and revising/finalizing code) 10 12/29/2009 Standards • For the JavaScript: – – – – The code works, The code works Is well‐formed (follows programming conventions) Is well‐commented, And is efficient (re‐use) • For the policy memo: – Proposes Proposes a policy and a policy and – Defends that policy using credible, research‐based evidence, – In a tone that is audience‐appropriate Performance Task You are a new programmer at Upper‐Midland U i University. On your first day of work, your new it O fi t d f k supervisor hands you a email message that appears to be encrypted. 11 12/29/2009 Performance Task Your initial task is to use your knowledge of J S i tt JavaScript to write a program that will decode it th t ill d d the message and allow your supervisor to determine if it contains sensitive information. To assist you with this task, she has also provided you with a list of linguistic patterns that are typical for the English language. Performance Task After determining the subject‐matter of the email, your supervisor has two additional requests for you. First, she supervisor has two additional requests for you. First, she would like you to recommend a course of action as appropriate to the nature of the message. Second, she points out that Upper‐Midland University currently has no policy regarding the encryption of email messages To assist you with developing one she email messages. To assist you with developing one, she provides you with a copy of the university’s more general policy on email policies and procedures. 12 12/29/2009 Performance Task • To facilitate your anticipated discussion with your supervisor, prepare a memo that: i th t – Provides the plain‐text version of the email message; – Recommends a course of action, as appropriate – Suggests a policy regarding encrypted email messages; – Explains your research and rationale for your recommendations Performance Task To facilitate your anticipated discussion with your supervisor, prepare a memo that: supervisor, prepare a memo that: • Provides the plain‐text version of the email message; • Recommends a course of action, as appropriate; • Suggests a policy regarding encrypted email messages; • Explains your research and rationale for your recommendations 13 12/29/2009 Performance Task • Remember to treat these as guidelines or patterns rather than as hard‐and‐fast rules. As you adapt your solution, i l d include a strategy for over‐riding decisions made by your f idi d i i d b program. • Guidelines are placed in order, from the most likely to occur in a sample, to those that are less likely to hold true. • After After your program executes all of these rules, your your program executes all of these rules your program should display the results to the end‐user and allow her or him to complete any remaining substitutions. Assessment (Partial View) 14