Using Architects in Scrum Projects

20 January 2014

Khurram Mahmood
Citigroup


One of the principles of the Agile Manifesto states, "The best architectures, requirements, and designs emerge from self-organizing teams." The key term in this principle is team. Scrum is big on team mentality.

Most of the activities that are part of Agile software development need the involvement of the team. The team succeeds and fails together, and the whole team strives together toward a common goal in order to deliver better-quality software. I believe that if an architect is part of the team and is responsible for delivering quality software, then he is a good asset to the team. He will have the team's trust.

A scenario where I think architects can be used even as an external resource: when there are guidelines about nonfunctional requirements. For example, if the guideline from an architect says the system must be able to process a million messages per hour, it is good because it specifies the qualities of the software and can be included in a Definition of Done or a product backlog wherever feasible.

It is important to emphasize that we know the whole team is committed toward the success of a given project and that any impediments are being removed. If architects are not part of the team, then they are more likely to cause constraints rather than solving the problem. They tell the team how to solve a problem but are neither committed nor responsible for delivery of the product. This should be avoided.

In summary, architects can tell a team what to do but not how to do it, if they are outsiders. They should be able to tell how to solve a problem and strive toward solving that problem with the team.


Opinions represent those of the author and not of Scrum Alliance. The sharing of member-contributed content on this site does not imply endorsement of specific Scrum methods or practices beyond those taught by Scrum Alliance Certified Trainers and Coaches.



Article Rating

Current rating: 3.8 (4 ratings)

Comments

Eduardo Cantu, CSM, 1/21/2014 4:58:47 AM
I'm a CSM/Architect. I understand your point, but I think sometimes outsiders can - and should - point the right direction instead of only tell.
Khurram Mahmood, CSP,CSM, 1/21/2014 3:26:43 PM
Thank you Eduardo for raising this point.

The problem with outsiders is that they are not committed to delivery and maintenance of the product. That is why Agile team should be cross functional, so that they have all the knowledge required to deliver. Basic requirement for scrum development team is that they are cross functional as specified in scrum guide.

Having said that many organizations do have architecture team working in silos and in those cases if there is limitation and architect cannot be allocated to team, then a decision should be made to may be partially assign an architect to the team or an agreement should be arranged such that the architect is held responsible for decisions he/she is making for the team and committed to successful delivery of the project.

I have had this experience in a case when architect was making decision which scrum team had to follow and when problem arose he was not available and never responsible for delivery. In this case architect became impediment for the team. This kept happening for few sprints. Later when same architect became part of team as an experiment for 50% of his time he was better equipped to make correct decisions as he was getting feedback from team on nearly daily basis.

I hope this helps.
Khurram Mahmood, CSP,CSM, 1/21/2014 3:32:08 PM
Also if something is a requirement from wider architecture group as they are stakeholder and that must be met, probably worth making that part of definition of done as mentioned in the post.
Michael Kuesters, CSP,CSM,CSPO, 1/22/2014 2:38:35 AM
Khurram,
I fully agree with you on the idea that an architect is a valuable asset to a SCRUM team.
In fact, my past experience with Agile Development led me to the conclusion that a mastermind who is less "story-focused" and more "architecturally focused" is essential to the success of an Agile Project.

However, and this is where I would like to put my fly into the ointment:
As someone said, an Agile Project not only needs Developers, but also benefits - as you said - a good architect. The same is true for a Graphics designer, for a usability tester, a performance tester, a strategist, DevOps, DBA, Network specialist, Quality Manager, Process Manager and whatnotever.

Fact is: every activity you need to be successful in a Waterfall project must be covered in a SCRUM project as well.
That doesn't mean we specifically assign Team Members with special status.
The Team has to bring the capacity, and we're not taking a designated Architect any more than we're taking a designated Quality Manager (which we don't).
Khurram Mahmood, CSP,CSM, 1/22/2014 3:18:16 AM
Your point about bringing capacity is a valid one, that should be the aim if team has not the ability.

You must Login or Signup to comment.