Courses Offered

COMP3297 Software Engineering

COMP3297 Software Engineering

2022-23
Instructor(s):Yeung Cheuk Yu Leo
(Class A) No. of credit(s):6
Yeung Cheuk Yu Leo
(Class B)
Recommended Learning Hours:
Lecture: 36.0
Tutorial: 3.0
Pre-requisite(s):COMP2113 or COMP2123 or ENGG1340
Co-requisite(s):  
Mutually exclusive with:IIMT3602
Remarks:

Course Learning Outcomes

1. [Software engineering foundation]
Able to demonstrate an understanding of the software development process and activities including the analysis, design, implementation, testing and deployment of contemporary software systems.
2. [Software engineering methodology]
Able to apply the software process and process activities to real-world software development.
3. [Software engineering tools and techniques]
Able to use industry standard tools and techniques for software development.
4. [Software engineering practice]
Able to plan, work and contribute effectively as a member of self-organizing software development teams.
Mapping from Course Learning Outcomes to Programme Learning Outcomes
 PLO aPLO bPLO cPLO dPLO ePLO fPLO gPLO hPLO iPLO j
CLO 1TT
CLO 2PP
CLO 3T,P
CLO 4T,PT,P

T - Teach, P - Practice
For BEng(CompSc) Programme Learning Outcomes, please refer to here.

Syllabus

Calendar Entry:
This course introduces the fundamental principles, methodologies and practices of modern software engineering. It covers the software process, and development activities including requirements engineering, software design, testing, deployment and evolution. The course emphasizes the use of contemporary tools, frameworks and techniques. It features a complete agile development project in which students work in teams to engineer and cloud-deploy a software service to satisfy their clients’ needs.

Detailed Description:

Fundamental software engineering concepts and activities 1 Mapped to CLOs
Introduction to software engineering1
Software process1, 2
Requirements engineering1, 2
Prototyping1, 2, 3
Basic modelling1, 2, 3
Agile software development Mapped to CLOs
Agile teams, frameworks and Scrum1, 2, 3, 4
Agile requirements1, 2, 3
Agile planning and tracking1, 2, 3, 4
Fundamental software engineering concepts and activities 2 Mapped to CLOs
User experience design1, 2
Software design principles1, 2
Software testing and quality assurance1, 2, 3
Trends and practices Mapped to CLOs
Trends in software architecture1, 2
Software evolution and managing technical debt1, 2
Git workflows3, 4
DevOps and site-reliability engineering1, 3
Real-world software engineering landscape1, 2, 3, 4
Individual project (in Part 1)1, 2, 3
Group project (in Parts 2, 3, and 4)1, 2, 3, 4

Assessment:
Continuous Assessment: 50%
Written Examination: 50%

Teaching Plan

Please refer to the corresponding Moodle course.

Moodle Course(s)

Please login with your CS account (for staff only)