The document discusses the process of architecture and what it takes to be an architect. It involves identifying business goals, gathering requirements from stakeholders, making design decisions, documenting the architecture, and communicating design decisions. Key aspects of architecture include styles/patterns, reference architectures, and creating views like context, component, and deployment diagrams. The architect must understand business goals, requirements, and make design choices to achieve them while documenting decisions in an architecture log.
8. Architecture is process of
8
1. Identifying business goals
2. Gathering requirements from stakeholders
9. Architecture is process of
9
1. Identifying business goals
2. Gathering requirements from stakeholders
3. Making design decisions
10. Architecture is process of
10
1. Identifying business goals
2. Gathering requirements from stakeholders
3. Making design decisions
4. Documenting
11. Architecture is process of
11
1. Identifying business goals
2. Gathering requirements from stakeholders
3. Making design decisions
4. Documenting
5. Communicating
17. “Poor understanding of business
goals is the path to the dark
side.
It leads to wrong design
decisions.
Wrong design decisions lead to
wrong software.
Wrong software leads to
business failure.” 17
20. Business goals
1. Reduce costs by moving to cheaper data vendor
2. Avoid expenses for database maintenance
3. Attract more users at a less cost (outsource
strategy tools)
20
35. Example requirements
35
1. Time to show up on UI < 3 seconds
2. Uptime should be 99.9%
3. API must stay backward-compatible
4. We are not ready for cloud
deployment yet
36. Example requirements
36
1. Time to show up on UI < 3 seconds
2. Uptime should be 99.9%
3. API must stay backward-compatible
4. We are not ready for cloud
deployment yet
37. Example requirements
37
1. Time to show up on UI < 3 seconds
2. Uptime should be 99.9%
3. API must stay backward-compatible
4. We are not ready for cloud
deployment yet
38. Gathering requirements
38
1. Time to show up on UI < 3 seconds
2. Uptime should be 99.9%
(we assume that automatic connection
failover will be provided by vendor)
40. Which requirements impact architecture?
40
1. Time to show up on UI < 3 seconds
2. Uptime should be 99.9%
3. API must stay backward-compatible
4. We are not ready for cloud
deployment yet
41. Which requirements impact architecture?
41
1. Time to show up on UI < 3 seconds
2. Uptime should be 99.9%
3. API must stay backward-compatible
4. We are not ready for cloud
deployment yet
68. Architecture decision log
Jul 10, 2019 Migrating from Expensive Corp to Cheap & Dale as data vendor (cost
savings). We don’t have to use database anymore, as Cheap & Dail provides
API. Data layer have to be rewritten to call it.. Connection failover will be done
on vendor side.
Jul 10, 2019 Cache will be used in data layer to meet response time requirement (< 3s)
Jul 10, 2019 Data layer API must stay backward-compatible (Anakin Skywalker)
Jul 11, 2019 Feature control mechanism will be used for switching users to new services.
(confirmed to front-end teams)
Jul 15, 2019 Decommission strategy tools for recusing maintenance costs. Cool tools, Inc
provides same functionality as API and we will use it instead. We will write
simple request translator service to remain API backward-compatible.
68
69. Architecture is process of
69
1. Identifying business goals
2. Gathering requirements from stakeholders
3. Making design decisions
4. Documenting
5. Communicating