A project must provide additional documents that describe plans and procedures that can be used to evaluate the project’s compliance.
The programmer must create fully insulated classes and insulate the public interfaces from compile-time dependencies.
Various methodologies, such as refactoring, support the determination of interfaces. Refactoring generally applies to the entire software implementation, but is especially helpful in properly flushing out interfaces. There are other approaches defined through the pattern community.1
"Design Patterns Library". hillside.net. Retrieved 2022-11-24. https://hillside.net/patterns/ ↩