Performance

From a software performance standpoint, "hot spots" are an area of intense activity. They're hot spots because they're frequently executed code paths with some sort of friction or bottleneck. They represent potential optimization paths for improving the performance of your code or design. You find the hot spots by measuring and analyzing the system. Stepping back, we can use "Hot Spots" more loosely. We can use them to gather, organize, and share principles, patterns, and practices for performance.

I found an organizing frame for quality attributes (security, performance, ... etc.) on SoftwareArchitectures.com and I think it's helpful.  They organize quality attributes by...

When thinking about quality, I tend to draw from the following quality attributes: Availability Buildability Conceptual Integrity Evolvability Extensibility...

Architecture

From a software performance standpoint, "hot spots" are an area of intense activity. They're hot spots because they're frequently executed code paths with some sort of friction or bottleneck. They represent potential optimization paths for improving the performance of your code or design. You find the hot spots by measuring and analyzing the system. Stepping back, we can use "Hot Spots" more loosely. We can use them to gather, organize, and share principles, patterns, and practices for performance.

Security Hot Spots are a lens for security. If you know what you're looking for, you can find it. When you don't know what you're looking for, you can waste a lot of time. The Hot Spots provide a way to find, organize and share software security knowledge. You can use hot spots to share principles, patterns, and practices. You can also use hot spots to share knowledge around threats, attacks, vulnerabilities, and countermeasures. Rather than deal with a laundry list of information, use hot spots to focus your attention on key categories. The Hot Spots are actionable and they are high ROI. The Hot Spots helps you simplify, clarify and gain insight before you elaborate, maximize and optimize.

The Agile Architecture Method is a way to bake quality into the life cycle. It's also an iterative and incremental approach for architecture and design. In its simplest form, it's a way to help you identify potential hot spots against your prioritized scenarios. The hot spots are key engineering decision. The main hot spots are cross-cutting concerns, such as data access, exception management, logging ... etc. and quality attributes, such as security, performance, reliability ... etc.

Patterns

Architectural Styles

What’s the difference between an architectural style, an architectural pattern, and a system metaphor?   An architectural style is a central, organizing concept for a...

Project Management

One of the best ways I've found to map out a problem space is to create what I call, "Scenario Frames." I call them scenario frames because they are an organizing frame of scenarios. Simply put, they're a set of one-liner stories or scenarios organized by categories. The beauty of a scenario frame is that it can contain macro-level or micro-level scenarios and, because it's a tickler list, it's easy to traverse.

How can you be prepared to go in whatever direction the business or the system demands?  Do you need to prepare for every possibility? ...

Photo by Christian Revival Network Here's a brief set of success patterns for program managers and project managers that I've shared with...

User Experience

My recent road trip was a great reminder how quality is durable. As I passed through familiar territory, it was interesting to see how many building and places stood the test of time.