0% found this document useful (0 votes)
68 views25 pages

Ch05 Functional Decomposition

Here are the key points about coupling and cohesion: - Coupling refers to the interdependencies between modules. High coupling means a module is not very independent and a change in one module can impact others. Low coupling means modules are more independent. - The modules in the amplifier example have some coupling since the output of one module is the input of the next. But the coupling is not very high since each module has a clearly defined role. - Highly coupled systems are more fragile since a problem in one module can propagate. They are also harder to redesign. Low coupled systems allow more independent redesign of modules. - Cohesion refers to the strength of relationships between the tasks within a module. High cohesion

Uploaded by

Summer Triangle
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
68 views25 pages

Ch05 Functional Decomposition

Here are the key points about coupling and cohesion: - Coupling refers to the interdependencies between modules. High coupling means a module is not very independent and a change in one module can impact others. Low coupling means modules are more independent. - The modules in the amplifier example have some coupling since the output of one module is the input of the next. But the coupling is not very high since each module has a clearly defined role. - Highly coupled systems are more fragile since a problem in one module can propagate. They are also harder to redesign. Low coupled systems allow more independent redesign of modules. - Cohesion refers to the strength of relationships between the tasks within a module. High cohesion

Uploaded by

Summer Triangle
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 25

Team of engineers who build a system

need:
 An abstraction of the system
 An unambiguous communication medium
 A way to describe the subsystems
◦ Inputs
◦ Outputs
◦ Behavior
 Functional Decomposition
◦ Function – transformation from inputs to
outputs
◦ Decomposition – reduce to constituent parts

2
By the end of this chapter, you should:
 Understand the differences between bottom-

up and top-down design.


 Know what functional decomposition is and

how to apply it.


 Be able to apply functional decomposition to

different problem domains.


 Understand the concept of coupling and

cohesion, and how they impact design.

3
 Given constituent parts
 Develop a working system
◦ Build modules to accomplish specific tasks
◦ Integrate modules together into working system
 For example
◦ Given a supply AND, OR and NOT gates.
◦ Build a computer
 Pros
◦ Leads to efficient subsystem
 Cons
◦ Complexity is difficult to manage
◦ Little thought to designing reusable modules
◦ Redesign cycles

4
 Given the specification of a system
 Develop a working system

◦ Divide the problem into abstract modules


◦ Reiterate until constituent parts are reached
 Pros
◦ Highly predictable design cycle
◦ Efficient division of labor
 Cons
◦ More time spent in planning

5
Recursively divide and conquer
– Split a module into several submodules
– Define the input, output, and behavior
– Stop when you reach realizable components

Determine Level 0 Determine architecture and


At the detailed Yes
functional N=1 functional requirements for DONE
design level?
requirements modules at Level N

No

N=N+1

6
 The design process is iterative
 Upfront time saves redesign time later
 Submodules should have similar complexity
 Precise input, output, and behavior

specifications
 Look for innovation
 Don’t decompose ad infinitium
 Use suitable abstraction to describe

submodules

7
 Look at how it has been done before
 Use existing technology
 Keep it simple
 Communicate results

8
The system must
 Accept an audio input signal source with a

maximum input voltage of 0.5V peak.


 Have adjustable volume control between

zero volume and the maximum volume


level.
 Deliver a maximum of 50W to an 8

speaker.
 Be powered by a standard 120V 60Hz AC

outlet.

9
Module Audio Power Amplifier
Inputs Audio input signal: 0.5V peak.
Power: 120 volts AC rms, 60Hz.
User volume control: variable control.
Outputs Audio output signal: ?V peak value.
Functionality Amplify the input signal to produce a 50W maximum output
signal. The amplification should have variable user
control. The output volume should be variable between
no volume and a maximum volume level.

audio input signal


Audio Power
audio output signal
Amplifier
power, 120 VAC

10
Audio Amplifier Design

voltage
buffered
amplified
audio input input audio output
Buffer Amplifier High Gain Amplifier signal Power Output Stage
signal signal

DC voltages

Power Supply

power, 120 VAC

11
Module Buffer Amplifier
Inputs - Audio input signal: 0.5V peak.
- Power:  25V DC.
Outputs - Audio signal: 0.5V peak.
Functionality Buffer the input signal and provide unity voltage
gain. It should have an input resistance >1M
and an output resistance <100.

12
Module High Gain Amplifier
Inputs - Audio input signal: 0.5V peak.
- User volume control: variable control.
- Power:  25V DC

Outputs - Audio signal: 20V peak.


Functionality Provide an adjustable voltage gain, between 1 and 40. It
should have an input resistance >100k and an output
resistance <100.

13
 Electronics Design
 Digital Design
 Software Design
 See the book for more in-depth examples

14
The system must
 Measure temperature between 0 and 200C.
 Have an accuracy of 0.4% of full scale.
 Display the temperature digitally, including one
digit beyond the decimal point.
 Be powered by a standard 120V 60Hz AC outlet.
 Use an RTD (thermal resistive device) that has an
accuracy of 0.55C over the range. The resistance
of the RTD varies linearly with temperature from
100Ω at 0C to 178Ω at 200C.

15
Ambient
Temperature Digital
Digital Thermometer Temperature
Power, Display
120 VAC

16
Module Digital Thermometer

Inputs - Ambient temperature: 0-200C.


- Power: 120V AC power.

Outputs - Digital temperature display: A four digit display,


including one digit beyond the decimal point.

Functionality Displays temperature on digital readout with an


accuracy of 0.4% of full scale.

17
BCD0
b0
Ambient b1 BCD1
Temperature VT Analog to Digital . Binary Coded
Temperature 7-Segment LED
Conversion Unit Converter . Decimal (BCD) BCD2
Driver
. Conversion Unit
bN-1 BCD3

+/- x V DC

Power,
120 VAC Power Supply

18
Module Temperature Conversion Unit

Inputs - Ambient temperature: 0-200C.


- Power: ?V DC (to power the electronics).

Outputs - VT: temperature proportional voltage. VT= αT, and


ranges from ? to ?V.
Functionality Produces an output voltage that is linearly proportional
to temperature. It must achieve an accuracy of ?%.

19
A/D Converter

Module

Inputs - VT: voltage proportional to temperature that ranges


from ? to ?V.
- Power: ?V DC.
Outputs - bN-1 -b0: ?-bit binary representation of VT.

Functionality Converts analog input to binary digital output.

20
 How would you determine the
unknown details in the previous 2
slides?

21
 What is coupling?

 How much coupling is there in the modules in the


Level 1 of the previous amplifier example?

 Phenomena of highly coupled systems


◦ A failure in 1 module propagates
◦ Difficult to redesign 1 module
 Phenomena of low coupled systems
◦ Discourages reutilization of a module

22
 What is cohesion?

 Phenomena of highly cohesive systems


◦ Easy to test modules independently
◦ Simple (non-existent) control interface
 Phenomena of low cohesive systems
◦ Less reuse of modules

23
 Design Level 0
◦ Present a single module block diagram with inputs and outputs
identified.
◦ Present the functional requirements: inputs, outputs, and
functionality.
 Design Level 1
◦ Present the Level 1 diagram (system architecture) with all modules
and interconnections shown.
◦ Describe the theory of operation. This should explain how the
modules work together to achieve the functional objectives.
◦ Present the functional requirements for each module at this level.
 Design Level N (for N>1)
◦ Repeat the process from design Level 1 as necessary.
 Design Alternatives
◦ Describe the different alternatives that were considered, the
tradeoffs, and the rationale for the choices made. This should be
based upon concept evaluation methods in Chapter 4.

24
 Design approach: top-down and bottom-up
 Functional Decomposition
◦ Iterative decomposition
◦ Input, output, and function
◦ Applicable to many problem domains
 Coupling – interconnectedness of modules
 Cohesion – focus of modules

25

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy