Skip to content

Commit

Permalink
Merge branch '#165-updated-version-of-crosscutting-concepts-map'
Browse files Browse the repository at this point in the history
  • Loading branch information
gernotstarke committed Oct 4, 2024
2 parents fb7a75e + 185ffd5 commit 4f6b1a4
Show file tree
Hide file tree
Showing 21 changed files with 1,406 additions and 2 deletions.
102 changes: 102 additions & 0 deletions PT/asciidoc/arc42-template.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
// header file for arc42-template,
// including all help texts
//
// ====================================

// configure EN settings for asciidoc
include::src/config.adoc[]

= Modelo image:arc42-logo.png[arc42]
:title: Modelo arc42
:revnumber: 8.2 PT
:revdate: Setembro de 2024
:revremark: (baseado na versão AsciiDoc)
:version-label: Versão
// toc-title definition MUST follow document title without blank line!
:toc-title: Sumário

//additional style for arc42 help callouts
ifdef::backend-html5[]
++++
<style>
.arc42help {font-size:small; width: 14px; height: 16px; overflow: hidden; position: absolute; right: 0; padding: 2px 0 3px 2px;}
.arc42help::before {content: "?";}
.arc42help:hover {width:auto; height: auto; z-index: 100; padding: 10px;}
.arc42help:hover::before {content: "";}
@media print {
.arc42help {display:none;}
}
</style>
++++
endif::backend-html5[]


include::src/about-arc42.adoc[]

// horizontal line
***

ifdef::arc42help[]
[role="arc42help"]
****
[NOTE]
====
Esta versão do modelo contém algumas ajudas e explicações.
É usada para familiarização com arc42 e compreensão dos conceitos.
Para a documentação do seu próprio sistema, é melhor usar a versão _plain_.
====
****
endif::arc42help[]

// numbering from here on
:numbered:

<<<<
// 1. Introduction and Goals
include::src/01_introduction_and_goals.adoc[]

<<<<
// 2. Architecture Constraints
include::src/02_architecture_constraints.adoc[]

<<<<
// 3. Context and Scope
include::src/03_context_and_scope.adoc[]

<<<<
// 4. Solution Strategy
include::src/04_solution_strategy.adoc[]

<<<<
// 5. Building Block View
include::src/05_building_block_view.adoc[]

<<<<
// 6. Runtime View
include::src/06_runtime_view.adoc[]

<<<<
// 7. Deployment View
include::src/07_deployment_view.adoc[]

<<<<
// 8. Concepts
include::src/08_concepts.adoc[]

<<<<
// 9. Architecture Decisions
include::src/09_architecture_decisions.adoc[]

<<<<
// 10. Quality Requirements
include::src/10_quality_requirements.adoc[]

<<<<
// 11. Technical Risks
include::src/11_technical_risks.adoc[]

<<<<
// 12. Glossary
include::src/12_glossary.adoc[]


100 changes: 100 additions & 0 deletions PT/asciidoc/src/01_introduction_and_goals.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
ifndef::imagesdir[:imagesdir: ../images]

[[section-introduction-and-goals]]
== Introdução e Objetivos

ifdef::arc42help[]
[role="arc42help"]
****
Descreve os requisitos relevantes e as forças motrizes que os arquitetos de software e a equipe de desenvolvimento devem considerar.
Isso inclui
* objetivos de negócios subjacentes,
* recursos essenciais,
* requisitos funcionais essenciais,
* objetivos de qualidade para a arquitetura e
* partes interessadas relevantes e suas expectativas
****
endif::arc42help[]

=== Visão Geral dos Requisitos

ifdef::arc42help[]
[role="arc42help"]
****
.Conteúdo
Descrição curta dos requisitos funcionais, forças motrizes, excerto (ou resumo)
dos requisitos. Link para (esperançosamente existentes) documentos de requisitos
(com número da versão e informações sobre onde encontrá-lo).
.Motivação
Do ponto de vista dos usuários finais, um sistema é criado ou modificado para
melhorar o suporte e/ou melhorar a qualidade de uma atividade negocial.
.Forma
Descrição textual curta, provavelmente em formato tabular de casos de uso.
Se existirem documentos de requisitos, esta visão geral deve se referir a esses documentos.
Mantenha esses trechos o mais curtos possível. Equilibre a legibilidade deste documento com a redundância potencial em relação aos documentos de requisitos.
.Mais informações
Consulte https://docs.arc42.org/section-1/[Introduction and Goals] na documentação do arc42.
****
endif::arc42help[]

=== Objetivos de Qualidade

ifdef::arc42help[]
[role="arc42help"]
****
.Conteúdo
Os três principais (máx. cinco) objetivos de qualidade para a arquitetura cujo cumprimento é de maior importância para as principais partes interessadas.
Nós realmente queremos dizer objetivos de qualidade para a arquitetura. Não os confunda com objetivos de projeto.
Eles não são necessariamente idênticos.
Considere esta visão geral de tópicos potenciais (com base no padrão ISO 25010):
image::01_2_iso-25010-topics-EN.drawio.png["Categorias de Requisitos de Qualidade"]
.Motivação
Você deve saber os objetivos de qualidade de suas partes interessadas mais importantes, pois elas influenciarão decisões arquiteturais fundamentais.
Certifique-se de ser muito concreto sobre essas qualidades, evite chavões.
Se você, como arquiteto, não sabe como a qualidade do seu trabalho será julgada...
.Forma
Uma tabela com objetivos de qualidade e cenários concretos, ordenados por prioridades
****
endif::arc42help[]

=== Partes Interessadas

ifdef::arc42help[]
[role="arc42help"]
****
.Conteúdo
Visão geral explícita das partes interessadas do sistema, ou seja, todas as pessoas, funções ou organizações que
* devem conhecer a arquitetura
* precisam ser convencidas da arquitetura
* precisam trabalhar com a arquitetura ou com código
* precisam da documentação da arquitetura para seu trabalho
* precisam tomar decisões sobre o sistema ou seu desenvolvimento
.Motivação
Você deve conhecer todas as partes envolvidas no desenvolvimento do sistema ou afetadas pelo sistema.
Caso contrário, você pode ter surpresas desagradáveis ​​mais tarde no processo de desenvolvimento.
Essas partes interessadas determinam a extensão e o nível de detalhes do seu trabalho e seus resultados.
.Forma
Tabela com nomes de funções, nomes de pessoas e suas expectativas com relação à arquitetura e sua documentação.
****
endif::arc42help[]

[options="header",cols="1,2,2"]
|===
|Função/Nome|Contato|Expectativas
| _<Função-1>_ | _<Contato-1>_ | _<Expectativa-1>_
| _<Função-2>_ | _<Contato-2>_ | _<Expectativa-2>_
|===
28 changes: 28 additions & 0 deletions PT/asciidoc/src/02_architecture_constraints.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
ifndef::imagesdir[:imagesdir: ../images]

[[section-architecture-constraints]]
== Restrições Arquiteturais


ifdef::arc42help[]
[role="arc42help"]
****
.Conteúdo
Qualquer requisito que restrinja arquitetos de software em sua liberdade de decisões de design e implementação ou decisão sobre o processo de desenvolvimento. Essas restrições às vezes vão além de sistemas individuais e são válidas para organizações e empresas inteiras.
.Motivação
Arquitetos devem saber exatamente onde são livres em suas decisões de design e onde devem aderir às restrições.
Restrições devem sempre ser tratadas; elas podem ser negociáveis, no entanto.
.Forma
Tabelas simples de restrições com explicações.
Se necessário, você pode subdividi-las em
restrições técnicas, restrições organizacionais e políticas e
convenções (por exemplo, diretrizes de programação ou controle de versão, convenções de documentação ou nomenclatura)
.Mais informações
Consulte https://docs.arc42.org/section-2/[Architecture Constraints] na documentação do arc42.
****
endif::arc42help[]
78 changes: 78 additions & 0 deletions PT/asciidoc/src/03_context_and_scope.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
ifndef::imagesdir[:imagesdir: ../images]

[[section-context-and-scope]]
== Contexto e Escopo


ifdef::arc42help[]
[role="arc42help"]
****
.Conteúdo
Contexto e escopo - como o nome sugere - delimita seu sistema (ou seja, seu escopo) de todos os seus parceiros de comunicação
(sistemas e usuários vizinhos, ou seja, o contexto do seu sistema). Ele especifica, portanto, as interfaces externas.
Se necessário, diferencie o contexto de negócios (entradas e saídas específicas do domínio) do contexto técnico (canais, protocolos, hardware).
.Motivação
As interfaces de domínio e as interfaces técnicas para parceiros de comunicação estão entre os aspectos mais críticos do seu sistema. Certifique-se de entendê-las completamente.
.Forma
Várias opções:
* Diagramas de contexto
* Listas de parceiros de comunicação e suas interfaces.
.Mais informações
Consulte https://docs.arc42.org/section-3/[Context and Scope] na documentação do arc42.
****
endif::arc42help[]

=== Contexto Negocial

ifdef::arc42help[]
[role="arc42help"]
****
.Conteúdo
Especificação de *todos* os parceiros de comunicação (usuários, sistemas de TI, ...) com explicações de entradas e saídas ou interfaces específicas do domínio.
Opcionalmente, você pode adicionar formatos específicos do domínio ou protocolos de comunicação.
.Motivação
Todas as partes interessadas devem entender quais dados são trocados com o ambiente do sistema.
.Forma
Todos os tipos de diagramas que mostram o sistema como uma caixa preta e especificam as interfaces de domínio para os parceiros de comunicação.
Como alternativa (ou adicionalmente), você pode usar uma tabela.
O título da tabela é o nome do seu sistema, as três colunas contêm o nome do parceiro de comunicação, as entradas e as saídas.
****
endif::arc42help[]

**<Diagrama ou Tabela>**

**<opcionalmente: Explicação das interfaces de domínio externo>**

=== Contexto Técnico

ifdef::arc42help[]
[role="arc42help"]
****
.Conteúdo
Interfaces técnicas (canais e mídias de transmissão) que vinculam seu sistema ao seu ambiente. Além disso, um mapeamento de entrada/saída específica de domínio para os canais, ou seja, uma explicação de qual E/S usa qual canal.
.Motivação
Muitas partes interessadas tomam decisões arquiteturais com base nas interfaces técnicas entre o sistema e seu contexto. Especialmente os designers de infraestrutura ou hardware decidem essas interfaces técnicas.
.Forma
Por exemplo, diagrama de implantação UML descrevendo canais para sistemas vizinhos,
junto com uma tabela de mapeamento mostrando os relacionamentos entre canais e entrada/saída.
****
endif::arc42help[]

**<Diagrama ou Tabela>**

**<opcionalmente: Explicação das interfaces técnicas>**

**<Mapeamento de entrada/saída para canais>**
33 changes: 33 additions & 0 deletions PT/asciidoc/src/04_solution_strategy.adoc
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
ifndef::imagesdir[:imagesdir: ../images]

[[section-solution-strategy]]
== Estratégia de Solução


ifdef::arc42help[]
[role="arc42help"]
****
.Conteúdo
Um breve resumo e explicação das decisões fundamentais e estratégias de solução que moldam a arquitetura do sistema. Inclui
* decisões de tecnologia
* decisões sobre a decomposição de nível superior do sistema, por exemplo, uso de um padrão arquitetural ou _design pattern_
* decisões sobre como atingir as principais metas de qualidade
* decisões organizacionais relevantes, por exemplo, selecionar um processo de desenvolvimento ou delegar certas tarefas a terceiros.
.Motivação
Essas decisões formam os pilares da sua arquitetura. Elas são a base para muitas outras decisões detalhadas ou regras de implementação.
.Forma
Mantenha as explicações dessas decisões-chave curtas.
Motive o que foi decidido e por que foi decidido dessa forma,
com base na declaração do problema, metas de qualidade e principais restrições.
Consulte os detalhes nas seções a seguir.
.Mais informações
Consulte https://docs.arc42.org/section-4/[Solution Strategy] na documentação do arc42.
****
endif::arc42help[]
Loading

0 comments on commit 4f6b1a4

Please sign in to comment.