Skip to content

Commit 5198bc0

Browse files
committed
added target architecture part
1 parent aa8defb commit 5198bc0

File tree

1 file changed

+263
-6
lines changed

1 file changed

+263
-6
lines changed

template.md

Lines changed: 263 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,47 @@
1414
- [3.3 Non-functional Requirements](#33-non-functional-requirements)
1515
- [3.4 Constraints](#34-constraints)
1616
- [3.5 Assumptions](#35-assumptions)
17+
- [3.6 Risks](#36-risks)
1718
- [4 Quality Attributes(ASR)](#4-quality-attributes)
18-
- [5 Baseline Architecture](#4-quality-attributes)
19-
- [5.1 High-level Solution Structure ](#51-high-level-solution-structure)
20-
- [5.1.1 Solution Component 1 ](#511-solution-component-1)
21-
- [5.1.2 Solution Component 2 ](#512-solution-component-2)
22-
- [5.2 High-level Solution Structure ](#51-high-level-solution-structure)
19+
- [5 Baseline Solution Architecture](#5-baseline-solution-architecture)
20+
- [5.1 High-level Solution Structure](#51-high-level-solution-structure)
21+
- [5.1.1 Solution Component 1](#511-solution-component-1)
22+
- [5.1.2 Solution Component 2](#512-solution-component-2)
23+
- [5.2 Solution Component structure](#52-solution-components-structure)
24+
- [5.2.1 Solution Component 1](#521-solution-component-1)
25+
- [5.2.2 Solution Component 2](#522-solution-component-2)
26+
- [5.3 Domain model](#53-domain-model)
27+
- [5.4 Data model](#54-data-model)
28+
- [5.4.1 Storage-1](#541-storage-1)
29+
- [5.4.2 Storage-2](#542-storage-2)
30+
- [5.5 High-level Deployment Approach](#55-high-level-deployment-approach)
31+
- [5.6 Architecturally Significant Quality Attributes](#56-architecturally-significant-quality-attributes)
32+
- [5.6.1 Security](#561-security)
33+
- [5.6.2 Supportability](#562-supportability)
34+
- [5.6.2.1 Monitoring](#5621-monitoring)
35+
- [5.6.2.2 Administration Tools](#5622-administration-tools)
36+
- [5.6.2.3 Specific deployment aspects](#5623-specific-deployment-aspects)
37+
- [6 Target Solution Architecture](#6-target-solution-architecture)
38+
- [6.1 Risks](#61-risks)
39+
- [6.2 Dependencies](#62-dependencies)
40+
- [6.3 Assumptions](#63-assumptions)
41+
- [6.4 High-level Solution Structure](#64-high-level-solution-structure)
42+
- [6.4.1 Solution Component 1](#641-solution-component-1)
43+
- [6.4.2 Solution Component 2](#642-solution-component-2)
44+
- [6.5 Solution Component structure](#52-solution-components-structure)
45+
- [6.5.1 Solution Component 1](#651-solution-component-1)
46+
- [6.5.2 Solution Component 2](#652-solution-component-2)
47+
- [6.6 Domain model](#66-domain-model)
48+
- [6.7 Data model](#67-data-model)
49+
- [6.7.1 Storage-1](#671-storage-1)
50+
- [6.7.2 Storage-2](#672-storage-2)
51+
- [6.8 High-level Deployment Approach](#68-high-level-deployment-approach)
52+
- [6.9 Architecturally Significant Quality Attributes](#69-architecturally-significant-quality-attributes)
53+
- [6.9.1 Security](#691-security)
54+
- [6.9.2 Supportability](#692-supportability)
55+
- [6.9.2.1 Monitoring](#6921-monitoring)
56+
- [6.9.2.2 Administration Tools](#6922-administration-tools)
57+
- [6.9.2.3 Specific deployment aspects](#6923-specific-deployment-aspects)
2358

2459
### 1. Executive summary
2560
[Description: This is a mostly non-technical summary of the entire Solution Architecture Document (SAD) for customer top management.
@@ -161,6 +196,12 @@ This is critical to do in order to cover all the gaps in the requirements.
161196

162197
Section Type: Mandatory (if section is not covered with available documentation)]
163198

199+
#### 3.6 Risks
200+
[Description: This section lists potential risks related to the target solution architecture or solution migration to
201+
target solution architecture.
202+
203+
Section Type: Highly recommended]
204+
164205
### 4 Quality Attributes
165206
[Description: Select 3-5 most important quality attributes for the future solution architecture based on the requirements because your architectural decisions will depend on them.
166207
Provide motivation for selecting every quality attribute.
@@ -197,7 +238,7 @@ Section Type: Mandatory]
197238
| |Usability |[Usability metrics](metrics/usability.md) |
198239
| |Accessibility |[Accessibility metrics](metrics/accessibility.md) |
199240

200-
### 5 Baseline Architecture
241+
### 5 Baseline Solution Architecture
201242
[Description: This section must be addressed only if you are working in a “brown field”, where the customer already has
202243
a legacy solution. This section describes the legacy solution architecture with a sufficient level of detail.
203244
Note: In some cases it makes sense to have Baseline Solution Architecture (also known as putting the solution
@@ -259,7 +300,223 @@ Section Type: Mandatory (if legacy solution is to be re-worked and migrated)]
259300
- Sub-component diagram
260301
- Sub-component relations/dependencies]
261302

303+
#### 5.3 Domain model
304+
[Description: This section describes the domain model if Domain-Driven Design was used during baseline solution design.
305+
Describe the domain model in terms of bounded contexts and the main entities in every context.
306+
307+
Section Type: Optional (if applicable)]
308+
309+
#### 5.4 Data Model
310+
[Description: This section describes the approach to data storage and data models.
311+
List data storage components of any nature, relational and non-relational, with data model diagrams for each storage.
312+
313+
Section Type: Highly recommended (if applicable)]
314+
315+
##### 5.4.1 Storage 1
316+
[This section describes the data storage technology stack and the used data model with data model diagrams.]
317+
318+
##### 5.4.2 Storage 2
319+
[This section describes the data storage technology stack and the used data model with data model diagrams.]
320+
321+
#### 5.5 High-level Deployment Approach
322+
[Description: This section describes the high-level deployment approach to all required environments
323+
(development, staging, production, etc.). This is a blueprint in high-level detail without specific physical parameters
324+
of hardware and so on.
325+
326+
Section Type: Mandatory (if legacy solution is to be re-worked and migrated)]
327+
328+
#### 5.6 Architecturally Significant Quality Attributes
329+
330+
##### 5.6.1 Security
331+
[Description: Possible focus areas to consider in this section:
332+
- Customer security policies
333+
- Authorization/authentication
334+
- Communication encryption
335+
- Encryption of stored data
336+
- Personal data management
337+
- Deployment security
338+
- Etc.
339+
340+
Section Type: Recommended (if legacy solution is to be re-worked and migrated)]
341+
342+
##### 5.6.2 Supportability
343+
344+
###### 5.6.2.1 Monitoring
345+
[Description: Describe the approach to solution support here. Consider the following aspects:
346+
- Logging
347+
- Performance counters/metrics
348+
- Monitoring tools
349+
- Solution component availability
350+
- Etc.
351+
352+
Section Type: Recommended (if legacy solution is to be re-worked and migrated)]
353+
354+
###### 5.6.2.2 Administration Tools
355+
356+
###### 5.6.2.3 Specific deployment aspects
357+
[Description: For example, complex database deployment]
358+
[Notice: Note that you must consider the migration process, risks, issues, and so on if you have a legacy solution
359+
to migrate to the new architecture. In this case, you need to design the new solution having this legacy architecture
360+
in mind.
361+
362+
Section Type: Optional]
363+
364+
### 6 Target Solution Architecture
365+
[Description: This section describes the proposed target solution architecture (also known as solution architecture
366+
“to be”).
367+
368+
Section Type: Mandatory]
369+
370+
#### 6.1 Risks
371+
[Description: This section lists potential risks related to the target solution architecture or solution migration to
372+
target solution architecture.
373+
374+
Section Type: Highly recommended]
375+
376+
#### 6.2 Dependencies
377+
[Description: This section lists dependencies related to the target solution architecture or solution migration to
378+
target solution architecture.
379+
380+
Section Type: Highly recommended]
381+
382+
#### 6.3 Assumptions
383+
[Description: This section lists assumptions related to the target solution architecture or solution migration to
384+
target solution architecture.
385+
386+
Section Type: Highly recommended]
387+
388+
#### 6.4 High-level Solution Structure
389+
[Description: This section describes (in the context of the whole IT landscape):
390+
- Set of solution components
391+
- Integration of solution components
392+
- High-level architectural styles used in the solution architecture
393+
Include the following things in this section:
394+
- High-level solution diagram
395+
- High-level description of solution behavior (in terms of sequences, state-machine, data flow and execution diagrams)
396+
- Comments about used architectural styles
397+
- List of architecturally significant components and descriptions of their technology stack and integration with each
398+
other
399+
400+
Section Type: Mandatory (if legacy solution is to be re-worked and migrated)]
401+
402+
##### 6.4.1 Solution Component 1
403+
| | |
404+
|--------------------------------|---------------------------------------------------------------------------------------------|
405+
|Description |[Describe the general purpose of the component in the system] |
406+
|Technology Stack |[Describe the technology stack of the component by listing main frameworks, libraries, tools]|
407+
|Related components |[List related components with a short description of the relation nature] |
408+
|Covered functional requirements |[List covered functional requirements] |
409+
|Notes |[Put any additional specific notes here] |
410+
411+
##### 6.4.2 Solution Component 2
412+
| | |
413+
|--------------------------------|---------------------------------------------------------------------------------------------|
414+
|Description |[Describe the general purpose of the component in the system] |
415+
|Technology Stack |[Describe the technology stack of the component by listing main frameworks, libraries, tools]|
416+
|Related components |[List related components with a short description of the relation nature] |
417+
|Covered functional requirements |[List covered functional requirements] |
418+
|Notes |[Put any additional specific notes here] |
419+
420+
#### 6.5 SOLUTION COMPONENTS STRUCTURE
421+
[Description: This section describes the internal structure of architecturally significant components.
422+
423+
For every solution component, describe the following things:
424+
- Diagram of sub-components
425+
- Description of the sub-components’ behavior (in terms of sequences, state-machine, data flow and execution diagrams)
426+
- Sub-component integration
427+
428+
Section Type: Mandatory (if legacy solution is to be re-worked and migrated)]
429+
430+
##### 6.5.1 Solution Component 1
431+
[Describe main sub-components in this section:
432+
- Sub-component contract
433+
- Sub-component diagram
434+
- Sub-component relations/dependencies]
435+
436+
##### 6.5.2 Solution Component 2
437+
[Describe main sub-components in this section:
438+
- Sub-component contract
439+
- Sub-component diagram
440+
- Sub-component relations/dependencies]
441+
442+
#### 6.6 Domain model
443+
[Description: This section describes the domain model if Domain-Driven Design was used during baseline solution design.
444+
Describe the domain model in terms of bounded contexts and the main entities in every context.
445+
446+
Section Type: Optional (if applicable)]
447+
448+
#### 6.7 Data Model
449+
[Description: This section describes the approach to data storage and data models.
450+
List data storage components of any nature, relational and non-relational, with data model diagrams for each storage.
451+
452+
Section Type: Highly recommended (if applicable)]
453+
454+
##### 6.7.1 Storage 1
455+
[This section describes the data storage technology stack and the used data model with data model diagrams.]
456+
457+
##### 6.7.2 Storage 2
458+
[This section describes the data storage technology stack and the used data model with data model diagrams.]
459+
460+
#### 6.8 High-level Deployment Approach
461+
[Description: This section describes the high-level deployment approach to all required environments
462+
(development, staging, production, etc.). This is a blueprint in high-level detail without specific physical parameters
463+
of hardware and so on.
464+
465+
Section Type: Mandatory (if legacy solution is to be re-worked and migrated)]
466+
467+
#### 6.9 Architecturally Significant Quality Attributes
468+
469+
##### 6.9.1 Security
470+
[Description: Possible focus areas to consider in this section:
471+
- Customer security policies
472+
- Authorization/authentication
473+
- Communication encryption
474+
- Encryption of stored data
475+
- Personal data management
476+
- Deployment security
477+
- Etc.
478+
479+
Section Type: Recommended (if legacy solution is to be re-worked and migrated)]
480+
481+
##### 6.9.2 Supportability
482+
483+
###### 6.9.2.1 Monitoring
484+
[Description: Describe the approach to solution support here. Consider the following aspects:
485+
- Logging
486+
- Performance counters/metrics
487+
- Monitoring tools
488+
- Solution component availability
489+
- Etc.
490+
491+
Section Type: Recommended (if legacy solution is to be re-worked and migrated)]
492+
493+
###### 6.9.2.2 Administration Tools
494+
495+
###### 6.9.2.3 Specific deployment aspects
496+
[Description: For example, complex database deployment]
497+
[Notice: Note that you must consider the migration process, risks, issues, and so on if you have a legacy solution
498+
to migrate to the new architecture. In this case, you need to design the new solution having this legacy architecture
499+
in mind.
500+
501+
Section Type: Optional]
262502

503+
### 7 Transition
504+
[Description: This section describes the approach to migration and compatibility (applicable in the case of
505+
“brown field”, when you need to migrate the customer smoothly from a legacy solution to a new one,
506+
including customer data.
507+
508+
It is recommended to provide the customer with a set of high-level transition architectures (if applicable).
509+
Also, it is recommended to describe:
510+
- General approach to backward/forward compatibility (if applicable)
511+
- General approach to data compatibility
512+
- General approach to interface compatibility
513+
- Component-by-component migration description
514+
- Migration scenario and data migration should be described (physical view)
515+
- Deployment windows and how deployment affects availability
516+
- Level of support needed from others (operations, 3rd-party vendors, etc.)
517+
- Etc.
518+
519+
Section Type: Mandatory (if migration from legacy solution must be done)]
263520

264521

265522

0 commit comments

Comments
 (0)