1. Overview of Software Engineering Courses
1. Changes in computer software
2. Practical preparation-collaborative development methods and platforms
3. Practical preparation-group code annotation platform
4. Practical preparation-group learning platform
2. From program to software
1. Procedure and its quality
2. Program quality assurance methods
3. Program quality analysis method
4. Software and its quality
5. Open source software
3. Overview of Software Engineering
1. Background of software engineering
2. Concepts and ideas of software engineering
3. Computer-aided software engineering
4. Software development from the perspective of software engineering
4. Software process models and development methods
1. Software process model
2. Agile software development methods
3. Group development method
5. Basics of Software Requirements Engineering
1. Software requirements
2. Requirements engineering
3. Requirements analysis methodology
4. Output and review of requirements engineering
6. Obtain software requirements
1. Methods and processes for obtaining software requirements
2. Identify problems and software-based solutions
3. Export and conceive software requirements
4. Describe and verify preliminary software requirements
7. Analyze software requirements
1. Tasks and processes of analyzing software requirements
2. Software requirements model and UML representation method
3. Analyze and prioritize software requirements
4. Establish and analyze software requirements model
5. Document, validate and validate software requirements
8. Software design basics
1. Software design
2. Process and principles of software design
3. Structured software design methodology
4. Object-oriented software design methodology
5. CASE tools for software design
6. Output, review and management of software design
7. Software design management