Software Engineering is a pivot course in the Computer Science and Computer Engineering curriculums. This paper briefly presents traditional content which is usually being taught in many Software Engineering courses, and highlights some problems encountered during teaching this content. Then it builds on those problems to suggest a more appropriate content for the course. The suggested content is applied in nature to make the course interesting to students, pushes programming to the very beginning of the course so that students may have hands-on practice for a longer time, removes many topics which are usually found in traditional Software Engineering courses such as the structured approach, cuts on the number of diagrams that can be replaced by others to reduce confusion. The paper will consider the trade of between the material which was cut and the benefits gained from providing the students with a focused curriculum that may limit the difficulty and the confusion usually result from teaching a traditional curriculum, this includes limitations and implications of our approach and the expected gains.Index Terms-Software engineering, curriculum design, object-oriented, structured approach, JAVA.