This talk is about how an agile architect should be a bridge improving the communication between the business stakeholders, customers or clients, and the technical teams.
During this talk there are presented some of the very important skills of an agile architect that improve the business agility of the company.
Here are the skills mentioned in the talk: translator, mentor, simplifier, risk analyst, business analyst, communicator, technical standards creator, code reviewer, assistant product owner, team load balancer, ministry of technical budget, foreman, facilitator.
3. A definition of Software Architecture
The set of structures needed to reason
about the software system, which comprises
the software elements, the relations
between them, and the properties of both
elements and relations.
[1]
www.mozaicworks.com
4. Another definition of Software Architecture
Documenting software architecture facilitates
communication between stakeholders,
captures early decisions about the high-
level design, and allows reuse of design
components between projects.
[2]
www.mozaicworks.com
6. Agile software development
Is a group of software development
methods based on iterative and incremental
development, in which requirements and
solutions evolve through collaboration
between self-organizing, cross-functional
teams.
www.mozaicworks.com
7. The purpose of Agile
1.Incrementally add value
2.Deliver fast
3.Build the right thing
4.Quality software
5.Deliver enhanced value for customer
6.Maintainability
www.mozaicworks.com
9. 1. Incrementally add value
Architect's skill: Translator
The architect should be a bridge between
the business needs and the technical
challenges
www.mozaicworks.com
11. 1. Incrementally add value
Architect's skill: Mentor
Constantly help the technical teams improve
1 to 1 meetings
Express confidence and passion
www.mozaicworks.com
12. The purpose of Agile
1.Incrementally add value
2.Deliver fast
3.Build the right thing
4.Quality software
5.Deliver enhanced value for customer
6.Maintanability
www.mozaicworks.com
13. 2. Deliver fast
Architect's skill: Simplifier
The architect should constantly look for
solutions that simplify every increment
delivered
www.mozaicworks.com
15. 2. Deliver fast
Architect's skill: Risk analyst
One of the main jobs of an architect is
being able to analyze and minimize risks
www.mozaicworks.com
16. The purpose of Agile
1.Incrementally add value
2.Deliver fast
3.Build the right thing
4.Quality software
5.Deliver enhanced value for customer
6.Maintanability
www.mozaicworks.com
18. 3. Build the right thing
Architect's skill: Business analyst
Understand the requirements at top level
Make sure the product fits the needs
Communicate technical risks
www.mozaicworks.com
19. 3. Build the right thing
Architect's skill: Communicator
Talk with the customers
Know the end-users
Have a close relationship with stakeholders
Be open for dicussions with managers
Happy to actively attend teams' meetings
www.mozaicworks.com
20. The purpose of Agile
1.Incrementally add value
2.Deliver fast
3.Build the right thing
4.Quality software
5.Deliver enhanced value for customer
6.Maintanability
www.mozaicworks.com
24. 4. Quality software
Architect's skill: Code reviewer
The code looks like one person wrote it
The code respects standards
Teach others how code can be improved
www.mozaicworks.com
25. The purpose of Agile
1.Incrementally add value
2.Deliver fast
3.Build the right thing
4.Quality software
5.Deliver enhanced value for customer
6.Maintanability
www.mozaicworks.com
26. 5. Deliver enhanced value
Architect's skill: Assistant Product Owner
Be in constant touch with product people
Focus on value delivered to the customer
Challenge the Business Value presented
Communicate Business Value to the teams
www.mozaicworks.com
27. 5. Deliver enhanced value
Architect's skill: Team Load Balancer
The teams deal with a sustainable effort
The effort of the teams is almost the same
The customer's value stream is constant and
predictable
www.mozaicworks.com
28. The purpose of Agile
1.Incrementally add value
2.Deliver fast
3.Build the right thing
4.Quality software
5.Deliver enhanced value for customer
6.Maintainability
www.mozaicworks.com
30. 6. Maintainability
Architect's skill: Ministry of Technical
Budget
Measure technical debt
Minimize technical debt
Plan well technical debt installments
Do not bury the company in technical debt
www.mozaicworks.com
31. 6. Maintainability
Architect's skill: Foreman
[3]
The architect is the person who is
responsible for making sure all the workers
do things right
www.mozaicworks.com
32. The purpose of Agile
1.Incrementally add value
2.Deliver fast
3.Build the right thing
4.Quality software
5.Deliver enhanced value for customer
6.Maintainability
www.mozaicworks.com
34. General Skill
Architect's skill: Facilitator
Be able to convince a group of people to
achive consensus without taking a particular
position in the discussion
www.mozaicworks.com
35. Agile Architect's skills
www.mozaicworks.com
Translator Code reviewer
Mentor Assistant Product Owner
Simplifier Team Load Balancer
Risk Analyst Ministry of Technical Budget
Business Analyst Foreman
Communicator Facilitator
Technical Standards Creator
37. References
[1] Clements, Paul; Felix Bachmann, Len Bass, David Garlan, James Ivers, Reed Little, Paulo Merson, Robert Nord,
Judith Stafford (2010). Documenting Software Architectures: Views and Beyond, Second Edition. Boston: Addison-
Wesley.
[2] Bass, Len; Paul Clements, Rick Kazman (2012). Software Architecture In Practice, Third Edition. Boston:
Addison-Wesley. pp. 21–24
[3] http://blog.8thlight.com/uncle-bob/2014/02/21/WhereIsTheForeman.html
www.mozaicworks.com
38. Enterprise Agile Architect Role
Contact me
Unit testing workshop
Remote pair-programming
TDD workshop
Refactoring workshop
Legacy code workshop
Legacy code retreat
Code retreat
www.mozaicworks.com
39. Enterprise Agile Architect Role
Extend your mentoring & training
capacity
Accelerate learning through
communities of practice
Grow your functional leaders and top
talents
http://www.mozaicworks.com
adrian.bolboaca@mozaicworks.com
@adibolb