SOLID AS A SYSTEM OF CONSTRUCTIVE CONSTRAINTS IN SOFTWARE ARCHITECTURE DESIGN
Keywords:
SOLID, Object-Oriented Programming, Software Architecture, Design Patterns, Cohesion, Coupling, Code Quality Metrics, Dependency Inversion (DI/IoC)Abstract
The article presents SOLID as a system of constructive constraints that disciplines the degrees of freedom in design and transforms the evolution of software systems into a controlled process. It explains the relationship of the principles with the foundations of object-oriented programming, design patterns, and architectural styles. Non-obvious effects are examined, including premature abstractions under OCP, hidden configuration coupling under DIP/DI, class explosion and responsibility fragmentation under SRP/ISP, and semantic violations of LSP that are not captured by type signatures. An operational approach to decision validation is proposed through metrics, contract-based tests, and threshold controls for introducing abstractions, along with practical decision-making protocols.
References
Downloads
Published
Issue
Section
License
Copyright (c) 2025 Information technologies in economics and environmental sciences

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.