Quality Attribute Design Primitives and the Attribute Driven Design Method