Software Engineering Syllabus

Office Hour

Tuesday 1:30pm -- 3pm

Grading

  • Homeworks: 25%
  • Project : 45%
  • Final exam: 25%
  • In-class presentations: 5%

Course Outline

  • History of Software Engineering, Subareas of Software Engineering
  • Software Process
    • Plan-driven methodologies
    • Agile methodologies
    • Process choosing
  • Requirement Engineering
    • Requirement Solicitation
    • Requirement Specification
    • Use-case Requirements
    • User-story requirements
  • Design
    • Structural Design, Class Diagrams
    • Behavioral Design Sequence Diagrams
  • Architectural Design
    • Architectural Styles
  • Aspect-oriented Design
  • Design Patterns
  • Testing
    • White Box Testing
    • Black Box Testing
    • Unit Testing
    • Fuzzing
    • Code Coverage
    • Regression Testing
  • Debug
    • Fault Localization
  • Code Smells, Refactoring