Terminology
Users of tangle-guard should be familiar with the following terms.
Software Architecture
Section titled “Software Architecture”Software architecture isn’t just about diagrams. It’s about decisions. It defines:
- How your system is structured
- How components communicate
- Where responsibilities lie
- Which technologies are used—and how
Good architecture is what makes a system scalable, maintainable, and understandable. It’s not just for big enterprises or legacy systems—it’s essential from day one if you want to build software that lasts.
This is where software architecture pays off. By creating strict, meaningful boundaries, you reduce technical debt and cognitive overhead — especially in teams with many developers working in parallel. Overall, human resources can be kept at a minimumm.
Layers
Section titled “Layers”A layer defines a group of packages. It’s a virtual boundary created within tangle-guard.
There are horizontal and vertical layers.
Packages and Dependencies
Section titled “Packages and Dependencies”A package is a collection of modules.
Dependencies define relationships between packages.
If layers are used in tangle-guard, packages should be part of exact one layer.
Domains
Section titled “Domains”Domain Specific Language (DSL)
Domain Driven Design
Section titled “Domain Driven Design ”A way structure an application.