Cover Your Assets
Cover your assets anti-pattern is when a specification is massive and there is not priority weight to each specifications. Readers (developers and other architects)
Symptoms and Consequences
Symptoms and Consequences
- Large semantic gap between architecture documentation and implemented software; documentation does not correspond to system implementation.
- Architects are unfamiliar with key aspects of integration solution.
- Project is over-budget and has slipped its schedule for no obvious reason.
- Requirements changes are costly to implement, and system maintenance generates surprising costs.
- System may comply with most paper requirements but does not meet user expectations.
- User must invent workarounds to cope with limitation of the system.
- Very hard to automate to the point where manual efforts are better.
- Interoperability with other system is not possible, and there is an inability to support integrated system management and intersystem security capabilities.
- Changes to the systems become increasingly difficult.
- System modifications become increasingly likely to introduce new serious bugs.
Causes
Causes
- Absent of a common mechanism makes the architecture difficult to describe or modify.
- Lack of abstractions; all interface are unique to each subsystem.
- Insufficient use of metadata; metadata is not available to support system extension and reconfiguration without software changes.
- Tight coupling between implementation classes requires excessive client code that is service specific.
- Lack of architectural vision.
- Lack of knowledge and having technical debt among architects and developers.
Refactor Recipes
Refactor Recipes
- Establish a common interface across the enterprise.
- Realign all existing legacy system to the common interface.