Você está na página 1de 9

Supplementary Slides for

Software Engineering:
A Practitioner's Approach, 5/e
copyright 1996, 2001

R.S. Pressman & Associates, Inc.


For University Use Only
May be reproduced ONLY for student use at the university level
when used in conjunction with Software Engineering: A Practitioner's Approach.
Any other reproduction or use is expressly prohibited.
This presentation, slides, or hardcopy may NOT be used for
short courses, industry seminars, or consulting purposes.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach,
5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001

Chapter 16
Component-Level Design

These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach,
5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001

Component-Level Design
the closest design activity to coding
the approach:

review the design description for the


component
use stepwise refinement to develop algorithm
use structured programming to implement
procedural logic
use formal methods to prove logic

These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach,
5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001

Stepwise Refinement
open
walk to door;
reach for knob;
open door;
walk through;
close door.

repeat until door opens


turn knob clockwise;
if knob doesn't turn, then
take key out;
find correct key;
insert in lock;
endif
pull/push door
move out of way;
end repeat

These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach,
5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001

The Component-Level
Design Model
represents the algorithm at a level of
detail that can be reviewed for quality
options:
graphical (e.g. flowchart, box diagram)
pseudocode (e.g., PDL) ... choice of many
programming language
decision table
conduct walkthrough to assess quality

These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach,
5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001

Structured Programming
for Procedural Design
uses a limited set of logical constructs:
sequence
conditional if-then-else, select-case
loops do-while, repeat until
leads to more readable, testable code
important for achieving high quality,
but not enough

These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach,
5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001

A Structured Procedural Design


add a condition Z,
if true, exit the program

a
x1
b

x2

x3

d
f

e
x4
g
x5

These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach,
5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001

Program Design Language (PDL)

if-then-else

if condition x
then process a;
else process b;
endif
PDL

easy to combine with source code


machine readable, no need for graphics input
graphics can be generated from PDL
enables declaration of data as well as procedure
easier to maintain
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach,
5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001

Why Design Language?


can be a derivative of the HOL of choice
e.g., Ada PDL
machine readable and processable
can be embedded with source code,
therefore easier to maintain
can be represented in great detail, if
designer and coder are different
easy to review

These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach,
5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright 1996, 2001

Você também pode gostar