This course involves an overview of modern software engineering techniques. The techniques correspond with software’s life cycle, range from requirement engineering to testing, which cover imperative knowledge for software engineers. The comprehensive knowledge is classified into three groups of issues. Each group covers the following:
– Basic concepts and notions on SE
– Fundamental knowledge on main activities and work products during the process of SE
– Global standards and trends on SE like agile method, UML, CMMI and SPICE
This course involves an overview of modern software architectural design techniques, especially introduce the ADD(Attribute Driven Design).
The technique corresponds with software architecture life cycle, such as architectural requirement, architectural design, architectural documentation, architectural evaluation, and architectural implementation.
In the first half of a whole semesters I will conduct intensive lectures on architectural design, while in the other half Students must investigate and present new case studies. In this process, students create a proposal for the desired architecture for each domain.