Analyze Layered Architectures

Code Maat is a small system with a simple architecture. More elaborate architectures require more sophisticated transformation specifications:

  • Don’t specify all components. For example, ignore small utility components.

  • Differentiate how the code is laid out in the file system against its logical structure. Your analysis transformations don’t have to mirror the code structure the transformations operate on.

  • Use beauty as a guide. You know how you want the ideal system to look. Now think of all the ugly ways those expectations could be broken. In particular, look for beauty breakers that would be expensive.

Let’s see it in practice on a large system.

Identify Significant Layers

Our next case study uses nopCommerce. ...

Get Your Code as a Crime Scene now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.