ECE 2524 - Modularity

ECE 2524

Introduction to Unix for Engineers

Modularity

Read:

Self Study

  1. A C implementation of the Word Frequency Count problem will be the focus of our first collaborative coding project. Think about the problem and how you might structure the code in terms of modules. Sketch out some function names and how the different modules will interact to complete the program.

  2. Why did Dinnis Ritchie have to lie to his colleagues to encourage modularity? What barriers exist to writing good, modular, reusable code. Are they technological, psychological, or a matter of habit?

  3. Hatton suggests that the minimum in the ā€˜Uā€™ shaped curve relating module size to bug density is related to the ideal chunk-size of human short-term memory. What other engineering design tools and concepts may be heavily influenced by human cognitive restrictions? How might understanding these limitations lead to better designs?