* You know the basics of software engineering, e.g., different software process models and related activities, corresponding to what is covered in the BSc course Analysis, Design and Software Architecture.
* You are able to apply some programming language to construct fully functional software programs, corresponding, e.g., to what is covered in the BSc course Analysis, Design and Software Architecture.
* You are aware of the basic techniques for planning and conducting a software development project in a small team of 5-7 students.
Fagligt indhold: The goal of this course is to build working software according to the requirements of an industrial customer in teams of 7-9 students using the Scrum method.
The projects will be offered by industrial customers. All teams will work with a different project for a different customer. The course will provide the customers bringing in suitable projects.
The student teams will learn to apply the Scrum method, one of the agile methods, in practice by performing several short iterations in their project. The basic elements of Scrum are: face-to-face work in small teams and in close collaboration with the customer, work prioritized in the backlog, short 1-4 week iterations, sprint planning meetings, sprint reviews, sprint retrospectives and daily Scrum meetings. Each team will have a Scrum Master (a master level student) and a coach (from the industry) to support them while learning Scrum in practice.
The teams will work with different programming languages and different technologies depending on the chosen project. Each team will choose the technologies used in collaboration with their customer. Learning new technologies is a must.
The student teams will apply the software engineering skills they have learned during earlier courses in practice. They will analyze several software engineering related problems and learn to solve them.
The main part of the course work will take place in teams of 7-9 students. Thus, learning to organize teamwork in practice, to analyze faced teamwork related problems, to participate in implementing jointly decided solutions and to reflect over them is needed.
Students take active part in a software development team working on a large project from the ground up. The project is by design too large to be created by two or three people in the time allotted and the students are required to efficiently split the work up amongst themselves, taking individual responsibility for a substantial part of the project by themselves, using the techniques taught in System Development and Project Organisation.
The course is iterative (three iterations). After each iteration there is a review meeting (oral exam) including an oral project presentation by each team and Q&A session, supplemented by a written hand-in. The duration of each review is 1 hour per group.