iSAQB® Certified Professional for Software Architecture - Foundation Level
-
entre 07-02-26 e 14-02-26
Italy - Online
English
Descrição
Os treinamentos de Profissional Certificado para Arquitetura de Software - Nível de Fundação (CPSA-F) fornecerão aos participantes os conhecimentos e habilidades necessários para projetar, especificar e documentar uma arquitetura de software adequada para satisfazer os respectivos requisitos para sistemas de pequeno e médio porte. Com base em sua experiência prática individual e nas habilidades existentes, os participantes aprenderão a derivar decisões arquitetônicas a partir de uma visão de sistema existente e requisitos adequadamente detalhados. Os treinamentos CPSA-F ensinam métodos e princípios para projeto, documentação e avaliação de arquiteturas de software, independentemente de processos específicos de desenvolvimento.
O foco é a educação e treinamento das seguintes habilidades:
Discutir e conciliar decisões arquitetônicas fundamentais com as partes interessadas a partir de requisitos, gerenciamento, desenvolvimento, operações e testes.
Compreender as atividades essenciais da arquitetura de software, e realizar as atividades para sistemas de pequeno e médio porte
Documentar e comunicar arquiteturas de software baseadas em visões arquitetônicas, padrões arquitetônicos e conceitos técnicos.
Capítulo 1: Conceitos básicos de arquitetura de software
- Discutir definições de arquitetura de software.
- Compreender e identificar os benefícios da arquitetura de software.
- Compreender a arquitetura de software como parte do ciclo de vida do software.
- Compreender as tarefas e responsabilidades dos arquitetos de software.
- Relacionar o papel dos arquitetos de software com outras partes interessadas.
- Pode explicar a correlação entre as abordagens de desenvolvimento e a arquitetura de software.
- Diferenciar entre objetivos de curto e longo prazo.
- Distinguir afirmações explícitas e suposições implícitas.
- Responsabilidades dos arquitetos de software dentro do contexto arquitetônico maior.
- Diferenciar os tipos de sistemas de TI.
Capítulo 2: Projeto e desenvolvimento de arquiteturas de software
- Selecionar e utilizar abordagens e heurísticas para o desenvolvimento da arquitetura.
- Arquiteturas de software de projeto.
- Identificar e considerar fatores que influenciam a arquitetura de software.
- Projetar e implementar preocupações transversais.
- Descrever, explicar e aplicar adequadamente padrões arquitetônicos importantes.
- Explicar e utilizar princípios de design.
- Planejar as dependências entre os blocos de construção.
- Atingir requisitos de qualidade com abordagens e técnicas apropriadas.
- Projetar e definir interfaces.
Capítulo 3: Especificação e comunicação de arquiteturas de software.
- Explicar e considerar a qualidade da documentação técnica.
- Descrever e comunicar as arquiteturas de software.
- Explicar e aplicar notações/modelos para descrever a arquitetura de software.
- Explicar e utilizar visões arquitetônicas.
- Explicar e aplicar a visão de contexto de sistemas.
- Documentar e comunicar as preocupações transversais.
- Descrever interfaces.
- Explicar e documentar decisões arquitetônicas.
- Utilizar a documentação como comunicação escrita.
- Conhecer recursos e ferramentas adicionais para documentação.
Capítulo 4: Arquitetura e qualidade do software
- Discutir modelos de qualidade e características de qualidade.
- Esclarecer os requisitos de qualidade para arquiteturas de software.
- Análise qualitativa e avaliação das arquiteturas de software.
- Avaliação quantitativa de arquiteturas de software.
Capítulo 5: Exemplos de arquiteturas de software.
Conhecer a relação entre requisitos, restrições e soluções.
Conhecer a razão de ser da implementação técnica de uma solução.
Público-alvo
Este currículo reflete o conteúdo atualmente considerado pelos membros do iSAQB como necessário e útil para alcançar as metas de aprendizagem do CPSA-F. Não é uma descrição abrangente de todo o domínio da 'arquitetura de software'.
Requisitos
Os participantes devem ter os seguintes conhecimentos e/ou experiência. Em particular, a experiência prática substancial do desenvolvimento de software em uma equipe é um pré-requisito importante para a compreensão do material de aprendizagem e a certificação bem sucedida.
- Mais de 18 meses de experiência prática com desenvolvimento de software, adquirida através do desenvolvimento em equipe de vários sistemas fora da educação formal
- Conhecimento e experiência prática com pelo menos uma linguagem de programação superior, especialmente:
- Conceitos de modularização (pacotes, namespaces, etc.) passagem de parâmetros (chamada por valor, chamada por referência) escopo, ou seja, de declaração e definição de tipo e variável
- Noções básicas de sistemas de tipo (digitação estática vs. dinâmica, tipos de dados genéricos)
- Tratamento de erros e exceções no software
- Potenciais problemas de estado global e variáveis globais
- Conhecimento básico de: modelagem e abstração algoritmos e estruturas de dados (ou seja, Listas, Árvores, HashTable, Dicionário/Mapa)
- UML (diagramas de classes, pacotes, componentes e seqüências) e sua relação com o código fonte
Além disso, o seguinte será útil para a compreensão de vários conceitos:
- Noções básicas e diferenças de programação imperativa, declarativa, orientada a objetos e funcional
- Experiência prática em:
- uma linguagem de programação orientada a objetos (i.e. Java ou C#)
- projetar e implementar aplicações distribuídas, tais como sistemas cliente-servidor ou aplicações web
- documentação técnica, especialmente a documentação do código fonte, projeto do sistema ou conceitos técnicos