Understand and Define your Architecture
Complexity results from dependencies which violate the intended architecture, crossing layer or component boundaries. These couplings prevent modularity, leading to poor performance and greater defects while increasing the costs to build, test, and maintain the system.
Complexity can overwhelm traditional methods of representing the elements of a system and its interdependencies. How can you tell which of these arrows are violating your intended architecture?
Lattix uses the Dependency Structure Matrix (DSM) to visualize the entire system and its interdependencies at every level of its hierarchy. A DSM is the most simple, compact and powerful representation of any system in the form of a square matrix.
A number of partitioning algorithms can be used on the DSM for architectural discovery and management. They help identify layering (hierarchy) and componentization (modularity) within the software system even after the architecture has eroded. The results of the partitioning algorithms are displayed as square boxes, called virtual partitions, indicating possible substructures or new hierarchy.
Understand and Define your Architecture
Complexity results from dependencies which violate the intended architecture, crossing layer or component boundaries. These couplings prevent modularity, leading to poor performance and greater defects while increasing the costs to build, test, and maintain the system.
Complexity can overwhelm traditional methods of representing the elements of a system and its interdependencies. How can you tell which of these arrows are violating your intended architecture?
Lattix uses the Dependency Structure Matrix (DSM) to visualize the entire system and its interdependencies at every level of its hierarchy. A DSM is the most simple, compact and powerful representation of any system in the form of a square matrix.
A number of partitioning algorithms can be used on the DSM for architectural discovery and management. They help identify layering (hierarchy) and componentization (modularity) within the software system even after the architecture has eroded. The results of the partitioning algorithms are displayed as square boxes, called virtual partitions, indicating possible substructures or new hierarchy.
Understand and Define your Architecture
Complexity results from dependencies which violate the intended architecture, crossing layer or component boundaries. These couplings prevent modularity, leading to poor performance and greater defects while increasing the costs to build, test, and maintain the system.
Complexity can overwhelm traditional methods of representing the elements of a system and its interdependencies. How can you tell which of these arrows are violating your intended architecture?
Lattix uses the Dependency Structure Matrix (DSM) to visualize the entire system and its interdependencies at every level of its hierarchy. A DSM is the most simple, compact and powerful representation of any system in the form of a square matrix.
A number of partitioning algorithms can be used on the DSM for architectural discovery and management. They help identify layering (hierarchy) and componentization (modularity) within the software system even after the architecture has eroded. The results of the partitioning algorithms are displayed as square boxes, called virtual partitions, indicating possible substructures or new hierarchy.
Control and Monitor your Architecture
Lattix uses the concept of Design Rules to specify the allowed nature of the relationship between system elements based on the intended architecture. Rules can be specified for subsystem layering, component independence, and API enforcement at any level.
These Design Rules enable the intended architecture to be communicated and enforced with each new build, preventing erosion and technical debt from increasing further. Remediation and refactoring can then be prioritized according to the highest value in the architecture.
Rules-based architecture enforcement can be automated through the use of Lattix Command Line utilities in the build system, especially in CI DevOps pipelines. Impact analysis reports on violations can be generated automatically and presented in the merge request to assess remediation.
Monitoring of the architecture over time is accomplished by publishing snapshots of each build into the Lattix Repository. Lattix Web then be used by the extended team to view and compare trends of changes, architecture issues, key metrics, and a wide variety of architectural data.
Control and Monitor your Architecture
Lattix uses the concept of Design Rules to specify the allowed nature of the relationship between system elements based on the intended architecture. Rules can be specified for subsystem layering, component independence, and API enforcement at any level.
These Design Rules enable the intended architecture to be communicated and enforced with each new build, preventing erosion and technical debt from increasing further. Remediation and refactoring can then be prioritized according to the highest value in the architecture.
Rules-based architecture enforcement can be automated through the use of Lattix Command Line utilities in the build system, especially in CI DevOps pipelines. Impact analysis reports on violations can be generated automatically and presented in the merge request to assess remediation.
Monitoring of the architecture over time is accomplished by publishing snapshots of each build into the Lattix Repository. Lattix Web then be used by the extended team to view and compare trends of changes, architecture issues, key metrics, and a wide variety of architectural data.
Control and Monitor your Architecture
Lattix uses the concept of Design Rules to specify the allowed nature of the relationship between system elements based on the intended architecture. Rules can be specified for subsystem layering, component independence, and API enforcement at any level.
These Design Rules enable the intended architecture to be communicated and enforced with each new build, preventing erosion and technical debt from increasing further. Remediation and refactoring can then be prioritized according to the highest value in the architecture.
Rules-based architecture enforcement can be automated through the use of Lattix Command Line utilities in the build system, especially in CI DevOps pipelines. Impact analysis reports on violations can be generated automatically and presented in the merge request to assess remediation.
Monitoring of the architecture over time is accomplished by publishing snapshots of each build into the Lattix Repository. Lattix Web then be used by the extended team to view and compare trends of changes, architecture issues, key metrics, and a wide variety of architectural data.