Qual seu Estado ? Cidade:

CIDADE - ESTADO

Arquitetura E Desenvolvimento De Software Andndash Parte 01 Introducao


Fonte: imasters.com.br/desenvolvimento/arquitetura-e-desenvolvimento-de-software-parte-01-introducao

Arquitetura e desenvolvimento de software – Parte 01: Introdução | iMasterswe are developersEm desenvolvimentoclose-circleDigite sua palavra-chaveEm desenvolvimentoPowered by:Desenvolvimento8 nov, 2018Arquitetura e desenvolvimento de software – Parte 01: Introdução315 visualizações COMPARTILHE!Gustavo Bellini BigardiTem 8 artigos publicados com 3725 visualizações desde 2018PublicidadeGustavo Bellini Bigardi8editDesenvolvedor e arquiteto de software a mais de 12 anos, trabalhando tecnologias como .NET, Java, Go, NodeJS e outras. Palestrante em eventos da comunidade, com foco em tecnologias da Microsoft, Certificações MCSA Web e MCSD App Builder (Microsoft) e baterista nas horas vagas.Leia mais12 nov, 2018Construindo uma aplicação Web completa com Blazor – Parte 021 nov, 2018Construindo uma aplicação Web completa com Blazor – Parte 0130 out, 2018Desenvolvendo em ASP.NET Core com HTTPS e certificados auto-assinadosFala, galera! Tudo bem? Nos últimos dias estive pensando bastante sobre arquitetura de software, padrões de desenvolvimento, soluções que acabam ficando complexas de manter por conta de over-engineering e outros problemas do dia a dia que encontro no meu trabalho. Vários projetos em que trabalhei tiveram padrões que se perderam no decorrer do tempo e outros que geraram uma sobrecarga de tecnologias e padrões que tornaram estes mais complexos para serem mantidos, mesmo que por pessoas mais experientes e com tempo de casa. Por conta disso, resolvi iniciar uma série de artigos, cobrindo uma visão da responsabilidade de um arquiteto de software e como sua atuação pode afetar a qualidade de entrega, além de abordar os padrões de desenvolvimento mais utilizados e boas práticas. Não abordarei todos, pois caso contrário, seria um livro, não uma série de artigos – o conteúdo é bem extenso. Arquitetura Antes de mais nada, o que é arquitetura de software? Não, não é um conjunto de técnicas para Minecraft – apesar de eu gostar muito do jogo. Tela do Minecraft, “arquitetando” e construindo cidades. Vários autores já deram definições diferentes para arquitetura de software, como: “O conceito de mais alto nível de um sistema em seu ambiente […] a organização ou estrutura de componentes significantes interagindo através de interfaces de modo que estes componentes mais importantes são compostos de componentes e interfaces sucessivamente menores”. “Parte dos sistemas que são difíceis de se modificar” – Martin Fowler Se buscarmos outros autores ou fontes de informação, teremos mais conceitos, mas todos eles acabam convergindo para um ponto em comum, que resumo como: Alguém que define e acompanha a evolução do software, tanto tecnicamente como a nível de processo. Um arquiteto que se preocupa apenas com a parte técnica do projeto – não está ligado ao mesmo como um todo, e vai falhar. O processo de desenvolvimento de software tem como principal analogia uma esteira de fábrica, onde as peças vêm passando. Cada um faz sua parte e no final algo é entregue para o cliente, sempre seguindo o mesmo processo. Algo errado? Com certeza. A esteira está sempre produzindo, mas de forma igual a de ontem, sempre repetindo. Software é algo que muda, evolui em poucas horas . Cito aqui uma frase que o MVP Ramon Durães sempre usa em suas palestras e vídeos: “A fórmula de ontem não funciona mais hoje…”. — Ramon Durães As variáveis mudam, e de forma rápida. A fórmula desenvolvida hoje pela manhã pode já não ser mais válida ao fim do dia, inclusive. E não me refiro somente à tecnologia, mas processos e experiência. O usuário está ficando mais exigente a cada dia. Acredite, software como entregávamos anos atrás, aquele projeto de um ano ou mais que somente sofria mudanças em casos de bugs, todo procedural e cheio de formulários, já não vende mais – está em extinção! Assim como aquele arquiteto que apenas define padrões, coloca os mesmos em uma intranet e apenas responde alguns e-mails também. Algo que já se consolidou em projetos fora do país (principalmente em startups) e agora está cada vez mais forte aqui no Brasil, é que a responsabilidade de toda a arquitetura está em toda a equipe. O arquiteto é um profissional de grande experiência. Seria um degrau acima de um engenheiro de software sênior, mas não é o único responsável pela tecnologia do projeto – ele também, em alguns casos, é o responsável por estar “prestando contas” para o projeto. Uma pergunta comum para os que vêm esse modelo, é: “Onde estão os gerentes?” A verdadeira pergunta é: “Mas para que eles realmente servem?”. Uma equipe madura não apenas sabe gerenciar seu tempo e tarefas sem um gerente, mas também acompanhar e discutir a evolução dos seus produtos, seja em caráter técnico ou de negócios. O arquiteto é apenas como um líder que ajuda a organizar e guiar a equipe, mas ela deve poder caminhar de forma independente, não distorcendo seus objetivos e processos, mas sim evoluindo eles de forma adequada e estratégica. Toda a equipe pode e deve opinar na arquitetura e evolução do software. Resumindo, antes que tomemos um rumo totalmente fora dos objetivos do artigo, Arquitetura de Software, na minha visão, consiste em definir os componentes de um software, sua comunicação e comportamento com outros softwares e seu ambiente. Algo que deve ser feito por toda a equipe, sendo que normalmente temos na figura do arquiteto alguém responsável por “prestar contas” sobre os padrões e evolução da solução, assim como facilitar a comunicação entre times e sistemas para que a solução evolua de forma simples e agregue valor para a empresa e seus clientes. Iniciei o artigo com essa reflexão, pois de nada vale estudarmos todos os padrões de desenvolvimento sendo que a equipe não conversa, não age como um time onde todos são responsáveis
... ++ Mais

TAGS:

Arquitetura desenvolvimento software Parte Introdução iMasterswe developersEm desenvolvimentoclose-circleDigite palavra-chaveEm desenvolvimentoPowered by:Desenvolvimento8 2018Arquitetura desenvolvimento software Parte Introdução315 visualizações COMPARTILHE!Gustavo Bellini BigardiTem artigos publicados 3725 visualizações desde 2018PublicidadeGustavo Bellini Bigardi8editDesenvolvedor arquiteto software mais anos trabalhando tecnologias como .NET Java NodeJS outras. Palestrante eventos comunidade foco tecnologias Microsoft Certificações MCSA MCSD Builder (Microsoft) baterista horas vagas.Leia mais12 2018Construindo aplicação completa Blazor Parte 2018Construindo aplicação completa Blazor Parte 0130 2018Desenvolvendo ASP.NET Core HTTPS certificados auto-assinadosFala galera! Tudo bem? últimos dias estive pensando bastante sobre arquitetura software padrões desenvolvimento soluções acabam ficando complexas manter conta over-engineering outros problemas encontro trabalho. Vários projetos trabalhei tiveram padrões perderam decorrer tempo outros geraram sobrecarga tecnologias padrões tornaram estes mais complexos para serem mantidos mesmo pessoas mais experientes tempo casa. conta disso resolvi iniciar série artigos cobrindo visão responsabilidade arquiteto software como atuação pode afetar qualidade entrega além abordar padrões desenvolvimento mais utilizados boas práticas. Não abordarei todos pois caso contrário seria livro não série artigos conteúdo extenso. Arquitetura Antes mais nada arquitetura software? Não não conjunto técnicas para Minecraft apes

HTML Box Comentário está carregando comentários ...