quinta-feira, 23 de fevereiro de 2012

Fundamentos sobre Arquitetura de Software

Arquitetura = {Elementos, Organização, Decisão}

Arquitetura de Software pode ser entendida como estrutura ou estruturas de um sistema o qual compreende elementos de software e os relacionamentos entre eles. Ela engloba o conjunto de decisões significativas na organização de um sistema, realizando uma divisão em alto-nível de um sistema em suas sub-partes.

Construir a arquitetura de um software é muito mais do que desenvolver o software, é construir uma "visão". O arquiteto deverá identificar qual a melhor forma de abordar determinados problemas e como os elementos ao redor destes problemas se relacionam, ele poderá lhe dizer o que deverá ser feito (CAMINHO DAS PEDRAS), mas não como deverá ser feito. Dentro de um contexo de desenvolvimento de software podemos dizer que a arquitetura abrange o lado público das interfaces, os detalhes de implementação já não fazem parte das tarefas de arquitetura. Podem existir múltiplas arquiteturas dentro de um sistema

Assim como qualquer solução complexa, um software complexo também precisa ser construído sobre uma base sólida. Falhar em considerar cenários importantes  ou tratamento de problemas comuns podem levar o seu projeto ao fracasso. Mesmo com a existência de ferramentas de desenvolvimento modernas e plataformas que auxiliam na criação de um sistema, NADA SUBSTITUI O PROCESSO DE DESIGN.

Os riscos expostos por uma arquitetura ruim podem ser vistos como:
  • Software instável
  • Não atender requisitos de negócio
  • Prejudicar a distribuição do aplicativo em ambiente de produção

A arquitetura deve ser considerada como um plano estratégico nas empresas. Garantir uma boa arquitetura é garantir um bom conjunto de aplicações que podem garantir um bom conjutno de ferramenmtas para o seu negócio.

Nenhum comentário:

Postar um comentário