Source Code Components
Off-the-shelf components used as building blocks for larger software.
- Examples: sort verb in COBOL, library functions such as sqrt,
Lisp system functions, IMSL library.
- Booch components (based on abstract data types) are used somewhat.
- Inheritance in object-oriented programming can be considered to be in
- Abstraction: must provide specifications (aside from code) of what the
- Selection: Manuals not so good for selection; need good indexes
- Specialization: Edit code or parameterize,
e.g. by specifying a ``contents'' type. Problem: how much
parameterization is possible?
- Integration: Name conflicts may be a problem. Unix pipes are
another form of integration.
- Cognitive distance: small if user already understands the concept
( e.g., matrix inversion).