Juggling

  • What happens when this piece of code runs.
  • How pieces of code fit together to form modules.
  • How modules fit together to create applications.
  • How applications fit together to create systems.
  • How developers work together to create, deliver and maintain code and modules and applications and systems.
  • How users interact with systems to create outcomes.
  • How developers work with business folks and other knowledge workers to understand desired outcomes.
  • How desired outcomes are likely to change over time.
  • How likely future changes should affect present decisions about how code and modules and applications and systems should fit together.