Abstract:Since Agile Methods formalization, the software engineering education has also been impacted with universities adapting their courses as a way to suit this new software processes. At the University of São Paulo (USP), there is a discipline called XP Laboratory. Although the name refers to eXtreme Programming, the discipline aims at teaching agile methods in practice, considering several elements that are crucial for providing the student with real knowledge and experience with agile methods. This discipline has provided extensive studies involving students, instructors, mentors, customers, professionals, and companies. In this experience report we intend to share agile techniques that helped us to continuously improve this discipline.
Lessons Learned from Your Experience:- We observed that learning is maximized when it occurs in practice with real situations, such as involving customers and its problems.
- Also, we noticed that it is important to afford the needed infrastructure and offer a learning environment where students can learn from experience in practice and share their past and present experiences to others. Experts are especially involved to support this broad dissemination of - mainly tacit - knowledge to the students. As we do not push to explicit knowledge, we believe that the knowledge flows around the environment. Knowledge is not treated as something that must be always written down, however there is some specific knowledge that we guide the students to state in repositories, such as project and discipline wikis, but most knowledge is shared, though.
- So, we have adopted practices to share knowledge inside and across teams using organizational learning techniques, such as rotation of team members across teams, mini-lectures at lunch, coding dojos, brainwriting, lightning talks, whole-class retrospectives in fishbowl format, retrospective starfish, etc. These techniques became essential to the discipline success.
Attachments: