Mtricas em Aplicaes Informticas - PowerPoint PPT Presentation

About This Presentation
Title:

Mtricas em Aplicaes Informticas

Description:

... global system metrics appear locally stochastic ... LRC metrics (1) ... LRC metrics (6) a values for source and object files are strongly correlated. 10 /22 ... – PowerPoint PPT presentation

Number of Views:55
Avg rating:3.0/5.0
Slides: 23
Provided by: ruigusta
Category:

less

Transcript and Presenter's Notes

Title: Mtricas em Aplicaes Informticas


1
Rui Gustavo Crespo Technical University of Lisbon
2
Laws of Software Evolution (1)
  • MM Lehman informal laws of software evolution1
  • Continuing change a program used in a real-world
    environment must change.
  • Increasing entropy the program structure becomes
    more complex, unless efforts are made to avoid
    the complexity.
  • Statistically smooth growth the global system
    metrics appear locally stochastic in time and
    space but are self-regulating and statistically
    smooth.

1Lehman, M.M. Programs, Life Cycles and Laws of
Software Evolution. IEEE Special Issue on
Software Engineering, 68(9), 1060-1076
3
Laws of Software Evolution (2)
  • Valid laws must be-
  • Unambiguous the underlying system model must be
    clear (better formally).
  • Falsifiable model predictions are checked
    against collected data and the law remains valid
    until tests fail.
  • Thesis
  • Program organization plays a role in maintenance,
    and may be measured with LRC (Long-range
    correlation) metrics.
  • Program evolution follows Verhulst population
    model.

4
LRC metrics (1)
  • Encode symbols (data types int, struct,... and
    instruction keywords if, while,...) with a
    balanced numeric code.
  • Identify the Brownian walk graph BW
  • BW(0) 0
  • BW(n) BW(n-1) Code(Sn)
  • Evaluate the root of mean square flutuation about
    the average of displacement.

5
LRC metrics (2)
  • F(l) ? la
  • a 0.5, random programs
  • 0.5ltalt1, meaningful programs

6
LRC metrics (3)
  • A a values for 36 compilers, coded in C

Average 0,82
7
LRC metrics (4)
  • for 36 random programs, same keyword distribution
    (similar results for same number of lines)

Average 0,48
8
LRC metrics (5)
  • a values for 36 random C programs, same number
    of lines, same keyword distribution

Average 0,62
9
LRC metrics (6)
  • a values for source and object files are
    strongly correlated

10
Process dynamics (1)
  • Pierre Verhulst, Belgian mathematician, studied
    models of human population growth in the 19th
    century
  • Growth with unlimited resources
  • du/dtgu, ggt0
  • Solution is an exponential function
    u(t)u(t0)eg(t-t0)
  • Growth with limited resources
  • du/dtb(?-u)u, ? is the upper limit
  • Xt1 P Xt(1-Xt) Xt \in 0,1, P \in 0,4

11
Process dynamics (2)
12
Process dynamics (3)
13
Process dynamics (4)
Oscilation period is 2n
14
Process dynamics (5)
  • BTW, predator and prey populations (e.g., wolves
    and rabbits), are ruled by the same kind of
    equations
  • dr/dtb1(?1 - w)r
  • dw/dtb2(r - ?2)w
  • Solution of the differential equations are
    sinusoidal functions, with different phases

15
Process dynamics (6)
The behaviour is cahotic
16
Process dynamics (7)
  • Software processes also compete for resources
    (time, man-power, )
  • Interaction between components is non-linear
    small changes in a module may stop other modules
    to work properly
  • Proposal link Verhulst P values to
  • Program organization, and
  • Ideas formation

17
Process dynamics (8)
  • anorm 2a-0.5 P at1/at(1-at)

18
Process dynamics (9)
  • BeanMetaData.java versions in JBOSS (Jul 2000-Oct
    2002)

Bifurcation
Chaotic
Normal
19
Process dynamics (10)
20
Process dynamics (11)
  • EJBVerifier20.java versions in JBOSS (May
    2000-Sep 2002)

Chaotic
Bifurcation
Normal
21
Process dynamics (12)
22
Conclusions
  • It is possible to measure program organization
    and automatically highlight version behaviours
  • Next steps
  • Check LRC validity and Verhulst model in other
    applications / languages / process phases
  • Improve Verhulst model (sometimes, Pgt4)
  • Identify faster a algorithms
  • Cardoso,AI Kokol,P. Lenic,M. Crespo,R.G.
    Complexity-based Evaluation of Systems Evolution
    in Advances in UML/XML Based Software
    EvolutionIRM Press 2004 (in print)
Write a Comment
User Comments (0)
About PowerShow.com