aboutsummaryrefslogtreecommitdiff
path: root/aulas/metodologias.rst
diff options
context:
space:
mode:
authorSilvio Rhatto <rhatto@riseup.net>2015-11-01 19:06:32 -0200
committerSilvio Rhatto <rhatto@riseup.net>2015-11-01 19:06:32 -0200
commit4d85ad4cb5569b01f2e85bbccde627c90bce6aae (patch)
tree2485aec3c2c7c7db13143718d05ffbb8e3e1f0a0 /aulas/metodologias.rst
parent3930c24e40e2c35b182c6641a7aa103fc3bb29f6 (diff)
downloadboaspraticas-4d85ad4cb5569b01f2e85bbccde627c90bce6aae.tar.gz
boaspraticas-4d85ad4cb5569b01f2e85bbccde627c90bce6aae.tar.bz2
-m Atualiza TODO
Diffstat (limited to 'aulas/metodologias.rst')
-rw-r--r--aulas/metodologias.rst162
1 files changed, 91 insertions, 71 deletions
diff --git a/aulas/metodologias.rst b/aulas/metodologias.rst
index 90b9d30..de2d027 100644
--- a/aulas/metodologias.rst
+++ b/aulas/metodologias.rst
@@ -7,107 +7,127 @@
1.1 - Apresentação do professor e do curso
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- Silvio Rhatto, desenvolvedor autodidata.
-- Curso dividido em aulas independentes umas das outras.
-- O curso completo é acompanhado pelo desenvolvimento de uma pequena
- aplicação.
+- Silvio Rhatto, desenvolvedor autodidata.
+- Curso dividido em aulas independentes umas das outras.
+- O curso completo é acompanhado pelo desenvolvimento de uma pequena aplicação.
1.1 - O que são boas práticas de desenvolvimento?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- Trata-se de *organização* no trabalho para que ele flua.
-- Não há um único caminho: existem inúmeras metodologias e técnicas.
-- Vou ensinar as mais *simples* e que tendem a resistir ao tempo.
-- Foco em Software Livre e Aberto (FOSS).
-- Experimente diversas metodologias, técnicas e ferramentas e monte seu
- próprio kit.
-
-1.1 - Queremos / não queremos
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-Queremos evitar:
-
-- Ansiedade.
-- Procrastinação.
-- Empacamento.
-- Ruído.
-
-Queremos:
-
-- Simplicidade sem comprometer funcionalidade (KISS).
-- Excelência (melhoria incremental) ao invés de perfeccionismo
- obssessivo.
+- Trata-se de *organização* no trabalho para que ele flua.
+- Não há um único caminho: existem inúmeras metodologias e técnicas.
+- Vou ensinar as mais *simples* e que tendem a resistir ao tempo.
+- Foco em Software Livre e Aberto (FOSS).
+- Experimente diversas metodologias, técnicas e ferramentas e monte seu próprio kit!
1.2 - Mitos e verdades do desenvolvimento
-----------------------------------------
-- Linearidade: pessoa-mês (Lei de Brooks).
-- Métricas: dificuldade de se estimar o tempo gasto.
-- Deterioramento natural do software!
+- Dificuldades essenciais e acidentais.
+- Linearidade: pessoa-mês (Lei de Brooks).
+- Métricas: dificuldade de se estimar o tempo gasto.
+- Deterioramento natural do software!
1.3 - Metodologias pessoais
---------------------------
+Queremos evitar:
+
+- Cabeça cheia de ruído.
+- Ansiedade.
+- Procrastinação.
+- Empacamento.
+
+Queremos:
+
+- Simplicidade sem comprometer funcionalidade (KISS).
+- Excelência (melhoria incremental) ao invés de perfeccionismo obssessivo.
+
1.3 - Metodologias pessoais - Básico
-------------------------------------
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- Evitar distrações.
-- Uma tarefa por vez.
-- Foco na missão.
-- Fazer o essencial.
+- Evitar distrações.
+- Uma tarefa por vez.
+- Foco na missão.
+- Fazer o essencial.
+- Método não é lei, é sugestão de caminho.
1.3 - Metodologias pessoais - Pomodoro
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- É a técnica mais simples.
-- Material: alarme e lista de tarefas.
+É uma técnica simples para execução de tarefas:
+
+- Material: alarme e lista de tarefas.
+- Escolha uma tarefa e anote na sua lista.
+- Ajuste o cronômetro (25 minutos tradicionalmente).
+- Trabalhe na tarefa até o cronômetro disparar. Marque um X na lista ao lado da tarefa.
+- Pare por um tempo curto (5 minutos, por exemplo).
+- Depois de 4 pomodoros, faça uma pausa mais longa (15 a 30 minutos).
1.4 - Metodologias pessoais - Get Things Done (GTD)
---------------------------------------------------
-- GTD.
-- ZTD.
+É uma técnica para organização do fluxo de tarefas:
+
+- Colete: apareceu na sua frente? Coloque para fora da cabeça!
+- Processe.
+- Organize.
+- Planeje.
+- Faça!
+- Workflow: https://en.wikipedia.org/wiki/Getting_Things_Done#/media/File:GTDcanonical.png
-1.5 - Metodologias em equipe
+1.5 - Metodologias pessoais - Zen to Done (ZTD)
+-----------------------------------------------
+
+- ZTD é um GTD simplificado e mais estruturado.
+- Tenha uma rotina.
+- Reduza as suas tarefas ao essencial.
+- Comece o dia realizando as tarefas importantes. Não se perca.
+- Sugestão do chef: ZTD com Pomodoro!
+
+1.6 - Metodologias em equipe
----------------------------
-- A catedral e o bazar: Lei de Linus.
-- Agile.
-- Scrum.
-- XP.
-- Kanban.
-- TDD.
+1.6 - A Catedral e o Bazar
+~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+- Eficiência do código aberto.
+- Agile: conjunto de princípios.
+
+1.6 - Metodologias populares
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+- Scrum: metodologia de gerenciamento de projetos.
+- XP: metodologia de engenharia de software.
+- Kanban: controle coletivo de tarefas.
+- TDD: técnica de desenvolvimento guiada por testes.
+- Híbridação: Scrumban + XP :D
Começando um projeto
--------------------
-- Brainstorm! O que é o projeto?
-- Pesquisa do que já existe.
+- Brainstorm! O que é o projeto?
+- Pesquisa do que já existe.
+
+Atividades
+----------
+
+- Adote a técnica Pomodoro numa tarefa grande e importante do seu dia. Você pode usar qualquer cronômetro disponível -- do seu computador, do telefone, do relógio de pulso ou mesmo um timer de cozinha. Permaneça apenas realizando a tarefa importante em cada bloco de 25 minutos. Avalie a eficácia do método: ele te ajudou?
Referências
-----------
-- `Best coding practices - Wikipedia, the free
- encyclopedia <https://en.wikipedia.org/wiki/Best_coding_practices>`_.
-- `Best practices for software development
- projects <http://www.ibm.com/developerworks/websphere/library/techarticles/0306_perks/perks2.html>`_.
-- `Boas práticas de engenharia de software \| Guia da Startup e da
- Gestão de Produtos de
- Software <http://www.guiadastartup.com.br/boas-praticas-de-engenharia-de-software/>`_.
-- `Boas Práticas de Desenvolvimento – melhorando o seu
- dia-a-dia <http://blog.matheusbodo.com/boas-praticas-de-desenvolvimento-melhorando-o-seu-dia-a-dia/>`_.
-- `Melhores Práticas para Desenvolvimento de Sistemas e
- Software <http://www.ibm.com/developerworks/br/rational/library/systems-software-lifecycle-development/>`_.
-- `Arquitetura, padrões, projetos e boas práticas sobre desenvolvimento
- de software -
- georgemendonca <http://softwarelivre.org/georgemendonca/blog/arquitetura-padroes-projetos-e-boas-praticas-sobre-desenvolvimento-de-software>`_.
-- `HOME -The Pomodoro Technique® <http://pomodorotechnique.com/>`_.
-- `Técnica de Pomodoro: Melhorar a Produtividade \| Freelancer e
- Produtividade <http://www.escolafreelancer.com/tecnica-de-pomodoro-melhorar-produtividade/>`_
-- `Técnica pomodoro – Wikipédia, a enciclopédia
- livre <https://pt.wikipedia.org/wiki/T%C3%A9cnica_pomodoro>`_.
-- `Zen to Done - ZTD - Lucas
- Teixeira <http://lucasteixeira.com/ztd/>`_.
-- `Zen To Done (ZTD): The Simple Productivity System : zen
- habits <http://zenhabits.net/zen-to-done-ztd-the-ultimate-simple-productivity-system/>`_.
-
+- `Best coding practices - Wikipedia, the free encyclopedia <https://en.wikipedia.org/wiki/Best_coding_practices>`_.
+- `Best practices for software development projects <http://www.ibm.com/developerworks/websphere/library/techarticles/0306_perks/perks2.html>`_.
+- `Boas práticas de engenharia de software \| Guia da Startup e da Gestão de Produtos de Software <http://www.guiadastartup.com.br/boas-praticas-de-engenharia-de-software/>`_.
+- `Boas Práticas de Desenvolvimento – melhorando o seu dia-a-dia <http://blog.matheusbodo.com/boas-praticas-de-desenvolvimento-melhorando-o-seu-dia-a-dia/>`_.
+- `Melhores Práticas para Desenvolvimento de Sistemas e Software <http://www.ibm.com/developerworks/br/rational/library/systems-software-lifecycle-development/>`_.
+- `Arquitetura, padrões, projetos e boas práticas sobre desenvolvimento de software - georgemendonca <http://softwarelivre.org/georgemendonca/blog/arquitetura-padroes-projetos-e-boas-praticas-sobre-desenvolvimento-de-software>`_.
+- `HOME -The Pomodoro Technique® <http://pomodorotechnique.com/>`_.
+- `Técnica de Pomodoro: Melhorar a Produtividade \| Freelancer e Produtividade <http://www.escolafreelancer.com/tecnica-de-pomodoro-melhorar-produtividade/>`_
+- `Técnica pomodoro – Wikipédia, a enciclopédia livre <https://pt.wikipedia.org/wiki/T%C3%A9cnica_pomodoro>`_.
+- `Zen to Done - ZTD - Lucas Teixeira <http://lucasteixeira.com/ztd/>`_.
+- `Zen To Done (ZTD): The Simple Productivity System : zen habits <http://zenhabits.net/zen-to-done-ztd-the-ultimate-simple-productivity-system/>`_.
+- `Time management - Wikipedia, the free encyclopedia <https://en.wikipedia.org/wiki/Time_management`_.
+- `Princípios por trás do Manifesto Ágil <http://www.agilemanifesto.org/iso/ptbr/principles.html>`_.
+- `Manifesto para o desenvolvimento ágil de software <http://www.manifestoagil.com.br/>`_.