Desenvolvimento de software – novas abordagens e desafios - Marlon Gaspar

Preview:

DESCRIPTION

Palestra sobre Desenvolvimento de software - novas abordagens e desafios do palestrante Marlon Gaspar

Citation preview

Inovação e Agilidade Lições aprendidas em 10 anos de produto

Marlon Gaspar

Diretor de Desenvolvimento

mgaspar@modulo.com

A Módulo

Brasil & A.L. Rio de Janeiro São Paulo Brasília

América do Norte Atlanta EUA Europa

Londres Reino Unido

Ásia / Pacífico Mumbai Índia

Presença Global

Tecnologia

Nacional

com 3 filiais

internacionais e

projetos realizados em

diversos países

“…coleta e harmoniza as ameaças, vulnerabilidades e riscos (de negócios, operacionais e de fornecedores) – dados de TI, Operacionais e de Estruturas Físicas – e os inserem nos processos de negócio.”

Reconhecimento Internacional

2013 MarketScope IT GRCM “Positive” 2013 MagicQuadrant BCM “Visionaire”

Enterprise Risk Management (ERM) Módulo reconhecida pela implementação de ERM em uma grande organização financeira nos EUA

O Desenvolvimento na Módulo 10 anos atrás

• Início do produto Risk Manager

• 10 colaboradores

• 1 equipe

• Sem metodologia

O Desenvolvimento na Módulo hoje

• Foco no produto Risk Manager

• 80+ colaboradores

• 11 equipes

• Métodos ágeis baseados no SCRUM (modScrum)

Os grandes desafios…

1. Introduzir o SCRUM na organização

Adotando o SCRUM

• Projeto piloto

• Treinamento formal

• Interno ao desenvolvimento

O que deu errado

• Falta de feedback sobre o produto: lançamento de versão imatura

• Falta de envolvimento/patrocínio de outras áreas: dificuldade de remoção de impedimentos e aumento do tamanho das iterações

2. Escalar o SCRUM para todo o desenvolvimento

Escalando o SCRUM

• Organização matricial

• Reuniões de SoS (Scrum of Scrum)

• Ciclos sincronizados

3. Escalar o SCRUM para além do desenvolvimento

4. Desenvolver com Agilidade E Segurança

Segurança na Metodologia Tradicional

• Requisitos de Segurança Requisitos

• Revisão da Arquitetura sob ótica de Segurança

Design

• Revisão da Segurança no Código

Implementação

• Testes de Vulnerabilidades da Aplicação

Verificação

• Testes de Segurança da Aplicação por Terceiros

Manutenção

Vantagens - Processo bem compreendido - Delega aos especialistas em segurança a identificação de ameaças e vulnerabilidades

Desvantagens - Achados das primeiras revisões de segurança são comumente ignorados como “teóricos” - É custoso corrigir falhas voltando na linha do tempo de desenvolvimento

Desenvolvimento Ágil

Início da Iteração

#N

Seleção de

Histórias

Implementação das Histórias

Testes (Automati

zados)

Entrega (Deploy)

Segurança Tradicional + Desenvolvimento Ágil ?

Início da Iteração #N

Identificar Requisitos de

Segurança

Seleção de Histórias

Revisão da Arquitetura de

Segurança

Implementação das

Histórias

Revisão de Segurança do

Código

Testes Análise de

Vulnerabilidades

Entrega (Deploy)

Testes Externos de Segurança

Mudando a abordagem..

• Identificar as principais ameaças à aplicação Modelar ameaças

• Definir as histórias que explicitem os requisitos de segurança om base nas ameaças identificadas

Definir Histórias de Segurança

• Testar os métodos com entradas inesperadas

• Verificar o uso de controles de segurança Criar Testes Unitários

com foco em segurança

• Agrupar histórias por critérios de segurança Consolidar os ciclos

5. Inovar

Agilidade é diferente de Inovação

• Para startups a diferença é menor

• Foco excessivo em demandas de clientes

• Inovação constante requer cooperação entre times

Como inovar?

• Olhar para o Mercado como um todo (clientes, institutos de pesquisa, universidades, etc)

• Criar canais para comunicação de novas ideias

• Investir em treinamento

6. Diferenciar Projetos e Produtos

Projeto vs Produto

• Feito sob demanda

• Pressupõe lucro

• Pode implicar em pouco ou nenhum reaproveitamento

Projeto

• Feito para solucionar um problema do Mercado

• Pressupõe investimento

• Assume reaproveitamento

Produto

Quando um Projeto vira um Produto

• Quando a demanda de um cliente é um problema comum ao Mercado

• Quando o preço (custo + margem) do projeto é compatível com o investimento do produto

• Quando a implementação do projeto pode ser reaproveitada

Quando o encaixe não é perfeito (nunca é)

• Os dois maiores riscos são:

– Aumentar o custo do projeto, diminuindo a margem e os resultados a curto / médio prazo

– Criar um produto que não tenha o mínimo para entrar no Mercado

Projeto ou Produto?

• Definir estratégia em etapa de planejamento

• Alinhar o interesse de todas as áreas

• Avaliar riscos e oportunidades constantemente

Obrigado

Marlon Gaspar

Diretor de Desenvolvimento

mgaspar@modulo.com