This course emphasizing on aspects that need to be fulfilled to produce well-built software. Used approach is oriented at object which includes following topics: demand analysis and spesification, design, programming, verification, and validation. Research method and best- practice in each stages are materialtaught at this course.