Série Agile:Qualidade Externa e Interna estimativas

Olá pessoal,

No post de hoje vou falar sobre qualidade externa e interna de quando vamos desenvolver um produto. Tá, não se preocupe porque vou explicar com mais detalhe durante o post, porém  responda a pergunta a seguir, se a resposta for sim, então já sabe o assunto que vamos tratar.

Algum cliente seu já pediu para você reduzir um pouco a sua estimativa para entregar alguma tarefa?

Se sua resposta foi sim, é disso que vamos falar:

como convencer o cliente que a qualidade não é negociável?

Lets go…

 

Starting

Como vocês, que tem acompanhado o blog e meu twitter, puderam ver, tenho me dedicado ao mundo Agile, mas o que vou falar aqui não está só ligado ao Agile, mas foi onde eu consegui perceber isso de forma mais face-to-face com o cliente e de certo modo foi onde houve menos questionamentos por parte dele e até uma aceitação de mudanças sem muita discussão. Eu sempre sofri com esse mal (desde da época de freelance), do cliente pedir para mudar uma estimativa, porém ele não queria mudar o escopo dele e sabemos que isso não é nada bom. Mas, como contornar a situação sem gastar muito tempo? Para isso é preciso ter duas coisas bem claras em mente:

  • Qualidade externa: aquilo que o cliente vê, tem acesso, que é o front-end, lentidão, etc.
  • Qualidade interna: aquilo que o cliente não tem acesso, tais como: refactoring, covertura de testes, code clear etc.

Quando o cliente pede para reduzirmos a estimativa ele está afetando a qualidade interna, algo como: “Sei que você tem a melhor equipe, com os melhores profissionais, será que não dá para fazer em 1 ou 2 dias a menos (isso aqui dá -16 hrs de trabalho, o que é muita coisa)?”

Normalmente não dá para mudar isso, pois nós sabemos do impacto. E como  resolver isso?

Resposta ao cliente

Podemos perguntar ao cliente se o escopo não pode ser alterado, que aquela parte onde temos as mensagens iterativas com o usuário não poderia ficar para o futuro e que por agora trataríamos com mensagens mais simples possível, por exemplo. Ou mudar o nível de importância, assim isso impactará em outras e saberemos o que deve ser entregue primeiro e isso forçará o product owner mover o backlog. Mas abrir mão da qualidade interna é algo que não deve ser feito, pois já sabemos dos problemas que vamos encontrar e o cliente não vai levar em conta essa redução de estimativa quando os problemas surgirem, principalmente se estes afetarem o “bolso dele”. Pense: “uma vez que se penetra que uma base de código se deteriore, é muito dificil recuperar a qualidade mais tarde”.

Um sistema com alta qualidade interna pode ainda ter baixa qualidade externa, porém um com baixa qualidade interna raramente terá uma qualidade externa alta, ou seja, não dá para construir algo bom se a base está pobre, então daí que dizemos que a qualidade interna simplesmente não é negociável.

Vou ficando por aqui. Espero que tenham gostado do post.

Abracos, see ya!

Série Git: Do Git para GitHub sem IDE

Olá Pessoal,

Dando continuidade à Série Git. Hoje vamos ver como mandar os códigos que estão no nosso repositório local para o GitHub sem IDE.

Lets go…

Do Git para GitHub

Passo 1

Antes de tudo você precisa criar uma conta no GitHub, inicialmente pode ser free que tem o limite de até 30GB. Porém, lembre-se  que para projeto confidenciais não é recomendável usar uma conta free, pois o acesso é public. Dai você pode ver os planos existentes no git hub para contas private.

Passo 2

Depois de ter criado e logado na sua conta precisamos de uma chave SSH para poder comitar, sendo assim. Abra o Git Bash iniciar >> programas >> Git >> Git Bash.  E digite:

ssh-keygen -t rsa -C “seu_email@email.com”

Informe o e-mail de cadastro no GitHub. Dê enter para a próxima pergunta.

Passo 3

A próxima pergunta é para criar uma senha para o passphrase. Digite a senha. Não esqueça dela.

Veja que um arquivo id_rsa.pub foi criado, veja onde ele criado e abra através do bloco de notas.

Passo 4

Vá na pagina do GitHub e clique em “Account Setting” e depois em “SSH Public Keys”. Clique em “Add another public key”. O titulo é opticional. Porém, na parte do key cole todo o conteudo do arquivo id_rsa.pub.

Clique em add key.

Passo 5

Vamos testar para ver se tá tudo certo. Digite:

ssh -T git@github.com

Ele vai perguntar se tem certeza que quer conectar e talz. Digite yes e Enter. Na próxima pergunta informe a senha passphrase cadastrada ainda pouco. Se deu tudo certo você vai receber uma mensagem assim:

Hi camilolopes! You’ve successfully authenticated, but GitHub does not provide shell access.

Passo 6

Agora crie um repositório no GitHub, de preferência sem espaço e caracteres especiais. Do contrario ele será removido pelo GitHub. Depois disso você vai cair na pagina do seu repositório.

Passo 7

Abra o Git Bash no seu repositório local. E digite:

git remote add origin git@github.com:seu_login/nome_do_repositorio.git

Observe que em “nome do repositorio” você vai ter que digitar o mesmo nome que informou lá no GitHub.

Passo 8

Para atualizar os arquivos no GitHub é simples basta digitar:

git push origin master

Informe a senha quando for solicitado. Em seguida atualize a pagina do seu repositório no GitHub e veja os arquivos lá:

Vou ficando por aqui e espero que tenha gostado. Como falei no inicio do post.

Abracos, see ya!!     

Série Git:Usando Git no Windows

olá Pessoal,

O post de hoje, vamos ver como configurar o Git no Windows. É muito simples e rápido. Vou me limitar apenas a essa parte neste post, no próximo vamos ver como fazer no nosso repositório local conversar com o GitHub.

Lets go…

Instalando Git

Passo 1

            Primeiramente vá no site do Git http://git-scm.com/ e baixe: a versão mais recente: Git.1.7.x.

Passo 2

            Execute o arquivo o arquivo e deixe a sua tela assim:

A opção “Git bash here” possibilita eu abrir a linha de comando do Git em qualquer diretorio.Basta clicar com o botão direito e escolher “Git Bash Here”.

A ultima opção nos possibilita põe uma fonte melhorzinha para o prompt de comandos.

Clique em next

Passo 3

Nesta tela eu prefiro a primeira opção. Pois, a segunda diz que o Git usará o prompt padrão do Windows, mas não os comandos Unix. A terceira, diz que alguns comandos Windows serão substituidos por comandos Unix. E a primeira permite usar comandos Git e outros comandos Unix apenas no Git Bash.

 

 

Passo 4

A próxima tela, é sobre quebra-linhas. Como sabemos os OS possuem formatos diferentes de quebra-linhas em aquivos de texto.O objetivo dessa opção é normalizar isso. A primeira opção converte para o padrão Windows quando os arquivos chega para você. E quando você comita ele converte para o formato Unix.  A segunda não faz nenhuma conversão quando o arquivo chega, apenas converte para Unix quando comitamos e a terceira, não faz nenhum tipo de conversão.Eu prefiro a segunda

 

Dê next…até finish. Feito Git instalado :).

Passo 5 Criando o Repositório

Agora vamos testar nosso repositório Git. Crie uma pasta onde você achar melhor. Exemplo c:\GitRepositorio.

Clique com o botão direito sobre a pasta e escolha Git Bash Here. Aguarde o prompt de comando do Git ser aberto.

 

Passo 6 Configurando

Agora vamos configurar os dados, para que os commit possam ser identificados, portanto digite:

git config –global user.name “Nome Sobrenome”

git config –global user.email “seu_email@email.com”

 

 

Passo 7

Precisamos inicializar o repositório Git. Então digite:

git init

O “master” que aparece entre parênteses indica que estamos no repositório Git.

Passo 8

Vamos criar um arquivo .txt vazio e commit só para ver se tá tudo ok.

Primeiro criamos o arquivo touch testegit.txt

Em seguida versionei o arquivo ao git usando o comando add

E por ultimo fiz o commit.

 

Git GUI

O Git possui uma versão Git Gui que você encontra iniciar >> programas >> Git >> Git GUI. Se você não gosta de usar o command line, sinta-se à vontade em usar Git GUI.

 

Ao abrir você tem três opções, no nosso caso, vamos escolher abrir um repositório existente

Na tela a seguir informe o diretorio que definimos como repositório Git.

E ai você terá as modificações no repositório poder commitar, salvar para revisão, ver histórico etc. Para fazer um teste simples adicionei mais um arquivo no seu repositório e depois clique em “Atualizar” em Git GUI.

E commit atualização.

Livros

Há muito material na net sobre Git.Porém, há dois livros que recomendo caso queira se aprofundar mais. São esses:

Pro-Git e Getting Good with Git

Vou ficando por aqui. No próximo post veremos como  subir nossos commits locais para o GitHub.

Abracos!! See ya!

 

 

 

Série Git:Importando Projeto do GitHub para Eclipse via Egit

Olá Pessoal,

No post de hoje veremos como importar um projeto que está no GitHub para a nossa maquina local usando o plugin Egit no Eclipse.  É muito simples!!

lets go…

Iniciando…

Passo 1

Primeiro de tudo você deve ter o Egit instalado no Eclipse, caso não tenha veja neste post como fazer.

Passo 2

Feito isso, vamos agora importar um projeto  para maquina local, na imagem a seguir temos o meu workspace:

Passo 3

Para importar é muito simples vá em file==> import ==> Git:

Passo 4

Clico em next. Escolha na próxima tela URI. E coloquei o endereço do repositório que deseja baixar, usarei o endereço onde estão os projeto da série “Design Pattern não é receita de bolo”.

Passo 5

Feito isso, cole a URL na janela source git repository  no Eclipse, deixando ela assim:


Clique em next

Passo 6

Deixe marcado a opção master e clique em next

Passo 7

Aqui você vai escolher o local onde será armazenado o repositório do GitHub

Passo 8

Na tela seguinte defina como quer importar os projetos eu optei pela primeira opção:

passo 9

Agora vamos escolher os projetos que  queremos importar:

Clique em Finish

Passo 10

E assim temos os projetos importado para nosso workspace:


Simples e fácil! Vou ficando por aqui, espero que tenham gostado.

Abracos, see ya!


Série Git:Usando o Git no Eclipse

olá Pessoal,

Mais um post da série Git. Hoje vamos ver como usar o Git dentro do Eclipse e commit os códigos já direto no GitHub.

Lets go..

Git no Eclipse com o GitHub

Na verdade vamos usar um plugin para  o Eclipse chamado EGIT que utiliza implementação Java do Git (Jgit) que possibilita controlar projetos do Eclipse com o Git.

Instalando o EGIT

É como a instalação de qualquer outro plugin no Eclipse. Ir no menu Help ==> Install New Software. Adicione:

 

 

Em seguida next next next. Quando o plugin aparece escolha Egit. Aceite o contrato e next…finish.

 

Ao terminar restart o Eclipse.

Exportando projetos locais para o GitHub

Vamos dizer que você tem um projeto local e deseja colocar no GitHub. Vamos ver como fazer isso.

Passo 1

Clique com o botão direito no projeto e escolha:

<img egitshareproject>

 

E escolha Git.

Passo 2

Agora precisamos informar o local do repositório. Mas, como ele já existe, marcamos use or create repository in parent folder of project.

 

 

Depois clique em finish.

Passo 3

Seu projeto Java deve ficar assim:

 

 

Isso porque ainda não versionamento o projeto. Faremos isso agora:

 

Passo 4

Agora faça o commit:

 

Agora adicione a razão do commit:

 

E clica em commit e aguarde o mesmo terminar.

Passo 5

Agora vamos mandar para o GitHub:

 

Passo 6

Na tela que aparece precisamos informar os dados do GitHub. Então acesse seu repositório no GitHub e pegue os dados HTTP e deixe conforme a imagem a seguir:

 

Clique em next

Passo 7

Na tela a seguir clique em “Add All Branches Spec”

 

Clique em next e depois em finish.

Passo 8

Acesse o repositório e veja se o o novo projeto já está lá

 

Bom vou ficando por aqui, espero que tenham gostado do post

Abraços, see ya!!