DocumentCode
996865
Title
Elemental concerns (software design)
Author
Krauskopf, Jan
Author_Institution
Star Data Corp., Spaceport, FL, USA
Volume
9
Issue
1
fYear
1990
Firstpage
13
Lastpage
15
Abstract
The elements of good software design are examined. One is coupling, which is the degree of interdependence between two modules. In a good design, coupling is kept to a minimum. The various levels of coupling, range from zero coupling (rare) on through data, stamp, and control coupling, which are acceptable, to global and content coupling, which are not. The second element of good software design is cohesion, which is the strength or logical unity of a module. The highest (and most preferred) level is functional cohesion: a module with functional cohesion performs only one task. There is again a hierarchy of levels, some of which are acceptably high and some of which are not. Other elements of design-factoring, state memory, fan-out, and fan-in-are briefly described.<>
Keywords
software engineering; coupling; factoring; fan-in; fan-out; functional cohesion; logical unity; software design; state memory; Debugging; Design methodology; Engineering drawings; Guidelines; Large-scale systems; NASA; Software design; Software engineering; Software maintenance; Software packages;
fLanguage
English
Journal_Title
Potentials, IEEE
Publisher
ieee
ISSN
0278-6648
Type
jour
DOI
10.1109/45.46811
Filename
46811
Link To Document