Modules, Hierarchy Charts, and Documentation Programming Logic and Design, Second Edition, Comprehensive Chapter 3
Download
Report
Transcript Modules, Hierarchy Charts, and Documentation Programming Logic and Design, Second Edition, Comprehensive Chapter 3
3
Modules, Hierarchy Charts, and
Documentation
Programming Logic and Design,
Second Edition, Comprehensive
Chapter 3
1
3
Objectives
• After studying Chapter 3, you should be able to:
• Describe the advantages of modularization
• Modularize a program
• Understand how a module can call another
module
• Explain how to declare variables
Chapter 3
2
3
Objectives
• After studying Chapter 3, you should be able to:
• Create hierarchy charts
• Understand documentation
• Create print charts
• Interpret file descriptions
• Understand the attributes of complete
documentation
Chapter 3
3
3
Modules
• Large programs are never written as one huge
series of steps.
• Programs are broken down into units called
modules.
• Modules are also referred to as:
– subroutines
– functions
– procedures
– methods
Chapter 3
4
3
Advantages
Modularization Allows:
Multiple Programmers
to Work on a Problem
1. Dissect large task into modules
2. divide the task among various people
•
Chapter 3
5
3
Modularization Allows:
You to Reuse Your Work
• REUSE YOUR WORK
• You can find many real-world examples of
reusability
Chapter 3
6
3
Modularization :
Makes It
Easier to Identify Structures
• When you combine several programming tasks
into modules, it may be easier for you to identify
structures
Chapter 3
7
3
Selection of Logic
From a Payroll Program
Chapter 3
8
3
Modularized Logic
from a Payroll Program
•The single program segment
shown in Figure 3-2
accomplishes the same steps as
the two program segments
shown together in Figure 3-3;
both programs are structured
Chapter 3
9
3
Another Example
No module
Modules can better help you
determine if your flowchart is
structured.
Chapter 3
With module
10
3
Modularizing a
Program- Flowchart
Symbols
Sentinel Symbols
• A module has it own
sentinel symbols (Start
and End)
• The Start symbol has the
name of the module
• The End symbol has the
word “RETURN”
Chapter 3
11
3
Modularize a Program:
Naming the MODULE
• In this text, module names will follow the
same two rules used for variable names:
– Module names must be one word
– Module names should have some meaning
– Additionally, in this text module names will be
followed by a set of parentheses
Chapter 3
12
Another Example
Chapter 3
3
13
Let’s try
3
Example 1 Write a flowchart showing the logic to calculate the volume of an
undetermined amount of rooms. (Volume = Length * Width *
Height)
Think about what your logic needs – Input
– Processing (for more than one room)
– Output
Create a flowchart first without and then with a module.
Chapter 3
14
3
Example 1
- Without
a module
Chapter 3
15
3
Example
1 - With
a Module
Chapter 3
16
3
Modules Calling Other Modules
• A module can be called by both the main program or
by another module
• Modules called by other modules are called
submodules.
Chapter 3
20
3
Flowchart and Pseudocode
for Averaging Program with Modules
Chapter 3
22
Flowchart for Averaging
Program with Submodules
Chapter 3
3
23
3
Another Tool:
Creating Hierarchy Charts
• You can use a hierarchy chart to illustrate
modules’ relationships
• A hierarchy chart does not tell you what tasks
are to be performed within a module; it does
not tell you when or how a module executes
• The hierarchy chart for the last version of the
value-averaging program looks like Figure 3-7
Chapter 3
24
3
Hierarchy Chart for
Value-Averaging Program
Chapter 3
25
3
An Organizational Hierarchy Chart
Chapter 3
26
3
Declaring Variables
• Declaring a variable provides a name for a
memory location
– where computer stores variable values
– notifies computer of data type
• Programming languages declare variables
differently, but minimally you must
– give the variable a name
– give the variable a data type
Chapter 3
27
3
Declaring Variables
• An annotation symbol or annotation box is simply
an attached box containing notes
• You can use an annotation symbol any time you
have more to write than conveniently fits within a
flowchart symbol
• Programmers sometimes create a data dictionary,
which is a list of every variable name used in a
program, along with its type, size, and description
• When a data dictionary is created, it becomes
part of the program documentation
Chapter 3
28
3
Declaring Variables in a Flowchart
• One of first things done in a
program in declaring variables
Next to the process
symbol “Declare
Variables” is an
annotation box stating
the names and types of
the variables
Annotation boxes can be
used anytime text does
not fit in a symbol
Chapter 3
29
3
Declaring Variables
• Languages including COBOL, C++, C#, Java,
and Pascal require declaration of variables with
name and type
• Modern programming languages: variables are
declared within each module that uses them.
Such variables are known as local variables
• We will use global variables—variables that are
given a type and name once- used in all
modules of the program
Chapter 3
30
3
What is Documentation
• All supporting material that goes along with
a program
– User documentation
• Manuals
• Training material
– Program documentation
• used for planning or modifying programs
• internal and external program documentation
Chapter 3
31
3
PROGRAM :
Input Documentation
• A file description describes the data contained in
an input file
• File’s description as part of an organization’s
information systems’ documentation;
Chapter 3
32
3
Input
The inventory file description in Figure 3-20 shows that each items’
name occupies the first 15 characters of each record in the file
• The price of any item in the inventory file is allowed five
positions, 16 through 20
• Two of the positions are reserved for decimal places
• Typically, decimal points themselves are not stored in data
files; they are implied or assumed
Chapter 3
33
3
Input Documentation
• Numeric data are stored with leading zeros
• Programmers create one variable for each field in
the input file
Chapter 3
34
3
Input Documentation
• Recall the data hierarchy relationship
introduced in Chapter 1:
– Database
– File
– Record
– Field
– Character
Chapter 3
35
3
Input Documentation
•
The programmer needs to know is:
– What is the name of the file?
– What data does it contain?
– How much room does the file and each of its fields take
up?
– What type of data is each field—character or numeric?
Chapter 3
36
3
Expanded Inventory File Description
•The file description in Figure 3-21 contains nine fields
Chapter 3
37
3
Internal Documentation
• Comments within
programming code
• Lines of code that do not
effect the running of the
program.
/*************************/
/* Program: Payroll
*/
/* Author: Dan Dainton
*/
/* Date: March 2, 1999
*/
/*************************/
• Written so programmers can
– understand what the
program is doing
/*************************/
/* This module calculates*/
– why the program is doing it
/* tax deductions for
*/
/* payroll checks.
*/
/*************************/
Chapter 3
38
3
External Documentation
• All supporting paperwork a programmer develops
before writing a program.
• External documentation can describe
– Input
– Processing
– Output
• Output documentation is developed first. Why?
Chapter 3
39
3
Output Documentation
• Generally, the reason you would write a program
in a business environment is because particular
information is needed.
• Can the programmer decide what information is
needed and how it’s designed? Can the user
requesting the information?
Chapter 3
40
Output Documentation:
3
Designing a Report
• Printed reports are the most common type of output.
• Reports are designed on printer spacing charts.
– Looks like a grid
– One character per box
Chapter 3
41
3
A Report Design Example
• This report will track inventory for a company
• Report Title : ie “Inventory Report”
Chapter 3
42
3
Creating Column Headings
• Report column : heading
– constant that appear on every page of the report
• Because the headings remain the same throughout the report, they
are written on the print chart literally.
Chapter 3
43
3
More on Detail Lines
• Detail lines
– have variable data
– probably have a variable amount of detail lines on the report
• All the detail lines look the same, but you need to show 2 - 3
lines in your print chart. Why?
Chapter 3
44
3
Understanding Documentation
• Documentation refers to all of the supporting
material that goes with a program
• Two broad categories of documentation are
intended for the programmer and for the user
• People who use computer programs are called
end users, or users for short
• When programmers begin to plan the logic of a
computer program, they require instructions
known as program documentation
Chapter 3
45
3
Understanding Documentation
• Program documentation falls into two categories:
internal and external
• Internal program documentation consists of
program comments, or nonexecuting statements
that programmers place within their code to
explain program statements in English
• External program documentation includes all the
supporting paperwork that programmers develop
before they write a program
Chapter 3
46
3
Output Documentation
• Output documentation is usually the first to be
written
• The most common type of output is a printed
report
• You can design a printed report on a printer
spacing chart, which is also referred to as a print
chart or a print layout
• The title and column headings will be constant on
every page of the report so they are written on the
print chart literally
Chapter 3
47
3
Printer Spacing Chart
Chapter 3
48
3
Printer Spacing Chart with First Title
Chapter 3
49
3
Printer Spacing Chart with
Title and Column Headings
Chapter 3
50
3
Output Documentation
• The exact spacing and use of upper- or lowercase
make a difference
• Notice that the constants used within a report do
not need to follow the same rules as variable
names
• A print layout typically shows how the variable
data will appear on the report
• Each line with its Xs and 9s representing data is a
detail line because it contains the data details
Chapter 3
51
3
Print Chart with Generic Data
Chapter 3
52
3
Variable Data in Report Heading
Chapter 3
53
3
Heading with Page Numbers
Chapter 3
54
3
Print Chart with Literal
in Each Detail Line
Chapter 3
55
3
Output Documentation
• Detail lines typically appear many times per
page, as opposed to heading lines, which
usually appear only once per page
• Besides header lines and detail lines, reports
often include special lines at the end of a report
• Even though lines at the end of a report don’t
always contain numeric totals, they are usually
referred to generically as total lines
Chapter 3
56
3
Report with Variable Data at End
Chapter 3
57
3
Report with Constant Data at End
Chapter 3
58
3
Report with Combined
Constant and Variable Data at End
Chapter 3
59
3
Completing the Documentation
• Program Documentation
– Design output
Plan the logic of the program
– Code the program
– Test the program
• User documentation
– User documentation
instructional materials that nontechnical people
use
Chapter 3
60
3
Completing the Documentation
• The areas addressed in user documentation may
include:
– Description of input for the program
– Who needs the output
– What output should look like
– How to interpret and react to any error message
generated by the program
– How frequently the program needs to run
Chapter 3
61
3
IN SummaryReview Modules
• Programming using modules
• Module is given a name- that name is CALLED
by the calling program
• A module can call other modules
Chapter 3
62
3
Summary- Variables
• To Declaring a Variable:
providing a name for the memory location where
the value is stored
• Identify the data type
You can use a hierarchy chart to illustrate
modules’ relationships
• Documentation refers to all of the supporting
material that goes with a program
• Output documentation is usually written first
Chapter 3
63
3
Summary- Documentation
• File description: lists the data in a file
( description, size, and data type)
• Program documentation – file descriptions,
printer spacing charts etc
•
User Documentation
manuals or other
instructional materials that nontechnical people
use as well as the operating instructions that
computer operators and data-entry personnel
may need
Chapter 3
64