2. Agenda
Who?
Roles?
ACF!
To Build Architecture.
References
9/16/2013 ...... Being Architect !
3. Architect Roles
1st and in advance, what are IT architect types:
Software Architect
Design the technical solution of the entire application. The logical and
physical structure.
Infrastructure Architect
Ensure the safe and productive deployment and operation of enterprise
applications. This involves managing hardware, network and operating
systems.
Enterprise Architect
Ensure convergence between business needs and technologies by
establishing architectural guidelines such as enterprise conceptual data
models or, in service-oriented environments, business service interfaces.
9/16/2013 ...... Being Architect !
4. Who is?
Simply
Architecture is the structure of the system, comprised of:
components or building blocks
the externally visible properties of those components, and
the relationships among them
The people who do this are called architects.
9/16/2013 ...... Being Architect !
5. Architect Roles
2nd what’re main skill set in
Architect
The architect is a technical
leader
The architect understands
the software development
process
The architect has knowledge
of the business domain
The architect has technology
knowledge
The architect has design skills
The architect has
programming skills
The architect is a good
communicator
The architect makes decisions
The architect is a negotiator
9/16/2013 ...... Being Architect !
6. Crafting the right architecture to solve the problem by:
Define, document, and communicate it
Ensures everyone is using it, and using it correctly
Ensures the software and system architectures are in synchronization
Ensures management understands it (to the detail necessary)
Identify and interact with stakeholders to make sure their needs are being met
Ensures that the architecture is not only the right one for operations, but also for
deployment and sustainment
Resolve disputes and make tradeoffs
Resolve technical problems
Understand and plan for evolutionary paths
Plan for new technology insertion
Manage risk identification and risk mitigation strategies associated with the
architecture
Architect Roles
9/16/2013 ...... Being Architect !
7. With Others
9/16/2013 ...... Being Architect !
Architect
Project
Manager
DEV/OPS Teams
Customer
<Technical + Business>
Technical Analysis
Propose Solutions
Technical Ref./Conslt.
PM Activities *
Technical Ref./Conslt.
Tech. Decisions
Other Systems Integ.
PM Activities *
Client Req. Synch!
Teams Synch!
Strategy Synch!
8. Skill & Roles - ACF
Architect domain as per Architect Competency
Framework (ACF) are:
Technology
Strategy
Organization Politics
Consulting
Leadership
There’s a competency table for each to show domain in
details.
9/16/2013 ...... Being Architect !
9. Skill & Roles - Architect Domain
Technology
What to Know What to Do What to Be
In-depth understanding of
the domain and pertinent
technologies
Identify and address
architectural challenges
Creative
Investigative
Practical/pragmatic
Understand what technical
issues are key to success
Create models and assess
alternative approaches
Prototype/experiment/sim
ulate
Insightful
Good at working at an
abstract level
Development methods and
modeling techniques
Prepare architectural
documents and
presentations
Technology trend analysis
Take a system viewpoint
Tolerant of ambiguity,
willing to backtrack, seek
multiple solutions
9/16/2013 ...... Being Architect !
10. Skill & Roles - Architect Domain
Strategy
What to Know What to Do What to Be
Organization’s business
strategy and rationale.
Influence business strategy.
Translate business strategy into
technical vision and strategy.
Visionary
Competition (products,
strategies and processes).
Understand customer and
market trends.
Entrepreneurial
Company’s business
practices.
Capture customer, organizational
and business requirements on
the Architecture.
9/16/2013 ...... Being Architect !
11. Skill & Roles - Architect Domain
Organization Politics
What to Know What to Do What to Be
Who the key players
are in the organization
Communicate, communicate,
communicate!
Listen, network, influence
Able to see from and sell to
multiple viewpoints.
Confident and articulate.
What they want, both
business and personal
Sell the vision, keep the vision
alive
Ambitious.
Patient and not Resilient.
Take and retake the pulse of all
critical influencers of the
architecture project
Sensitive to where the
power is and how it flows
in your organization
9/16/2013 ...... Being Architect !
12. Skill & Roles - Architect Domain
Consulting
What to Know What to Do What to Be
Elicitation techniques Build “trusted advisor”
relationships..
Understand what the
developers want and need
from the architecture.
Committed to others’
success.
Empathetic, approachable
Consulting frameworks Help developers see the
value of the architecture
and understand how to use
it successfully.
Mentor junior architects.
An effective change agent
A good mentor, teacher
9/16/2013 ...... Being Architect !
13. Skill & Roles - Architect Domain
Leadership
What to Know What to Do What to Be
Yourself Set team context (vision).
Make decision (stick).
Charismatic and credible
Build teams.
Motivate.
You believe it can and should be done,
and that you can lead the effort
You are committed, dedicated,
passionate.
You see the entire effort in a broader
business and personal Context
9/16/2013 ...... Being Architect !
14. Competency Conclusion
As you become more senior in architect role, it is less about what you know
and more and more about who you are -- your personal characteristics.
9/16/2013 ...... Being Architect !
15. To Build Architecture
Goals, architectural goals tend to address the following
questions:
What is the expected lifespan of the system?
Will the system need to respond to technological changes
over that time, such as new versions of middleware or
other products?
How frequently is the system expected to adapt to change?
What changes can we anticipate in the future, and how can
we make them easier to accommodate?
9/16/2013 ...... Being Architect !
16. To Build Architecture
Patterns versus System Type
Category Pattern
Structure
Layers
Pipes and Filters
Blackboard
Distributed Systems Broker
Interactive Systems
Model-View-Controller
Presentation-Abstraction-Control
Adaptable Systems
Reflection
Microkernel
9/16/2013 ...... Being Architect !
18. To Build Architecture
Component Designing,
Component replace-ability
Source file replace-ability
Deployment replace-ability
Run-time replace-ability
Location transparency
Component instantiation
Modeling Components
UML Definitions -- A History
9/16/2013 ...... Being Architect !
19. To Build Architecture
Reusing
What is a Reusable Asset?
Identifying Reuse Opportunities
Assessing and Selecting Assets to Reuse
Reuse Techniques
Inheritance and Aggregation
Finding Reusable Code
Finding Reusable Code
9/16/2013 ...... Being Architect !
20. To Build Architecture
Refactoring
Code refactoring.
Database refactoring.
User interface (UI) refactoring.
9/16/2013 ...... Being Architect !
21. To Build Architecture
Constraints
Network topology
Given database vendor or an existing database
Web environment (server configurations, firewall, DMZs,
and so forth)
Servers (hardware model, operating system)
Use of third-party software or a particular technology
Compliance with existing standards
9/16/2013 ...... Being Architect !
22. References
The Hidden Roles of Software Architects
pkruchten.files.wordpress.com/2010/05/kruchten_2008_journal-of-
systems-and-software.pdf
The Role of Software Architects
www.bredemeyer.com/pdf_files/role.pdf
Characteristics of a software architect
Software Architecture | Research | Previous Architecture Research |
Duties, Skills, & Knowledge of a Software Architect
The Role of Architect vs. The Role of the Software Architect, A
Reality Check from Beautiful Architecture - O'Reilly FYI Blog
http://epf.eclipse.org/wikis/openup/core.tech.common.extend_sup
p/guidances/concepts/software_architecture_59A08DE0.html
9/16/2013 ...... Being Architect !