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

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

Project Management

How can you leverage XP practices in a fixed-price contract?   One approach is to fix the price and the schedule, but somewhat vary the...

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

Just how much can people factors influence your project cost and effort?  24.6 percent!  In other words, the least experienced team (the bottom 15...

User Experience

I think of a persona as a specific (yet generalized) instance of a role to "personify" and represent what users that play that role, might be like. While we originally argued over the details of the personas, a great by-product was that we focused on the distinctions across our various customer sets. This helped reduce ambiguity during product design. It also helped us make calls on where to put our resources and effort.