Arquitetura Ágil com o AUP

O AUP (Agile Unified Process) é uma “versão simplificada” do RUP idealizada por Scott Ambler que incorpora princípios ágeis. Assim como o OpenUP, o AUP procura balancear agilidade e controle de riscos.
As práticas do AUP se baseiam em técnicas ágeis como, como exemplo, Test Driven Development (TDD), Agile Model Driven Development (AMDD), Agile Change Management, [...]

Extraindo o Sumo da Arquitetura com o EssentialUP – Um processo de software orientado por aspectos

A grande maioria dos processos de software traz um forte acoplamento entre disciplinas, atividades, artefatos e papéis. Este desenho torna complexo ou às vezes impossível adotar uma determinada “prática” isoladamente. A partir das idéias de “separação de preocupações” do paradigma de programação por aspectos, um processo chamado EssentialUP (ou EssUP) foi desenhado como um conjunto [...]

Diretrizes do RUP para Arquitetura de Software

O RUP oferece uma fonte razoável de informações voltadas para a arquitetura de software como fluxo de trabalho (incluindo atividades e tarefas), conceitos, diretrizes, etc. Ao definir o ciclo de vida de desenvolvimento do software, constitui guia fundamental para arquitetos de software. Neste texto, citaremos algumas dessas diretrizes.

Descoberta, Análise e Controle Arquitetural: descreve como realizar descoberta, análise [...]

OpenUP – Agilidade, Controle de Riscos e Disciplina Arquitetural

Métodos ágeis são, sem dúvida, excelentes paradigmas para o desenvolvimento de software. Eles possuem excelentes premissas tais como: foco na comunicação, geração de valor para os clientes e desenho orientado à mudanças; entre outros. Por outro lado, métodos mais robustos como o RUP trazem uma forte orientação por riscos através da decomposição do processo em [...]

As Atividades de Arquitetura do OpenUP

Conforme abordamos anteriormente, o OpenUP é uma derivação do Processo Unificado e, assim como este, é centrado na arquitetura de software. Ao mesmo tempo que aplica os princípios do ciclo de vida do RUP, o OpenUP adota uma “filosofia pragmática e ágil que foca no colaboração natural” para o desenvolvimento do software.
Diferentemente das outras abordagens [...]

O Time de Arquitetura

Em muitas ocasiões, apenas um arquiteto de software não é capaz de atender às necessidades do projeto. Faz-se então necessário formar um time de arquitetura com dois ou mais membros. Sempre que existir a opção de compor o próprio time, o arquiteto líder deve procurar formá-lo com profissionais que julgar mais adequados para a tarefa. [...]

Combinando QAW com RUP e XP

Em um post anterior, introduzimos a aplicação do QAW (Quality Attribute Workshop), um dos métodos do SEI centrados em arquitetura. Relembrando rapidamente: QAW se destina a sistematizar a identificação de requisitos de qualidade com o engajamento dos stakeholders.
Na maioria das vezes, não faz muito sentido identificar requisitos fora do contexto de um projeto. Sendo assim, [...]

A Ovelha de Sete Pernas

Escrevi há algum tempo um post sobre o papel do arquiteto, onde discutia a necessidade do arquiteto dominar habilidades além do espectro técnico da engenharia de software.  Li recentemente dois estudos ricos sobre o tema que gostaria de compartilhar neste blog.
O primeiro estudo, do Eoin Woods,  aborda os tipos de arquitetos presentes no nosso mercado [...]

QAW: Um Método para Descobrir Requisitos de Qualidade

QAW (Quality Attribute Workshop) é um dos métodos centrados em arquitetura desenvolvido pelo SEI. Seu propósito é engajar os stakeholders em revelar requisitos não-funcionais relacionados a uma sistema antes da arquitetura ser desenhada. O QAW pode ser usado em aderência a outros métodos como ao complementar o ATAM ou integrar com o ADD.
Em geral, sem [...]