InfoQ Brasil - Arquitetando o Futuro da TI - Por Wagner Santos

27
Arquitetando o Futuro da TI Queue Architecture Wagner Roberto dos Santos Arquiteto Java e Scrum Master

description

Palestra Realizada no Lançamento da InfoQ Brasil sobre Queue de Arquitetura

Transcript of InfoQ Brasil - Arquitetando o Futuro da TI - Por Wagner Santos

Page 1: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Arquitetando o Futuro da TIQueue Architecture

Wagner Roberto dos SantosArquiteto Java e Scrum Master

Page 2: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Apresentação

• Arquiteto Java e Scrum Master.• Editor da InfoQ Brasil.• Participação em projetos open source

relacionados ao NetBeans.• Tester e Membro do time global de

tradutores de NetBeans.• Moderador da lista oficial do NetBeans e

do curso de web services Java Passion.• Autor de diversos artigos.• Certificações: CSM, SCJA, SCJP, SCBCD,

Duke Awards.• Mantém o blog http://netfeijao.blogspot.com

Wagner Roberto dos Santos

Page 3: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Agenda

• Origens da Arquitetura

• Mitos

• Definições sobre Arquitetura

• Papéis do Arquiteto

• Arquitetando o futuro da TI

• Colabore

Page 4: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Origens da Arquitetura

• Arquitetura do grego arché – αρχή, significa "primeiro" ou"construção“.

• Refere-se a arte ou a técnica de projetar e edificar um ambiente habitado pelo ser humano.

Page 5: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Origens da Arquitetura

• Tipos de arquitetura:– Arquitetura neolítica– Arquitetura clássica– Arquitetura Medieval– Arquitetura Barroca– Arquitetura Neoclássica– Arquitetura Contemporânea

Page 6: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Mitos• Mas afinal podemos relacionar arquitetura de software com

arquitetura civil ?

Page 7: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Mitos• Os modelos são similares ?

Page 8: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Definições de Arquitetura

• Definição Moderna

“The software architecture of a program orcomputing system is the structure or structures of the system, which comprise software elements, the externally visible properties of thoseelements, and the relationships among them.”

Software Architecture in Practice (2nd edition)

Page 9: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Definições de Arquitetura

• Definição Moderna e as visões

• “Architecture is defined by the recommended practice as the fundamental organization of a system, embodied in its components, their relationships to each other and theenvironment, and the principles governing its design andevolution.

• ANSI/IEEE Std 1471-2000, Recommended Practice forArchitectural Description of Software-Intensive Systems

Page 10: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Definições de Arquitetura• Definição Moderna

• Descrevendo arquiteturas com as LDAs.

• Visões dos Stakeholders.– Visão funcional/lógica– Visão de código.– Visão de desenvolvimento– Visão de concorrência– Visão física/evolutiva– Visão de ação do usuário

• (feedback)

Page 11: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Definições de Arquitetura

“An architecture is the set of significant decisions about theorganization of a software system, the selection of the structuralelements and their interfaces bywhich the system is composed, together with their behavior as specified in the collaborations amongthose elements, the composition of these structural and behavioralelements into progressively largersubsystems, and the architecturalstyle that guides this organization---these elements and their interfaces, their collaborations, and theircomposition .”

•Definições Clássicas

(Kruchten: The Rational Unified Process.).

Page 12: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Definições de Arquitetura

• Definições Clássicas

”...the architectural design of a system can be described from (at least) three perspectives -- functional partitioning of its domain of interest, its structure, and the allocation of domain function to that structure.”

Bass, et al., 1994:

Dê a sua definição.

Page 13: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Papél do Arquiteto• "O arquiteto ideal deve ser uma pessoa erudita, um

matemático, familiarizado com estudos históricos, um estudioso aplicado de filosofia, conhecedor de música, que não desconheça medicina, detentor de saber jurídico e familiarizado com astronomia e cálculos astronômicos." -Vitruvius, há aproximadamente 25 anos a.C.

Page 14: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Papél do Arquiteto

O arquiteto técnico:

• Identifica as tecnologias que serão utilizadas em um projeto.• Recomenda as metodologias de desenvolvimento e

frameworks do projeto.• Fornece um design geral e a estrutura da aplicação.• Assegura que o projeto esta adequadamente definido.• Assegura que o design da aplicação esta devidamente

documentado.• Propõe um modelo de codificação.• Identifica as tarefas de implementação para o gerente de

projeto.• Ajuda os desenvolvedores em tarefas complexas.• Ajuda o PM a estimar custos de projeto e os benefícios.• Auxilia a identificar a posição dos desenvolvedores.

Page 15: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Papél do Arquiteto

• Para o gerente de projeto– É responsável por aconselhar e guiar o PM em decisões

técnicas.

Page 16: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Papél do Arquiteto

• Para o analista de negócios– Responsável por assegurar que os requisitos da

aplicação estão alinhados com o negócio

Page 17: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Papél do Arquiteto

• Designer– Tem que assegurar que o layout é tecnicamente

aplicável.

Page 18: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Papél do Arquiteto

• Desenvolvedor– Assegurar que os design patterns podem ser mantidos e

extendidos.

Page 19: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Papél do Arquiteto

• Data Modeler– Responsável por assegurar que o data model é

adequado.

Page 20: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Papél do Arquiteto

• Administrador do Banco de Dados (DBA)– Trabalha junto ao DBA para resolver problemas de

persistência.

Page 21: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Papél do Arquiteto

• Especialista de Migração– Define os requisitos para migração dos dados.

Page 22: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Papél do Arquiteto

• Especialista de Infra-estrutura– Define os requisitos de infra-estrutura.

Page 23: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Arquitetando o Futuro da TI

• Queue Architecture– Presente em todas as disciplinas– Casos de Sucesso– Entrevistas– Artigos– Livros– Java, .NET, Ruby, Agile e SOA

CONTE-NOS SUA ESTÓRIA.

Page 24: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Arquitetando o Futuro da TI

• Queue Architecture

Page 25: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Dúvidas

Page 26: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Referências• InfoQ Brasil

– http://www.infoq.com/br/architecture• Worldwide Institute of Software Architects

– http://www.wwisa.org• Software Engineering Institure

– http://www.sei.cmu.edu/architecture/• Grad Booch

– http://www.booch.com/architecture/index.jsp• IEEE

– http://standards.ieee.org/reading/ieee/std_public/description/se/1471-2000_desc.html

• RUP– http://www.wthreex.com/rup/

• NetFeijão Brasil– http://netfeijao.blogspot.com

Page 27: InfoQ Brasil -  Arquitetando o Futuro da TI - Por Wagner Santos

Arquitetando o Futuro da TIQueue Architecture

Wagner Roberto dos SantosArquiteto Java e Scrum Master

Obrigado