Building Software Factories courses expose students to real, team-oriented development in a software development organization staffed and managed by students under the guidance of faculty. Several students are professional developers, certified programmers and work in industry, too. These courses are hands-on courses that require student participation in one of software factories defined. The class meet once each week. One class meeting lasts two hours and is usually led by the professor.
During these meetings, the professor introduces concepts that are relevant to the current work being performed in the factories and addresses problems faced by the students at the factories. The professor is a ``facilitator'' who does not decide right or wrong, but instead facilitates learning the pitfalls and peaks in development process. This is not an innovative initiative. The innovative aspect is in the time that the factories are build: four months!
A typical calendar to build the factories is:
The projects for each software factory is chosen by professors and software factory managers. The demand are caracterized by RFP - Request For Proposals and have one client per project. These projects are in collaboration with CESAR which reflect current trends in industry and makes its professionals (which are students in the course) motivated.