Você está na página 1de 50

Metodologias

Por que
Projetos
falham?

Aplicando
Boas práticas

Gestão e Processos
para construção
de Software
Rafael Amaral
Analista de Sistemas / PSM I

- Professional Scrum Master I


- Conhecimentos em metodologias de desenvolvimento de software: SCRUM, Kanban, RUP e CMMI;
- Experiência em Análise de Sistemas e Gestão de Projetos - implementação de Processos de Software,
Especificação de Sistemas (Casos de Uso, Levantamento de Requisitos, Padrões de Desenvolvimento, etc);
- Programador PHP e VB.Net;
- Experiente em modelagem de banco de dados;
- Sólidos conhecimentos em POO, CakePHP, Arquitetura MVC, SQL, Ajax, JavaScript, jQuery, CSS, SEO,
UML, MySql e Postgres;
- Ferramental: Enterprise Architect, Axure, MS Project, Dreamweaver, Fireworks, Coreldraw, Photoshop.

www.rafaelamaral.com.br
Twitter: @rafaelamaralll
Facebook: rafaelamaralll
LinkedIn: @rafaelamaralll
Profissionais TI: rafaelamaralll
Orçamento
Prazo

Desafio

Custo
Desafio
O meu site cresceu, e por consequência, preciso obter mais informações dos
meus clientes por meio de uma página de contato de forma a aprimorar
algumas estratégias e conhecer mais o meu público alvo. Para isso, preciso
criar uma simples página contendo um simples formulário de contato.
A princípio, preciso saber do cliente os seguintes dados:

Nome
E-mail
Telefone
Endereço
Sexo
Motivo do contato

Quanto vai custar???


Quando fica pronto???
Gestão e Processos Rafael Amaral Pág. 4
Desafio

Nome
E-mail
Telefone
Endereço
Sexo
Motivo contato

Enviar

Gestão e Processos Rafael Amaral Pág. 5


Desafio
Preencher de forma automática os campos de endereço após preenchido o CEP

Nome
E-mail
Telefone
CEP
Rua * Fields bloqueados
Bairro
Cidade
Estado
Motivo do contato

Enviar

Gestão e Processos Rafael Amaral Pág. 6


Desafio
* Tratamento de erros de preenchimento em tempo real

Nome * Este campo é de preenchimento obrigatório.

* Verifique se você digitou um e-mail válido.


E-mail contatomeudominio.com.br

Telefone
CEP
Rua
Bairro
Cidade
Estado
Motivo do contato

Enviar
Gestão e Processos Rafael Amaral Pág. 7
Desafio
Máscara de preenchimento
Lembrando que, telefones de São Paulo têm 9 dígitos e o sistema deverá reconhecer
automaticamente pelo preenchimento do CEP.

Nome
E-mail
Telefone (_ _) _ _ _ _ - _ _ _ _

CEP * O CEP deverá ser preenchido primeiro?


Rua
Bairro
Cidade
Estado
Motivo do contato

Enviar
Gestão e Processos Rafael Amaral Pág. 8
Conclusão
O que podemos concluir?

Gestão e Processos Rafael Amaral Pág. 9


Conclusão
O que podemos concluir?

Gestão e Processos Rafael Amaral Pág. 10


Conclusão
- Fechamos um valor fixo no início da negociação, e agora?
- Quem vai levar o prejuízo?

Desenolvedor
- O cliente não soube explicar ao certo o que queria..
- O cliente disse que seria um SIMPLES formulário...

Cliente
- Vocês cobraram X para construir meu projeto e agora quer que eu pague
3X?
- Sua empresa e serviços são péssimos...

Gestão e Processos Rafael Amaral Pág. 11


Conclusão
Fizemos uma analogia utilizando como exemplo, um simples formulário de
contato.

Agora, imagine se o cliente pedisse para construir uma loja virtual.

Gestão e Processos Rafael Amaral Pág. 12


Cliente
não sabe
Falha de
o que quer
comunicação

Por que Projetos Falham?

Mudanças de
requisitos Estimativas
fantasiosas
Por que projetos falham?

Gestão e Processos Rafael Amaral Pág. 14


Cliente não sabe o que quer...
- Cliente NÃO sabe o que quer ou nem sempre consegue expressar o que
pensa
- E em muitos casos, explicam totalmente o contrário do que realmente
queriam explicar

Motivos:

- Falta de conhecimento de tendências


- Falta de sensibilidade
- Falta de conhecimento técnico
- Conhecimento de mundos diferentes...

Gestão e Processos Rafael Amaral Pág. 15


Falha de comunicação...
- Você entendeu realmente o que seu cliente precisa? Como você validou
isso?
- E seu cliente, consegue entender quando você diz que as mensagens do
sistema serão exibidas através de uma Janela Modal?

Gestão e Processos Rafael Amaral Pág. 16


Falha de comunicação...

Dr. esse comprimido


tem problema se tomar
Olha! Eu costumo
com diarréia? tomar com água, mas o
Sr. quem sabe!

Gestão e Processos Rafael Amaral Pág. 17


Mudanças de requisitos...

Seu Manuel,
precisamos fazer uma
pequena mudança!

Gestão e Processos Rafael Amaral Pág. 18


Estimativas fantasiosas...
Gasto cerca de 20 minutos de casa ao trabalho. .

Gestão e Processos Rafael Amaral Pág. 19


Estimativas fantasiosas...
Será?!

Gestão e Processos Rafael Amaral Pág. 20


Produtos fora de conformidade

Gestão e Processos Rafael Amaral Pág. 21


Produtos sem aceitação ao usuário final

Vamos construir um software para um contador...

Gestão e Processos Rafael Amaral Pág. 22


Produtos sem aceitação ao usuário final

Gestão e Processos Rafael Amaral Pág. 23


Conclusão
- Não é complicado programar, é complicado desenvolver uma solução que
automatize as tarefas do usuário final
- A TI deve ser o braço direito das demais áreas dentro da organização não
uma pedra de tropeço

- É preciso planejar
- Criar procedimentos
- Investir tempo em construir modelos e processos
- Validar modelos e processos

Gestão e Processos Rafael Amaral Pág. 24


CMMI
Scrum

Processos de Software

RUP
Introdução
A utilização de um processo de software têm sido apontada como um fator
primordial para o sucesso de empresas de desenvolvimento de software.

‘’é um conjunto de atividades, ligadas por padrões de relacionamento entre ela,


pelas quais se as atividades operarem corretamente e de acordo com os
padrões requeridos, o resultado desejado é produzido. O resultado desejado é
um software de alta qualidade e baixo custo. Obviamente , um processo que
não aumenta a produção (não suporta projetos de software grandes) ou não
pode produzir software com boa qualidade não é um processo adequado.’’
Jalote

Gestão e Processos Rafael Amaral Pág. 26


Razões
- Qualidade do software (Custo, Escopo e Tempo)

Gestão e Processos Rafael Amaral Pág. 27


Atividades do Processo de Software
- Especificação
- Análise de Requisitos
- Especificação de Sistema

- Projeto
- Modelo conceitual
- Projeto de Interface

- Implementação
- Codificação

- Validação
- Testes

- Manutenção e Evolução

Gestão e Processos Rafael Amaral Pág. 28


Modelos de Processos de Software
- CMMI

- RUP

- XP

- Scrum

- Etc.

Gestão e Processos Rafael Amaral Pág. 29


Um pouco
daqui

Aplicando ‘‘Boas Práticas’’

Um bocado
deste...
Escopo do produto
- O que vai ser construído?
- Braimstorm
- Defina os limites do projeto:
- O que está dentro e o que está fora do projeto

Gestão e Processos Rafael Amaral Pág. 31


Defina seu Stakeholder
- Identifique quem responderá pelo projeto
- Quem fornecerá os requisitos
- Quem tem o conhecimento de domínio
- Quem é o patrocinador
- Quem receberá feedback

Gestão e Processos Rafael Amaral Pág. 32


Defina seu Stakeholder
- Tome cuidado quando se tem vários fornecedores de requisitos...

Especialistas de domínio ou alta gestão:


- Têm visão diferente
- Explicam diferente
- Pedem de formas diferentes

Gestão e Processos Rafael Amaral Pág. 33


Requisitos
- Colete requisitos (as necessidades) do seu cliente

Como coletar?
- Reuniões formais/ não formais
- Conversas face a face
- Brainstorm
- Observação

Gestão e Processos Rafael Amaral Pág. 34


Casos de Uso

Primeiro...
- Comece com o que tem e crie cenários
- Desenhe diagramas (se necessário)

Com isso, você...


- Descobre novas informações
- Descobre requisitos escondidos

E, por fim...
- Valide seu entendimento

Gestão e Processos Rafael Amaral Pág. 35


Ponto de partida
A esta altura, você já terá uma ideia:
- do que será construído
- do que precisará fazer para construir
- do tempo que precisará para construir
- custos do projeto

Gestão e Processos Rafael Amaral Pág. 36


Planeje seus passos
- Crie um canal de comunicação com o cliente de fácil entendimento e acesso
para ele
- Crie um passo a passo das atividades de entregas do projeto (EAP)
- Para cada atividade da EAP, verifique os recursos que precisará (e sua
disponibilidade) para concluir a mesma
- Crie um plano para que este recurso esteja disponível
- Defina prazos de conclusão das atividades da EAP

Não se esqueça de:


- Criar uma linguagem (termologia) comum entre você e o cliente (comunicação)
- Fazer uma breve documentação
- Criar diagramas de alto nível
- Elaborar contratos (se achar necessário)
- Envolver o cliente no projeto

Gestão e Processos Rafael Amaral Pág. 37


EAP (Estrutura Analítica do Projeto)
Nível 1 1. Pintar uma sala

1.1. 1.2. 1.3. 1.4.


Nível 2 Preparar Preparar Pintar Limpar
materiais sala sala sala

Ÿ Comprar tinta
Ÿ Comprar escada
Ÿ Comprar rolos 1.2.1. 1.2.2.
Nível 3 Ÿ Comprar removedor de
papel de parede

Nível 4 1.2.2.1. 1.2.2.2. 1.2.2.3.

Gestão e Processos Rafael Amaral Pág. 38


Prototipação
- Antes de pisar fundo no acelerador, crie protótipos de telas...
- Simule as principais funcionalidades e a suas interações com o usuário

Projeto aceito?
SIM
- Crie Casos de Testes

NÃO
- Anote as mudanças
- Revise a documentação e os modelos de diagramas (RTF)
- Refaça o protótipo

Gestão e Processos Rafael Amaral Pág. 39


Desenvolva com qualidade
- Codifique com qualidade
- Crie variáveis e/ou álias que caracterizam o contexto
- Idente seu código
- Faça bons comentários
- Programe em par

Lembre-se...
Outras pessoas poderão utilizar/reaproveitar seu código, então, mantenha um
padrão e sensibilidade ao criar variáveis, métodos, funções e principalmente o
cuidado ao documentar seu código.

Gestão e Processos Rafael Amaral Pág. 40


Desenvolva com qualidade
Olhe a cara de quem não identa o código!

Gestão e Processos Rafael Amaral Pág. 41


Desenvolvendo...
Precisa se concentrar, sim. Porém, não se isole!

Gestão e Processos Rafael Amaral Pág. 42


Feedback
- Desenvolva mas não se isole do mundo, principalmente do seu cliente!
- Mantenha o cliente a par do projeto
- Mantenha um histórico das conversas
- Peça-lhe feedbacks
- Tire dúvidas constantemente (mesmo que elas sejam óbvias/absurdas)

Gestão e Processos Rafael Amaral Pág. 43


Feedback
- Mantenha os stakeholders a par do projeto

Gestão e Processos Rafael Amaral Pág. 44


Quase lá...
- Faça testes do que estiver pronto
- Valide o que você desenvolveu com o que o cliente pediu (documentação)
- Faça uma RTF

Gestão e Processos Rafael Amaral Pág. 45


Fase pronta!
- Forneça o que está pronto ao cliente
- Valide o que você desenvolveu com o que combinou com ele
- Faça Testes de Aceitação
- Crie um termo de aceitação

Gestão e Processos Rafael Amaral Pág. 46


Lembre-se
- Seu cliente é usuário e seu usuário é seu cliente
- Faça uma aplicação que alguém irá utilizar (usabilidade)

Um dos maiores desafios no desenvolvimento é o da construção do sistema


certo, que preencha as necessidades dos usuários a um preço razoável.

O grande desafio do analista não se limita apenas em implementar melhores


soluções tecnológicas, mas sim em mudar a cultura de uma empresa.
Rafael Amaral

Gestão e Processos Rafael Amaral Pág. 47


Lembre-se
- Seu cliente é usuário e seu usuário é seu cliente
- Faça uma aplicação que alguém irá utilizar (usabilidade)

Um dos maiores desafios no desenvolvimento é o da construção do sistema


certo, que preencha as necessidades dos usuários a um preço razoável.

O grande desafio do analista não se limita apenas em implementar melhores


soluções tecnológicas, mas sim em mudar a cultura de uma empresa.
Rafael Amaral

Gestão e Processos Rafael Amaral Pág. 48


Gestão e Processos Rafael Amaral Pág. 49
Rafael Amaral
Analista de Sistemas / PSM I

www.rafaelamaral.com.br

Twitter: @rafaelamaralll
Facebook: rafaelamaralll
LinkedIn: @rafaelamaralll
Profissionais TI: rafaelamaralll