LabXP2024: mudanças entre as edições

De CCSL
Ir para navegação Ir para pesquisar
(Insere página de 2024)
 
Sem resumo de edição
 
(19 revisões intermediárias pelo mesmo usuário não estão sendo mostradas)
Linha 2: Linha 2:


As metodologias ágeis de desenvolvimento de software têm se mostrado bastante eficazes para o desenvolvimento de sistemas de software. Neste curso, os estudantes utilizam a metodologia de Programação eXtrema (XP), sob a orientação do professor, para desenvolver um sistema de software em equipe. Por meio dessa experiência prática no laboratório, se faz possível a aquisição de conhecimentos e a assimilação de práticas das metodologias ágeis que serão extremamente importantes para o estudante em sua futura carreira, seja ela acadêmica ou empresarial, como desenvolvedor de software.
As metodologias ágeis de desenvolvimento de software têm se mostrado bastante eficazes para o desenvolvimento de sistemas de software. Neste curso, os estudantes utilizam a metodologia de Programação eXtrema (XP), sob a orientação do professor, para desenvolver um sistema de software em equipe. Por meio dessa experiência prática no laboratório, se faz possível a aquisição de conhecimentos e a assimilação de práticas das metodologias ágeis que serão extremamente importantes para o estudante em sua futura carreira, seja ela acadêmica ou empresarial, como desenvolvedor de software.


= Projetos =
= Projetos =
Linha 10: Linha 9:
== Possibilidades de projetos ==
== Possibilidades de projetos ==


'''segunda-feira 11/03/24'''
* [https://drive.google.com/file/d/1JWIfetK93-GK18fqAvRyW6hkuL5zNok-/view?usp=sharing  Transitos Circulations] - Marisa
* [https://docs.google.com/presentation/d/1uVK-jMvdbwvvoakGhfld50EpNs9TqHLo/edit?usp=sharing&ouid=116593187194015039121&rtpof=true&sd=true  Arquitetura Paulista] - Mônica
* [https://drive.google.com/file/d/1VS_zaEtg_S8O24uhZ_Lf9tZSKP1oFpPp/view?usp=sharing  REFS] - Marco e Mateus
* [https://drive.google.com/file/d/18upHqkVR2BwOmRjO5giTk7JbfbCQtMD6/view?usp=sharing  CLO] - Júlia
'''Quarta-feira 14/03/24'''
* [https://drive.google.com/file/d/14y3Yn3kFMwA6wcu9RPyMiE6hvmegQdRc/view?usp=sharing  PACTL-Sym] - Viviane
* [https://drive.google.com/file/d/1IULZZ96_ua4mr9F8H1kzgj0L2qoM167d/view?usp=sharing  BYST.END] - Guilherme
* [https://drive.google.com/file/d/1hnAkYpCpVuEqcb-FCx63gqG9MkAcOZTu/view?usp=sharing  Academia Olho de Hórus] - Guilherme
* [https://drive.google.com/file/d/1r9JAMxLdXa3L1QQNz9TaGGnRaS4UKc4M/view?usp=sharing  PRO-PARNAÍBA] - Larissa
* [https://drive.google.com/file/d/1G2NPoe3tNnhVvAhQRG4qkzRuMOnzsOxH/view?usp=sharing  Realidade Mista Open Source] - Luis Felipe
== Indicar preferência de projeto ==
Cada aluno deverá indicar 3 projetos, em ordem de preferência, bem como compartilhar conosco algumas informações para podermos selecionar os projetos e compôr os times.
[https://docs.google.com/forms/d/e/1FAIpQLSco3_joB96LHO40GdzyZ_bkfqXbmULbhdatnjRcTQtjyER90w/viewform?usp=sf_link  Formulário para indicar preferência]
== Projetos Selecionados ==
* Aqui serão listados todos os projetos selecionados.
* [https://docs.google.com/presentation/d/1uVK-jMvdbwvvoakGhfld50EpNs9TqHLo/edit?usp=sharing&ouid=116593187194015039121&rtpof=true&sd=true  Arquitetura Paulista] - Mônica
* [https://drive.google.com/file/d/18upHqkVR2BwOmRjO5giTk7JbfbCQtMD6/view?usp=sharing  CLO] - Júlia
* [https://drive.google.com/file/d/14y3Yn3kFMwA6wcu9RPyMiE6hvmegQdRc/view?usp=sharing  PACTL-Sym] - Viviane
* [https://drive.google.com/file/d/1r9JAMxLdXa3L1QQNz9TaGGnRaS4UKc4M/view?usp=sharing  PRO-PARNAÍBA] - Larissa
* [https://drive.google.com/file/d/1VS_zaEtg_S8O24uhZ_Lf9tZSKP1oFpPp/view?usp=sharing  REFS] - Marco e Mateus
* [https://drive.google.com/file/d/1G2NPoe3tNnhVvAhQRG4qkzRuMOnzsOxH/view?usp=sharing  Realidade Mista Open Source] - Luis Felipe
== Repositório dos Projetos ==
Nesse semestre, cada time receberá um espaço no gitlab para manter sua organização e sua documentação dentro da Organização.
'''[https://gitlab.com/labxp-ime-usp/2024.1  LabXP/2024.1]'''
= Dias importantes =
== Test Day ==
* Cada equipe escolherá um dia em que estará concentrada apenas em testes.
== Refactoring Day ==
* Cada equipe escolherá um dia em que estará concentrada apenas em refatoração.
= Critérios de Avaliação =
Serão atribuídas duas notas neste semestre, conforme os critérios abaixo:
== Nota 1 ==
- três etapas: "Iniciante", "Saudável" e "Maduro"
- três aspectos: "Código", "Equipe" e "Projeto"
=== Etapa Iniciante ===
* peso: 20%
* Código
** repositório configurado
** licença de software
** ambiente de desenvolvimento configurado
* Equipe
** atribuições de papéis
** standup e mobs iniciais rolando
** ambiente de trabalho informativo criado
** definida política de horas extras
** planilha para controle de horas (aula e extra)
* Projeto
** meio de comunicação com cliente definido
=== Etapa Saudável ===
* peso: 30%
* Código
** commits frequentes
** início testes
** início pipeline de CI/CD (testes + entregável)
* Equipe
** bom rodízio de pares
** consistência em mobs
* Projeto
** boa comunicação com o cliente
** ter feito a primeira entrega
=== Etapa Maduro ===
* peso: 50%
* Código
** tracking
** testes automatizados
** cobertura de testes
** pipeline de CI/CD (testes + entregável)
** artefatos para continuidade do projeto
* Equipe
** TDD
** auto organização ("coach invisível")
* Projeto
** demais entregas
== Nota 2 ==
* Individuais:
** Presença (25%)
** Avaliação do Coach, meta-coaches avaliam os coaches (25%)
* Equipe:
** Satisfação do cliente (25%)
** Projeto (funcionalidades implementadas + manutenibilidade - como outra equipe pode continuar o projeto) (25%)
Obs.: Por manutenibilidade entende-se documentação sobre como ter um ambiente de desenvolvimento completo com os testes passando, ponteiros para pontos interessantes no código para novos contribuidores, e funcionalidades mais simples para estes implementarem enquanto conhecem o sistema.


= Professor e monitor =
= Professor e monitor =
Linha 17: Linha 135:


* [Isaque Alves] - (isaque.alves@ime.usp.br) (monitor)
* [Isaque Alves] - (isaque.alves@ime.usp.br) (monitor)
= Referências =
== Links e materiais úteis ==
* Link para o curso online do Udacity sobre testes: https://www.udacity.com/course/cs258
* Resumo do capítulo 3 do livro Agile Retrospectives, Making Good Teams Great.  [[Liderando Retrospectivas|Liderando Retrospectivas]]
* Manifesto ágil: http://agilemanifesto.org/iso/ptbr/
* Princípios: http://agilemanifesto.org/iso/ptbr/principles.html
* XP: http://www.extremeprogramming.org/rules.html
* Scrum: https://www.scrum.org/Portals/0/Documents/Scrum%20Guides/2013/Scrum-Guide-Portuguese-BR.pdf
* Survey agile: http://www.versionone.com/about-us/press-releases/article/VersionOne-Releases-9th-Annual-State-of-Agile-Survey-Results/
* Métodos Ágeis: http://www.desenvolvimentoagil.com.br/
* XP: http://www.desenvolvimentoagil.com.br/xp/
* DDD (Notas do livro by Leonardo Leite): https://polignu.org/artigo/notas-sobre-ddd
== Palestrantes externos de edições anteriores ==
* Mob Programming - '''Woody Zuill''' - https://uclab.xyz/labxp-2020-mob-programming
* Disciplined Agile - '''Scott Ambler''' - https://uclab.xyz/labxp-2020-disciplined-agile
* Lean Startup - '''Xiaofeng Wang''' - https://uclab.xyz/labxp-2020-lean-startup
* Dívida Técnica - '''Graziela Tonin''' - https://uclab.xyz/labxp-2020-divida-tecnica
* Segurança Psicológica - '''Ceci Fernandes''' - https://uclab.xyz/labxp-2020-seguranca-psicologica
* Sistemas Binários de Software - '''Hugo Corbucci''' - https://uclab.xyz/labxp-2020-sistemas-binarios-de-software
* BOSSA nova - '''Jutta Eckstein''' - https://uclab.xyz/labxp-2020-bossa-nova
* Escrever Testes vs Testar - '''Maurício Aniche''' - https://uclab.xyz/labxp-2020-escrever-testes-vs-testar
* Sufficient Design - '''Joshua Kerievsky''' - https://uclab.xyz/labxp-2020-sufficient-design
* Organizational Structure Patterns - '''Damian Tamburri''' - https://uclab.xyz/labxp-2020-organizational-structure-patterns
* Agilidade no Mundo Real - '''Dairton Bassi''' - https://uclab.xyz/labxp-2020-agilidade-no-mundo-real
* The Power of the Agile Mindset - '''Linda Rising''' - https://uclab.xyz/labxp-2020-agile-mindset
* Arquitetura em Times Ágeis na Prática - '''Paulo Merson''' - https://uclab.xyz/labxp-2020-arquitetura-em-times-ageis
* Modern Agile - '''Alexandre Freire''' - https://uclab.xyz/labxp-2020-modern-agile
* Team Work - '''Esther Derby''' - https://uclab.xyz/labxp-2020-team-work
* Revejam palestrantes internacionais da edição 2020 em: https://uclab.xyz/youtube

Edição atual tal como às 21h26min de 19 de março de 2024

Laboratório de Programação Extrema 2024

As metodologias ágeis de desenvolvimento de software têm se mostrado bastante eficazes para o desenvolvimento de sistemas de software. Neste curso, os estudantes utilizam a metodologia de Programação eXtrema (XP), sob a orientação do professor, para desenvolver um sistema de software em equipe. Por meio dessa experiência prática no laboratório, se faz possível a aquisição de conhecimentos e a assimilação de práticas das metodologias ágeis que serão extremamente importantes para o estudante em sua futura carreira, seja ela acadêmica ou empresarial, como desenvolvedor de software.

Projetos

Projetos da vida real com os mais variados temas com o único requisito de possuírem licença livre.

Possibilidades de projetos

segunda-feira 11/03/24

Quarta-feira 14/03/24

Indicar preferência de projeto

Cada aluno deverá indicar 3 projetos, em ordem de preferência, bem como compartilhar conosco algumas informações para podermos selecionar os projetos e compôr os times.

Formulário para indicar preferência

Projetos Selecionados

  • Aqui serão listados todos os projetos selecionados.

Repositório dos Projetos

Nesse semestre, cada time receberá um espaço no gitlab para manter sua organização e sua documentação dentro da Organização.

LabXP/2024.1

Dias importantes

Test Day

  • Cada equipe escolherá um dia em que estará concentrada apenas em testes.

Refactoring Day

  • Cada equipe escolherá um dia em que estará concentrada apenas em refatoração.


Critérios de Avaliação

Serão atribuídas duas notas neste semestre, conforme os critérios abaixo:

Nota 1

- três etapas: "Iniciante", "Saudável" e "Maduro"

- três aspectos: "Código", "Equipe" e "Projeto"

Etapa Iniciante

  • peso: 20%
  • Código
    • repositório configurado
    • licença de software
    • ambiente de desenvolvimento configurado
  • Equipe
    • atribuições de papéis
    • standup e mobs iniciais rolando
    • ambiente de trabalho informativo criado
    • definida política de horas extras
    • planilha para controle de horas (aula e extra)
  • Projeto
    • meio de comunicação com cliente definido

Etapa Saudável

  • peso: 30%
  • Código
    • commits frequentes
    • início testes
    • início pipeline de CI/CD (testes + entregável)
  • Equipe
    • bom rodízio de pares
    • consistência em mobs
  • Projeto
    • boa comunicação com o cliente
    • ter feito a primeira entrega

Etapa Maduro

  • peso: 50%
  • Código
    • tracking
    • testes automatizados
    • cobertura de testes
    • pipeline de CI/CD (testes + entregável)
    • artefatos para continuidade do projeto
  • Equipe
    • TDD
    • auto organização ("coach invisível")
  • Projeto
    • demais entregas

Nota 2

  • Individuais:
    • Presença (25%)
    • Avaliação do Coach, meta-coaches avaliam os coaches (25%)
  • Equipe:
    • Satisfação do cliente (25%)
    • Projeto (funcionalidades implementadas + manutenibilidade - como outra equipe pode continuar o projeto) (25%)

Obs.: Por manutenibilidade entende-se documentação sobre como ter um ambiente de desenvolvimento completo com os testes passando, ponteiros para pontos interessantes no código para novos contribuidores, e funcionalidades mais simples para estes implementarem enquanto conhecem o sistema.

Professor e monitor

  • [Isaque Alves] - (isaque.alves@ime.usp.br) (monitor)


Referências

Links e materiais úteis


Palestrantes externos de edições anteriores