Copyright Nancy Leveson, Sept 1999 General Software Design Concepts(5) ° Modularity(cont) Sample things to modularize and encapsulate abstract data types algorithms(e.g, sort input and output formats processing sequence machine dependencies(e. g, character codes policies(e.g, when and how to do garbage collection external interfaces(hardware and software) Benefits Allows understanding each part of a system separately Aids in modifying system May confine search for a malfunction to a single modulec Copyright Nancy Leveson, Sept. 1999 General Software Design Concepts (5) Modularity (con’t.) Sample things to modularize and encapsulate: abstract data types algorithms (e.g., sort) input and output formats processing sequence machine dependencies (e.g., character codes) policies (e.g., when and how to do garbage collection) external interfaces (hardware and software) Benefits: Allows understanding each part of a system separately Aids in modifying system May confine search for a malfunction to a single module. ���