Tuesday 5 May 2015

Quality Attribute Workshop

So far you may have noticed the importance of quality attributes, and the fact that they are key influencing components in success of the designed software.

But how can you capture relevant quality attributes? what do they mean to stakeholders?
how can you tell the priorities ?

Software Engineering Institute suggests using a method called Quality Attribute Workshop,
which facilitates the process of capturing quality attributes and prioritising them.
It is recommended that the method should be used when there is no software yet(early stages),( however to my experience it can be done event after the software is developed and released, as it can help communication among stakeholders and point them to the right direction).

Depending on the size and number and nature of stakeholders you may need more than one workshop to capture required data. Usually it can take 1-2 days. Here are the steps to follow

QAW Steps
  1. QAW presentation and Introduction
  2. Business/Mission Presentation
  3. Architectural Plan presentation
  4. Identification of Architectural Drivers
  5. Scenario brainstorming
  6. Scenario Consolidation
  7. Scenario Prioritisation
  8. Scenario Refinement -> (1) Iterate as necessary with broader stakeholder community
    For details of how each step works refer to an article by SEI. 

 The benefits of QAW exceeds the time and energy you put into it. 
 Here are some :
  • Increased stakeholder communication (Hey developer remember you are in human world not coding)
  • clarified quality attribute requirements( using scenarios)
  • informed basis for architectural decisions
The out come of QAW is a set of prioritised attribute  scenarios that can be used by the architect, create prototypes and refine requirements into more details.

I highly recommend delving more into this method and mastering it.

Also if you are running a QAW session, you may need a team for capturing requirements, help stakeholders with writing scenarios, stopping lengthy discussions between stakeholders, identifying key quality attributes,.. .

At the time I learned about this, I could not run a full fledged QAW because of my position, however I started by talking to my manager trying to find out what quality attributes he was concerned about, and helped him to express it in a scenario. And then increased the circle of people I talked to.

As an exercise try talking to somebody who has a different role from you, and see what quality attributes they are concerned about. 
       

1 comment: