Baixe o app para aproveitar ainda mais
Prévia do material em texto
RESPOSTAS Questões: 1. Qual é a importância de um arquiteto de Software para uma empresa de TI que desenvolve sistemas corporativos que devem ser integrados? Cite uma situação prática como exemplo. O papel principal desempenhado por um arquiteto de software é liderar e coordenar as atividades e os artefatos técnicos no decorrer do projeto. O arquiteto de software estabelece a estrutura geral de cada visão de arquitetura: a decomposição da visão, o agrupamento dos elementos e as interfaces entre esses principais agrupamentos 2. Cite três atividades típicas que um arquiteto de software pode/deve desempenhar num grande projeto de software conduzido por uma empresa para um cliente externo. *Liderar e coordenar as atividades e os artefatos técnicos; *Estabelecer a estrutura geral de cada visão de arquitetura: a decomposição da visão, o agrupamento dos elementos e as interfaces entre esses principais agrupamentos *Identificação e gerência de riscos associados aos projetos. 3. Qual é o principal diferencial propiciado pela atuação de um arquiteto de software, na captação e atendimento à visão do cliente? Arquiteto de Software é o especialista em soluções técnicas para o desenvolvimento de sistemas, o que exige uma visão sistêmica madura e aguçada, e deve ficar responsável por ações no nível decisório mais alto, seja corporativo ou de sistemas, para tal, ele deve entender o que o cliente deseja, para entregar planejar uma boa solução. 4. Cite um mito sobre o papel arquiteto de software e explique porque ele é falso. Diferentemente do senso comum, um arquiteto não é um desenvolvedor sênior que evoluiu em sua carreira. Um desenvolvedor é especialista e tático. Um arquiteto de sistemas é um generalista em sua essência e primordialmente estratégicox 5. Num projeto de desenvolvimento de software um arquiteto poderia atuar como (assinale quantos itens julgar corretos): (x) Assessor / consultor do gerente do projeto. (x) Assessor / consultor dos analistas de sistemas. (x) Líder técnico. ( ) Interface entre os times de projeto e de produção. ( ) Analista de qualidade. 6. Analise a relação entre o arquiteto de software e as disciplinas do RUP, como visto na figura a seguir. Aponte em qual ou quais dela(s) ele deve atuar e como deve atuar (atividades): Modelagem de negócios, Gerenciamento de configuração e mudança, Gerenciamento de Projeto 7. Considere o diagrama “4+1” mostrado em sala (ver figura) e explique a importância de contemplar todas essas visões no projeto de uma arquitetura específica. Quando você pretende visualizar algo tão grande e complexo como a arquitetura de todo um sistema, é de grande auxílio você dividir o todo em agrupamentos de partes que se relacionam. Cada uma destas visões oferece sua própria perspectiva da arquitetura do projeto. A visão de caso de uso é a visão +1 deste modelo, porque ao contrário das outras visões, ela demonstra a perspectiva do mundo esterno. Cada uma destas visões representa um aspecto do sistema e cada uma possui diagramas UML associados à ela. 8. Cite uma situação concreta em que a atuação de um arquiteto de software foi determinante para o sucesso de um projeto de desenvolvimento de software. Você pode se basear em experiências pessoais ou em pesquisas sobre casos de sucesso reais. Desenvolvimento de software para a área de pecuária de precisão, incluindo provisionamento e gerenciamento da infraestrutura para suportar os sistemas. Conseguiu-se foco para suportar a expansão da base de usuários aliado a implantação de boas práticas em todas as fases do ciclo de vida das aplicações. 9. Faça uma pesquisa de mercado visando encontrar cursos de graduação e/ou de pós- graduação na área de arquitetura de software, no Brasil ou no exterior. Cite o nome, a instituição que oferece, a duração e o foco/objetivo dos três cursos encontrados. PUCMINAS: INVESTIMENTO 20 x R$ 290,00 (ou R$ 5.800,00) Duração O curso possui carga horária total de 360 horas e duração média de 18 meses. OBJETIVOS - Capacitar o participante para propor soluções em arquitetura de software distribuído aptas a maximizar o valor do software fazendo, também, com que ele gere valor para o negócio do cliente. - Mostrar a importância da arquitetura de software distribuído no contexto corporativo bem como no contexto do processo de desenvolvimento de software; - Fornecer uma ampla visão sobre os conceitos relacionados à arquitetura de software e dos processos de engenharia de software que orientam a definição da arquitetura; - Proporcionar conhecimentos e competências aos participantes em técnicas, ferramentas e tecnologias para o desenvolvimento de requisitos arquiteturais necessários à construção de software e para modelar e documentar arquiteturas de software; - Capacitar o participante para propor soluções para integrar softwares distribuídos do ponto de vista de banco de dados, gerenciamento de processos de negócio (BPM), EAI e SOA; - Fornecer elementos básicos sobre tecnologias para computação móvel, computação em nuvem, banco de dados na web, NET, NODE.js e JEE e explicitar componentes básicos para uma arquitetura de software distribuído que usa tais tecnologias; - Capacitar o participante para redefinir arquiteturas de softwares legados ou integrá-los à aplicativos modernos considerando novas tecnologias; - Identificar e discutir conceitos emergentes relacionados à arquitetura de software distribuído e verificar seus impactos em novos projetos. 10. Com base no texto e nas atuais demandas do mercado de tecnologia descreva uma situação (real ou hipotética) em que um arquiteto de software atuaria de forma a aumentar as chances de sucesso de um projeto que segue a abordagem ágil. Você deve ser convincente sobre a importância (ou não) deste papel para o projeto apresentado. O objetivo final da arquitetura é identificar requisitos que afetem a estrutura do software e reduzir os riscos associados ao desenvolvimento do software. A arquitetura deve suportar futuras mudanças de software, hardware e funcionalidade exigidas pelos clientes (que ocorrem muitas vezes). Vamos resumir, então, que a arquitetura de software deve ter os seguintes recursos: Mostrar a estrutura do software, mas sem mostrar os detalhes; Conceber e projetar todos os casos de uso; Satisfazer tanto quanto possível os interesses dos agentes; Cuidar dos requisitos funcionais e de qualidade; Determinar o tipo de software a ser desenvolvido; Determinar os estilos de arquitetura que serão usados; Abordar as principais questões transversais.
Compartilhar