Software Architecture - Arquitetura de Software

Software Architecture - Arquitetura de Software

Software Architecture - Arquitetura de Software

Arquitetura de Software

A arquitetura de software de um sistema consiste na definição dos componentes de software, suas propriedades externas, e seus relacionamentos com outros softwares. O termo também se refere à documentação da arquitetura de software do sistema.

A documentação da arquitetura do software facilita: a comunicação entre os stakeholders, registra as decisões iniciais acerca do projeto de alto-nível, e permite o reúso do projeto dos componentes e padrões entre projetos.

A disciplina de arquitetura de software é centrada na ideia da redução da complexidade através da abstração e separação de interesses. O glossário do site oficial SOFTWARE ENGINEERING INSTITUTE (Instituto de Engenharia de Software) descreve que arquitetura de software é a estrutura ou estruturas de um sistema, com todos os elementos de software vendo e tendo suas propriedades vistas por todos os outros elementos e relacionamentos.

O termo arquitetura de software é usado para designar processo e produto. – Produto – representação da estrutura de software; – Área da engenharia de software que trata de produzir as estruturas de software, visando a reduzir complexidade.

O Processo de Arquitetura de Software é geralmente composto por: Elaboração do modelo de negócio – envolve analisar custo, tempo de desenvolvimento, restrições de mercado, interfaces com outros sistemas, etc. Entendimento dos requisitos: levantamento de requisitos e modelo do domínio; Criação ou seleção de uma arquitetura: identificação dos componentes e suas interações, das dependências de construção e tecnologias que apoiam a implementação. Representação da arquitetura e divulgação: para permitir aos desenvolvedores e testadores o entendimento da arquitetura Implementação da arquitetura, seguindo seus protocolos e estruturas. Análise e avaliação: verificar a adequação da arquitetura, registrando impactos, riscos e dificuldades, o que servirá para evolução da arquitetura.

As Partes envolvidas (Stakeholders)

Participantes (interessados) – Analista de requisitos – identifica os requisitos; – Arquiteto de software – cria a arquitetura – pode ser um time com um arquiteto líder; – Projetista ou Desenvolvedor – implementa os componentes; – Outros: cliente/usuário, testador, gerente de projeto, programador, secretários, etc.

O Arquiteto de Software

O Papel do Arquiteto de Software representa a execução das seguintes atividades: Ser capaz de reconhecer estruturas comuns em sistemas já desenvolvidos; Usar o conhecimento sobre arquiteturas existentespara tomar decisões de projeto em novos sistemas; Ser capaz de realizar uma descrição formal da arquitetura de um sistema a fim de analisar as propriedades do sistema; Apresentar a arquitetura para outras pessoas.

Habilidades:

Compreender profundamente o domínio e as tecnologias pertinentes; Dominar técnicas de modelagem e metodologias de desenvolvimento; Entender as estratégias de negócios da instituição onde atua; Conhecer produtos, processos e estratégias de concorrente.

Tarefas:

• Especificação da arquitetura do software e das bases para o sistema de acordo com os requisitos do cliente; • Modelagem; • Análise de trade-offs e viabilidade; • Prototipação, simulação e realização de experimentos; • Análise de tendências tecnológicas. Importância da Arquitetura – A arquitetura – abstração que serve como base para criar um entendimento mútuo, para comunicação entre os participantes. – Sua representação serve como guia para o projeto de sua implementação, teste e implantação do sistema.

Referências

  • University of Waterloo (2006). A Very Brief History of Computer Science. Visitado em 2006-09-23.
  • IEEE Transactions on Software Engineering (2006). Introduction to the Special Issue on Software Architecture. Visitado em 2006-09-23.
  • SEI (2010). Glossary?. Visitado em 2010-01-31.
  • SoftwareArchitectures.com (2006). Intro to Software Quality Attributes. Visitado em 2006-09-23.
  • SEI (2006). Origins of Software Architecture Study. Visitado em 2006-09-25.
  • Garlan & Shaw (2006). An Introduction to Software Architecture. Visitado em 2006-09-25.
  • Clements, Paul. Documenting Software Architectures: Views and Beyond. 2 ed. Boston: Addison-Wesley, 2003. pp. 13-15 p. ISBN 0201703726
  • http://pt.wikipedia.org/wiki/Arquitetura_de_software

Deixe seu comentário, siga nossas redes:

  • Twitter
  • Instagram
  • Youtube
  • E fique ligado, pois toda semana teremos videos e novos tópicos que podem ser de seu interesse.

Abraço e até a próxima! 😉👍

Published on Jul 03, 2020 by Vinicius Moll

Share on / compartilhe: