Академический Документы
Профессиональный Документы
Культура Документы
Architectural 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
Why Architecture?
The architecture is not the operational software.
Rather, it is a representation that enables a software
engineer to:
(1) analyze the effectiveness of the design in meeting
its stated requirements,
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
Data Design
refine data objects and develop a set of data
abstractions
implement data object attributes as one or
more data structures
review data structures to ensure that
appropriate relationships have been
established
simplify data structures as required
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
Architectural Styles
Each style describes a system category that encompasses: (1) a
set of components (e.g., a database, computational modules) that
perform a function required by a system, (2) a set of connectors
that enable communication, coordination and cooperation
among components, (3) constraints that define how components
can be integrated to form the system, and (4) semantic models
that enable a designer to understand the overall properties of a
system by analyzing the known properties of its constituent
parts.
Data-centered architectures
Data flow architectures
Call and return architectures
Object-oriented architectures
Layered architectures
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
Data-Centered Architecture
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
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
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
Layered Architecture
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
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
10
architectural 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
11
Deriving Program
Architecture
Program
Architecture
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
12
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
13
Horizontal Partitioning
define separate branches of the module
hierarchy for each major function
use control modules to coordinate
communication between functions
function 3
function 1
function 2
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
14
Vertical Partitioning:
Factoring
design so that decision making and work
are stratified
decision making modules should reside
at the top of the architecture
decision-makers
workers
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
15
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
16
Structured Design
objective: to derive a program
architecture that is partitioned
approach:
the DFD is mapped into a program architecture
the PSPEC and STD are used to indicate the
content of each module
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
17
Flow Characteristics
Transform flow
Transaction
flow
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
18
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
19
Transform Mapping
a
b
d
x4
x3
c
"Transform" mapping
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
20
Factoring
direction of increasing
decision making
typical "decision
making" modules
21
input
controller
processing
controller
output
controller
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
22
D
C
control
A
A
B
C
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
23
Transaction Flow
incoming flow
action path
T
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
24
Transaction Example
fixture
servos
fixture setting
commands
operator
process
operator
commands
report
display
screen
robot control
robot
control
software
assembly
record
in reality, other
commands
would also be shown
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
25
26
Deriving Level 1
Processing narrative for " process operator commands"
noun-verb
parse
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
27
commands
Error msg
f ix ture
servos
status
read
operator
commands
valid command
f ix ture
determine
command
type
control
robot
send
control
value
analyze
f ix ture
status
f ix ture setting
select report
generate
report
as sembly
record
report
display
sc reen
robot
control
sy stem
robot control
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
28
error msg
prod uce
error
msg
read
co mmand
i nva li d co mmand
co mmand
de te rmi ne
setti ng
read
fixtu re
sta tus
va li da te
co mmand
de te rmi ne
type
robo t co ntro l
format
setti ng
sta tus
read
reco rd
raw se tti ng
co mbi ned
sta tus
reco rd
ca lcul ate
ou tp ut
va lu es
va lu es
send
co ntro l
va lu e
fixtu re setti ng
format
repo rt
repo rt
asse mbl y
reco rd
sta rt /sto p
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
29
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
30
Transaction Mapping
e
t
g
j
m
n
x1
Mapping
b
a
x3
x2
d
x4
x3.1
i
j
k
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
31
error msg
prod uce
error
msg
read
co mmand
i nva li d co mmand
co mmand
de te rmi ne
setti ng
read
fixtu re
sta tus
va li da te
co mmand
de te rmi ne
type
robo t co ntro l
format
setti ng
sta tus
read
reco rd
raw se tti ng
co mbi ned
sta tus
reco rd
ca lcul ate
ou tp ut
va lu es
va lu es
send
co ntro l
va lu e
fixtu re settin g
format
repo rt
repo rt
asse mbl y
reco rd
sta rt /sto p
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
32
command
input
controller
read
command
validate
command
determine
type
produce
error
message
fixture
status
controller
report
generation
controller
send
control
value
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
33
command
input
controller
read
command
validate
command
read
fixture
status
determine
type
produce
error
message
determine
setting
fixture
status
controller
format
setting
report
generation
controller
read
record
send
control
value
calculate
output
values
format
report
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
34
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
35