This course builds on software engineering principles.  As the importance of high-quality software is increasingly noticeable, it is important for students to acquire advanced knowledge of the software quality.  The course aims at encouraging students to equip themselves with the necessary knowledge, tools, and techniques needed to develop and/ or evaluate software, with emphases on quality attributes and quality assurance techniques, within the context of the software developed, and relate that to its environment and to other development issues and techniques.