--- title: Programming Methodology localeTitle: Metodologia de Programação --- ### Princípios Fundamentais Ágeis **_Indivíduos e interações_** sobre **_processos e ferramentas_** **_Software de trabalho_** mais **_abrangente_** **_Colaboração do cliente_** sobre **_negociação de contrato_** **_Respondendo para mudar_** **_depois de um plano_** ## Histórias de usuários Histórias de usuários nos ajudam a vincular as necessidades de nossos usuários diretamente a recursos que implementamos em um formato de conversação. Eles **sempre** seguem esta sintaxe: _"Como Usuário / Stakeholder, eu preciso / quero ser capaz de fazer algo"_ . Isso pode resultar em algumas histórias embaraçosas para os recursos "óbvios" como _"Como usuário, preciso confiar que as informações do meu cartão de crédito estão seguras"._ , mas é imperativo que TODOS os recursos se conectem a uma história para nos permitir efetivamente dividir o trabalho em partes gerenciáveis. ## Sprints Um "Sprint" é um ciclo de desenvolvimento curto (1-3 semanas) durante o qual um número de histórias ou subtarefas são direcionadas para conclusão até o final do sprint. A ideia por trás do "Sprinting" é nos permitir **entregar** uma história ao campeão do projeto para feedback / aprovação. Esse fluxo de trabalho iterativo garante que recebamos adesão contínua do campeão do projeto e estamos fornecendo funcionalidade que funciona e é valiosa. ## SCRUM Em um nível básico, o SCRUM nos ajuda a permanecer focados e informados sobre o status de cada tarefa atribuída, além de quebrar as barreiras de comunicação. Em muitos contextos profissionais, o dia de trabalho começa com um "Daily Scrum". Estaremos seguindo um scrum semanal para alinhar com os nossos sprints. Uma falha comum no scrum é tentar solucionar problemas durante um scrum. A solução de problemas e o brainstorming devem sempre ser feitos como uma tarefa separada do SCRUM. Leia mais [aqui](http://scrummethodology.com/) .