This presentation challenges viewers to consider what knowledge body and skills base a professional software architect possesses. It was presented originally at the UT IASA Chapter meeting November 21, 2013.
Are You an Accidental or Intention Software Architect
1. Are You an
Accidental or
Intentional
Architect?
IASA – AN ASSOCIATION FOR ALL IT
ARCHITECTS
UTAH CHAPTER
Randy Ynchausti
FamilySearch (www.familysearch.org)
Software Architect - Family Tree Group
ynchaustira@familysearch.org
3. Market Direction
“CIOs are experimenting successfully with internally
and externally sourced capacity on demand. Within
10 years, they and their enterprises will be able to
acquire complex outcomes— capabilities —on
demand. This will dramatically change enterprise IT
organizations and the software industry that serves
them.”
http://www.gartner.com/id=1508715
4. Direction Change Takes
Time
“Despite all this change, in the short term IT will be
more or less stable. Many traditional IT roles, such
as change and configuration management, will
continue unaffected as the capability-on-demand
scenario unfolds. Over time, however, service
management, architecture and other “generalist”
roles will replace the technical specialists in IT.
Already under way, this change will become
widespread over the next decade.”
http://www.gartner.com/id=1508715
5. Architect and Plan for
Capability on Demand
“The first step in preparing for capability on
demand is to set up for capacity on demand, but
this can only occur after a CIO gets the IT house in
order operationally. An IT organization that cannot
manage operations effectively because it lacks
understanding of costs relating to business
performance and outcomes will have trouble
evaluating the price-for-performance trade-offs
offered by external suppliers.”
http://www.gartner.com/id=1508715
6. Architecture Is The
Competitive Advantage
“Largely because of the trend toward
externalization of capacity, almost all CIOs will find
in the next decade that the price-for-performance
competitiveness of IT organizations is directly
comparable within and across industries. They will
also find that achieving maximum competitiveness
in IT price for performance requires strict
adherence to standards and architecture, as well as
tightly managed partnerships with external
vendors.”
http://www.gartner.com/id=1508715
7. How Did You/Do
You Become A
Software
Architect?
SOFTWARE ARCHITECTURE DISCIPLINE
8. Online Step By Step
Instructions:
1.
2.
3.
4.
5.
6.
Use Unified Modeling Language (UML) to model the business
situation
Use a software methodology for implementing change
Initiate the project or develop a feasibility study
Design the software
Test the software
Maintain and iterate
http://www.ehow.com/how_7928065_software-architect-tutorial.html
14. SEI – Carnegie Mellon
Software Architecture Certificate Programs
SEI Software Architecture Professional Certificate
◦ Candidates for Software Architecture certificates are required to pass an objective
assessment of their knowledge of Software Architecture: Principles and Practices
SEI SOA Architect Professional Certificate
SEI Architecture Tradeoff Analysis Method (ATAM) Evaluator Certificate
http://www.sei.cmu.edu/training/certificates/architecture/
18. The Open Group
27K architect Network
Open CA
Open CITS
Archimate
2
Global
Certification
Package
Professional
Certification
TOGAF 9
Foundation
Certification
Package
Peer Review
Initial Review
Board
Evaluation
Full-time Operational
and Executive Staff
Active Leadership
Committees
Tools
Certification
Training
Course
Certification
409K Corporation
Members
Certified
Training, Certification,
Content, Research,
Outreach
21. Software Architecture is
Also…
System Integrity
Operations
Evolution
Support
Key and cross-cutting concerns
System decomposition
Business objectives
Form
Value
Communication
User experience
Negotiating and bargaining
Development
Skillful
Technology
Agile
Documentation
Better world
24. You may
be an
Intentional
Software
Architect –
You study and employ industry standards in your
work:
You have defined your organization’s governance
in line with ISO/IEC 38500:2008
You have identified the project quality attributes
according to ISO/IEC 25010
You apply practices and approaches specified in
ISO/IEC/IEEEE 42010:20011, Systems and Software
Engineering – Architectural description
If …
You use ISO 15504 to assess the software process
in your organization
You apply ISO 9241-210 for user experience
designs and concerns
25. You may
be an
Intentional
Software
Architect –
You use architecture frameworks and approaches
to do your job:
You have studied TOGAF, Zachman, Federal Enterprise
Architecture, Gartner Methodology and other
architecture frameworks
You use ATAM or other formal methodology to prove
your architectures are suitable
You have studied ITIL and apply it for continuous
improvement and capability
If …
You have studied and apply COBIT for IT governance
in your enterprise
You apply and practice six sigma at work
You use the SPICE [Software Process Improvement Capability
Determination, ISO/IEC 15504 Information Technology — Process
Assessment] framework for the assessment of software
processes
26. You may
be an
Intentional
Software
Architect –
You advance and apply rigor and discipline in
your enterprise:
You have defined your organization’s architecture
principles
You have architect role definitions
You measure and document the value of
architecture for your project and organization
You believe the organization is faster and better
using a formalized process for architecture
If …
You identify the ROI for every project
You are creating a repository of architecture
patterns and principles
You care about making value-based tradeoffs
27. You may
be an
Intentional
Software
Architect –
If …
You use professional processes and tactics to
accomplish your architecture work:
You identify the project stakeholders and formally
manage them
You perform the project risk assessment
You create and maintain the project traceability
matrix
You identify at least four project viewpoints and
specify four views for each viewpoint on your
project
You use a benefit dependency network to link
your project to the business activities being
changed
You have and maintain a view/viewpoints
template database
28. You may
be an
Intentional
Software
Architect –
(2) You use professional processes and tactics to
accomplish your architecture work:
You know what triggers a TQA review and what
happens upstream and downstream
You enjoy filling out work breakdown structure
templates
You use a value realization process including
templates
You measure software complexity
If …
You map out data center costs for people,
machines and services
You draw and use at least five different types of
UML diagrams
You know what Archimate is
29. You may
be an
Intentional
Software
Architect –
You develop and use a breadth of knowledge in
your work:
You talk about the enterprise model (Commit,
Build and Run, Exploit)
You know the lifecycle phases and other aspects of
SDLC 3.0
You recite the OSI layers in your sleep
If …
You base architecture on software design patterns
and enterprise integration patterns
You understand and identify cross-cutting
concerns and factor their impact into the
architecture
30. You may
be an
Intentional
Software
Architect –
If …
You keep your architecture skills sharp through
continuous improvement:
You can rationalize the discrepancy between
architecture rigor and agile/lean development
methodologies
You are a Certified Information Systems Security
Professional
You read Roger Session books and white papers;
Software Fortresses: Modeling Enterprise
Architectures, Modeling Software Architectures
and Platform Choices, The IT Complexity Crisis:
Danger and Opportunity, The Mathematics of IT
Simplification, etc.
You have read Service-Oriented Architecture
(SOA): Concepts, Technology, and Design by
Thomas Erl
31. You may
be an
Intentional
Software
Architect –
If …
You believe principle should drive your wrok:
Law of Demeter
The Liskov principle
Integration/interface principles
Application protocol principles
Release reuse equivalency principle
Common closure principle
Common reuse principle
Model-view-controller principle
Model-view-presenter principle
Stable abstractions principle
Moore's Law -- A.K.A. Macro Levels
Usability/Performance Principle
Trade-offs and Sensitivity
34. Great Software Architects
Ray Ozzie – Chief Software Architect, Microsoft
“From my vantage point, being an architect is
really about pattern matching. It’s about
being exposed to enough tools and
techniques of the trade that over time you
start to develop a toolkit of different patterns
that work in different situations.”
http://msdn.microsoft.com/en-us/library/bb906064.aspx