Chapter 1 Program Designing
Programming / Coding - begins with deciding the output and framing the program
logic
-implementation of logic to facilitate specified computing
operations and functionality - is broken down into modules to facilitate programming
-language that is used by the operating system to perform a Programming Language
task
a. Low level Languages - unhuman terms
Computer Program
b. High Level Languages – can be understood by humans
-set of instructions that guide computer to execute a task
First and Second generation languages
Language translator
-regarded as low level
-interpret the instruction and allows the computer to read,
Machine Language
translate and execute the program
-consist of binary numbers
Program Logic Formulation
Assembly Language
-process of coming up a methodology in developing specific
program logic that will perform a computing task or solve a -easier to use than machine language
problem
Machine Language and Assembly Language
Logic
-low level language and considered friendly
-method of human thought that involves correct thinking in a
linear or step by step manner Fourth generation language
-systematic study of reasoning that provides standards by - free programmers from worrying about the procedures to be
which valid reason can be recognized. followed to solve a problem
Computer Software Fifth Generation Programming languages
-set of programming instructions -enable the computer to solve a problem
Program Development Lifecycle (PDLC) -incorporate concepts like artificial intelligence, expert system
etc.
-used by software developers to define the program structure
2 Types of Translator
6 Phases of PDLC
a. Compiler - translation program which translates the
1. defining the problem entire source code of a high level
2. designing the program b. Interpreter- program that executes the instructions
which are written in a high-level language
3. coding the program
Object Oriented Programming
4. testing and debugging the program
-technique designed to provide component reusability
5. formalizing the solution
6. maintaining the program
High-level good codes can be evaluated with factors such as: 4. Program Testing and Debugging
-Testing refers to process of verifying the accuracy or
a. Robustness - focuses on program continuation workability of the solution
capability 3 Kinds of Language translators:
b. Reliability - focuses on correct design and algorithm a. Assembler - converts a program written in assembly
implementation to its object code equivalent
c. Efficiency - focuses on memory, hardware or other b. Interpreter - converts a program written in high level
properties used to optimize programs language on its object code equivalent on a line by line
d. Readability – proper documentation and indention basis
availability which provide insights to their program c. Compiler - converts a program written in high level
developers or designers language on its object code equivalent on a whole
program basis
Steps in Program Development Debugging
Is the process of locating/identifying and connecting
1. Program Specification errors in the program
- Also called program definition or program analysis
Program Background 2 Types of Errors
-Specify the nature of the program a. Syntax Error – is a violation of the rules and
Available input regulations of whatever programming language the
-Given data which will be manipulated program is being written in
Required output b. Logic Error – when programmer has used an incorrect
-What program intends to do including desired output calculation
layout and specifications
Processing Requirements or Program Methodology 5. Program Documentation
-Operations to be performed on data to obtain the Documenting means a description of the purpose and
Required output process of the program.
2. Program Design 6. Program Maintenance
Algorithm Programmers update software to improve usability to
-Narrative step by step solution to the problem standardize and adjust to organizational changes
Pseudo code
Narrative form of the logic of the program
Definition of Terms
Abstract - well-structured problem formulation in
Logic Structure
Techniques on how statements are organized or
order to tackle complex problem domain.
Abstraction - design activity that makes use of models
presented to show the logic of the program
first before implementation
Ill-structures problem - presence of a problem or a
3 Logic Structures
a. Sequence situation which is to be changed in some way
IPO Chart - known as Input-Process-Output Chart
b. Selection Narrative - refers to program logic that is described
and communicated through words
c. Iteration Algorithm – can be narrative mathematical or logical
step by step procedure of solution in solving particular
Flowcharts problem
-Illustrate data, info and work flow by the Flowchart – diagram that uses standard ANSI
interconnection of specialized symbols with flow lines (American National Standards Institute ) symbols to
show the step by step process
Top-down program design
-Steps called program modules to identify program’s Program Analysis
processing steps 7. Program Plan / blueprint – provides systematic
approach to the computer programming problems
3. Program Coding a. Available Input
-Coding is an actual writing of the program b. Processing Requirements
c. Required Output
Types of Flowchart
1. Program flowchart
Plan to attack showing the detailed steps required in
the solution to a give problem
2. System flowchart
System Development modeling tool, used to diagram
and document design to a new system and present an
overview
Program Flowchart Symbols
Terminator / Terminal
- used to indicate the beginning and ending of a
flowchart or routine
Preparation/Initialization
- used to initialize work areas such as counters,
accumulators or array
Input / Output
- indicate where data are entered
Decision
- used to test a condition, which will be either true or
false
On-Page Connector
- indicate the point of which transfer of control
Off Page Connector
- connect separate pages of a flowchart
Flow Lines
- indicate the sequence in which instruction is executed
System Flowchart Symbols
Predefined Process or Subroutine
- denote a sequence of steps which are separate from
the main flowchart
Printer
- used to print results, reports or messages
Manual Input (keyboard)
-enter the data manually
Display
- display results on the screen, CRT (Cathode Ray Tube)