Blog Posts
Tactics and Patterns for Software Robustness
Robustness, along with other quality attributes, such as security and safety, is a key contributor to our trust that a system will perform in a reliable manner.
• By Rick Kazman
In Software Architecture
Two Categories of Architecture Patterns for Deployability
This post, excerpted from the fourth edition of Software Architecture in Practice, discusses deployability and describes two categories of associated architecture patterns.
• By Rick Kazman
In Software Architecture
Rapid Software Composition by Assessing Untrusted Components
Today, organizations build applications on top of existing platforms, frameworks, components, and tools; no one constructs software from scratch....
• By Rick Kazman
In Software Architecture
Prototyping for Developing Big Data Systems
This blog post presents the RASP model, which was developed to provide cost-effective systematic risk management in agile big data system development.
• By Rick Kazman
A Case Study in Locating the Architectural Roots of Technical Debt
In this post, which was excerpted from a recently published paper, we present a case study of our approach with SoftServe Inc., a leading software outsourcing company. We show how …
• By Rick Kazman
In Technical Debt
A Tool to Address Cybersecurity Vulnerabilities Through Design
Increasingly, software development organizations are finding that a large number of their vulnerabilities stem from design weaknesses and not coding vulnerabilities. In this blog post, the first in a series, …
• By Rick Kazman, Carol Woody
In Software Architecture
Security Pattern Assurance through Round-trip Engineering
The process of designing and analyzing software architectures is complex. Architectural design is a minimally constrained search through a vast multi-dimensional space of possibilities. The end result is that architects …
• By Rick Kazman
In Software Architecture
Measuring the Impact of Explicit Architecture Documentation
The SEI has long advocated software architecture documentation as a software engineering best practice. This type of documentation is not particularly revolutionary or different from standard practices in other engineering …