Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 148 lines (101 sloc) 5.792 kB
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
1 Projeto Atletismo
0b8eeb2 README adicionado
Rodrigo L. M. Flores authored
2 =================
3
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
4 Criado em 2009 no curso de Laboratório de Programação Extrema da Universidade de São Paulo
0b8eeb2 README adicionado
Rodrigo L. M. Flores authored
5
6 Copyright:
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
7 Universidade de São Paulo, 2009
0b8eeb2 README adicionado
Rodrigo L. M. Flores authored
8
9
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
10 Programadores
11 -------------
010af3b Readme
rodrigo luiz marques flores authored
12
13 ### 2009 ###
14
15 + Daniel Sguilaro
16 + Edith Mamani
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
17 + Eduardo Kasa (como coach)
010af3b Readme
rodrigo luiz marques flores authored
18 + Joao Paulo Mota
19 + Marcela Ortega
20 + Pierre-Marie Leveque
21 + Rodrigo Flores
22
23 ### 2010 ###
24
25 + Gustavo Vilela
26 + Hugo Kondo
27 + Itai Soares
28 + Luiz Romagnoli
29 + Omar Ajoue
30 + Otavio Santana
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
31 + Rodrigo Flores (como coach)
010af3b Readme
rodrigo luiz marques flores authored
32
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
33 Configurando o ambiente
34 -----------------------
010af3b Readme
rodrigo luiz marques flores authored
35
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
36 ### Gems necessárias ###
010af3b Readme
rodrigo luiz marques flores authored
37
38
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
39 #### Deploy - Desenvolvimento ####
010af3b Readme
rodrigo luiz marques flores authored
40 + Authlogic
41 + Formtastic
42
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
43 #### Teste ####
010af3b Readme
rodrigo luiz marques flores authored
44
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
45 + Todas as gems de desenvolvimento
010af3b Readme
rodrigo luiz marques flores authored
46 + remarkable_rails
47 + rspec >= 1.30
48 + rspec_rails
49 + factory_girl
50 + rcov
51
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
52 ### Criando o banco de dados ###
010af3b Readme
rodrigo luiz marques flores authored
53
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
54 1. Renomeie o arquivo na pasta de configuração dentro de 'database.sqlite3.yml' para 'database.hyml' (o exemplo utiliza SQLite3)
010af3b Readme
rodrigo luiz marques flores authored
55
3babdea Readme
rodrigo luiz marques flores authored
56
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
57 2. Crie o banco de dados utilizando o comando
010af3b Readme
rodrigo luiz marques flores authored
58
59 ``
60 rake db:create
61 ``
5fe8d37 Coverage
rodrigo luiz marques flores authored
62
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
63 3. Faça as migrações necessárias
c455edf Readme
rodrigo luiz marques flores authored
64
010af3b Readme
rodrigo luiz marques flores authored
65 ``
66 rake db:migrate
67 ``
5fe8d37 Coverage
rodrigo luiz marques flores authored
68
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
69 4. (opcional) para realizar testes, repita os passos 2 e 3 seguidos de ``RAILS_ENV=test``
010af3b Readme
rodrigo luiz marques flores authored
70
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
71 ### Configurações adicionais ###
2a3cf4f Readme
rodrigo luiz marques flores authored
72
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
73 Há dois ajustes que devem ser feitos para ter o site funcionando corretamente.
74
75 + Configuração do banco de dados
76 Bem como qualquer aplicação rails, vocẽ pode configurar o banco de dados que irá utilizar editando o arquivo config/database.yml
77 + Active Mailer (ferramenta para envio de e-mails)
78 Todos os e-mails criados são despachados utilizando um servidor SMTP. Você deve configurar um servidor SMTP à sua escolha no arquivo config/enviroinment.rb
79
80
81 ### Executar ###
82
83 1. Execute o seguinte comando para iniciar o servidor:
ac60dd3 Readme
rodrigo luiz marques flores authored
84
2a3cf4f Readme
rodrigo luiz marques flores authored
85 ``
86 ./script/server
87 ``
88
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
89 2. Navegue à vontade. Por padrão, o servidor abrirá em localhost:3000
90
91 ### Testar ###
92
93 + Execute `rake spec` para rodar todos os testes
94 + Execute `rake spec:rcov` para obter o nível de cobertura de código
95
96
97 Observações relacionadas ao projeto
98 -----------------------------------
99
100 ### Introdução ###
101
102 O Atletismo é um sítio que visa facilitar o relacionamento entre treinadores e atletas.
103 Inicialmente focado em atletismo, a intenção é que o sítio sirva como ferramenta para todas as modalidades de treino esportivo no futuro.
104 Os usuários do sistema cadastram-se e escolhem entre participar como treinador ou atleta. No caso dos atletas, é necessária a escolha de um treinador para supervisão.
105
106 + Atualmente, o treinador é capaz de realizar as seguintes tarefas:
107 Acessar a calculadora de ritmos
108 Visualizar a listagem de atletas
109 Administrar os treinos de um atleta
110 Um treino é uma rotina a ser realizada em um dia e reportada de volta no sistema com seu resultado.
111 O treino é composto por vários itens de treino, que descreve os exercícios a serem realizados nesse treino.
112 Visualizar as provas de um atleta
113 O treinador visualiza as provas que um atleta cadastra. Provas são competições que um atleta participa e cadastra o resultado para que seu treinador acompanhe.
114 Administrar os testes de um atleta
115 Um teste é uma tarefa que o treinador passa para o atleta realizar e reportar os resultados. Serve também como acompanhamento de evolução.
116 Editar os Exercícios e Objetivos utilizados nos treinos
117 Os ítens de treino são classificados por tipo de exercício e objetivo. Estes dois filtros deverão utilizados futuramente na montagem de gráficos.
118 A discretização dos ítens de treino citada acima auxiliará na totalização dos dados.
119
120 + Quanto ao atleta, as seguintes tarefas podem ser realizadas:
121 Visualizar os treinos e publicar comentários a respeito
122 Cadastrar provas para acompanhamento do treinador
123 Visualizar testes propostos e enviar seu resultado para o treinador
124
125
126 ### Problemas ###
2a3cf4f Readme
rodrigo luiz marques flores authored
127
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
128 + Banco de dados (problema com user, atleta e treinador)
129 Existe uma "confusão" no sistema, relacionada à escolha dos nomes.
130 Todos os usuários possuem um registro na tabela "users", e por sua vez possuem uma ligação à tabela "atletas", referenciada pelo campo atleta_id na tabela users ou ligado à tabela "treinadores", referenciado pelo campo treinador_id. Apenas um destes campos será preenchido por vez, afinal, cada usuário só pode ser treinador OU atleta.
131 A ambiguidade é que durante o desenvolvimento, é possível que você instancie um Atleta e confunda com a entidade User pois há campos em comum (a existência de um treinador_id em ambos), e isto não gerará erros de execução.
132 É necessário tomar cuidado quanto a isto. Por tratar-se de um problema legado e sua modificação impactar gigantescamente na estrutura atual do projeto, optamos por nos adaptar a esta ambiguidade.
5fe8d37 Coverage
rodrigo luiz marques flores authored
133
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
134 ### Estrutura ###
5fe8d37 Coverage
rodrigo luiz marques flores authored
135
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
136 + Namespace
137 A utilização de namespaces foi trazida para separar melhor o código dos controllers referentes a atletas e treinadores.
138 Um exemplo simples: com relação às provas. O Atleta cadastra e visualiza as provas, enquanto que o treinador apenas visualiza.
139 Para evitar verificações condicionais, optamos por separar o código em duas regiões distintas, permitindo que a mesma ação, por exemplo, view, possa ser chamada de pontos diferentes e estar logicamente bem separada.
140
141 + Branches
142 Há duas "branches" no projeto: develop e master. A "branch" master contem a última versão estável, enquanto que a branch "develop" é utilizada pelos desenvolvedores.
5fe8d37 Coverage
rodrigo luiz marques flores authored
143
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
144 ### Status do projeto ###
9b16154 Adicionadas instruções no README
Rodrigo L. M. Flores authored
145
4220368 Arquivo readme
Luiz Ricardo Romagnoli authored
146 Até a data de entrega, o projeto está com 100% de cobertura de código e funcional. Não há links quebrados e realizamos uma gigantesca limpeza em arquivos não utilizados.
147 Nem todas as rotinas estão devidamente separadas nos namespace devido. Isto é algo que poderia ser feito num primeiro passo de aprendizado, afinal, envolve apenas entender um pouco das rotinas e realizar a separação.
Something went wrong with that request. Please try again.