COMP3211
COMP3211
Credit Value 3
Level 3
2. provide students with opportunities to apply the theories and techniques to the
development of software systems.
(b) become familiar with software engineering concepts, theories, and techniques;
(c) apply software engineering theories and techniques at various stages of the
software development lifecycle;
(d) work with others as a team to develop serious software systems; and
(e) communicate both verbally and in writing about important aspects of software
development.
Dec 2023
Subject Topic
Synopsis/
Indicative 1. Introduction to Software Engineering
Syllabus
Importance of software engineering, software engineering diversity, software
engineering ethics.
2. Software Processes
Software process models, software process activities, coping with changes,
process improvement.
4. Requirements Engineering
functional and non-functional requirements, requirements engineering
processes, requirements elicitation, specification, validation, and change.
5. System Modeling
Context models, interaction models, structural models, behavioural models,
model-driven architecture.
6. Architectural Design
Architectural design decisions, architectural views, architectural patterns,
application architectures.
7. Object-Oriented Methodology
Object-oriented analysis, object-oriented design, object-oriented
programming.
8. Software Testing
Development testing, test-driven development, release testing, user testing.
9. Software Evolution
Evolution processes, legacy systems, software maintenance, software
configuration management.
10. Advanced Topics in Software Engineering
Teaching/ Lectures focus on introduction and explanation of key concepts and techniques.
Learning Tutorial/lab sessions provide students with opportunities to apply the theories and
Methodology techniques in selected software engineering scenarios. Assignments, in-class
exercises/quizzes, and the examination will be used to assess the students’
understanding of the learned knowledge. The project requires the students to work
in groups and apply the theories and techniques to solve problems in the development
of serious software systems.
Dec 2023
Assessment
Specific assessment % Intended subject learning outcomes to
Methods in
methods/tasks weighting be assessed
Alignment with
Intended
a b c d e
Learning
Outcomes Continuous Assessment
1. Assignments
60%
2. In-Class
Exercises/Quizzes
3. Project
Examination 40%
Total 100%
The project will provide students with opportunities to apply the theories and
techniques to the development of serious software systems. Students can develop
their analytical and problem-solving skills and practise teamwork in the project. The
students can also improve their presentation and communication skills through the
project presentation.
Reference Books:
1. Pressman, R., Software Engineering: A Practitioner’s Approach, 8th Edition,
McGraw-Hill, 2014.
Dec 2023
3. Jacobson, I., Booch, G. and Rumbaugh, J., The Unified Software Development
Process, Addison-Wesley, 1999.
Dec 2023