microsoft - application lifecycle management - visão geral

38
ALM Application Lifecycle Management

Upload: alan-carlos

Post on 27-Jun-2015

250 views

Category:

Technology


0 download

DESCRIPTION

Um introdução sobre o Ciclo de Vida de Desenvolvimento de Aplicativos e quais ferramentas podem ser usadas com ele.

TRANSCRIPT

Page 1: Microsoft - Application Lifecycle Management - Visão Geral

ALMApplication Lifecycle

Management

Page 2: Microsoft - Application Lifecycle Management - Visão Geral

A atividade de construção de aplicações é executada através do emprego intenso do trabalho humano, consequentemente exige das empresas somas de investimento financeiro. Parte deste investimento é consumido por atrasos de cronograma, retrabalho, testes inadequados e outros. Estima-se que em 2002, foram gastos cerca 20 bilhões de dólares só com testes inadequados de software feito por desenvolvedores de software.

Page 3: Microsoft - Application Lifecycle Management - Visão Geral

Em paralelo, desde a década de 90, a tecnologia da informação está cada vez mais presente dentro das empresas e na vida das pessoas. A Tecnologia da informação (TI) surgiu inicialmente dentro dos mainframes, passou pela revolução da microcomputação para as massas, até chegar na computação na nuvem. Hoje podemos ver bolsas de valores automatizadas, empresas de telecomunicações administrando milhares de chamadas simultâneas, cadeias de suprimentos totalmente integradas e tanto outros segmentos usando massivamente TI.

Page 4: Microsoft - Application Lifecycle Management - Visão Geral

Com isto temos um paradoxo: de um lado há o uso contínuo e massivo de aplicações no dia-a-dia das empresas e usuários e do outro lado a dificuldade em produzir as mesmas aplicações de forma sofisticada e com a qualidade desejada. Esse desafio vem motivando o surgimento de métodos e ferramentas de trabalho para a organização dos processos de produção de aplicações e engenharia de software. O objetivo desta é apresentar uma introdução sobre o gerenciamento do ciclo de vida de uma aplicação, desde sua concepção até o processo de manutenção evolutiva, também conhecido como Application Lifecycle Management (ALM).

Page 5: Microsoft - Application Lifecycle Management - Visão Geral

Definição

Page 6: Microsoft - Application Lifecycle Management - Visão Geral

ALM é todo o processo que guia a vida útil de uma aplicação desde a sua concepção, passando pela construção, operação e evolução.

O ALM não apenas observa qual é o método de construção, mas preocupa-se também em como a empresa está gastando o seu dinheiro no gerenciamento daquele ativo corporativo.

Page 7: Microsoft - Application Lifecycle Management - Visão Geral

Um destaque importante é a diferença entre Application Lifecycle Management (ALM) e Software Development Lifecycle (SDLC).

O SDLC pode ser definido em uma tradução livre, de acordo com Jayaswal & Patton [J&P1], como “um processo focado no desenho, criação e manutenção de aplicações”.

O ALM é um guia que acompanha toda vida da aplicação, tendo o SDLC como uma das fases do ciclo de vida.

Importante

Page 8: Microsoft - Application Lifecycle Management - Visão Geral

Requisitos

Page 9: Microsoft - Application Lifecycle Management - Visão Geral

Pilares

Page 10: Microsoft - Application Lifecycle Management - Visão Geral

Pilares: Pessoas

Page 11: Microsoft - Application Lifecycle Management - Visão Geral

Pilares: Pessoas

Analista de Negócios

O objetivo do Analista de Negócios é entender as necessidades e comunicá-las para a equipe do projeto. A sua atuação se concentra junto a usuários, clientes e outros participantes, transformando suas percepções em cenários, modelos e requisitos documentados. Ele também é responsável em administrar as expectativas junto aos participantes do projeto.

Page 12: Microsoft - Application Lifecycle Management - Visão Geral

Pilares: Pessoas

Gerente de Projeto

O objetivo do Gerente do Projeto é entregar o projeto dentro do orçamento e prazo acordados. Seu trabalho se concentra no planejamento do projeto, elaboração do cronograma, monitoração das atividades do projeto.

Page 13: Microsoft - Application Lifecycle Management - Visão Geral

Pilares: Pessoas

Arquiteto

O objetivo do Arquiteto é desenhar as fundações da aplicação. Inclui estruturar tanto do ponto de vista lógico, como físico de como a aplicação funcionará, bem como o seu comportamento no ambiente de produção. Em paralelo, o Arquiteto procura reduzir a complexidade da aplicação, dividindo-a em partes simples. O uso de boas práticas e modelos de mercado ajuda o Arquiteto na execução do seu trabalho.

Page 14: Microsoft - Application Lifecycle Management - Visão Geral

Pilares: Pessoas

Programador

O objetivo do Programador é transformar as especificações em código. O Programador também ajuda na criação da especificação física de algumas funcionalidades, estimar tempo para a construção, compilar e preparar a aplicação para a distribuição.

Page 15: Microsoft - Application Lifecycle Management - Visão Geral

Pilares: Pessoas

Analista de Testes

O objetivo do Analista de Testes é desenhar as fundações do teste. Inclui estruturar tanto do ponto de vista lógico, como físico de como o testes funcionarão, bem como o seu comportamento nos ambientes. O uso de boas práticas e modelos de mercado ajuda o Analista de Testes na execução do seu trabalho.

Page 16: Microsoft - Application Lifecycle Management - Visão Geral

Pilares: Pessoas

Testador

O objetivo do Testador é descobrir problemas na aplicação e informá-los para a correção. O trabalho do Testador consiste em executar testes pré-definidos ou exploratórios, coletar as amostras dos resultados e compará-las com o esperado. Uma vez detectado um problema, o Testador deve informar à equipe as condições para reprodução do problema.

Page 17: Microsoft - Application Lifecycle Management - Visão Geral

Pilares: Pessoas

Operações

O objetivo de Operações é suportar o processo de distribuição da nova aplicação para o ambiente de produção e de usuários.

Page 18: Microsoft - Application Lifecycle Management - Visão Geral

Pilares: Pessoas

Executivo (Comercial)

Em uma perspectiva ampla, o objetivo do Executivo é buscar o alinhamento estratégico e resultado financeiro.

Page 19: Microsoft - Application Lifecycle Management - Visão Geral

Pilares: Processos

Page 20: Microsoft - Application Lifecycle Management - Visão Geral

Pilares: Processos

O pilar “processos” é identificado como todo o conjunto de boas práticas, artefatos, guias e manuais que conduzem a construção e manutenção de uma aplicação.

Entenda que ao falarmos de processos, estamos falando desde os processos de levantamento das necessidades, passando pela construção (SDLC) e até finalmente no monitoramento das aplicações em ambiente operacional.

Page 21: Microsoft - Application Lifecycle Management - Visão Geral

Pilares: Ferramentas

Page 22: Microsoft - Application Lifecycle Management - Visão Geral

Pilares: Ferramentas

As “ferramentas” são os meios/equipamentos/tecnologias que automatizam e facilitam a condução dos processos pelas pessoas.

Page 23: Microsoft - Application Lifecycle Management - Visão Geral

Fases

Page 24: Microsoft - Application Lifecycle Management - Visão Geral

Definição

Application Lifecycle Management

Iniciar Definir Escolher

Construção

Planejar Construir Distribuir

Operação

Executar

Avaliar

Manter

Finalizar

Evoluir

Fim

Page 25: Microsoft - Application Lifecycle Management - Visão Geral

Fases: Definição

Page 26: Microsoft - Application Lifecycle Management - Visão Geral

Fases: Definição

A fase de “definição” procura identificar quais as necessidades e motivações que uma empresa tem. Por exemplo, o surgimento de um mercado novo, um problema na linha de produção, busca por informações competitivas ou outras.

Dentro da fase “definição” há as etapas: ”Iniciar” é a responsável em alocar os recursos iniciais (processos, ferramentas e pessoas); “Definir” ela é responsável estruturar a idéia, definir estratégias, métodos e ferramentas para guiar o surgimento de uma nova aplicação. É vital para o sucesso deste empreendimento, que estas duas etapas estejam alinhadas junto ao plano estratégico da empresa e às direções da arquitetura corporativa. Vale destacar que uma boa definição é o resultado de uma comunicação clara e eficaz com todos os envolvidos.

Page 27: Microsoft - Application Lifecycle Management - Visão Geral

Fases: Definição

A etapa “escolher” identifica dentro das várias opções de ferramentas, métodos e tecnologias, quais são os adequados. Seja através da construção de uma aplicação própria (aplicações externas e internas), da aquisição de algum pacote externo (aplicações de fornecedores) ou até mesmo de uma união entre ambas.

Usam-se várias técnicas para identificar, tais como: técnicas de levantamento, disciplinas de avaliação de retorno de investimentos (ROI – Return Of Investiment) e busca de referências no mercado.

Page 28: Microsoft - Application Lifecycle Management - Visão Geral

Fases: Construção

Page 29: Microsoft - Application Lifecycle Management - Visão Geral

Fases: Construção

A fase “Construção” é onde ocorre a execução do plano definido nas fases anteriores. Usam-se as disciplinas de gerenciamento de projeto para conduzir o plano. Define-se várias áreas de atuação dentro de um projeto, cada qual com suas entradas, ações e resultados esperados.

Page 30: Microsoft - Application Lifecycle Management - Visão Geral

Fases: Construção

Deve-se procurar pelo equilíbrio entre os três principais aspectos de um projeto: recursos, tempo e funcionalidades/qualidades. O termo “Recursos” pode ser entendido como todos os recursos (pessoas, máquinas, equipamentos, tecnologias) necessários para execução do projeto. “Funcionalidades/qualidade” são os resultados esperados da execução do projeto, tangíveis ou não. E “tempo”, é o período esperado em que o projeto seja executado.

Page 31: Microsoft - Application Lifecycle Management - Visão Geral

Fases: Operação

Page 32: Microsoft - Application Lifecycle Management - Visão Geral

Fases: Operação

A fase “operação” se dá no momento em que a aplicação está construída, e vamos distribuí-la, além de mantê-la funcional no ambiente dos clientes e da empresa. Os departamentos da empresa e clientes responsáveis em manter a infraestrutura de TI são os mais envolvidos nesta etapa. Ser capaz de monitorar, governança, suporte de fornecedores, entre outras tarefas tornam a fase de operação mais crítica para organização.

Page 33: Microsoft - Application Lifecycle Management - Visão Geral

mercadoprodutos

definição

Desenvolvimento(programadores e

testadores)

construção

suporteserviços

operação

Application Lifecycle Management

TI

projetos

SDLCMetodologia de Desenvolvimento de SoftwareROI

ITIL

Gestão de Projeto

QA gerenciamento de configuração

QA

TI

projetos

TI

QA

Page 34: Microsoft - Application Lifecycle Management - Visão Geral

Ferramentas: Definição e Construção

Operações

TFS (Portal)

TFS(Build Server)

Lab Management(Hyper-V)

Visual StudioTest Manager (MTM) Team Explorer

SDLC

Microsoft Project

Page 35: Microsoft - Application Lifecycle Management - Visão Geral

Ferramentas: Operações

Mercado

Cliente Interno

Cliente Direto

Service Manager

ITIL(9000 & 27000)

Page 36: Microsoft - Application Lifecycle Management - Visão Geral

Sharepoint

TFS & PROJECT

Suporte Intranet Comunicação

Sistema de Gestão ALM

Governança

Gerenciamento

Integração

Service Manager

Integração

Page 37: Microsoft - Application Lifecycle Management - Visão Geral

Controle

Suporte

SharepointLync

Ope

raçã

oCo

nstr

ução

Defi

niçã

o

Intranet

ConhecimentoInfraestrutura

Central VOIP

Messageria (Exchange)

MTM

Tecnologia

TFS

TFS TFS

Central VOIP

Lync

Lync

Lync

TFS

Service Manager

Intranet

Intranet

Service ManagerService Manager

Service Manager

Messageria (Exchange)

Messageria (Exchange)

Sharepoint

Sharepoint

Suporte

Suporte

Suporte

Suporte

ISO 9000

ISO 27001

SDLC

SDLC

ITIL

MDS

Page 38: Microsoft - Application Lifecycle Management - Visão Geral

Obrigado!