0% found this document useful (0 votes)
5 views

Chapter 1 - Program Development and Planning

The document outlines the fundamentals of program development and planning, emphasizing the distinction between hardware and software, and the importance of a structured approach to problem-solving. It details the Program Development Cycle, which includes analyzing the problem, designing solutions, coding, testing, and documenting the program. Additionally, it introduces programming tools such as flowcharts, pseudo code, and hierarchy charts to aid in the development process.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
5 views

Chapter 1 - Program Development and Planning

The document outlines the fundamentals of program development and planning, emphasizing the distinction between hardware and software, and the importance of a structured approach to problem-solving. It details the Program Development Cycle, which includes analyzing the problem, designing solutions, coding, testing, and documenting the program. Additionally, it introduces programming tools such as flowcharts, pseudo code, and hierarchy charts to aid in the development process.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 22

Program Development

and Planning
Introduction to Hardware and Software
Hardware vs. Software
• Hardware: Physical machinery in a computer system
• Examples: monitor, keyboard, CPU
• Software: Collection of instructions (programs) that direct hardware
• Programs are written to solve problems or perform tasks
• Key Insight: Computers only do what we instruct them to do
• Requires careful and thorough instructions

Program Terminology
• A program may also be called:
• Project
• Application
• Solution
Performing Tasks on Computer
Three-Step Problem-Solving Approach
1.Determine the output
1.What should the task produce?
2.Identify the input
1.What data is necessary to obtain the output?
3.Determine the processing
1.How to process input to obtain desired output
2.What formulas or methods can be used?
Algebra Problem Example
Problem: How fast is a car traveling if it goes 50 miles in
2 hours?
• Output: Speed in miles per hour
• Input: Distance (50 miles) and time (2 hours)
• Processing: Speed = Distance ÷ Time
• Solution: 50 ÷ 2 = 25 miles per hour
Program Planning
The Importance of Planning
• Similar to a baking recipe or architectural blueprint
• Reduces errors
• Saves time in the long run
• More complex problems require more detailed plans
• Properly testing a plan before writing code is essential
Program Development Cycle
1. Analyze: Define the Problem
• Understand what the program should do
• Clarify what the output should be
• Identify the input data available
• Understand the relationship between input and output
Program Development Cycle
2. Design: Plan the Solution
• Create an algorithm (logical sequence of precise steps)
• Include every detail, even obvious steps
• Use programming tools to develop logic plan
• Test the algorithm with representative data
Program Development Cycle
3. Choose the Interface
• Select objects (text boxes, buttons, etc.)
• Determine how input will be obtained
• Decide how output will be displayed
• Create appropriate controls for user interaction
Program Development Cycle
4. Code: Translate Algorithm to Programming
Language
• Write the program using the chosen language (e.g.,
Visual Basic)
• Follow the algorithm developed in step 2
• Apply knowledge of programming language syntax
Program Development Cycle
5. Test and Debug
• Testing: Finding errors (bugs) in the program
• Debugging: Correcting those errors
• Different types of errors:
• Syntax errors (caught by the compiler)
• Runtime errors (appear during execution)
• Logical errors (program runs but produces incorrect results)
Program Development Cycle
6. Complete Documentation
• Organize all material describing the program
• Internal documentation: Comments within the code
• External documentation:
• User manuals
• Online help
• Program descriptions
• Flowcharts, pseudo code, and hierarchy charts
• Should occur throughout development, not just at the
end
Programming Tools
Three Main Tools
1.Flowcharts
2.Pseudo code
3.Hierarchy charts
Flowcharts
Definition and Purpose
• Visual representation of an algorithm using standardized geometric symbols
• Symbols are connected by arrows (flow lines) showing progression
• Flows from top to bottom of page

When to Use Flowcharts


• To develop understanding of a process
• To study a process for improvement
• To communicate how a process works
• When better communication is needed between people
• To document a process
• When planning a project
Flowchart Symbols
Flowchart Symbols
• Rectangle: Processing step
• Parallelogram: Input/Output
• Diamond: Decision
• Oval: Start/End
• Arrows: Flow direction
Flowchart Example
• Example: Create a
flowchart that
prompts a user to
enter a number.
After the number
has been entered, it
is displayed.
Pseudo Code
Definition and Purpose
• Abbreviated plain English version of computer code
• Replaces geometric symbols with English-like statements
• Looks more like computer code than a flowchart
• Allows focus on problem-solving logic rather than language syntax

Pseudo Code Rules


• All statements showing "dependency" are indented
• These include: while, do, for, if, switch statements
• Helps visualize program structure
3 Pseudo Code Examples
Hierarchy Charts
Definition and Purpose
• Shows overall program structure
• Also called:
• Structure charts
• HIPO (Hierarchy plus Input-Process-Output) charts
• Top-down charts
• VTOC (Visual Table of Contents) charts
Hierarchy Chart Characteristics
Hierarchy Chart Characteristics
• Similar to a company's organization chart
• Describes what each module does
• Shows how modules relate to each other
• Read from top to bottom and left to right
• Modules may be subdivided into sub-modules
Hierarchy Chart More (Video)
Practice Activities
Convert Pseudo Code to Flowchart
1.Create a program to add 2 numbers together then
display the result
2.Enter length, width. Calculate perimeter. Lastly display
perimeter of a rectangle
Review Questions
1.List five steps of Program Development Cycle or
System Development Life Cycle (SDLC).
2.What are three tools that are used in programming?
3.Define the following: a. Flow chart b. Pseudo code c.
Hierarchy chart

You might also like