ALM (Application Management Lifecycle) é o processo de gerenciar o ciclo de vida de uma aplicação, desde da sua concepção até o momento em que ela deixa de ser usada. Esta trilha irá discutir técnicas ágeis para a construção e gerencimento de projetos de software, além de apresentar as ferramentas e dicas mais bacanas para que o seu projeto tenha sucesso não só durante a construção, mas também durante a produção.
Como aplicar ALM em projetos de metodologia tradicional e métodos ágeis de forma a obter resultados em Projetos de Desenvolvimento de Software. Ferramentas e suas aplicações em gestão de projetos e gestão de serviços.
3. Agenda
Mini cv
Definição
Principais benefícios
Pilares do ALM
Metodologias
Disciplinas
Principais processos
Ferramentas
Como obter resultados
Conclusão
Referência
Contato Globalcode – Open4education
4. Mini-cv
Gerente Executivo de Operações
Provider IT Business Solutions
Professor Universitário
Universidade Nove de Julho
VP de Comunicação e Marketing
IIBA Capítulo São Paulo
Processamento de Dados
Universidade Presbiteriana Mackenzie
MBA Gestão de Negócios e Tecnologia
IPT/USP
Mais de 15 anos de experiência em TI
Globalcode – Open4education
5. Definição
ALM é sobre a gestão das tarefas e fluxos de
trabalho do processo de desenvolvimento, e não a
execução das tarefas.
A coordenação de atividades técnicas dentro do
Processo de Desenvolvimento de Software, para
uma entrega bem sucedida, requer que pontos de
vista comuns e processos sejam estabelecidos em
ambientes heterogêneos utilizados por
desenvolvedores individuais. (Gartner)
Globalcode – Open4education
6. Principais benefícios
Colaboração e Comunicação: troca de
mensagens entre a equipe em uma única interface
afim de resolver os problemas enfrentados durante
toda a fase de desenvolvimento;
Rastreabilidade dos itens de trabalho: Todos os
produtos de trabalho gerados durante a execução
dos projetos são rastreados, permitindo maior
visibilidade do processo.
Melhoria da qualidade: Ferramentas de testes
plugadas no ALM proporcionam maior nível de
testes dos produtos gerados.
Globalcode – Open4education
7. Principais benefícios
Redução do tempo de manutenção: sincroniza
aplicação e modelagem e identifica
automaticamente o impacto de mudanças;
Previsibilidade: Através de informações em
tempo real, é possível se antecipar aos problemas
de desenvolvimento de software;
Acompanhamento de processos do time: Visão
integrada através de indicadores em tempo real,
ajudam a movimentação e localização de
disponibilidade de profissionais;
Globalcode – Open4education
8. Principais benefícios
Tomada de decisão em tempo real: Indicadores
e dashboards são integrados ao desenvolvimento,
demonstrado a real situação dos projetos.
Processos: Maximiza os investimentos em
competência, processos e tecnologias.
As empresas ainda estão convergindo e
amadurecendo as suas ferramentas de ALM,
devendo ser uma plataforma para a coordenação e
gerenciamento das atividades de desenvolvimento,
e não uma coleção de ferramentas do ciclo de vida
com funções ALM limitadas e imutáveis.
Globalcode – Open4education
10. Pilares do ALM
Pessoas
Elo entre Ferramentas e Processos;
Analistas de Negócios, Gerente de Projeto, Arquiteto,
DBA, Desenvolvedor, Testador, demais envolvidos.
Processos
Processo de Desenvolvimento de Software (Tradicional,
Ágil, boas práticas, artefatos, ...);
Construção e manutenção de Aplicações.
Ferramentas
Meios, equipamentos e tecnologias que automatizam e
facilitam a condução dos processos pelas pessoas.
Globalcode – Open4education
11. Evolução
SCRUM FDD
Agile
CMMi
PMI
‘00 ...
Engenharia/
RUP ‘90 APF
UML XP
Análise SOA
Estruturada
‘80 Management 3.0 Gerenciamento de Projetos
PMBOK Gerenciamento de Projetos
ITIL Gerenciamento de Serviços
Globalcode – Open4education
12. Metodologias
Requisições
Produção Planejamento
Testes Desenvolvimento
Fonte: http://leadinganswers.typepad.com – Open4education
Globalcode
13. Disciplinas
Gerenciamento de Requisitos (Requeriments
Management)
Documentar e manter a rastreabilidade dos requisitos ao
longo do ciclo de vida da aplicação.
Gerenciamento da Configuração do Software
(Software configuration Management)
Manter e gerenciar artefatos, além de gerar a
rastreabilidade e versionamento dos mesmos.
Montagem e Integração (Build and Integration)
Unir todos os componentes em apenas um único pacote,
a fim de ser testado e distribuído na infra-estrutura de TI.
Globalcode – Open4education
14. Disciplinas
Engenharia de Distribuição (Release Engineering)
Garantir a consistência das diversas versões da
aplicação (disponibilidade da aplicação).
Gerenciamento de Defeitos (Defect Management)
Coletar as ocorrências e tratar como elas serão
corrigidas, além, de procurar identificar as suas raízes e
evitar que no futuro possam ocorrer novamente.
Teste Unitário, Integrado e de Regressão (Unit
Test, Integrated and Regression)
Garantir a qualidade do software e sua conformidade
com os requisitos definidos.
Globalcode – Open4education
15. Disciplinas
Análise de Código (Code Analysis)
Identificar se o código escrito está aderente a padrões e
políticas da empresa.
Teste de Sistema (System Test)
Identificar se a aplicação está aderente aos requisitos e
ser utilizado como ferramentas para aceitação ou não da
aplicação construída.
Relatórios de Acompanhamento (Status Reports)
Informar a todos os papéis como está o andamento do
ciclo de vida da aplicação.
Globalcode – Open4education
16. Principais processos de
entrega (Lean)
Planejamento da Produção
Gerenciamento de Portifolio
Loop fechado
Gerenciamento
de Projeto
Gestão de Demanda
Gerenciamento
da Construção e Gerenciamento
Desenvolvimento
Configuração do de Release
Software
Mudança Consciente
Integração Contínua
Controle de Produção Teste e Garantia
Loop fechado de Qualidade
Gerenciamento de Gerenciamento de
Mudanças Serviço
Globalcode – Open4education
19. Como obter resultados?
Qual a plataforma tecnológica?
Quais as ferramentas já adotadas pela empresa?
Qual é o processo atual de medição da velocidade
do time?
Onde estão localizados fisicamente?
Quais modelos/processos utilizam no dia-a-dia?
Quais os relatórios (dashboards) que utilizam para
monitorar o projeto?
Existe um modelo de migração da aplicação entre
ambientes? (Dev, QA, Produção)
Globalcode – Open4education
20. Como obter resultados?
Como é a estrutura dos projetos dentro da
ferramenta de controle de código-fonte hoje?
Quais as estratégias de montagem da aplicação?
Quais os tipos de testes empregados na
construção da aplicação?
Como compartilham boas práticas de construção e
gestão?
Globalcode – Open4education
21. Conclusão
Conforme suas necessidades, baseado nas
respostas dos dois últimos slides, trace um
planejamento contendo:
Expectativas de abrangência do ALM;
Escolha a ferramenta que atenda a necessidade atual e
sua expectativa de evolução (confrontando com o
budget);
Defina metas e passos para a implantação do ALM;
Crie um processo de Melhoria Contínua associada a
esse planejamento;
Globalcode – Open4education