aboutsummaryrefslogtreecommitdiff
path: root/aulas/metodologia.md
blob: 1f389d139ae7e4be0c138ee5935769807cf33a30 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
1. Metodologias e técnicas de produtividade
===========================================

## 1.1 - Apresentação

### 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.

### 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.

## 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!

## 1.3 - Metodologias pessoais

## 1.3 - Metodologias pessoais - Básico

* Evitar distrações.
* Uma tarefa por vez.
* Foco na missão.
* Fazer o essencial.

### 1.3 - Metodologias pessoais - Pomodoro

* É a técnica mais simples.
* Material: alarme e lista de tarefas.

## 1.4 - Metodologias pessoais - Get Things Done (GTD)

* GTD.
* ZTD.

## 1.5 - Metodologias em equipe

* A catedral e o bazar: Lei de Linus.
* Agile.
* Scrum.
* XP.
* Kanban.
* TDD.

Começando um projeto
--------------------

* Brainstorm! O que é o projeto?
* Pesquisa do que já existe.

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/).