CSC 110 – Fluency in Information Technology Chapter 7: An Introduction to Debugging Dr. Curry Guinn.

Slides:



Advertisements
Similar presentations
Chapter 7: Introduction to Debugging TECH Prof. Jeff Cheng.
Advertisements

Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
TC 310 The Computer in Technical Communication Dr. Jennifer Turns Week 4, Day 1 (4/21)
HTML Recall that HTML is static in that it describes how a page is to be displayed, but it doesn’t provide for interaction or animation. A page created.
TC 310 The Computer in Technical Communication Dr. Jennifer Turns Week 5, Day 1 (10/28)
Chapter 7 To Err Is Human: An Introduction to Debugging.
What Exactly are the Techniques of Software Verification and Validation A Storehouse of Vast Knowledge on Software Testing.
Basic HTML The Magic Of Web Pages. Create an HTML folder  Make a folder in your H drive and name it “HTML”. We will save EVERYTHING for this unit here.
UNIT 21 Software Engineering.
Slide 1 Today you will: think about criteria for judging a website understand that an effective website will match the needs and interests of users use.
HTML and Designing Web Pages. u At its creation, the web was all about –Web pages were clumsily assembled –Web sites were accumulations of hyperlinked.
Chapter 7 To Err Is Human: An Introduction to Debugging.
HTML 101 MPM What is a website? A website is basically a collection of web pages stored on a particular computer (called a web server) and accessed.
1 UNIT 20 Software Engineering Lecturer: Ghadah Aldehim.
Verification and Validation Overview References: Shach, Object Oriented and Classical Software Engineering Pressman, Software Engineering: a Practitioner’s.
Chapter 1 What is Programming? Lecture Slides to Accompany An Introduction to Computer Science Using Java (2nd Edition) by S.N. Kamin, D. Mickunas, E.
Introduction to Java August 14, 2008 Mrs. C. Furman.
15.1 Fundamentals of HTML.
Unit 15 Webpage Creator. Outlines Introduction Starter Listening Language Work Work study Speaking Writing.
Internet Vocabulary CTE Intro. URL  The “address” of a website. Entering this address in the Address Bar will take you directly to a particular website.
Internet Vocabulary CTE Intro. URL  The “address” of a website. Entering this address in the Address Bar will take you directly to a particular website.
IT Essentials: PC Hardware and Software v4.0. Chapter 4 Objectives 4.1 Explain the purpose of preventive maintenance 4.2 Identify the steps of the troubleshooting.
15.1 Fundamentals of HTML DeKalb County School System.
Created by, Tom Rebold, MPC FLUENCY WITH INFORMATION TECNOLOGY Skills, Concepts, and Capabilities.
INTRODUCTION TO CSS. TOPICS TO BE DISCUSSED……….  Introduction Introduction  Features of CSS Features of CSS  Creating Style Sheet Creating Style Sheet.
Introduction to Video Game Programming (VGP) Mr. Shultz.
CSC 4700 Software Engineering
JavaScript Introduction and Background. 2 Web languages Three formal languages HTML JavaScript CSS Three different tasks Document description Client-side.
Introduction to System Analysis and Design MADE BY: SIR NASEEM AHMED KHAN DOW VOCATIONAL & TECHNICAL TRAINING CENTRE.
JavaScript Errors and Debugging Web Design Sec 6-3 Part or all of this lesson was adapted from the University of Washington’s “Web Design & Development.
Glencoe Introduction to Web Design Chapter 4 XHTML Basics 1 Review Do you remember the vocabulary terms from this chapter? Use the following slides to.
The LC-3 – Chapter 6 COMP 2620 Dr. James Money COMP
The Troubleshooting Process. Hardware Maintenance Make sure that the hardware is operating properly.  Check the condition of parts.  Repair or replace.
JavaScript Part 1 Introduction to scripting The ‘alert’ function.
FOP: Multi-Screen Apps
Online PD Basic HTML The Magic Of Web Pages
JavaScript/ App Lab Programming:
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Selenium HP Web Test Tool Training
Selenium HP Web Test Tool Training
Web Languages What Is a Web Page?
Uppingham Community College
Verification and Testing
Creating a webpage html coding
Verification and Validation Overview
Kodu Game Lab Shaw STEM Lab-2016.
UNIT 15 Webpage Creator.
Fluency with Information Technology
Intro to PHP & Variables
Web Languages What Is a Web Page?
Introduction to Systems Analysis and Design
Testing and Test-Driven Development CSC 4700 Software Engineering
To Err Is Human: An Introduction to Debugging
Objective Understand web-based digital media production methods, software, and hardware. Course Weight : 10%
Software Verification and Validation
Software Verification, Validation, and Acceptance Testing
Software Verification and Validation
Lesson 4: Hyperlinks.
Project 4 Creating an Image Map.
Tonga Institute of Higher Education IT 141: Information Systems
Website Testing EIT, Author Gay Robertson, 2018.
An Introduction to Debugging
Computer Networks Lesson 4.
An Introduction to HTML Pages
TC 310 The Computer in Technical Communication
Software Verification and Validation
The Web Development Life Cycle
One of these things is not like the other
Introduction to scripting
Information system analysis and design
Presentation transcript:

CSC 110 – Fluency in Information Technology Chapter 7: An Introduction to Debugging Dr. Curry Guinn

Today’s Class Debugging Laboratory Activities Warning: Some material in this lecture is not in the book! Laboratory Activities

Debugging Debugging == troubleshooting What kinds of errors do we humans make when working with computers? Syntax errors We violate lexical structure Case sensitivity is a common gotcha Wrong data Wrong command

Harvard Mark II

Errors that aren’t the user’s fault Hardware errors (The First Bug) Burnt chips Software errors Careless programming Logical design errors

How Systems Ought To Be Developed Software life-cycle Over 50 years of creating software has taught us a few things Can apply to any project, manufacturing, creation of a product or service

The Software Life-Cycle Lessons learned over the past 5 decades of programming Software engineering is the application of a systematic and disciplined approach to the development, testing, and maintenance of a program. 5 stages: Analysis Design Coding Testing Operation

1. Analysis What do the clients want? What will the users of the product experience? Feasibility study Is it possible given Time Money Knowledge Requirements specification Specific breakdown of features

2. Design Take requirements specification and turn it into a program/product design What materials do you need? What processes will be necessary to produce the product? Design the system abstractly Architecture: Blueprints Car design: Computer-aided design drawings

3. Coding/Creating/Constructing Implementation Writing the code or Erecting the building If the design is good, this is really easy.

4. Testing Verifying the code meets the specs Unit testing Does the product satisfy the requirements document? Unit testing Test components of product individually Integration testing Combine working components and make sure they function together Case in point: Mars orbiter

5. Operation (Maintenance) Software maintenance Shown to be The most time-consuming Expensive 70% of cost

The Major Steps during Debugging Reproducing the error Must be able to determine the sequence of steps that lead to the error Determine exactly what the faulty behavior is Eliminate the “obvious” causes Divide the process to determine within which part the error is occurring When you reach a dead end, reassess the assumptions you made along the way As you work, make predictions about what should happen and verify that your predictions are fulfilled

An Example The intended web page:

What does it look like now? Butterflies Look at the source Butterfly.zip

Debugging Steps Reproduce the Error Reload the page… still there If we had another browser (like Netscape or Mozilla) we might try that browser and see if it looks the same If it does, we know it’s something in the .htm code

What exactly is wrong At least 2 obvious problems Should be four rows Where are the pictures?

Identifying Obvious Problems Maybe a tag is misspelled Maybe a <tag> is missing its </tag> Maybe a tag is just missing For the images, Check relative link structure

Divide and Conquer The problem must be in the <img> tag Let’s open up something that color codes Getting the quotations right Correcting misspellings Table headings

… And now for the Lab Activity 1: Download and unzip the following webpage/image combo: http://people.uncw.edu/guinnc/courses/fall08/110/notes/day10_chap7_debugging/debugging1.zip Load the web page labexample1.htm in your browser. It should look like the next slide.

Activity 1: Debugging an HTML page Try and track down the various problems in the html source

Activity 2: Testing that Behaviors Match Specifications Download the following tic tac toe game: http://people.uncw.edu/guinnc/courses/fall08/110/notes/day10_chap7_debugging/tictac.zip Also download the following .doc file http://people.uncw.edu/guinnc/courses/fall08/110/notes/day10_chap7_debugging/specs.doc

Activity 2 continued The specs.doc file list the behaviors expected by the tic tac toe program. Conduct tests to determine whether the program acts accordingly If so, mark that condition as Pass within specs.doc. If not, mark that condition as Fail, indicate how the behavior fails, and describe the sequence of steps needed to reproduce the behavior.

Wrap-up Homework Read Chapter 8 Ch 9 only homework due 09/18