User Tools

Site Tools


principles:constantine_s_law

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
principles:constantine_s_law [2021-02-01 23:04] – old revision restored (2020-10-12 16:06) 95.216.157.202principles:constantine_s_law [2021-10-18 21:21] (current) – +++ restored +++ christian
Line 7: Line 7:
 ===== Context ===== ===== Context =====
 /* fill in contexts here: */ /* fill in contexts here: */
-  * [[contexts:Object-Oriented Design]] +  * [[contexts:Object-Oriented Design]] 
 +  * [[contexts:API Design]] 
 +  * [[contexts:Architecture]]
  
  
-===== Definition =====+===== Principle Statement =====
  
 > "A structure is stable if cohesion is strong and coupling is low."((Albert Endres and Dieter Rombach: //A Handbook of Software and Systems Engineering//. p. 43)) > "A structure is stable if cohesion is strong and coupling is low."((Albert Endres and Dieter Rombach: //A Handbook of Software and Systems Engineering//. p. 43))
Line 20: Line 22:
 ===== Rationale ===== ===== Rationale =====
  
 +
 +===== Strategies =====
 +
 +
 +===== Caveats =====
 +
 +See section [[#contrary principles]].
  
  
Line 43: Line 52:
  
 ==== Specializations ==== ==== Specializations ====
 +
 +  * [[principles:Information Expert]]
  
 ==== Contrary Principles ==== ==== Contrary Principles ====
 +
 +  * [[principles:Keep It Simple Stupid]]: Following this principle often makes the design more complicated.
  
 ==== Complementary Principles ==== ==== Complementary Principles ====
 +
 +  * [[principles:Model Principle]]
  
 ==== Principle Collections ==== ==== Principle Collections ====
  
  
-===== Example =====+===== Examples =====
  
  
Line 63: Line 78:
  
   * Albert Endres and Dieter Rombach: //A Handbook of Software and Systems Engineering//. p. 43pp.   * Albert Endres and Dieter Rombach: //A Handbook of Software and Systems Engineering//. p. 43pp.
 +  * Glenford J. Myers: //Reliable Software through Composite Design//
 +  * [[wp>Loose coupling]], [[wp>Coupling (computer programming)]]
 +  * [[wp>Cohesion (computer science)]]
 +  * [[wiki>CouplingAndCohesion]]
 +
 +===== Discussion =====
 +
 +Discuss this wiki article and the principle on the corresponding [[talk:principles:Constantine's Law|talk page]].
  
principles/constantine_s_law.1612217051.txt.gz · Last modified: 2021-02-01 23:04 by 95.216.157.202