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

CSE460 Lecture 25

CSE460 Lecture 25

Software Analysis and Design
Structural Complexity
(202104)

Tweet

More Decks by Javier Gonzalez-Sanchez

Other Decks in Programming

Transcript

  1. jgs CSE 460 Software Analysis and Design Lecture 25: Structural

    Complexity Dr. Javier Gonzalez-Sanchez [email protected] javiergs.engineering.asu.edu | javiergs.com PERALTA 230U Office Hours: By appointment
  2. jgs 564 00010100 Announcements § Assignment 06 is due tonight

    We have done a total of quizzes and 6 assignments (4.1666% each) § Final Exam is scheduled Wednesday April 21 (during lecture time) A review scheduled for Monday
  3. jgs 564 00010100 • Instability = Cout (Cin + Cout)

    Stable Abstraction Principle (SAP)
  4. jgs 564 00010100 Distance § Distance: how far a package

    is away from the Main Sequence § D = A + I – 1 § Values -1 to 1 § Absolute Distance |D|
  5. jgs 564 00010100 Example ITeamA = 6 / 0 +

    6 = 1 ATeamA = 0 DTeamA = 0 + 1 – 1 = 0 IJlabel = 0 / 4 + 0 = 0 AJlabel = 0 DJlabel = 0 + 0 – 1 = -1 |Djlabel| = 1 Pain Zone (just an example!)
  6. jgs 564 00010100 Stable Dependency Principle (SDP) § Every dependency

    between modules should terminate on a module whose Instability is less than or equal to the depending module's Instability. § Every dependency between modules should terminate on a module whose Abstractness is greater than or equal to the depending module's Abstractness.
  7. jgs CSE 460 Software Analysis and Design Javier Gonzalez-Sanchez [email protected]

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