created by, tom rebold, mpc fluency with information tecnology skills, concepts, and capabilities

12
Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities

Upload: stuart-hamilton

Post on 05-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities

Created by, Tom Rebold, MPC

FLUENCY WITH INFORMATION TECNOLOGY

Skills, Concepts, and Capabilities

Page 2: Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities

Created by, Tom Rebold, MPC

Algorithms and Digitizing Information

PART 2

Page 3: Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities

Created by, Tom Rebold, MPC

TO ERR IS HUMAN

An Introduction to Debugging

chapter7

Precision and AmbiguityDebugging: Isolating the ProblemHTML DebuggingNo Printer Output: A Classic Scenario

To err is human, to really foul things up takes a computer

Page 4: Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities

Copyright © 2003 Pearson Education, Inc. Slide 1-4

Figure 7.1. The Harvard Mark II logbook noting “First actual case of bug being found,” from the Smithsonian Institution.

Page 5: Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities

5

Precision Problems

• How do you say 555-7601 ?

• Need to use “zero” instead of “oh”– Some computers can catch these errors

[email protected] or [email protected] ?

Fonts matter:• [email protected] or [email protected] ?

• Why can’t computers flag these errors?

Page 6: Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities

6

Lexical Structures

• When entering boxes on forms (field inputs), each field has rules about what is legal or not (lexical structure)

• What are some rules for – Entering grades?– Phone numbers? – E-mail addresses?

• Since case sometimes matters, when in doubt, be as exact as you possibly can

Page 7: Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities

7

Debugging

• People troubleshoot all the time– Car doesn’t start– VCR doesn’t work – Find and repair a faulty part

• Sometimes there is a logical design error– System was designed incorrectly – You can’t always rely on a computer system

• Sometimes you settle for a work around

Page 8: Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities

8

Debugging Principles

• Make sure you can reproduce the error • Determine exactly what the problem is • Eliminate the obvious causes • Divide the process, separate parts that

work from parts that don’t • When stuck, ask where you may be

making wrong assumptions • Make predictions about what should

happen if you try something

Page 9: Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities

9

HTML Debugging

http://terra.mpc.cc.ca.us/~mpc01a30/temples.htmlhttp://terra.mpc.edu/~mpc01a30/temples.html

Page 10: Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities

10

HTML Source Code (w/bugs)<html><head><title>Japan Page</title></head> <body bgcolor="black"><font color="white"> <table>

<tr> <td> <a href="tokyo.html"> Tokyo</a></td> <td> <a href="kyoto.html"> Kyoto</a></td> <ta> <a href="osaka.html"> Osaka</a></td> <td> <a href="hiro.html"> Hiroshima</a></td> <td> <a href="yoko.html"> Yokohama</a></td> <td> <a href="fukuoka.html">Fukuoka</a></td> <td> <a href="sapp.html"> Sapporo</a></td> <td> <a href="oki.html"> Okinawa</a></td> <td> <a href="oni.html"> Onimichi</a></td> </tr> </ table> <hl>Japan! </hl> <h2><font face="Helvetica"><At Heian Shrine</font></h2> <img align="left" src="tang.jpeg" width="234" height="296"> <p> <b>In Japan people visit the temples and shrines

for the perspective they give. </b></p> </body></html>

Page 11: Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities

11

Debug Post-mortem

• Summarize changes made

• Summarized unnecessary changes

• Number of errors found—sometimes more than originally observed (hidden errors)

• Most errors are tiny (1 letter)– With huge effects

Page 12: Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities

12

No Printer Output

• We can debug systems we don’t understand

• Reproduced error, understand problem, check obvious

• How to isolate the problem

• Finding the print queue