Welcome back to Software Development!

Slides:



Advertisements
Similar presentations
Coding and Debugging. Requirements and Specification Recall the four steps of problem solving: Orient, Plan, Execute, Test Before you start the implementation.
Advertisements

Program Flow Charting How to tackle the beginning stage a program design.
Program Flow Charting How to tackle the beginning stage a program design.
Program Development and Programming Languages
Programming Logic and Design, Introductory, Fourth Edition1 Understanding Computer Components and Operations (continued) A program must be free of syntax.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
Programming Concepts and Languages Chapter 12 – Computers: Understanding Technology, 3 rd edition 1November
C++ Crash Course Class 1 What is programming?. What’s this course about? Goal: Be able to design, write and run simple programs in C++ on a UNIX machine.
1 I.Introduction to Algorithm and Programming Algoritma dan Pemrograman – Teknik Informatika UK Petra 2009.
DCT 1123 PROBLEM SOLVING & ALGORITHMS INTRODUCTION TO PROGRAMMING.
© Janice Regan, CMPT 128, Jan CMPT 128 Introduction to Computing Science for Engineering Students Creating a program.
UNIT 3 TEMPLATE AND EXCEPTION HANDLING. Introduction  Program errors are also referred to as program bugs.  A C program may have one or more of four.
Technology in Action Chapter 10 Behind the Scenes: Software Programming Copyright © 2014 Pearson Education, Inc. Publishing as Prentice Hall.
Computer Programming A program is a set of instructions a computer follows in order to perform a task. solve a problem Collectively, these instructions.
Testing and Debugging Version 1.0. All kinds of things can go wrong when you are developing a program. The compiler discovers syntax errors in your code.
Guide to Programming with Python Chapter One Getting Started: The Game Over Program.
Chapter 1 Introduction Chapter 1 Introduction 1 st Semester 2015 CSC 1101 Computer Programming-1.
The Programming Process Define the problem* Make or buy software? Design the program * Code (write) the program Test (debug) the program Document the.
Cs413_design04.ppt Design and Software Development Design : to create a functional interface that has high usability Development : an organized approach.
What is Programming? A program is a list of instructions that is executed by a computer to accomplish a particular task. Creating those instructions is.
The basics of the programming process The development of programming languages to improve software development Programming languages that the average user.
Intermediate 2 Computing Unit 2 - Software Development.
School of Computer Science & Information Technology G6DICP - Lecture 6 Errors, bugs and debugging.
M1G Introduction to Programming 2 3. Creating Classes: Room and Item.
Chapter 14 Programming and Languages McGraw-Hill/Irwin Copyright © 2008 by The McGraw-Hill Companies, Inc. All rights reserved.
Error Handling Tonga Institute of Higher Education.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
Chapter 7 What’s Wrong with It? (Syntax and Logic Errors) Clearly Visual Basic: Programming with Visual Basic nd Edition.
CSCI 161 Lecture 3 Martin van Bommel. Operating System Program that acts as interface to other software and the underlying hardware Operating System Utilities.
Software. Introduction n A computer can’t do anything without a program of instructions. n A program is a set of instructions a computer carries out.
Debuggers. Errors in Computer Code Errors in computer programs are commonly known as bugs. Three types of errors in computer programs –Syntax errors –Runtime.
11 Making Decisions in a Program Session 2.3. Session Overview  Introduce the idea of an algorithm  Show how a program can make logical decisions based.
Component 1.6.
Chapter 2: The Visual Studio .NET Development Environment
Data Types Variables are used in programs to store items of data e.g a name, a high score, an exam mark. The data stored in a variable is entered from.
Introduction to programming
The Software Development Cycle
1. Introduction A microprocessor executes instructions given by the user Instructions should be in a language known to the microprocessor Microprocessor.
Computer Programming I
A451 Theory – 7 Programming 7A, B - Algorithms.
Programming Concepts and Languages
Algorithm and Ambiguity
Problem Solving Techniques
PROGRAMMING METHODOLOGY
Introduction to Systems Analysis and Design
Programming Fundamentals (750113) Ch1. Problem Solving
Programming Fundamentals (750113) Ch1. Problem Solving
Design and Implementation
CSC128 FUNDAMENTALS OF COMPUTER PROBLEM SOLVING
Programming Errors Key Revision Points.
Chapter 15 Debugging.
The Programming Process
Algorithm and Ambiguity
Programming Fundamentals (750113) Ch1. Problem Solving
Software Development Process
Welcome back to Software Development!
ICT Gaming Lesson 2.
Tonga Institute of Higher Education IT 141: Information Systems
Behind the scenes: software programming
An Introduction to Programming with C++ Fifth Edition
Programming Fundamentals (750113) Ch1. Problem Solving
Welcome back to Software Development!
Tonga Institute of Higher Education IT 141: Information Systems
Designing Software.
Chapter 15 Debugging.
Programming Logic and Design Eighth Edition
The Software Development Cycle
Chapter 15 Debugging.
Presentation transcript:

Welcome back to Software Development!

STAIR Design Method STAIR

STAIR Design Method STAIR State the problem

STAIR Design Method STAIR State the problem Tool identification

STAIR Design Method STAIR State the problem Tool identification Algorithm

STAIR Design Method STAIR State the problem Tool identification Algorithm Implementation

STAIR Design Method STAIR State the problem Tool identification Algorithm Implementation Refinement

STAIR – Step 1

STAIR – Step 1 State the problem

STAIR – Step 1 State the problem Clear and concise

STAIR – Step 1 State the problem Clear and concise Just a sentence (to maybe a paragraph)

STAIR – Step 1 State the problem Clear and concise Just a sentence (to maybe a paragraph) Indicates what you want to accomplish

STAIR – Step 1 State the problem Clear and concise Just a sentence (to maybe a paragraph) Indicates what you want to accomplish As non-technical as possible

STAIR – Step 1 State the problem Clear and concise Just a sentence (to maybe a paragraph) Indicates what you want to accomplish As non-technical as possible Very important!

STAIR – Step 1 State the problem Clear and concise Just a sentence (to maybe a paragraph) Indicates what you want to accomplish As non-technical as possible Very important! If you can’t simply state what you are supposed to do…

STAIR – Step 1 State the problem Clear and concise Just a sentence (to maybe a paragraph) Indicates what you want to accomplish As non-technical as possible Very important! If you can’t simply state what you are supposed to do…how can you do it?

STAIR – Step 2

STAIR – Step 2 Tool identification

STAIR – Step 2 Tool identification The programming “stuff” you think you will need…

STAIR – Step 2 Tool identification The programming “stuff” you think you will need… Will our program be making decisions?

STAIR – Step 2 Tool identification The programming “stuff” you think you will need… Will our program be making decisions? (diamonds in the flowchart)

STAIR – Step 2 Tool identification The programming “stuff” you think you will need… Will our program be making decisions? (diamonds in the flowchart) Will our program need to loop?

STAIR – Step 2 Tool identification The programming “stuff” you think you will need… Will our program be making decisions? (diamonds in the flowchart) Will our program need to loop? Will I need variables to hold information?

STAIR – Step 2 Tool identification The programming “stuff” you think you will need… Will our program be making decisions? (diamonds in the flowchart) Will our program need to loop? Will I need variables to hold information? What type of information?

STAIR – Step 2 Tool identification The programming “stuff” you think you will need… Will our program be making decisions? (diamonds in the flowchart) Will our program need to loop? Will I need variables to hold information? What type of information? (strings, numbers, …)

STAIR – Step 2 Tool identification The programming “stuff” you think you will need… Will our program be making decisions? (diamonds in the flowchart) Will our program need to loop? Will I need variables to hold information? What type of information? (strings, numbers, …) How many?

STAIR – Step 2 Tool identification The programming “stuff” you think you will need… Will our program be making decisions? (diamonds in the flowchart) Will our program need to loop? Will I need variables to hold information? What type of information? (strings, numbers, …) How many? For what?

STAIR – Step 2 Tool identification The programming “stuff” you think you will need… Will our program be making decisions? (diamonds in the flowchart) Will our program need to loop? Will I need variables to hold information? What type of information? (strings, numbers, …) How many? For what? (user name, favorite color, …)

STAIR – Step 2 Tool identification The programming “stuff” you think you will need… Will our program be making decisions? (diamonds in the flowchart) Will our program need to loop? Will I need variables to hold information? What type of information? (strings, numbers, …) How many? For what? (user name, favorite color, …) Will we need anything .NET provides?

STAIR – Step 2 Tool identification The programming “stuff” you think you will need… Will our program be making decisions? (diamonds in the flowchart) Will our program need to loop? Will I need variables to hold information? What type of information? (strings, numbers, …) How many? For what? (user name, favorite color, …) Will we need anything .NET provides? Console.ReadLine and/or Console.WriteLine

STAIR – Step 2 Tool identification The programming “stuff” you think you will need… Will our program be making decisions? (diamonds in the flowchart) Will our program need to loop? Will I need variables to hold information? What type of information? (strings, numbers, …) How many? For what? (user name, favorite color, …) Will we need anything .NET provides? Console.ReadLine and/or Console.WriteLine Will we need any algorithms we’ve already written?

STAIR – Step 3 cont

STAIR – Step 3 cont Test Plan

STAIR – Step 3 cont Test Plan Before you write code

STAIR – Step 3 cont Test Plan Before you write code Determine how to tell if your program is doing what it is supposed to

STAIR – Step 3 cont Test Plan Before you write code Determine how to tell if your program is doing what it is supposed to Think through what may go wrong

STAIR – Step 3 cont Test Plan Before you write code Determine how to tell if your program is doing what it is supposed to Think through what may go wrong…boundary conditions

STAIR – Step 3 cont Test Plan Before you write code Determine how to tell if your program is doing what it is supposed to Think through what may go wrong…boundary conditions Write out a plan:

STAIR – Step 3 cont Test Plan Before you write code Determine how to tell if your program is doing what it is supposed to Think through what may go wrong…boundary conditions Write out a plan: We will look for these things to be working

STAIR – Step 3 cont Test Plan Before you write code Determine how to tell if your program is doing what it is supposed to Think through what may go wrong…boundary conditions Write out a plan: We will look for these things to be working We will test these bad things to make sure our program still works right

STAIR – Step 3 cont Test Plan Before you write code Determine how to tell if your program is doing what it is supposed to Think through what may go wrong…boundary conditions Write out a plan: We will look for these things to be working We will test these bad things to make sure our program still works right Do this before you write code!

STAIR – Step 3 cont Test Plan Before you write code Determine how to tell if your program is doing what it is supposed to Think through what may go wrong…boundary conditions Write out a plan: We will look for these things to be working We will test these bad things to make sure our program still works right Do this before you write code! Play computer

STAIR – Step 3 cont Test Plan Before you write code Determine how to tell if your program is doing what it is supposed to Think through what may go wrong…boundary conditions Write out a plan: We will look for these things to be working We will test these bad things to make sure our program still works right Do this before you write code! Play computer “Run” your algorithm step-by-step to see if it does what you expect

STAIR – Step 4

STAIR – Step 4 Implementation

STAIR – Step 4 Implementation (using the IDE…Visual Studio 2005)

STAIR – Step 4 Implementation (using the IDE…Visual Studio 2005) This is the first time you are writing code!

STAIR – Step 4 Implementation (using the IDE…Visual Studio 2005) This is the first time you are writing code! Edit

STAIR – Step 4 Implementation (using the IDE…Visual Studio 2005) This is the first time you are writing code! Edit Type in the C# code implementing your algorithms

STAIR – Step 4 Implementation (using the IDE…Visual Studio 2005) This is the first time you are writing code! Edit Type in the C# code implementing your algorithms Compile

STAIR – Step 4 Implementation (using the IDE…Visual Studio 2005) This is the first time you are writing code! Edit Type in the C# code implementing your algorithms Compile Translate your C# code into machine language

STAIR – Step 4 Implementation (using the IDE…Visual Studio 2005) This is the first time you are writing code! Edit Type in the C# code implementing your algorithms Compile Translate your C# code into machine language The compiler will catch any language problems

STAIR – Step 4 Implementation (using the IDE…Visual Studio 2005) This is the first time you are writing code! Edit Type in the C# code implementing your algorithms Compile Translate your C# code into machine language The compiler will catch any language problems Correct error and recompile

STAIR – Step 4 Implementation (using the IDE…Visual Studio 2005) This is the first time you are writing code! Edit Type in the C# code implementing your algorithms Compile Translate your C# code into machine language The compiler will catch any language problems Correct error and recompile Run the program!

STAIR – Step 5

STAIR – Step 5 Refinement

STAIR – Step 5 Refinement Rarely will it run correctly the 1st (or 2nd) time

STAIR – Step 5 Refinement Rarely will it run correctly the 1st (or 2nd) time Two general types of bugs:

STAIR – Step 5 Refinement Rarely will it run correctly the 1st (or 2nd) time Two general types of bugs: Crashes

STAIR – Step 5 Refinement Rarely will it run correctly the 1st (or 2nd) time Two general types of bugs: Crashes You will get an error message and the debugger will show you what line of code the error occurred on.

STAIR – Step 5 Refinement Rarely will it run correctly the 1st (or 2nd) time Two general types of bugs: Crashes You will get an error message and the debugger will show you what line of code the error occurred on. Logic errors

STAIR – Step 5 Refinement Rarely will it run correctly the 1st (or 2nd) time Two general types of bugs: Crashes You will get an error message and the debugger will show you what line of code the error occurred on. Logic errors Your algorithm is wrong

STAIR – Step 5 Refinement Rarely will it run correctly the 1st (or 2nd) time Two general types of bugs: Crashes You will get an error message and the debugger will show you what line of code the error occurred on. Logic errors Your algorithm is wrong Program isn’t doing what you really intended

STAIR – Step 5 Refinement Rarely will it run correctly the 1st (or 2nd) time Two general types of bugs: Crashes You will get an error message and the debugger will show you what line of code the error occurred on. Logic errors Your algorithm is wrong Program isn’t doing what you really intended Remember, the computer does exactly what you tell it to!

Clear and Unclear Windows