Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SER516 Lecture 20a

SER516 Lecture 20a

Software Agility
Dependency Metrics II
(202103)

B546a9b97d993392e4b22b74b99b91fe?s=128

Javier Gonzalez
PRO

February 24, 2019
Tweet

Transcript

  1. jgs SER 516 Software Agility Lecture 20: Dependency Principles II

    Dr. Javier Gonzalez-Sanchez javiergs@asu.edu javiergs.engineering.asu.edu | javiergs.com PERALTA 230U Office Hours: By appointment
  2. jgs 516 00010000 Assignment 05 § Third Sprint Sprint Backlog

    Burndown Chart Retrospective Review Product – Source Code – Clean Source Code Product – Class Diagram– Clean Design Due date Assignment 5.3 – March 30
  3. jgs Previously… Structural Quality

  4. jgs 516 00010000 Principles 1. Acyclic Dependency Principle (ADP) 2.

    Stable Dependency Principle (SDP) 3. Stable Abstraction Principle (SAP)
  5. jgs Stable Abstraction Principle

  6. jgs 516 00010000 Abstractness of a Package § Express the

    portion of contained abstract types. § It is a value 0 to 1: 0 (only concrete classes) to 1 (only interfaces and abstract classes)
  7. jgs 516 00010000 Instability of a Package § Indicates whether

    the package is mainly used by other artifacts (stable – hard to change) or if it mainly depends on other artifacts (instable – changeable). § It is a value 0 to 1: 0 only incoming dependencies to 1 (only outgoing dependencies)
  8. jgs 516 00010000 • Instability = Cout (Cin + Cout)

    Stable Abstraction Principle IC = ?, A= ? IX = ?, A= ? IA = ?, A= ?
  9. jgs 516 00010000 Instability of a Package § Indicates whether

    the package is mainly used by other artifacts (stable – hard to change) or if it mainly depends on other artifacts (instable – changeable). § It is a value 0 to 1: 0 only incoming dependencies to 1 (only outgoing dependencies)
  10. jgs 516 00010000 • Instability = Cout (Cin + Cout)

    Stable Abstraction Principle IC = 1.0, A= ? IX = 0.5, A= ? IA = 0.0, A= ?
  11. jgs To be continued …

  12. jgs SER 516 Software Agility Javier Gonzalez-Sanchez javiergs@asu.edu Spring 2021

    Disclaimer. These slides can only be used as study material for the class SER516 at ASU. They cannot be distributed or used for another purpose.