The Structure and Value of Modularity in Software Design - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

The Structure and Value of Modularity in Software Design

Description:

... the applicability of Baldwin & Clark's theory to inform software design ... D Circ Type. A Input Type. M. NOV Analysis of KWIC. V for strawman design = 0.26 ... – PowerPoint PPT presentation

Number of Views:63
Avg rating:3.0/5.0
Slides: 13
Provided by: cmpeBo
Category:

less

Transcript and Presenter's Notes

Title: The Structure and Value of Modularity in Software Design


1
The Structure and Value of Modularity in Software
Design
  • Written by
  • Kevin J. Sullivan, William G. Griswold, Yuanfang
    Cai
  • Presented by
  • Meltem Yildirim

CmpE-550 / 7.12.2005
2
Outline
  • General Terms
  • Modularity
  • Information Hiding
  • Value of Modularity
  • Motivation of the Paper
  • Baldwin Clarks Theory
  • DSM
  • NOV
  • Contribution of the Paper
  • Conclusion

3
General Terms
  • Modularity the characteristic of a system that
    has been divided into smaller subsystems which
    interact with eachother
  • Information Hiding hiding details of an object
    or function so that each module has the
    information just needed by it
  • Parnas introduced information hiding in 1972
  • case study comparing the changeability of two
    versions of KWIC (Key Words in Context)
  • Hide the design decisions, which are most likely
    to change, from other parts of the system
  • Value of Modularization the benefits obtained by
    exercising a specific modularization solution

4
Motivation
  • We need a model to assess the relative values of
    alternative modularizations for the same system
  • Which of the available modularizations is the
    best for a given system?
  • Augment Parnass work
  • Explore the potential of Baldwin Clarks Theory
    (2000)
  • Design is a value seeking process
  • DSM (Design Structure Matrix)
  • NOV (Net Options Value)

5
Design Structure Matrix (DSM)
Design space to be searched for valuable designs
Design Parameters A, B, C
Design Parameters Data structures Algorithms User
interface look-and-feel Security aspects Power
Usage
For modularity, dependencies across proto-modules
must be broken by splitting
B depends on A
Other operators Substitution Augmentation Exclusi
on Inversion Porting
6
Net Options Value (NOV)
  • Mathematical model for evaluating designs
  • General expression for NOV of a modular design
  • V S0 NOV1 NOV2 NOVn (1)
  • NOVi maxki sini1/2 Q(ki) Ci(ni)ki - Zi (2)
  • Zi Sj-sees-icinj (3)

Total Value of the System
NOV of the ith Module
Cost incurred in ki experiments
Redesign Cost
Value of the Unmodularized System
Visibility Cost of Replacing the ith Module
Expected Benefit
Complexity of the jth module
all j modules that see the ith module
7
Contribution
  • Evaluate the applicability of Baldwin Clarks
    theory to inform software design
  • EDSM extended DSM to also model environment
    variables which cannot be controlled by the
    designer
  • Case study
  • DSM-based analysis of KWIC
  • EDSM-based analysis of KWIC
  • NOV-based analysis of KWIC
  • Computer Configuration
  • (device capacity, speed)
  • Corpus Properties
  • (input size, language)
  • User Profile
  • (experienced or not, interactive or offline)

8
EDSM for strawman modularization
EDSM for proto-modular design
EDSM for information-hiding
modularization
9
NOV Analysis of KWIC
  • V for strawman design 0.26
  • V for proto-modular design 1
  • V for information-hiding design 1.56

x 6
10
Conclusion
  • EDSMs have the potential to
  • model the software and its environment
  • capture Parnas information hiding criterion
  • Compare different modularizations
  • NOV formula provides a quantitative value for
    good modular design
  • Information-hiding design is superior to strawman
    design

11
Questions?
12
My Opinion
  • The process of splitting modules so that they do
    not affect each other makes sense
  • Case study KWIC
  • It is not clear what the modules are, how they
    are chosen and how they are manipulated
  • Scalability is questionable, may be hard to
    utilize in practice because commercial
    applications are far more complex than KWIC
  • The use of Hierarchy Diagrams in designing
    large systems may be beneficial
Write a Comment
User Comments (0)
About PowerShow.com