Software Engineering Education is often associated with teaching computer concepts, programming languages, database technology, etc. This approach of teaching traditional Computer Science courses leads to some difficult problems, both when training the students, and for the students their first years working in industry. In the Software Engineering programme at the University of Karlskrona/Ronneby, we have taken a more practical, problem-related approach by complementing the Computer Science courses with project courses at undergraduate level. In these project courses, we train the students to handle client contacts, contracts, negotiations, and most important: to keep their promises concerning time, quality and cost. After such projects the students are more able to handle and solve problems independently in a responsible way. By simulating the real world, and emphasizing the problems rather than the solutions, the students gain experience very similar to the professional situation. The experience gained inc reases the student’s maturity within the subject, and facilitates the understanding and application of more advanced concepts such as ISO 9000, Capability Maturity Model (CMM), function point analysis, etc.