CH 06
CH 06
CH 06
6/e
Chapter 6
System Engineering
copyright © 1996, 2001, 2005
R.S. Pressman & Associates, Inc.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 1
System Engineering
Elements of a computer-based system
Software
Hardware
People
Database
Documentation
Procedures
Systems
A hierarchy of macro-elements
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 2
The Hierarchy
Business or
Product Domain
World view
Domain of interest
Domain view
System element
Element view
Detailed view
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 3
System Modeling
define the processes that serve the needs of the view under consideration.
represent the behavior of the processes and the assumptions on which the
behavior is based.
explicitly define both exogenous and endogenous input to the model.
exogenous inputs link one constituent of a given view with other constituents at
the same level of other levels; endogenous input links individual components of
a constituent at a particular view.
represent all linkages (including output) that will enable the engineer to
better understand the view.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 4
Business Process Engineering
uses an integrated set of procedures,
methods, and tools to identify how
information systems can best meet the
strategic goals of an enterprise
focuses first on the enterprise and then on the
business area
creates enterprise models, data models and
process models
creates a framework for better information
management distribution, and control
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 5
System Architectures
Three different architectures must be analyzed and designed within
the context of business objectives and goals:
data architecture
applications architecture
technology infrastructure
data architecture provides a framework for the information needs of
a business or business function
application architecture encompasses those elements of a system that
transform objects within the data architecture for some business
purpose
technology infrastructure provides the foundation for the data and
application architectures
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 6
The BPE Hierarchy
Information strategy planning (ISP)
strategic goals defined
success factors/business rules identified
enterprise model created
Business area analysis (BAA)
processes/services modeled
interrelationships of processes and data
Application Engineering
a.k.a ... software engineering
modeling applications/procedures that
address (BAA) and constraints of ISP
Construction and delivery
using CASE and 4GTs, testing
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 7
Information Strategy Planning
Management issues
define strategic business goals/objectives
isolate critical success factors
conduct analysis of technology impact
perform analysis of strategic systems
Technical issues
create a top-level data model
cluster by business/organizational area
refine model and clustering
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 8
Defining Objectives and Goals
Objective—general statement of direction
Goal—defines measurable objective: “reduce
manufactured cost of our product”
Subgoals:
decrease reject rate by 20% in first 6 months
gain 10% price concessions from suppliers
re-engineer 30% of components for ease of manufacture
during first year
Objectives tend to be strategic while goals tend
to be tactical
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 9
Business Area Analysis
define “naturally cohesive groupings of business
functions and data” (Martin)
perform many of the same activities as ISP, but
narrow scope to individual business area
identify existing (old) information systems /
determine compatibility with new ISP model
define systems that are problematic
defining systems that are incompatible with new
information model
begin to establish re-engineering priorities
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 10
The BAA Process
admin.
manufacturing
sales QC distribution
acct eng’ring
Process
Decomposition Matrices
Process Diagram e.g.,
Flow Data entity/process
Models Model matrix
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 11
Product Engineering
The complete
product System analysis
(World view)
capabilities
hardware software
Component
engineering
(Domain view)
Processing requirement
program
component Software
Engineering
Construction
&
Integration
(Detailed view)
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 12
Product Architecture Template
user interface processing
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 13
Architecture Flow Diagram
operator
interface operator requests operator CLSS queries, reports, displays
interface
subsystem
bar code acquisition request
shunt control status
sorting reports
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 14
System Modeling with UML
Deployment diagrams
Each 3-D box depicts a hardware element that is part of
the physical architecture of the system
Activity diagrams
Represent procedural aspects of a system element
Class diagrams
Represent system level elements in terms of the data that
describe the element and the operations that manipulate
the data
These and other UML models will be discussed later
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 15
Deployment Diagram
CLSS processor
Sensor data
acquisition subsystem shunt controller
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 16
Activity Diagram
start conveyorline
sendshunt
control data
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 17
Class Diagram
class name
Box
at t ribut es
barcode not e us e of capit al
forwardSpeed let t er for mult i-word
conveyorLocat ion at t ribut e names
height
widt h
dept h
weight
cont ent s
operat ions
(parent hes es at end
readBarcode () of name indicat e t he
updat eSpeed () lis t of at t ribut es t hat t he
readSpeed() operat ion requires )
updat eLocat ion()
readLocat ion()
get Dimensions()
get Weight()
checkCont ent s()
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with
permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 18