diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2015-11-01 19:06:32 -0200 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2015-11-01 19:06:32 -0200 |
commit | 4d85ad4cb5569b01f2e85bbccde627c90bce6aae (patch) | |
tree | 2485aec3c2c7c7db13143718d05ffbb8e3e1f0a0 /aulas/metodologias.rst | |
parent | 3930c24e40e2c35b182c6641a7aa103fc3bb29f6 (diff) | |
download | boaspraticas-4d85ad4cb5569b01f2e85bbccde627c90bce6aae.tar.gz boaspraticas-4d85ad4cb5569b01f2e85bbccde627c90bce6aae.tar.bz2 |
-m Atualiza TODO
Diffstat (limited to 'aulas/metodologias.rst')
-rw-r--r-- | aulas/metodologias.rst | 162 |
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/>`_. |