Hands-On Software Engineering with Python
上QQ阅读APP看书,第一时间看更新

System Modeling

The goal of any system modeling process is to define and document a conceptual model of some aspect of a system, usually focusing individually on one (or many) specific faces of that system. System models may be defined in a formal architecture description language, such as Unified Modeling Language (UML), and can, in those cases, get very detailed – down to the minimum required property and method members of classes. Details at that level are generally fluid – or at least not finalized – until the requirements analysis processes in Agile methodologies, and will be discussed in more detail in Chapter 4, Methodologies, Paradigms, and Practices.

At a higher, less granular level, there are still several system-model views that are of particular interest going into the development process, particularly with respect to the bigger picture:

  • Architecture, both logical and physical
  • Business processes and rules
  • Data structure and flow
  • Interprocess communication
  • System scope/scale