Baixe o app para aproveitar ainda mais
Prévia do material em texto
Engenharia de Software Disciplina: Gerenciamento de Software Professor: Hélton R. Nunes. M.Sc. PRÁTICAS DO GERENCIAMENTO DE SOFTWARE Professor: Hélton R. Nunes. M.Sc. • Metodologias ágeis tem sido utilizadas como alternativa às abordagens tradicionais, por: • Terem menos regras; • Menos burocracias; • Serem mais flexíveis, por permitirem ajustes durante o desenvolvimento do software; METODOLOGIAS TRADICIONAIS X ÁGEIS • OpenUp ou Processo Unificado Aberto • União de características encontradas no RUP, Extreme Programming (XP) e Scrum; • Considerada uma metodologia leve; • Aplica a abordagem iterativa e incremental em um Ciclo de vida estruturado com abordagem ágil; • Foco no desenvolvimento colaborativo e valorização da equipe; • Possui a iteração normal e mais um micro incremento; • Os micro incrementos são pequenas unidades de trabalho de um ou mais membros da equipe, as unidades de trabalho podem representar algumas horas a alguns dias de trabalho em algum item de produto de entrega aceitável; OUTRAS METODOLOGIAS - OpenUP OUTRAS METODOLOGIAS - OpenUP • PAPÉIS: • Stakeholder: se comunica e colabora com o Gerente de Projeto e com os analistas; • Analista: coleta informações com os stakeholder e seu foco principal é a Intenção; • Arquiteto: responsável pela arquitetura, design e a codificação do projeto; • Desenvolvedor: responsável por escrever os códigos, os testes unitários e a integração entre os componentes. Seu foco é a solução; • Testador: responsável pelos testes no código. Se comunica com o Analista e com os desenvolvedores; • Gerente de Projeto (Project Manager): responsável por liderar, planejar, coordenar os stakeholders e o time do projeto; • Qualquer papel (Any Role): qualquer membro da equipe que pode executar tarefas gerais; OUTRAS METODOLOGIAS - OpenUP • Foco no valor da comunicação e nas interações entre as pessoas durante o processo de desenvolvimento de software; • Foco nos talentos e nas habilidades das pessoas envolvidas no projeto; • Permite que o desenvolvimento ocorra conforme as características da equipe; • Não há uma metodologia Crystal e sim diferentes tipos de metodologia Crystal para diferentes tipos de projeto, por isso chamamos de família Crystal. OUTRAS METODOLOGIAS - Crystal OUTRAS METODOLOGIAS - Crystal • PROPRIEDADES: • Entregas Frequentes: software testado e sendo funcional deve ser entregue a intervalos de tempo; • Melhoria Reflexiva: a equipe deve identificar formas de melhorar, rever falhas, verificar o que deu certo; • Comunicação Intensa: comunicação cara a cara, focada nas pessoas e na troca constante de informações; • Segurança Pessoal: descobrir as fraquezas, as pessoas devem se sentir à vontade para dar opiniões, ambiente de confiança entre os membros da equipe; • Foco: saber no que trabalhar, ter prioridades do projeto bem definidas; • Acesso Fácil a Usuários Experientes: usuários com experiência e com especialidades diferentes devem estar disponíveis para serem consultados em caso de dúvidas; • Integração Contínua com Testes: ambiente deve ser assegurado por testes automatizados, com gerenciamento de configuração e com integração contínua; OUTRAS METODOLOGIAS - Crystal • EQUIPE: • Patrocinador: é o responsável pelo financeiro da empresa. • Coordenador de Projeto: ações de coordenação e liderança da equipe de desenvolvimento. • Analista de Negócios: responsável por levantar os requisitos do sistema e pela modelagem desses requisitos. • Usuário Stakeholder: usuário que conheça bem o processo para acompanhar o projeto. • Designer/Projetista: responsável pela arquitetura do sistema e pelos elementos da interface/humano computador. • Programador/Designer: responsável pela implementação dos códigos do sistema, adaptação de componentes e configurações iniciais do sistema. Essa metodologia sugere que use padrões de codificação, ou seja, adoção de “Designers Patterns”. • Testador: responsável por testar o sistema. • Redator: responsável por documentar os fatos durante o desenvolvimento do projeto. OUTRAS METODOLOGIAS - Crystal • Técnica de desenvolvimento orientada a testes; • Busca antecipar a identificação e a correção de erros durante o desenvolvimento de software; • Seu princípio básico se baseia em escrever testes automatizados para a funcionalidade antes de ser implementada; OUTRAS METODOLOGIAS -TEST DRIVEN DEVELOPMENT (TDD) OUTRAS METODOLOGIAS - LEAN SOFTWARE DEVELOPMENT (LD) • Visualizar o fluxo de trabalho (workflow). • Acompanhar cada passo da cadeia de valor do software, do início ao fim do seu desenvolvimento. • Visualizar e limitar a quantidade de Trabalho em Progresso (WIP) em cada fase. • Lembrar sempre das políticas que estão sendo seguidas. • Medir e gerenciar o Fluxo de Trabalho. • Identificar as melhorias que podem ser feitas (cultura Kaizen - melhoria contínua); OUTRAS METODOLOGIAS -KANBAN • Esteja sempre ligado nas tendências do mercado de TI; • Não queira abraçar todos os conteúdos profundamente; • Pesquise sempre que tiver uma dúvida; • Busque o aprendizado constante; • O mercado de TI esta cheio de vagas, mas exige dedicação e perseverança sempre; • Nunca menospreze qualquer tecnologia do mercado, um dia ela pode ser a sua pagadora de boletos; • Utilize linkdin não apenas para buscar vagas, mas também para interagir com as pessoas; • Mantenha sempre contatos com pessoas da área; DICAS DO PROFESSOR Obrigado! Obrigado!
Compartilhar