Continuous Architecture in Practice: Software Architecture in the Age of Agility and DevOps (Addison-Wesley Signature Series (Vernon))
by Eoin Woods
updated 2d ago
by Eoin Woods
updated 2d ago
Consequently, we must design our systems with recovery from security incidents in our mind and must think about preventing the incidents in the first place. We discuss system resilience in Chapter 7, but from a security perspective, an important part of ensuring resilience is to work closely with the security specialists and SOC personnel while des
... See moreGlenn Goodrich added 4mo ago
In software-intensive systems, technical debt consists of design or implementation constructs that are expedient in the short term but that set up a technical context that can make future change more costly or impossible. Technical debt is a contingent liability whose impact is limited to internal system qualities—primarily, but not only, maintaina
... See moreGlenn Goodrich added 4mo ago
Implement feedback loops, which enable us to iterate through the software development life cycle and understand the impact of architectural decisions. Feedback loops are required so that the team can react quickly to developments in requirements and any unforeseen impact of architectural decisions. In today’s rapid development cycles, we need to be
... See moreGlenn Goodrich added 4mo ago
Formal definition of quality attributes is pretty established in the standards world, although few practitioners are aware of them. For example, the product quality model defined in ISO/IEC 25010,13 part of the SQuaRe model, comprises the eight quality characteristics shown in Figure 2.5.
Glenn Goodrich added 4mo ago
Drive architectural decisions, which are the primary unit of work of architectural activities. Continuous Architecture recommends explicitly focusing on architectural decisions because if we do not understand and capture architectural decisions, we lose the knowledge of tradeoffs made in a particular context. Without this knowledge, the team is inh
... See moreGlenn Goodrich added 4mo ago
Focus on quality attributes, which represent the key cross-cutting requirements that a good architecture should address.
Glenn Goodrich added 4mo ago
Most commercial organizations face the following challenges when defining the architectures of their products: Focus on technology details rather than business context. Perception of architects as not delivering solutions or adding value. Inability of architectural practices to address the increase in speed of IT delivery and to adapt to modern del
... See moreGlenn Goodrich added 4mo ago
We recommend leveraging the utility tree technique from the architecture tradeoff analysis method, or ATAM.15 Documenting architecture scenarios that illustrate quality attribute requirements is a key aspect of this technique. 15. Software Engineering Institute, Architecture Tradeoff Analysis Method Collection. https://resources.sei.cmu.edu/library
... See moreGlenn Goodrich added 4mo ago
As software engineers and architects our job is to try to use our technical and logical thinking skills to identify which is which and to challenge those that are not useful. Which activities help us to really be secure and which are outdated or simply useless “security theatre”? If we don’t do this then all security activities will be devalued and
... See moreGlenn Goodrich added 4mo ago